Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!uunet!cbmvax!cbmehq!cbmdeo!jsmami!jsmoller From: jsmoller@jsmami.UUCP (Jesper Steen Moller) Newsgroups: comp.sys.amiga.programmer Subject: Re: Demo versions Message-ID: <189eddd4.ARN03888@jsmami.UUCP> Date: 2 Feb 91 19:11:00 GMT References: <91031.112859GHGAQA4@cc1.kuleuven.ac.be> <2438@shodha.enet.dec.com> Reply-To: cbmvax!cbmehq!cbmdeo!jsmami!jsmoller Followup-To: comp.sys.amiga.programmer Organization: Danish SofTech Lines: 55 In article <2438@shodha.enet.dec.com>, Hans Ridder writes: > In article <91031.112859GHGAQA4@cc1.kuleuven.ac.be> GHGAQA4@cc1.kuleuven.ac.be (Tyberghein Jorrit) writes: > >It is very easy to make a demo version of an editor, simply remove the > >'save' option and the problem is useles while you still can test the > >power of the editor (look at the TurboText demo). But my debugger simply > >does not have a 'save' command.... > > How about disabling the 'load' command (if it has one), and have a built > in program with a bug in it (causes a Guru or some such). Then only > allow that program, and maybe a few other places in memory to be > examined/modified/traced, like the task structure for the "broken" task, > and some system structures.... When the user trys to examine an area > outside of the boundaries, give a nice error message about buying the > non-demo version. Good idea... > Of course someone could use another debugger to "fix" your debugger, > possibly allowing full or nearly full functionality, but there's some > level of risk you're going to have take to get the benefit of the > publicity of the demo. Well, not really. If you remove a command like load, which is (I guess) is a rather longish one, nobody can replace it. If you put a kludge in to remove load, it's not good enough. Exclude it by something like: void load(void) { #ifdef DEMO printf("Can't load - It's just a demo"); #else .... /* stuff for loading or whatever - choose a long and hard to imitate command... */ .... #endif (or use a comditional assembly directive in assembler) I used the same scheme for a commercial project of mine, and nobody can make a save-routine work, if it isn't there. Many good crackers can, however, remove the "5K max", or "ten minutes only, and never of the 1st of April"-limitations. :-) /Jesper > > Jorrit Tyberghein > -hans -- __ Jesper Steen Moller /// VOICE: +45 31 62 46 45 Maglemosevej 52 __ /// USENET: cbmehq!cbmdeo!jsmami!jsmoller DK-2920 Charl \\\/// FIDONET: 2:231/84.45 Denmark \XX/ OPINIONS: Certainly!