home *** CD-ROM | disk | FTP | other *** search
/ Publication 14 / Publication_14_19xx_Civitas_de_Side_B.d64 / datamaker40 (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  3KB  |  58 lines

  1. 190 print"[147]";tab(15)"datamaker":print
  2. 200 print"with this program, you can convert"
  3. 210 print"a machine language program in the "
  4. 220 print"cassette buffer, or the area starting "
  5. 230 print"at $c000, into basic data statements.":print
  6. 240 print"these instructions will be destroyed,"
  7. 250 print"also any basic program that is in memory"
  8. 260 print"it will not work for programs in the"
  9. 270 print"area 679-767 as it uses some of these"
  10. 280 print"locations during execution."
  11. 290 print"since the pal assembler also does, it"
  12. 300 print"is incompatible with pal."
  13. 305 print"(it is compatible with supermon).":print
  14. 310 print"you should have your m.l. program in"
  15. 320 print"memory before starting to use this "
  16. 330 print"program: if you forgot to do this,"
  17. 340 print"exit this program: load in your own"
  18. 350 print"routine, not forgetting the ";chr$(34);",8,1";chr$(34);":"
  19. 355 print"type 'new', reload 'datamaker', and"
  20. 356 print"start over."
  21. 360 input"continue (y/n)";yn$:ifleft$(yn$,1)<>"y"then end
  22. 370 print"[147]you also need to know the start address"
  23. 380 print"of your m.l. routine, and the address"
  24. 390 print"of the byte immediately following the"
  25. 400 print"last byte of your program; just as you"
  26. 410 print"did when saving with the m.l. monitor.":print
  27. 420 print"once you have run this program, you"
  28. 430 print"should save your basic program of"
  29. 440 print"data statements, so that you can write"
  30. 450 print"the rest of the basic program later.":print
  31. 460 print"the line numbers of the data statements"
  32. 465 print"start at 40000: there are more than"
  33. 470 print"enough lines for a program filling the"
  34. 480 print"entire $c000-$cfff area.":print
  35. 490 print"when the program first starts, it will"
  36. 500 print"tell you the 'sys' to re-activate itself";
  37. 510 print"so write this down if you want to use"
  38. 520 print"it more than once.":print
  39. 525 input"continue (y/n)";yn$:ifleft$(yn$,1)<>"y"then end
  40. 530 print"[147]don't forget to type ";chr$(34);"new";chr$(34);" after"
  41. 540 print"loading in a fresh m.l. program.":print
  42. 550 print"don't save your data statement programs"
  43. 560 print"on this diskette: use a write-protect"
  44. 570 print"tab if you wish.":print
  45. 580 input"continue (y/n)";yn$:ifleft$(yn$,1)<>"y"then end
  46. 590 print"[147]";
  47. 595 a$="start address? ":b$="end address? "
  48. 596 c$="address too high":d$="fatal error"
  49. 600 fori=1tolen(a$):poke678+i,asc(mid$(a$,i,1)):next
  50. 605 fori=1tolen(b$):poke693+i,asc(mid$(b$,i,1)):next
  51. 610 fori=1tolen(c$):poke751+i,asc(mid$(c$,i,1)):next
  52. 615 fori=1tolen(d$):poke740+i,asc(mid$(d$,i,1)):next
  53. 620 poke707,100:poke708,10:poke709,1
  54. 625 nu=40000:hi=int(nu/256):lo=nu-hi*256
  55. 630 poke710,lo:poke711,hi
  56. 640 sys4331:
  57. 650 end
  58.