home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64-128Toolkit / SUPER-AIDE.SDA / XMON.DOC < prev   
Encoding:
Text File  |  2019-04-13  |  4.4 KB  |  146 lines

  1. ╪-═ON 64
  2. --------
  3.  
  4. ╪-═ON 64 IS ONE OF THE MOST COMMON OF THE PUBLIC-DOMAIN MACHINE LANGUAGE MONITORS. ╔T IS ONE OF THE BEST AS WELL. ╚ERE IS A BRIEF DESCRIPTION OF ITS FEATURES.
  5.  
  6.  
  7. ╙IMPLE ┴SSEMBLER
  8.  
  9. .┴ 2000 ┴9 12    ╠─┴ #$12
  10. .┴ 2002 9D 00 80 ╙╘┴ $8000,X
  11. .┴ 2005
  12.  
  13. ╔N THE ABOVE EXAMPLE, THE USER BEGAN ASSEMBLY AT $2000. ╘HE FIRST INSTRUCTION WAS LOAD ACCUMULATOR IMMEDIATE WITH $12. ╔N THE SECOND LINE THE USER DID NOT NEED TO TYPE THE ┴ AND ADDRESS. ╘HE SIMPLE ASSEMBLER RETYPED THE LAST ENTERED LINE AND PROMPTS WITH THE NEXT ADDRESS. ╘O EXIT THE ASSEMBLER, PRESS [╥┼╘╒╥╬] AFTER THE ADDRESS PROMPT. ╙YNTAX IS THE SAME AS THE DISSASEMBLER OUTPUT. ┴ ':' CAN BE USED TO TERMINATE A LINE.
  14.  
  15. ├OMPARE ═EMORY
  16.  
  17. .├ 1000 2000 ├000
  18.  
  19. ├OMPARES MEMORY FROM $1000 TO $2000 TO MEMORY BEGINNING AT $├000. ├OMPARE WILL PRINT THE LOCATIONS OF UNEQUAL BYTES.
  20.  
  21. ─ISASSEMBLER
  22.  
  23. .─ 2000
  24.  
  25. ─ISASSEMBLES TO THE END OF MEMORY STARTING AT $1000. ╘HE THREE BYTES FOLLOWING THE ADDRESS MAY BE MODIFIED. ╒SE THE [CRSR] KEYS TO MOVE TO AND MODIFY THE BYTES. ╚IT [╥┼╘╒╥╬] AND THE BYTES IN MEMORY WILL BE CHANGED. ┼╪╘╥┴═╧╬ WILL THEN DISSASEMBLE THAT LINE AGAIN.
  26.  
  27. .─ 2000 3000
  28.  
  29. ─ISASSEMBLES FROM $2000 TO $3000.
  30.  
  31. ╞ILL ═EMORY
  32.  
  33. .╞ 1000 1100 ╞╞
  34.  
  35. ╞ILLS THE MEMORY FROM $1000 TO $1100 WITH THE BYTE $╞╞.
  36.  
  37. ╟O ╥UN
  38.  
  39. .╟
  40.  
  41. ╟O TO THE ADDRESS IN THE ╨├ REGISTER DISPLAY AND EXECUTE CODE. ┴LL THE REGISTERS WILL BE REPLACED WITH THE DISPLAYED VALUES.
  42.  
  43. .╟ 1000
  44.  
  45. ╟O TO ADDRESS $1000 AND BEGIN RUNNING CODE.
  46.  
  47. ╚UNT ═EMORY
  48.  
  49. .╚ ├000 ─000 '╥┼┴─
  50.  
  51. ╚UNT THROUGH MEMORY FROM $├000 TO $─000 FOR THE ┴╙├╔╔ STRING '╥┼┴─' AND PRINT THE ADDRESSES WHERE IT IS FOUND. ┴ MAXIMUM OF 32 CHARACTERS MAY BE USED.
  52.  
  53. .╚ ├000 ─000 20 ─2 ╞─
  54.  
  55. ╚UNT MUMORY FROM $├000 TO $─000 FOR THE SEQUENCE OF BYTES $20, $─2, $╞─ AND PRINT ANY ADDRESS WHERE IT IS FOUND. ┴ MAXIMUM OF 32 BYTES MAY BE USED. ╚UNT CAN BE STOPPED WITH THE [╥╒╬/╙╘╧╨] KEY.
  56.  
  57. ╔NTEREGATE ═EMORY
  58.  
  59. .╔ ╞000
  60.  
  61. .' ╞000 54 4╞ 4╞ 20 4─ 41 4┼ 59 ╘╧╧ ═┴╬
  62. .' ╞008 20 46 49 4├ 45 ─3 46 49 ╞╔╠┼╙╞╔
  63.  
  64. ─ISPLAYS HEX AND ┴╙├╔╔ UNTIL THE END OF MEMORY.
  65.  
  66. .╔ ╞000 ╞080
  67.  
  68. ─ISPLAYS HEX AND ┴╙├╔╔ FROM $╞000 TO $╞080.
  69.  
  70. ╠OAD
  71.  
  72. .╠"FILENAME"
  73.  
  74. ╠OADS A FILE FROM THE CASSETTE UNIT.
  75.  
  76. .╠"FILENAME",08
  77.  
  78. ╠OADS A FILE FROM THE DISK DRIVE.
  79.  
  80. ┬┼╫┴╥┼: ╠OAD WITH A FILE NAME BREAKS THE ╔╥╤ SAVED BY THE MONITOR. ─O NOT USE .╟ TO THE ╨├ REGISTER AFTER A LOAD WITH A FILENAME.
  81.  
  82. ═EMORY ─ISPLAY
  83.  
  84. .═ 0000 0008
  85.  
  86. .: 0000 00 01 ┴0 ┬3 4─ 5├ ╞6 ┼7
  87. .: 0008 28 49 8┴ 4┬ 5├ 7─ 0┼ 3╞
  88.  
  89. ─ISPLAY MEMORY FROM $0000 TO $0008. ╘HE BYTES FOLLOWING THE ADDRESS MAY BE  MODIFIED BY EDITING AND THEN PRESSING   [╥┼╘╒╥╬].
  90.  
  91. ╬EW ╠OCATOR
  92.  
  93. .╬ 7000 77╞╞ 6000 0400 9000
  94. .╬ 77├─ 77╞╞ 6000 0400 9000 ╫
  95.  
  96. ╘HE FIRST LINE FIXES ALL THREE BYTE INSTRUCTIONS IN THE RANGE $7000 TO $77╞╞ BY ADDING $6000 OFFSET TO THE BYTES FOLLOWING THE INSTRUCTION. ╬EW LOCATOR WILL NOT ADJUST ANY INSTRUCTION OUTSIDE OF THE $0400 TO $├000 RANGE. ╘HE SECOND LINE ADJUSTS .WORD VALUES IN THE SAME RANGE AS THE FIRST LINE. ╬EW LOCATOR STOPS AND DISASSEMBLES ON ANY BAD OP CODE.
  97.  
  98. ╥EGISTER ─ISPLAY
  99.  
  100. .╥
  101.  
  102.     ╨├  ╔╥╤  ╙╥ ┴├ ╪╥ ┘╥ ╙╨
  103. .; 0000 ┼62┼ 51 ─┼ 03 04 05
  104.  
  105. ─ISPLAYS THE REGISTER VALUES. ╘HE VALUES MAY BE CHANGED BY EDITING THEM AND PRESSING [╥┼╘╒╥╬].
  106.  
  107. ╙AVE
  108.  
  109. .╙"FILENAME",01,0800,0├80
  110.  
  111. ╙AVE TO CASSETTE THE CONTENTS OF LOCATIONS $0800 UP TO (NOT INCLUDING) $0├80.
  112.  
  113. .╙"FILENAME",08,0800,0├80
  114.  
  115. ╙AVE TO DISKETTE THE CONTENTS OF LOCATIONS $0800 UP TO (NOT INCLUDING) $0├80.
  116.  
  117. ┬┼╫┴╥┼: ╙AVE TO TAPE WITH FILENAME BREAKS THE ╔╥╤ SAVED BY THE MONITOR.
  118.  
  119. ╘RANSFER ═EMORY
  120.  
  121. .╘ 1000 1100 5000
  122.  
  123. ╘RANSFER MEMORY IN THE RANGE $1000   TO $1100 AND START STORING IT AT $5000.
  124.  
  125. ╫ALK ├ODE
  126.  
  127. .╫
  128.  
  129. ╙INGLE STEP STARTING AT THE ADDRESS IN THE ╨├.
  130.  
  131. .╫ 1000
  132.  
  133. ╙INGLE STEP STARTING AT $1000. ╫ALK WILL CAUSE A SINGLE STEP TO EXECUTE AND WILL DISASSEMBLE THE NEXT INSTRUCTION. ╙TEP SPEED MAY BE CONTROLLED WITH [<] FOR ╙╔╬╟╠┼ ╙╘┼╨, [╥╓╙] FOR ╙╠╧╫, AND [╙╨┴├┼] FOR ╞┴╙╘.
  134.  
  135. ┼XIT TO ┬┴╙╔├
  136.  
  137. .╪
  138.  
  139. ╥ETURN TO ┬┴╙╔├ READY MODE. ╘HE STACK VALUE SAVED WHEN ENTERED WILL BE RESTORED. ├ARE SHOULD BE TAKEN THAT THIS VALUE IS THE SAME AS WHEN THE MONITOR WAS ENTERED. ┴ ├╠╥ OR ANYTHING THAT WOULD CAUSE A ╙┘╬╘┴╪ ┼╥╥╧╥ IN ┬┴╙╔├ WILL FIX ANY STACK PROBLEMS.
  140.  
  141. ╘HIS COMMAND WILL EXIT TO ┬┴╙╔├ READY MODE. ╒SE ╙UPER ┴IDE'S ╥┼╙╘╧╥┼ ═ KEY SEQUENCE AND ALL STACK PROBLEMS WILL BE HANDLED PROPERLY. ╧THERWISE ╪-═ON MAY LEAVE TWO BYTES OF GARBAGE ON THE STACK. ╘HIS IS NOT FATAL FOR A LONG TIME, BUT IT IS ANNOYING!
  142.  
  143. ╨RINTED ╧UTPUT
  144.  
  145. ╨RINTED OUTPUT CAN BE OBTAINED FROM  ANY ┼╪╘╥┴═╧╬ COMMAND BY TYPING A '*'. ╬OTE:╙UPER ┴IDE'S ╥┼╙╘╧╥┼ ╨ COMMAND WILL NOT WORK HERE.
  146.