The effect is the same as if you had stopped the program by any normal means, then typed
in RUN again. Follow these rules:
1. These lines must be the first three lines of the program.
2. The name of the string variable (here, RESET$) must not be used else
where in the program.
3. Once the program has been RUN you cannot access the disk drive unless
you reset the values of DOSINIT by doing a POKE 12,64:POKE 13,21, and
then press [SYSTEM RESET] again.
0 DIM RESET$(60)
2 I=ADR(RESET$):H=INT(I/256):L=I-H*256:POKE 12,L:POKE 13,H:POKE 842,12:GRAPHICS 0
To use the routine, type it in and LIST to disk or cassette. Then LOAD a BASIC program
and check to see that it doesn’t use lines 0-2. If it does, renumber those lines. Then
ENTER the LISTed routine. After you RUN the program for the first time, pressing [RESET]
will automatically RUN it again.
To disable the [BREAK] key, include POKE 16,64:POKL 53774,64 after every GRAPHICS
command. To even further protect your program ,create a RUN-only file by adding the
32767 POKE PEEK(138)+ 256*PEEK(139)+ 2,0:SAVE “D:filename.ext”:NEW
For cassette, change “D:filefiame.ext” to “C:”. Making sure that you have another version
of the program saved somewhere else, type GOTO 32767. The file that results can only be
executed with RUN. It can be LOADed, but not LISTed. Even you will no longer be able to
see the listing.
The routine does not work correctly on a cassette-only system unless you POKE 9,1. Add
the POKE statement to the end of line 0.