home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nibble Magazine
/
nib13.dsk
/
SELF-MODIFIER.bas
< prev
next >
Wrap
BASIC Source File
|
2023-02-26
|
2KB
|
44 lines
60000 REM **********************
60002 REM * SELF-MODIFIER *
60004 REM * BY C. B. WINKLER *
60006 REM * COPYRIGHT (C) 1983 *
60008 REM * BY MICRO-SPARC INC *
60010 REM * LINCOLN, MA. 01773 *
60012 REM **********************
60020 REM CREATE EXEC FILE "MODIFIER"
60030 PRINT D$;"OPEN MODIFIER"
60040 PRINT D$;"DELETE MODIFIER"
60050 PRINT D$;"OPEN MODIFIER"
60060 PRINT D$;"WRITE MODIFIER"
60070 REM WRITE NEW APPLESOFT LINES TO MODIFIER
60080 FOR I = 1 TO NCL
60090 PRINT LN(I);LN$(I)
60100 NEXT I
60110 REM WRITE RETURNING GOTO AND RESTARTING RUN TO MODIFIER
60120 PRINT "60380 GOTO ";RP
60130 PRINT "RUN 60270"
60140 REM DONE BUILDING MODIFIER
60150 PRINT D$;"CLOSE MODIFIER"
60160 REM MOVE VARIABLE POINTERS TO SECURE MEMORY LOCATIONS
60170 FOR I = 0 TO 5: POKE 250 +I, PEEK(105 +I): NEXT I
60180 POKE 238, PEEK(111): POKE 239, PEEK(112)
60190 REM ISSUE EXEC COMMAND
60200 PRINT D$;"EXEC MODIFIER"
60210 REM SAVE DOS OUTPUT VECTOR AND TURN OFF OUTPUT
60220 POKE 236, PEEK(43603): POKE 237, PEEK(43604)
60230 POKE 43603,255: POKE 43604,253
60240 REM ISSUE END TO START EXECUTION OF MODIFIER
60250 END
60260 REM **********************************************************
60270 REM RESTART PROGRAM
60280 REM RECOVER ALL POINTERS BEFORE REFERENCING ANY VARIABLE NAMES
60290 POKE 105, PEEK(250): POKE 106, PEEK(251)
60300 POKE 107, PEEK(252): POKE 108, PEEK(253)
60310 POKE 109, PEEK(254): POKE 110, PEEK(255)
60320 POKE 111, PEEK(238): POKE 112, PEEK(239)
60330 REM ALL PREVIOUSLY DEFINED VARIABLES NOW AVAILABLE
60340 REM RECONNECT OUTPUT
60350 POKE 43603, PEEK(236): POKE 43604, PEEK(237)
60360 PRINT D$;"DELETE MODIFIER"
60370 REM RETURN TO MAIN PROGRAM
60380 REM SPACE FOR GOTO RP