home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib13.dsk / SELF-MODIFIER.bas < prev    next >
BASIC Source File  |  2023-02-26  |  2KB  |  44 lines

  1. 60000  REM  **********************
  2. 60002  REM  * SELF-MODIFIER      *
  3. 60004  REM  * BY C. B. WINKLER   *
  4. 60006  REM  * COPYRIGHT (C) 1983 *
  5. 60008  REM  * BY MICRO-SPARC INC *
  6. 60010  REM  * LINCOLN, MA. 01773 *
  7. 60012  REM  **********************
  8. 60020  REM  CREATE EXEC FILE "MODIFIER"
  9. 60030  PRINT D$;"OPEN MODIFIER"
  10. 60040  PRINT D$;"DELETE MODIFIER"
  11. 60050  PRINT D$;"OPEN MODIFIER"
  12. 60060  PRINT D$;"WRITE MODIFIER"
  13. 60070  REM  WRITE NEW APPLESOFT LINES TO MODIFIER
  14. 60080  FOR I = 1 TO NCL
  15. 60090  PRINT LN(I);LN$(I)
  16. 60100  NEXT I
  17. 60110  REM  WRITE RETURNING GOTO AND RESTARTING RUN TO MODIFIER
  18. 60120  PRINT "60380 GOTO ";RP
  19. 60130  PRINT "RUN 60270"
  20. 60140  REM  DONE BUILDING MODIFIER
  21. 60150  PRINT D$;"CLOSE MODIFIER"
  22. 60160  REM  MOVE VARIABLE POINTERS TO SECURE MEMORY LOCATIONS
  23. 60170  FOR I = 0 TO 5: POKE 250 +I, PEEK(105 +I): NEXT I
  24. 60180  POKE 238, PEEK(111): POKE 239, PEEK(112)
  25. 60190  REM  ISSUE EXEC COMMAND
  26. 60200  PRINT D$;"EXEC MODIFIER"
  27. 60210  REM  SAVE DOS OUTPUT VECTOR AND TURN OFF OUTPUT
  28. 60220  POKE 236, PEEK(43603): POKE 237, PEEK(43604)
  29. 60230  POKE 43603,255: POKE 43604,253
  30. 60240  REM  ISSUE END TO START EXECUTION OF MODIFIER
  31. 60250  END 
  32. 60260  REM  **********************************************************
  33. 60270  REM  RESTART PROGRAM
  34. 60280  REM  RECOVER ALL POINTERS BEFORE REFERENCING ANY VARIABLE NAMES
  35. 60290  POKE 105, PEEK(250): POKE 106, PEEK(251)
  36. 60300  POKE 107, PEEK(252): POKE 108, PEEK(253)
  37. 60310  POKE 109, PEEK(254): POKE 110, PEEK(255)
  38. 60320  POKE 111, PEEK(238): POKE 112, PEEK(239)
  39. 60330  REM  ALL PREVIOUSLY DEFINED VARIABLES NOW AVAILABLE
  40. 60340  REM  RECONNECT OUTPUT
  41. 60350  POKE 43603, PEEK(236): POKE 43604, PEEK(237)
  42. 60360  PRINT D$;"DELETE MODIFIER"
  43. 60370  REM  RETURN TO MAIN PROGRAM
  44. 60380  REM  SPACE FOR GOTO RP