home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / mbug / mbug048.arc / Z8E.DOC < prev   
Text File  |  1979-12-31  |  62KB  |  1,541 lines

  1. .HE                  Z8E DEBUGGING TOOL A to Z INSTRUCTIONS
  2.  
  3.                                A    Assemble
  4.      _________________________________________________________________
  5.  
  6.  
  7. Thσá ┴ commanΣ permit≤ thσ use≥ t∩ effec⌠ inlinσ assembl∙ oµ Z8░á assemble≥ ì
  8. sourcσ code¼á includinτ label≤ anΣ symbols¼á usinτ thσ ful∞ Z8░ instructioε ì
  9. set«á Iε addition¼ thσ assemble≥ accept≤ standarΣ Ziloτ mnemonic≤ (APPENDI╪ ì
  10. B)¼á expression≤ usinτ thσ ½ anΣ - operators¼ a≤ wel∞ a≤ thσ followinτ fivσ ì
  11. assemble≥ directives║á ORG¼á DEFB¼á DDB¼á EQU¼ anΣ DEFW«  Thσ forma⌠ oµ thσ ì
  12. commanΣ is:
  13.  
  14.      *A  ARG1  <cr>
  15.  
  16.   áááwherσá ARG▒ represent≤ thσ startinτ addres≤ a⌠ whicΦ assembl∙ wil∞ takσ ì
  17. áááááplace
  18.  
  19.    ááARG1 may be of any type
  20.  
  21. Z8┼á initiall∙á prompt≤ thσ use≥ b∙ firs⌠ disassemblinτ anΣ displayinτá thσ ì
  22. instructioεá currentl∙ locateΣ a⌠ thσ addres≤ specifieΣ b∙ ARG1«á  Thi≤á i≤ ì
  23. donσ a≤ ß conveniencσ t∩ permi⌠ thσ use≥ t∩ ensurσ tha⌠ an∙ patche≤ wil∞ bσ ì
  24. assembleΣá int∩á memor∙á a⌠ thσ intendeΣá location«á  Z8┼á theεá output≤á ß ì
  25. carriagσá return/linσá feed¼á display≤ thσ addres≤ specifieΣ a≤á ARG1¼á anΣ ì
  26. await≤á input«á Z8┼ wil∞ no⌠ disassemblσ beforσ ever∙ linσ oµá sourcσá codσ ì
  27. entereΣ b∙ thσ user¼ onl∙ beforσ thσ firs⌠ one« 
  28.  
  29. Z8E expect≤ assembler input in the following format:
  30.  
  31.      LABEL:  opcode  [operand1] [,operand2]
  32.  
  33. Thσá labe∞ fielΣ i≤ alway≤ optional¼á thσ opcodσ fielΣ i≤ mandator∙ onl∙ iµ ì
  34. n∩ labe∞ wa≤ entered¼á anΣ thσ operanΣ fielΣ mus⌠ naturall∙ bσ includeΣ fo≥ ì
  35. thosσ Z8░ instruction≤ whicΦ requirσ one« Thσ threσ field≤ ma∙ bσ separateΣ ì
  36. froφ onσ anothe≥ b∙ space≤ o≥ taΓ characters.
  37.  
  38. Z8┼á doe≤ no⌠ automaticall∙ reservσ spacσ withiε itselµ fo≥á use≥á supplieΣ ì
  39. symbo∞ names« Use≥ supplieΣ symbols¼ a≤ opposeΣ t∩ thosσ loadeΣ froφ files¼ ì
  40. arσá entereΣ froφ thσ keyboarΣ iε thσ labe∞ fielΣ usinτ thσ (A)ssemblσ comì
  41. mand«á Symbo∞á tablσá spacσá t∩á holΣ use≥ supplieΣ symbo∞á name≤á mus⌠á bσ ì
  42. explicitl∙á requesteΣ oε thσ CP/═ commanΣ linσ a≤ explaineΣ iε thσá sectioε ì
  43. "INVOKIN╟ Z8┼ a⌠ oε thσ CP/═ COMMAN─ LEVEL"«á Thesσ use≥ supplieΣá symbols¼ ì
  44. oncσá entered¼á ma∙á bσ referenceΣ iε thσ operanΣ fielΣ oµá an∙á subsequen⌠ ì
  45. assembl∙á statemen⌠á o≥á iε thσ argumen⌠ fielΣ oµ an∙á Z8┼á command«á Thesσ ì
  46. symbol≤á comσá iε hand∙ wheε disassemblinτ .CO═ file≤ fo≥ whicΦá n∩á sourcσ ì
  47. listinτ exist≤ anΣ als∩ wheε patchinτ code.
  48.  
  49. Thσá assemble≥á i≤ ß onσ pas≤ assemble≥ anΣ forwarΣ reference≤á t∩á symbol≤ ì
  50. whicΦá d∩á no⌠ alread∙ appea≥ iε thσ symbo∞ tablσ arσá flaggeΣá a≤á errors«   ì
  51. However¼á Z8┼á allow≤á thσ usσ oµ thσ OR╟ directivσ (seσ discussioεá below⌐ ì
  52. whicΦ allow≤ thσ use≥ t∩ manipulatσ thσ assembler'≤ locatioε counter¼ whicΦ ì
  53. help≤ t∩ minimizσ thσ n∩ forwarΣ referencσ limitation.
  54.  
  55. Label≤ ma∙ begiε iε an∙ column¼á bu⌠ al∞ label≤ mus⌠ bσ followeΣ b∙ ß coloε ì
  56. eveε thosσ appearinτ iε aε EQ╒ statement«á  Label≤ ma∙ bσ oµ an∙ lengtΦ bu⌠ ì
  57. onl∙ thσ firs⌠ ╢ character≤ arσ significant«  Z8┼ alway≤ assign≤ thσ 1╢ bi⌠ ì
  58. valuσá oµá thσá assembler'≤á curren⌠ locatioε counte≥ t∩á thσá labe∞á beinτ ì
  59. entered¼ unles≤ thσ statemen⌠ i≤ aε EQ╒ directive«  Label≤ neeΣ no⌠ bσ folì
  60. loweΣá b∙á aεá opcodσ anΣ thi≤ (a≤ wel∞ a≤ thσ EQ╒á directive⌐á provide≤á ß ìèconvenien⌠á wa∙ t∩ assigε ß valuσ t∩ ß symbo∞ name«á  Merel∙ se⌠ thσá asseφ ì
  61. bler'≤á locatioε counte≥ (viß thσ OR╟ directivσ o≥ a≤ ARG▒ iεá thσá commanΣ ì
  62. line⌐á t∩ thσ valuσ yo⌡ wisΦ t∩ assign¼á theε typσ thσ symbo∞ namσ followeΣ ì
  63. b∙ ß carriagσ return«á  N∩ objec⌠ codσ i≤ produceΣ anΣ n∩ use≥ memor∙ area≤ ì
  64. arσá modifieΣ bu⌠ thσ symbo∞ anΣ it≤ associateΣ valuσ arσ entereΣ int∩á thσ ì
  65. use≥ symbo∞ table«á   Z8┼ doe≤ no⌠ trea⌠ duplicatσ symbo∞ name≤ a≤á errors«  ì
  66. Rather¼á iµá thσá use≥á enter≤ ß symbo∞ namσ whicΦ alread∙ appear≤á iεá thσ ì
  67. symbo∞á table¼á thσ valuσ associateΣ witΦ thσ ne≈ symbo∞ replace≤á thσá onσ ì
  68. associateΣ witΦ thσ old«á  Fo≥ example¼á iµ thσ symbo∞ ENTRY╨ exist≤ iε thσ ì
  69. symbo∞á tablσ anΣ i≤ associateΣ witΦ thσ valuσ 23D┴ anΣ thσ use≥á assemble≤ ì
  70. thσ followinτ instruction:
  71.  
  72.      41FF 0E 04       ENTRYP: LD C,4
  73.      Z8E would replace 23DA with 41FF.
  74.  
  75. Assemble≥á statement≤ whicΦ d∩ no⌠ contaiε label≤ ma∙ begiε iε an∙á column¼ ì
  76. includinτá columε one«á  Therσ i≤ N╧  neeΣ t∩ inser⌠ ß leadinτ spacσ o≥ taΓ ì
  77. beforσ aε opcodσ iµ thσ opcodσ i≤ no⌠ precedeΣ b∙ ß label.
  78.  
  79. Operand≤ appearinτ iε thσ operanΣ fielΣ oµ thσ instructioε t∩ bσá assembleΣ ì
  80. ma∙á bσ an∙ oµ thσ followinτ type≤ subjec⌠ onl∙ t∩ thσ provis∩ tha⌠ 1╢á bi⌠ ì
  81. value≤á canno⌠ appea≥ a≤ operanΣ fo≥ thosσ Z8░ instruction≤ whicΦ requirσ ╕ ì
  82. bi⌠á values«á  Expression≤ combininτ an∙ oµ thσ followinτ fou≥ type≤á (witΦ ì
  83. thσ ½ anΣ - operators⌐ arσ als∩ permissable«  
  84.  
  85.        SYMBOL  (from symbol table)
  86.        HEX
  87.        LITERAL (two bytes maximum)
  88.        DECIMAL
  89.  
  90. Iεá additioε thσ dolla≥ sigε ($⌐ ma∙ als∩ appea≥ iε botΦ thσ operanΣá fielΣ ì
  91. oµá an∙ instructioε iε whicΦ ß 1╢ bi⌠ operanΣ i≤ allowed¼á anΣ als∩ iεá thσ ì
  92. operanΣ fielΣ oµ an∙ relativσ jum≡ instruction«  Thσ dolla≥ sigε represent≤ ì
  93. thσ curren⌠ valuσ oµ thσ assembler'≤ locatioε counter¼ tha⌠ is¼ thσ addres≤ ì
  94. appearinτ oε thσ linσ a⌠ whicΦ thσ assembl∙ i≤ takinτ place.
  95.  
  96. Thσá operanΣ fielΣ oµ ß relativσ jum≡ instructioε caε bσ entereΣ iεá eithe≥ ì
  97. oµá tw∩á ways«á  Thσá use≥á ma∙ codσ thσá operanΣá usinτá thσá dolla≥á sigε  ì
  98. mentioneΣ abovσ a≤ iε thσ followinτ examples:
  99.  
  100.   JR  NZ,$+11   áá  ;jump to address PC+11 (hex)     
  101.   DJNZ  $-24#       ;jump to address PC-24 (decimal)
  102.  
  103. Thσ use≥ ma∙ alternativel∙ specif∙ ß 1╢ bi⌠ valuσ iε thσ operanΣ fielΣ oµ ß ì
  104. relativσá jum≡ instructioε anΣ le⌠ Z8┼ calculatσ thσ relativσá displacemen⌠ ì
  105. froφ thσ assembler'≤ prograφ counte≥ a≤ showε below:
  106.  
  107.   JRá   C,LABEL      Assuminτá LABE╠ exists¼á iε thσ symbo∞  tablσ Z8┼á wil∞ ì
  108. áááááááááááááááááááácalculatσ thσ offset«á LABE╠ mus⌠ bσ withiε +12╣ o≥ -12╢  ì
  109.                     byte≤ froφ thσ assembler'≤ locatioε  counte≥ o≥ aε asse-ì
  110. áááááááááááááááááááámbl∙ erro≥ wil∞  result.
  111.  
  112.   JRáá    NZ,1080á  Z8┼á calculate≤ thσ displacemen⌠ betweeε thσ assembler'≤ ì
  113. áááááááááááááááááááácurren⌠ locatioε counte≥ anΣ thσ addres≤ 108░  (hex).
  114.    
  115. Z8┼á indicate≤á  error-freσ inpu⌠ b∙ firs⌠ displayinτ thσ resultan⌠á objec⌠ ì
  116. codσá anΣá theεá displayinτ (oε thσ nex⌠ line⌐ thσ nex⌠á addres≤á a⌠á whicΦ ì
  117. assembl∙ wil∞ takσ place«  Assembl∙ error≤ arσ alway≤ indicateΣ b∙ ß doublσ ì
  118. pai≥á oµá questioε mark≤ whicΦ appea≥ followinτ thσ locatioεá counter«á  Aε ìèerro≥ flaτ i≤ als∩ printeΣ anΣ wil∞ bσ onσ oµ thσ following:
  119.  
  120.         ERROR FLAG               MEANING
  121.  
  122.             Láá     Label starts with numeric character
  123.  
  124.             O       InvaliΣ opcode
  125.  
  126.             SáááááááSyntax error
  127.  
  128.             T       Symbol table full  
  129.  
  130.             Uáá     Instructioε reference≤ aε undefined symbol name
  131.  
  132.             Vá      Valuσ erro≥ - ß 1╢ bi⌠ valuσ wa≤ specifieΣ a≤ aε operanΣ ì
  133. ááááááááááááááááááááfo≥ aε instructioε whicΦ permit≤ onl∙ ╕ bi⌠ numbers.
  134.  
  135. Iµá aεá erro≥ occurs¼á Z8┼ wil∞ repromp⌠ thσ use≥ witΦá thσá samσá locatioε ì
  136. counte≥ address.
  137.  
  138. A≤áá wa≤á mentioneΣá previousl∙á thσá Z8┼á assmeble≥á use≤á standarΣá Ziloτ ì
  139. mnemonics«á  Thσá onσ exceptioε t∩ thi≤ i≤ thσ E╪ AF,AFºá instruction«á  T∩ ì
  140. assemblσ thi≤ instructioε thσ trailinτ quotσ characte≥ mus⌠ bσ omitted.
  141.  
  142. Z8┼ support≤ thσ OR╟ directivσ whicΦ allow≤ thσ use≥ t∩ changσ thσ valuσ oµ ì
  143. thσ assembl∙ locatioε counter«á Thσ operanΣ fielΣ oµ thσ OR╟ directivσá ma∙ ì
  144. bσ ß 1╢ bi⌠ argumen⌠ oµ an∙ type«á  Afte≥ settinτ thσ ne≈ assembl∙ locatioε ì
  145. counte≥ Z8┼ display≤ thσ disassembleΣ instructioε a⌠ thσ ne≈ address.
  146.  
  147. Z8┼á support≤ thσ DEFB¼á DEFW¼á anΣ DD┬ directive≤ whicΦ givσ thσ use≥á thσ ì
  148. abilit∙á t∩á assemblσ datß constant≤ int∩ memory«á  DEF┬ accept≤ aεá ╕á bi⌠ ì
  149. operand╗á thσá valuσá oµ whicΦ iε placeΣ int∩ memor∙ a⌠ thσ addres≤ oµá thσ ì
  150. assembler'≤ curren⌠ locatioε counter«  DEF╫ allow≤ thσ use≥ t∩ specif∙ ß 1╢ ì
  151. bi⌠ operanΣ value¼ thσ lo≈ orde≥ bytσ oµ whicΦ i≤ placeΣ int∩ memor∙ a⌠ thσ ì
  152. addres≤ oµ thσ assembler'≤ curren⌠ locatioε counter¼á whilσ thσ higΦá orde≥ ì
  153. bytσ oµ thσ operanΣ i≤ placeΣ int∩ memor∙ a⌠ thσ addres≤ oµ thσ assembler'≤ ì
  154. curren⌠ locatioε counte≥ plu≤ one«á Thi≤ i≤ iε accordancσ witΦ thσ 8080/Z8░ ì
  155. conventioεá oµá storinτ thσ higΦ orde≥ bytσ oµ 1╢ bi⌠ datß towarΣ thσá higΦ ì
  156. enΣá oµ memory«á Thσ DD┬ (definσ doublσ byte⌐ directivσ allow≤ thσ use≥á t∩ ì
  157. specif∙ ß 1╢ bi⌠ valuσ which¼á iε contras⌠ t∩ thσ DEF╫ directive¼ i≤ storeΣ ì
  158. iε memor∙ witΦ thσ higΦ orde≥ bytσ towarΣ thσ lo≈ enΣ oµ memory«á  Tha⌠ is¼ ì
  159. ß DD┬ directivσ instruct≤ Z8┼ t∩ storσ thσ mos⌠ significan⌠ bytσ oµ thσá 1╢ ì
  160. bi⌠á operanΣá valuσá iε memor∙ a⌠ thσ addres≤ oµá thσá assembler'≤á curren⌠ ì
  161. locatioε counter¼ anΣ thσ leas⌠ significan⌠ (lo≈ order⌐ bytσ i≤ placeΣ int∩ ì
  162. memor∙ a⌠ thσ addres≤ oµ thσ assembler'≤ curren⌠ locatioε counte≥ plu≤ one« 
  163.  
  164. Thσá EQ╒ directivσ allow≤ thσ use≥ t∩ assigε ß valuσ t∩ ß symbol«á  Aεá EQ╒ ì
  165. directivσá doe≤á no⌠ generatσ objec⌠ code«á  I⌠ merel∙ allow≤ thσá use≥á t∩ ì
  166. referencσá ß numeriπ valuσ b∙ ß symboliπ namσ iε subsequen⌠ assembl∙ stateì
  167. ment≤á o≥á monito≥ commands«á  I⌠ i≤ especiall∙ usefu∞ wheε useΣá prio≥á t∩ ì
  168. disassemblinτ (seσ ┌ command⌐ codσ fo≥ whicΦ n∩ symbo∞ tablσá exists«á  Thσ ì
  169. EQ╒á directivσá require≤á thσ use≥ t∩ suppl∙ ß symboliπ namσ iεá thσá labe∞ ì
  170. fielΣ oµ thσ instruction«á  Iµ Z8┼ indicate≤ error≤ iε aε EQ╒ statemen⌠á b∙ ì
  171. printinτá questioεá marks«á  Iµ aε EQ╒ statemen⌠ i≤ correctl∙ assembleΣá b∙ ì
  172. Z8E¼á thσá addres≤á oµ thσ assembler'≤ curren⌠ locatioε counte≥á i≤á eraseΣ ì
  173. sincσ aε EQ╒ statemen⌠ generate≤ n∩ objec⌠ code«  Operand≤ appearinτ iε EQ╒ ì
  174. statement≤á arσ evaluateΣ t∩ ß 1╢ bi⌠ value«á Z8┼ wil∞ displa∙ thσ valuσ oµ ì
  175. thi≤á 1╢á bi⌠á numbe≥ a≤ fou≥ he° digit≤ iε thσ objec⌠ codσá fielΣá oεá thσ ì
  176. console.è                           B    Set Breakpoint 
  177.  
  178. Breakpoint≤ arσ thosσ addresse≤ a⌠ whicΦ thσ use≥ wishe≤ t∩ suspenΣá execuì
  179. tioεá oµá thσ prograφ unde≥ test«á  Breakpoint≤ ma∙ bσ se⌠ a⌠ an∙á timσá iε ì
  180. responsσá t∩á Z8E'≤ asterisδ prompt«á  Z8┼ allow≤ thσ use≥ t∩ se⌠ u≡ t∩á 1╢ ì
  181. individua∞ breakpoint≤ iε hi≤ program«á Z8┼ als∩ allow≤ thσ use≥ t∩ specif∙ ì
  182. ß pas≤ coun⌠ t∩ bσ associateΣ witΦ an∙ breakpoint.
  183.   ì
  184. Thσ commanΣ i≤ invokeΣ a≤ follows:
  185.  
  186.  
  187.      *B ARG1[,pass count] [ARG2... ARGn] <cr>
  188.  
  189.   áááwherσ eacΦ argumen⌠ represent≤ thσ addres≤ iε thσ use≥ prograφ a⌠ whicΦ ì
  190. áááááß breakpoin⌠ i≤ t∩ bσ se⌠ 
  191.  
  192.  
  193. Normally¼á tha⌠á i≤ wheε n∩ pas≤ coun⌠ i≤ specifed¼á executioε oµ thσá use≥ ì
  194. prograφá stop≤á anΣ contro∞ return≤ t∩ thσ Z8┼ commanΣ leve∞ a≤ sooεá a≤á ß ì
  195. breakpoin⌠ i≤ reached« Pas≤ count≤ arσ useΣ t∩ inforφ Z8┼ tha⌠ executioε oµ ì
  196. thσ use≥ prograφ shoulΣ hal⌠ onl∙ wheε thσ specifieΣ breakpoin⌠ i≤á reacheΣ ì
  197. thσ numbe≥ oµ time≤ time≤ indicateΣ b∙ thσ pas≤ count« 
  198.  
  199.  
  200. Pas≤á count≤ arσ specifieΣ b∙ followinτ thσ breakpoin⌠ addres≤ witΦ ß commß ì
  201. anΣ theε enterinτ ß pas≤ coun⌠ immediatel∙ followinτ thσ comma.
  202.  
  203.  
  204. Aεá existinτ pas≤ coun⌠ ma∙ bσ changeΣ t∩ ß differen⌠ valuσ b∙á re-enterinτ ì
  205. thσ samσ breakpoin⌠ address¼ followinτ i⌠ witΦ ß comma¼ anΣ theε specifyinτ ì
  206. thσ ne≈ pas≤ count.
  207.  
  208.  
  209. T∩ breaδ oε ß multibytσ Z8░ instructioε thσ addres≤ specifieΣ a≤ thσ breakì
  210. poin⌠ addres≤ mus⌠ bσ tha⌠ oµ thσ firs⌠ bytσ oµ thσ instruction«  User≤ wh∩ ì
  211. fai∞á t∩ observσ thi≤ rulσ wil∞ generall∙ finΣ thei≥ program≤á hoppinτá thσ ì
  212. nex⌠ bu≤ t∩ never-neve≥ land«á Iµ ß patcΦ i≤ madσ a⌠ aε addres≤ oµ ß breakì
  213. poin⌠á currentl∙ iε effec⌠ bσ surσ thσ breakpoin⌠ addres≤ i≤ stil∞ pointinτ ì
  214. a⌠ thσ firs⌠ bytσ oµ thσ ne≈ instruction«  
  215.  
  216.  
  217. Multiplσ breakpoint≤ ma∙ bσ se⌠ witΦ thσ samσ ┬ commanΣ b∙ separatinτá eacΦ ì
  218. onσá witΦá ß singlσ space«á  Iµ multiplσ breakpoint≤ arσ specifieΣ anΣá Z8┼ ì
  219. detect≤á aεá erroneou≤á argumen⌠á (ß non-existen⌠á symbo∞á fo≥á example⌐á ß ì
  220. questioεá marδá wil∞ bσ printed¼á anΣ thσ commanΣá terminates«á  Al∞á valiΣ ì
  221. breakpoint≤ specifieΣ u≡ t∩ thσ invaliΣ onσ wil∞ bσ set« 
  222.  
  223.  
  224. Z8┼á display≤ ß questioε marδ wheε ß attemp⌠ i≤ madσ t∩ se⌠á ßá seventeentΦ ì
  225. breakpoint.
  226. .PAè                          ├    Clea≥ Breakpoin⌠ 
  227.  
  228. Thσá ├ commanΣ clear≤ individua∞ breakpoint≤ previousl∙ se⌠ b∙ ß ┬ command«  ì
  229. Thσ forma⌠ oµ thσ commanΣ is:
  230.  
  231.  
  232.      *C  ARG1 [ARG2...ARGn] <cr>
  233.  
  234.  
  235.    ááwherσá eacΦá arτ ma∙ bσ an∙ valiΣ argumen⌠ typσ whicΦ evaluate≤á t∩á aε ì
  236. áááááaddres≤ previousl∙ se⌠ a≤ ß breakpoint
  237.  
  238.  
  239. áááááMultiplσ breakpoint≤ ma∙ bσ cleareΣ b∙ thσ samσ ├ commanΣ b∙ separatinτ ì
  240. áááááeacΦ argumen⌠ witΦ ß singlσ space.
  241.  
  242.  
  243. áááááZ8┼á display≤á ßá questioεá marδ wheε aε attemp⌠ i≤á madσá t∩á clea≥á ß ì
  244. ááááánonexisten⌠ breakpoint.
  245.  
  246.  
  247. áááááT∩á clea≥ AL╠ breakpoint≤ enter║á  *├ ¬   wherσ thσ asterisδá indicate≤ ì
  248. áááááALL.
  249.  
  250. .PAè                                 D   Dump 
  251.  
  252. Thσ ─ commanΣ allow≤ thσ use≥ t∩ dum≡ memor∙ iε botΦ hexadecima∞ anΣá ASCI╔ ì
  253. t∩ thσ consolσ iε use≥ specifieΣ blocδ sizes.
  254.  
  255.  ì
  256. The forma⌠ oµ thσ commanΣ is:
  257.  
  258.  
  259.   *D  [ARG1]  [ARG2]  <cr>
  260.  
  261.  
  262.   where   ARG1 =  the starting address to dump
  263.  
  264.  
  265.       ááááARG▓ ╜ dictate≤ thσ dum≡ forma⌠ dependinτ oε it≤ value«á  Iµá ARG▓ ì
  266. áááááááááái≤á iεá thσ rangσ ░ - 25╡ theε i⌠ i≤ treateΣ a≤ ß blocδá sizσá anΣ ì
  267. áááááááááárepresent≤á thσá numbe≥ oµ byte≤ t∩ bσ displayeΣ (░ i≤ treateΣá a≤ ì
  268. áááááááááá256)«á Iµá ARG▓á i≤ greate≥ thaε 25╡ theε ARG▓ i≤á treateΣá a≤á aε ì
  269. ááááááááááendinτá addres≤ anΣ memor∙ wil∞ bσ dumpeΣ non-interactivel∙ t∩ thσ ì
  270. ááááááááááconsole.
  271.  
  272.  
  273.  
  274.   ááááá  ARG1 and ARG2 may be of any argument type.
  275.  
  276.  
  277.  
  278. Iµ ARG▒ i≤ omitteΣ theε thσ dum≡ resume≤ froφ thσ las⌠ memor∙ addres≤ +▒ a≤ ì
  279. displayeΣá viß thσ previou≤ invocatioε oµ thσ ─ command«á Iµ n∩ previou≤á ─ ì
  280. commanΣ haΣ beeε giveε theε memor∙ i≤ dumpeΣ startinτ a⌠ addres≤ 100H.
  281.  
  282.  
  283. Iµá ARG▓á i≤á omitteΣ theε thσ mos⌠ recen⌠ valuσ oµ ARG▓ (froφ thσá las⌠á ─ ì
  284. command⌐ i≤ used.
  285.  
  286.  
  287. Thσ dum≡ commanΣ display≤ thσ content≤ oµ memor∙ iε hexadecima∞ oε thσ lef⌠ ì
  288. sidσ oµ thσ consolσ whilσ thσ ASCI╔ equivalen⌠ oµ eacΦ bytσ i≤ showε oε thσ ì
  289. righ⌠ side«  
  290.  
  291.  
  292. Durinτá ß blocδ b∙ blocδ dum≡ (ARG▓ ╝ 25╢ signifie≤ ß blocδ b∙ blocδá dump⌐ ì
  293. Z8┼ wait≤ fo≥ use≥ inpu⌠ afte≥ eacΦ blocδ i≤ displayed«á  ┴ carriagσ returε ì
  294. entereΣ b∙ thσ use≥ cause≤ thσ nex⌠ sequentia∞ blocδ t∩ bσ dumpeΣ whilσ an∙ ì
  295. othe≥ characte≥ cause≤ thσ commanΣ t∩ terminate.
  296.  
  297.  
  298. Fo≥ non-interactivσ dumps¼ startinτ addres≤ t∩ endinτ address¼ pressinτ an∙ ì
  299. ke∙ terminate≤ thσ dump.
  300.  
  301.  
  302. Thσ dum≡ commanΣ provide≤ aε especiall∙ eas∙ wa∙ oµ examininτ tabula≥ data¼ ì
  303. fo≥ examplσ iε scanninτ thσ disδ paramete≥ header≤ iε you≥ BIOS«á  Tha⌠ is¼ ì
  304. b∙ specifyinτ thσ basσ addres≤ a≤ ARG▒ anΣ thσ tablσ sizσ a≤ ARG▓ thσá use≥ ì
  305. caε walδ througΦ memory¼ tablσ b∙ table.
  306. .PAè                          E    Examine Memory   
  307.  
  308. Thσ ┼ commanΣ allow≤ thσ use≥ t∩ examinσ anΣ optionall∙ modif∙ thσ content≤ ì
  309. oµ memory«  Thσ forma⌠ oµ thσ commanΣ is:
  310.  
  311.      *E   ARG1  <cr>
  312.  
  313.      wherσ ARG▒ i≤ thσ addres≤ oµ thσ firs⌠ bytσ t∩ examine
  314.  
  315.        ARG1 ma∙ bσ an∙ symbo∞ type ì
  316.  
  317. Upoεá receip⌠á oµ ARG▒ Z8┼ wil∞ reaΣ thσ content≤ oµ thσá specifieΣá memor∙ ì
  318. addres≤ anΣ displa∙ thσ bytσ iε botΦ he° anΣ ASCII«  A⌠ thi≤ poin⌠ thσ use≥ ì
  319. ha≤á tw∩ options«á Thσ use≥ ma∙ specif∙  replacemen⌠ datß t∩ bσ writteεá t∩ ì
  320. memor∙á startinτá a⌠ thσ curren⌠ address¼á o≥ hσ ma∙ choosσ t∩ continuσá t∩ ì
  321. passivel∙á examinσ memory«á  Thσ choicσ i≤ determineΣ b∙á thσá character(s⌐ ì
  322. whicΦ arσ inpu⌠ afte≥ thσ content≤ oµ aε addres≤ arσ displayed«  
  323.  
  324. Iµ thσ use≥ wishe≤ t∩ modif∙ memor∙ startinτ a⌠ thσ curren⌠ memor∙ address¼ ì
  325. theεá aε ARGUMENT-STRIN╟ ma∙ bσ entereΣ followinτ thσ displayeΣ byte«á  Z8┼ ì
  326. wil∞á evaluatσ thσ entirσ strinτ anΣ writσ thσ evaluateΣ equivalen⌠ oµá thσ ì
  327. strinτá int∩ consecutivσ memor∙ location≤ startinτ witΦ thσ curren⌠á memor∙ ì
  328. address« Fo≥ examplσ thσ use≥ coulΣ ente≥ thσ followinτ ARGUMENT-STRING║ 
  329.  
  330.  
  331.      *E 45F9
  332.  
  333.      45F9  42  B  'This is a string',0D,0A,13,4F,9,'More Text',05
  334.                   ^                                             ^  
  335.  
  336. áááááThσ use≥ inpu⌠ appear≤ betweeε thσ arrow≤ anΣ woulΣ bσ evaluateΣ t∩ thσ ì
  337. áááááfollowinτ 3▒ bytes║ 
  338. áá  
  339.  
  340.     áá54 68 69 73 20 49 73 20 61 20 73 74 72 69 6E 67 
  341. áá    0D 0A 13 4F 09 4D 6F 62 65 20 74 65 78 74 05  
  342.  
  343.  
  344. áááááThesσá 3▒ byte≤ woulΣ bσ storeΣ int∩ memor∙ location≤ 45F╣ t∩ 461╖á anΣ ì
  345. áááááthσ nex⌠ addres≤ displayeΣ oε thσ screeε woulΣ bσ 4618.
  346.  
  347. ááááá4618  23  #
  348.  
  349. Remembe≥á tha⌠á ARGUMENT-STRING╙á ma∙ bσ terminateΣ b∙á eithe≥á ßá carriagσ ì
  350. returεá o≥ b∙ thσ firs⌠ spacσ characte≥ whicΦ doe≤ no⌠ appea≥ iεá ßá quoteΣ ì
  351. litera∞ string«á Thσ choicσ oµ terminato≥ determine≤ thσ whicΦ addres≤ wil∞ ì
  352. bσ displayeΣ next«  Iµ ß carriagσ returε i≤ useΣ t∩ terminatσ thσ ARGUMENT-ì
  353. STRING¼á theεá Z8┼á wil∞ displa∙ thσ nex⌠ sequentia∞á memor∙á address«á Fo≥ ì
  354. example:
  355.  
  356.   *E 1002
  357.   1002  45  E  12,8F,00 <cr>
  358.   1005  28  (
  359.  
  360.  
  361. Thσá use≥á entereΣá aε ARGUMENT-STRIN╟ 12,8F,0░ whicΦ wa≤á evaluateΣá t∩á │ ì
  362. bytes«á  Sincσá thσ ARGUMENT-STRIN╟ wa≤ terminateΣ b∙ ß carriagσ returε thσ ì
  363. nex⌠ addres≤ displayeΣ wa≤ 1002+│ o≥ 1005« 
  364. èB∙á terminatinτá thσ ARGUMENT-STRIN╟ witΦ ß spacσ thσ use≥ caεá verif∙á thσ ì
  365. content≤ oµ memor∙ jus⌠ modified«á  ARGUMENT-STRING╙ terminateΣ b∙ ßá spacσ ì
  366. causσá Z8┼á t∩á redispla∙ thσ startinτ address╗á thi≤ make≤ thσá datßá jus⌠ ì
  367. entereΣ availalbσ fo≥ re-inspection:
  368.  
  369.  
  370.   *E 1002
  371.   1002  45  E  12,8F,00  <space>
  372.   1002  12  ~
  373.  
  374.  
  375. Iµ thσ use≥ doe≤ no⌠ wan⌠ t∩ writσ an∙ datß t∩ thσ curren⌠ memor∙á address¼ ì
  376. theεá thσ characte≥ entereΣ shoulΣ bσ ß spacσ character¼á u≡ arro≈ (carret⌐ ì
  377. character¼ o≥ ß carriagσ return.
  378.  
  379.  
  380.   CHARACTER     ACTION
  381.  
  382. ááááááá
  383.     space       reaΣ nex⌠ sequentia∞ memor∙ addres≤ 
  384.     
  385.  
  386.   up arrow    ááreaΣ previou≤ memor∙á addres≤ 
  387.         áááááááááááááááááááááááááááááááááááááááá     
  388.  
  389.     <cr>ááááááááreaΣ nex⌠ sequentia∞ memor∙ address command  
  390.  
  391.  
  392.    periodáááááá terminate commandáááááá     áááááááááááááááááááááááááááááááááá
  393.  
  394.  
  395.  
  396. Thσá use≥ ma∙ als∩ changσ thσ curren⌠ memor∙ addres≤ b∙ enterinτá aεá equa∞ ì
  397. sigε "=ó followeΣ b∙ ß valiΣ argument«á  Thσ addres≤ obtaineΣ b∙ evaluatinτ ì
  398. thi≤ argumen⌠ become≤ thσ ne≈ curren⌠ memor∙ addres≤ a≤ showε below║ 
  399.  
  400.  
  401.       *E 1344
  402.       1344  89  ~  <cr>
  403.       1345  6F  o  <cr>
  404.       1346  52  R  =9F34 <cr>
  405.       9F34  63  c
  406. .PAè                                 F    Find 
  407.  
  408.  
  409. Thσá finΣ commanΣ allow≤ thσ use≥ t∩ searcΦ memor∙ fo≥ multibytσ string≤ iε ì
  410. memory«  Thσ forma⌠ oµ thσ commanΣ is:
  411.  
  412.  
  413.      *F   ARG1  ARG2 <cr>
  414.  
  415.  
  416.   áááwherσ  ARG▒  ╜  thσ startinτ addres≤ a⌠ whicΦ t∩ begiε thσá search¼á i⌠ ì
  417. áááááma∙ bσ oµ an∙ type
  418. á
  419.  
  420. áááááARG▓á  ╜  i≤ aε ARGUMENT-STRIN╟ representinτ thσ patterε t∩ searcΦ for╗ ì
  421. áááááthσá use≥ ma∙ specif∙ an∙ combinatioε oµ argument≤ separateΣ b∙á comma≤ ì
  422. áááááo≥á space≤á u≡ t∩ thσ limi⌠ oµ Z8E'≤ commanΣ linσ buffe≥á whicΦá i≤á 8░ ì
  423. ááááábyte≤ long«  Thσ actua∞ numbe≥ oµ byte≤ searcheΣ fo≥ depend≤ oε ho≈ thσ ì
  424. ááááástrinτ i≤ ultimatel∙ evaluated.
  425.  
  426. ì
  427. áá    
  428. Z8┼á wil∞á displa∙ ever∙ addres≤ whicΦ contain≤ datßá matchinτá ARG2«á  Thσ ì
  429. searcΦ continue≤ unti∞ thσ enΣ oµ memor∙ i≤ reached.
  430.  
  431.  
  432. Thσá use≥ ma∙ elec⌠ t∩ cance∞ thσ searcΦ a⌠ an∙ timσ b∙ depressinτ an∙á ke∙ ì
  433. oε thσ keyboard.
  434.  
  435.  
  436. Iµ ARG▓ i≤ ß singlσ argumen⌠ (a≤ opposeΣ t∩ aε argumen⌠ string⌐ anΣ iµ thi≤ ì
  437. argumen⌠ i≤ ß symbo∞ namσ theε Z8┼ wil∞ reversσ thσ orde≥ oµ thσ tw∩á byte≤ ì
  438. comprisinτá thσá 1╢á bi⌠ operand«á Mos⌠ 1╢ bi⌠ value≤ iε Z8░á program≤á arσ ì
  439. storeΣá witΦá thσ leas⌠ significan⌠ bytσ a⌠ ß giveε addres≤á anΣá thσá mos⌠ ì
  440. significan⌠á bytσá a⌠ thσ giveε address+▒ (towarΣ thσ higΦ enΣ oµá memory)«  ì
  441. Thi≤á i≤á iεá accordancσá witΦá thσ Z8░á conventioεá oµá storinτá thσá mos⌠ ì
  442. significan⌠ bytσ oµ ß 1╢ bi⌠ argumen⌠ towarΣ thσ higΦ enΣ oµ memory.
  443.  
  444.  
  445. Thσ followinτ arσ example≤ oµ thσ FIN─ command:
  446.  
  447.  
  448.      *F 0 SYMBOL
  449.  
  450.  
  451. áááááAssuminτá tha⌠ thσ symbo∞ "SYMBOLó i≤ associateΣ witΦ thσ he° valuσ 3B╞ ì
  452. ááááátheε Z8┼ woulΣ attemp⌠ t∩ finΣ al∞ addres≤ containinτ thσ bytσ pai≥á B╞ ì
  453. áááááanΣ 0│ iε tha⌠ order¼á witΦ thσ searcΦ beginninτ a⌠ addres≤ 0000«  Notσ ì
  454. ááááátha⌠ thσ orde≥ oµ thσ tw∩ byte≤ i≤ reverseΣ becausσ thσ symbo∞ "SYMBOLó ì
  455. áááááexist≤á iε thσ symbo∞ table«á  T∩ searcΦ fo≥ thσ bytσ pai≥ 0│ anΣ B╞ iε ì
  456. ááááátha⌠á orde≥ thσ use≥ shoulΣ ente≥ thσ argumen⌠ a≤ eithe≥ ß 1╢á bi⌠á he° ì
  457. ááááánumbe≥ (3BF⌐ o≥ a≤ tw∩ ╕ bi⌠ he° number≤ (03,BF)«  
  458.  
  459.  
  460.  
  461.      *F 100 87,32#,'ABCD',0C3,symbol,'p',271F
  462.  
  463.  
  464. è     Assuminτ tha⌠ thσ symbo∞ "symboló i≤ associateΣ witΦ  thσ he° valuσ 3B╞ ì
  465. ááááátheεá Z8┼ woulΣ attemp⌠ t∩ finΣ al∞ startinτ addresse≤ oµ thσ followinτ ì
  466. ááááá1▓ bytσ string:
  467.  
  468.  
  469.     á87 20 41 42 43 44 C3 03 BF 70 27 1F
  470.  
  471.  
  472. áááááNoticσá tha⌠á Z8┼ woulΣ searcΦ fo≥ thσ tw∩ bytσ patterε 0│á B╞á a≤á thσ ì
  473. ááááávaluσá fo≥á "symbol"«á  Iµ thσ use≥ happeneΣ t∩ bσ tryinτ t∩á finΣá thσ ì
  474. áááááinstructioεá    J╨  symbo∞   thσ searcΦ woulΣ fai∞ becausσ a≤ mentioneΣ ì
  475. áááááabovσ 1╢ bi⌠ value≤ arσ storeΣ lo≈ orde≥ bytσ first«á  Thσ use≥á shoulΣ ì
  476. áááááhavσ entereΣ C│ B╞ 03.
  477.  
  478.  
  479. áááááThσ tw∩ byte≤ whicΦ represen⌠ thσ addres≤ oµ symbo∞ arσ no⌠ reverseΣ a≤ ì
  480. áááááiε thσ examplσ abovσ becausσ ARG▓ i≤ specifieΣ a≤ aε ARGUMENT-STRIN╟ a≤ ì
  481. áááááopposeΣ t∩ ß singlσ argument.
  482.  
  483.  
  484.      Z8E would begin its search at address 100 (ARG1). 
  485.  
  486. .PAè                                 G    Go 
  487.  
  488. Thσá ╟á commanΣá instruct≤ Z8┼ t∩ begiε o≥ resumσá executioεá oµá thσá use≥ ì
  489. program«  Thσ forma⌠ oµ thσ commanΣ is:
  490.  
  491.   *G   ARG1  <cr>
  492.  
  493.  
  494.      wherσáARG▒ ╜ thσ addres≤ oµ thσ firs⌠ instructioε thσ use≥ wishe≤ t∩ ì
  495.      execute.
  496.  
  497.  
  498.      ARG1 may be any argument type
  499.  
  500.  
  501. Upoεá receip⌠ oµ thi≤ commanΣ Z8┼ initialize≤ al∞ breakpoint≤ iεá thσá use≥ ì
  502. program¼á restore≤á al∞ use≥ registers¼á anΣ transfer≤ contro∞ t∩ thσá use≥ ì
  503. prograφ unde≥ tes⌠ a⌠ thσ addres≤ specifieΣ iε ARG1«á  Executioε withiε thσ ì
  504. use≥ prograφ wil∞ continuσ unti∞ thσ use≥ prograφ reache≤ ß breakpoint¼á a⌠ ì
  505. whicΦá poin⌠ contro∞ wil∞ returε t∩ Z8E«á  Thi≤ i≤ thσ onl∙ wa∙ thσ use≥ i≤ ì
  506. ablσ t∩ returε contro∞ t∩ Z8┼ oncσ thσ G╧ commanΣ i≤ issued.
  507.  
  508.  
  509. Z8┼ breakpoin⌠ techniquσ ha≤ beeε designeΣ sucΦ tha⌠ Z8┼ wil∞ no⌠á directl∙ ì
  510. initializσá ß breakpoin⌠ a⌠ thσ addres≤ specifieΣ iε ARG1«á Iε actualit∙ i⌠  ì
  511. woulΣá bσá impossiblσá t∩ d∩ s∩ sincσ aε attemp⌠ woulΣ bσá madσá t∩á resumσ ì
  512. executioεá a⌠á thi≤á address¼á ß breakpoin⌠ woulΣ havσá beeεá se⌠á a⌠á thi≤ ì
  513. address¼á anΣá contro∞ woulΣ immediatel∙ returε t∩ thσ monito≥ withou⌠ thi≤ ì
  514. instructioε eve≥ havinτ beeε executed«á   Thi≤ limitatioε ha≤ beeε overcomσ ì
  515. iε Z8┼ b∙ actuall∙ copyinτ thσ singlσ instructioε locateΣ a⌠ ARG▒ t∩á Z8E'≤ ì
  516. memory¼á THE╬á settinτá thσá breakpoin⌠ a⌠ thσ ARG▒á address¼á anΣá finall∙ ì
  517. executinτá thσá "movedó versioε oµ thσ instructioε iε Z8E'≤á memor∙á rathe≥ ì
  518. thaεá iεá thσá use≥ program«á Z8┼ compensate≤ fo≥ thσ fac⌠á tha⌠á CAL╠á anΣ ì
  519. RELATIV┼á JUM╨á instruction≤ arσ affecteΣ b∙ thσ addres≤ a⌠ whicΦ the∙á arσ ì
  520. executed« Thi≤ entirσ proces≤ i≤ totall∙ transparen⌠ anΣ i⌠ allow≤ thσ use≥ ì
  521. t∩á debuτ loop≤ b∙ settinτ onl∙ ß singlσ breakpoin⌠ withiε thσ rangσá oµá ß ì
  522. loop¼á obviate≤á thσ neeΣ t∩ clea≥ an∙ breakpoint≤ whicΦ arσ locateΣ a⌠ thσ ì
  523. addres≤á wherσá executioε i≤ t∩ resume¼á anΣ eveε allow≤ breakpoint≤á a⌠á ß  ì
  524. DJN┌  ñ   instructions!
  525.  
  526.  
  527. HINT:
  528.  
  529. Wheε proceedinτ froφ ß breakpoin⌠ i⌠ i≤ simples⌠ t∩ usσ thσ forφ oµ thσá G╧ ì
  530. command║á   *╟á   ╨á <cr╛    whicΦ inform≤ Z8┼ t∩ resumσ executioεá a⌠á thσ ì
  531. addres≤ specifieΣ b∙ thσ user'≤ curren⌠ prograφ counter«  
  532. .PAè                         H    Display Symbol Table
  533.  
  534. Thσ ╚ commanΣ allow≤ thσ use≥ t∩ vie≈ thσ symbo∞ tablσ oε thσ console«  Thσ ì
  535. forma⌠ oµ thσ commanΣ is:
  536.  
  537.  
  538.   *H   [ARG1]  <cr>
  539.  
  540.  
  541.        where ARG1 must be a symbol name
  542.  
  543.  
  544. Iµá ARG▒ i≤ omitteΣ Z8┼ wil∞ displa∙ thσ entirσ symbo∞ tablσ startinτá witΦ ì
  545. thσá firs⌠á symbo∞á iε thσ table«á  Iµ ARG▒ i≤ presen⌠ Z8┼ wil∞á begiεá thσ ì
  546. displa∙á witΦ tha⌠ symbol«á  Z8┼ display≤ ß blocδ oµ 3▓ symbol≤ theεá wait≤ ì
  547. fo≥ use≥ input«  Iµ thσ use≥ enter≤ ß carriagσ returε thσ thσ nex⌠ blocδ oµ ì
  548. 3▓á symbol≤á i≤á displayed«á Iµ thσ use≥ entere≤ an∙á othe≥á characte≥á thσ ì
  549. commanΣ terminates.
  550.  
  551.  
  552. Iµá ßá symbo∞ namσ entereΣ a≤ ARG▒ canno⌠ bσ founΣ iε thσ symbo∞á tablσá Z8┼ ì
  553. print≤ ß questioε mark.
  554. .PAè                              I    Input file
  555.  
  556. Thσá ╔á commanΣ allow≤ thσ use≥ t∩ loaΣ file≤ int∩ thσ TP┴ afte≥ thσá debuτ ì
  557. sessioε ha≤ started«  Thσ forma⌠ oµ thσ commanΣ is:
  558.  
  559.  
  560.      *I   ARG1[,ARG2]  <cr>
  561.  
  562.  
  563. áááááARG▒á i≤á ßá singlσ unambiguou≤ filσ namσ conforminτ t∩á standarΣá CP/═ ì
  564. ááááásynta° rules:
  565.  
  566. ááááááá
  567.      - optiona∞á drivσá namσ followeΣ b∙á ßá coloε  ì
  568.  
  569. ááááááá
  570. á ááá- mandatory primary file name
  571.  
  572.  
  573.  áááá- optiona∞á secondar∙ filσ namσ precedeΣ b∙ ß period      
  574.  
  575.  
  576. áááááARG▓á i≤ aε optiona∞ loaΣ address«á Iµ ARG▓ i≤ no⌠ specifieΣ thσá nameΣ ì
  577. áááááfilσá i≤ loadeΣ a⌠ thσ star⌠ oµ thσ TP┴ (addres≤ 10░ hex)«á  Iµ ARG▓ i≤ ì
  578. ááááágiveε thσ filσ wil∞ bσ loadeΣ a⌠ thi≤ address«á  Z8┼ wil∞ NO╘á relocatσ ì
  579. áááááindividua∞á addresse≤ withiε thσ filσ t∩ reflec⌠ thσ ne≈ loaΣá address«  ì
  580. áááááARG▓ ma∙ bσ oµ an∙ type.
  581.  
  582.  
  583. NOTE║  
  584.  
  585. Iµá n∩ argument≤ arσ entereΣ theε Z8┼ wil∞ redispla∙ thσ startinτá address¼ ì
  586. endinτ address¼ anΣ thσ numbe≥ oµ 25╢ bytσ page≤ oµ thσ las⌠ filσ loaded«  
  587.  
  588.  
  589. Iµá Z8┼ detect≤ ß erro≥ iε thσ filσ namσ specificatioε thσ messagσá "Synta° ì
  590. erroró i≤ printeΣ oε thσ consolσ anΣ thσ commanΣ terminates.
  591.  
  592.  
  593. Iµá Z8┼á i≤á unablσ t∩ locatσ thσ filσ oε thσ specifieΣ drivσá thσá messagσ ì
  594. "Filσ no⌠ foundó i≤ printeΣ oε thσ consolσ anΣ thσ commanΣ terminates.
  595.  
  596.  
  597. Z8┼á doe≤ no⌠ contaiε an∙ faciltie≤ fo≥ convertinτ .HE╪ (Inte∞ He°á format⌐ ì
  598. objec⌠ file≤ t∩ loadablσ memor∙ image«á  Al∞ files¼ regardles≤ oµ type¼ arσ ì
  599. loadeΣá int∩á memor∙ iε exactl∙ thσ samσ forφ a≤ the∙ appea≥ oεá disk«á  T∩ ì
  600. debuτá ß .HE╪ filσ thσ use≥ shoulΣ firs⌠ loaΣ thσ filσ witΦ thσá CP/═á LOA─ ì
  601. commanΣá anΣá savσá thσ filσ witΦ thσ CP/═ SAV┼ commanΣ whicΦá produce≤á aε ì
  602. absolutσá memor∙á imagσá loadablσ b∙ Z8E«á  Al∞ .CO═ file≤á arσá oµá coursσ ì
  603. alread∙ iε loadablσ forφ anΣ n∩ LOADinτ anΣ SAVEinτ i≤ required.
  604.  
  605.  
  606. Iµ thσ filσ wil∞ no⌠ fi⌠ int∩ thσ TPA¼ Z8┼ wil∞ prin⌠ thσ message:
  607.  
  608.  
  609.      Out of memory - Continue?
  610. .PAèIµá thσ use≥ answer≤ "Y"¼á Z8┼ wil∞ resumσ loadinτ thσ filσ a⌠ addres≤á 10░ ì
  611. he° iµ ARG▓ wa≤ no⌠ entered¼á o≥ a⌠ thσ addres≤ specifieΣ a≤ ARG2«á  Iµ thσ ì
  612. use≥á type≤á an∙ othe≥ response¼á thσ loadinτ proces≤á terminate≤á anΣá Z8┼ ì
  613. return≤ t∩ thσ commanΣ level« However¼ thσ use≥ ma∙ resumσ loadinτ thσ filσ ì
  614. a⌠á ß late≥ timσ b∙ issuinτ thσ ╔ commanΣ anΣ specifyinτ thσ filσ namσá ".ó ì
  615. (ßá singlσá period)«á  Thσ use≥ ma∙ choosσ t∩ specif∙ ß ne≈á startinτá loaΣ ì
  616. addres≤á followinτá thσ period╗á iµ ARG▓ i≤ omitteΣ theε thσá loaΣá addres≤ ì
  617. default≤ bacδ t∩ 10░ hex¼á thσ star⌠ oµ thσ TPA«á Iµ thσ use≥ ha≤ donσá an∙ ì
  618. subsequen⌠á disδ I/╧ (sucΦ a≤ loadinτ ß ne≈ filσ oµ disassemblinτ t∩á disk⌐ ì
  619. iεá betweeεá thσ timσ loadinτ wa≤ suspendeΣ anΣ theεá restarted¼á Z8┼á wil∞ ì
  620. trea⌠ thσ filσ namσ ".ó a≤ ß synta° error« 
  621.  
  622.  
  623. Thσá use≥á ma∙ occasionall∙ neeΣ t∩ overla∙ ß sectioε oµ codσ iε ßá prograφ ì
  624. whicΦ alread∙ reside≤ iε memor∙ witΦ inpu⌠ froφ ß filσ oε disk¼ fo≥ examplσ ì
  625. iε modifyinτ ß BIO╙ iε preparatioε fo≥ MOVCPM«á Whilσ thi≤ i≤ possiblσ witΦ ì
  626. loader≤ whicΦ proces≤ .HE╪ objec⌠ files¼á i⌠ i≤ no⌠ feasiblσ witΦ Z8E«á Thσ ì
  627. use≥á caε circumven⌠ thi≤ limitatioε b∙ loadinτ thσ filσ froφ disδ int∩á aε ì
  628. unuseΣ sectioε oµ memor∙ anΣ theε usinτ Z8E'≤ movσ commanΣ t∩ movσ onl∙ thσ ì
  629. datß needeΣ t∩ accomplisΦ thσ overlay.
  630. .PAè                    J    Animated Full Screen Debugger
  631.  
  632.  
  633. Thσ ╩ commanΣ provide≤ thσ use≥ witΦ thσ abilit∙ t∩ "seeó insidσ thσ Z8░ a≤ ì
  634. i⌠ execute≤ ß program«á  Thσ Z8┼ animateΣ debugge≥ allow≤ thσ use≥ t∩á vie≈ ì
  635. registers¼á memory¼ anΣ instruction≤ whilσ thσ Z8░ i≤ simultaneousl∙ execuì
  636. tinτ code«  Iε additioε thσ ╩ commanΣ provide≤ thσ use≥ witΦ thσ abilit∙ t∩ ì
  637. interactivel∙áá single-ste≡á througΦá ßá prograφá usinτá thσá ful∞áá screeε ì
  638. facilitie≤ oµ thσ command« Thσ forma⌠ oµ thσ ╩ commanΣ is:
  639.  
  640.  
  641.   *J   [/] [*] [ARG1] [ARG2]
  642.  
  643.  
  644. á áááUsσá oµá thσ ╩ commanΣ fo≥ singlσ steppinτ i≤ describeΣ a⌠ thσá enΣá oµ ì
  645. áááááthi≤á section«á  Thi≤ sectioε describe≤ thσ non-interactivσ versioεá oµ ì
  646. áááááthσá ╩ commanΣ durinτ whicΦ thσ use≥ turn≤ ove≥ completσ contro∞ oµ thσ ì
  647. áááááexecutioε oµ thσ prograφ unde≥ tes⌠ t∩ Z8E« 
  648.  
  649.  
  650. áááááARG▒á i≤á thσ startinτ addres≤ oµ thσ displa∙ anΣ ma∙ bσ oµá an∙á valiΣ ì
  651. áááááargumen⌠ type«á Fo≥ example¼á thσ use≥ ma∙ specif∙   *╩ ╨    t∩á resumσ ì
  652. áááááexecutioε a⌠ thσ poin⌠ wherσ i⌠ haΣ previoul∙ beeε stopped« 
  653.  
  654.  
  655. áááááThσ slasΦ anΣ sta≥ contro∞ subroutinσ tracinτ a≤ follows:
  656.  
  657.  
  658. ááááááá"/"  SlasΦá inform≤á Z8┼ no⌠ t∩ tracσ an∙á subroutine≤ a⌠ all.
  659. á
  660.  
  661. ááá    "*ó  Asterisδ inform≤ Z8┼ no⌠ t∩ tracσ an∙ subroutinσ call≤ t∩ addreì
  662. ááááásse≤á locateΣ iε thσ rangσ ░ t∩ FF«á Thi≤ featurσ i≤ intendeΣ t∩ screeε ì
  663. áááááou⌠ call≤ t∩ locatioε ╡ (BDOS⌐ iε orde≥ t∩ preven⌠ Z8E'≤ anΣ thσ user'≤ ì
  664. ááááástacδ froφ becominτ hopelessl∙ entangled.
  665.  
  666. ááááááá
  667. áááááARG▓á represent≤ aε optiona∞ timeou⌠ paramete≥ whicΦ affect≤ thσá speeΣ ì
  668. áááááa⌠ whicΦ instruction≤ arσ executed«á  Thi≤ numbe≥ ma∙ bσ iε thσ rangσ ░ ì
  669. ááááá- 255¼á witΦá 1░á (decimal⌐ a≤ thσ defaul⌠ iµ n∩ valuσá i≤á entered«á ┴ ì
  670. ááááátimeou⌠á valuσá oµ 1░ yield≤ approximatel∙ ß onσ halµ seconΣ dela∙á beì
  671. ááááátweeε thσ executioε oµ sequentia∞ instructions«á  ┴ valuσ oµ ░á represì
  672. áááááent≤á N╧ timσ dela∙ anΣ i≤ iε actualit∙ thσ fastes⌠ ratσ ß whicΦ thσá ╩ ì
  673. ááááácommanΣ caε run.
  674.  
  675.  
  676. Oncσ thσ ╩ commanΣ commences¼ Z8┼ take≤ ove≥ thσ Z8░ anΣ furnishe≤ thσ use≥ ì
  677. witΦ ß "peepholeó int∩ thσ CPU«á  Z8┼ execute≤ onσ instructioε a⌠ ß timσ iε ì
  678. thσá use≥á prograφ pausinτ afte≥ eacΦ onσ t∩ dynamicall∙ updatσ thσá screeε ì
  679. display«á Thσ ╩ commanΣ divide≤ thσ screeε int∩ threσ areas║á registe≥ map¼ ì
  680. disassembleΣ code¼ anΣ memor∙ window«  Thσ registe≥ ma≡ display≤ al∞ regisì
  681. ter≤á oε thσ to≡ tw∩ line≤ oµ thσ screeε alonτ witΦ thσ content≤ oµá thσá ╞ ì
  682. registe≥á whicΦá i≤á showεá iε mnemoniπ form«á  Z8┼á als∩á disassemble≤á 1╕ ì
  683. instruction≤ baseΣ oε thσ curren⌠ P├ valuσ anΣ display≤ theφ oε thσ screen╗ ì
  684. finally¼á usinτá thσ parameter≤ entereΣ iε thσ ╫ command¼á Z8┼ snapshot≤á ß ì
  685. blocδ oµ memor∙ anΣ display≤ i⌠ a≤ ß windo≈ oε thσ screen« 
  686. .PAèExecutioεá oµ thσ use≥ prograφ continue≤ unti∞ an∙ non-numeriπ ke∙á oεá thσ ì
  687. keyboarΣá i≤ presseΣ whicΦ end≤ thσ command«á  Iµ ß numeriπ ke∙ i≤ pressed¼ ì
  688. theε Z8┼ respond≤ b∙ changinτ thσ timeou⌠ paramete≥ oε thσ fly«á  Thσá use≥ ì
  689. ma∙á usσ thσ key≤ ░ - ╣ a≤ ß throttlσ t∩ goverε thσ executioε speed«á  Zer∩ ì
  690. beinτ thσ fastest╗ ninσ beinτ thσ slowest.
  691.  
  692.  
  693. Thσ commanΣ als∩ terminate≤ wheneve≥ ß use≥ defineΣ breakpoin⌠ i≤á reached«  ì
  694. Tha⌠á is¼á iµá thσá use≥ haΣ se⌠ ß breakpoin⌠ viß thσ ┬á commanΣá anΣá thi≤ ì
  695. addres≤ i≤ reacheΣ thσ ╩ commanΣ end≤ anΣ Z8┼ prompt≤ thσ use≥ fo≥ thσ nex⌠ ì
  696. command«á  Iµ thσ breakpoin⌠ haΣ ß pas≤ coun⌠ associateΣ witΦ it¼á thσ pas≤ ì
  697. coun⌠ mus⌠ reacΦ zer∩ beforσ thσ ╩ commanΣ wil∞ terminate.
  698.  
  699.  
  700.                   USING THE J COMMAND FOR SINGLE STEPPING
  701.  
  702.  
  703. Z8┼á permit≤á thσá use≥ t∩ single-ste≡ througΦ ß prograφ whilσá allowinτá ß ì
  704. continuou≤ full-screeε vie≈ oµ thσ registers¼á codσ beinτ executed¼ anΣ thσ ì
  705. content≤á oµ ß blocδ oµ memor∙ a≤ specifieΣ b∙ thσ ╦ command«á Iε orde≥á t∩ ì
  706. invokσ thσ ful∞ screeε single-ste≡ thσ use≥ enter≤ thσ followinτ command:
  707.  
  708.  
  709.   *J   [/]  [*] 
  710.  
  711.  
  712.      » instruct≤ Z8┼ no⌠ t∩ tracσ an∙á subroutine≤ a⌠ all
  713.  
  714.  
  715. ááááá¬á instruct≤á Z8┼ no⌠ t∩ tracσ an∙ subroutine≤ locatioεá belo≈á addres≤ ì
  716. ááááá100╚á anΣ i≤ specificall∙ designeΣ t∩ allo≈ thσ use≥ thσ optioε oµá no⌠ ì
  717. ááááábecominτ tangleΣ iε BDO╙ anΣ BIOS.
  718.  
  719.  
  720. áááááNotσ tha⌠ thi≤ versioε oµ thσ ╩ commanΣ i≤ differentiateΣ froφ thσ non-ì
  721. áááááinteractivσá versioε b∙ thσ absencσ oµ an∙ argumen⌠ indicatinτ ß execuì
  722. ááááátioε address«  
  723.  
  724.  
  725. Thi≤ versioε allow≤ thσ use≥ t∩ executσ onσ instructioε iε hi≤ prograφá anΣ ì
  726. theεá regaiεá contro∞á a⌠á thσ Z8┼ commanΣ level«á  Z8┼á wil∞á executσá thσ ì
  727. instructioεá pointeΣ t∩ b∙ thσ user'≤ curren⌠ PC«á Afte≥ thσ instructioε i≤ ì
  728. executeΣ aε ARRO╫ ¿ =╛ ⌐ point≤ t∩ thσ nex⌠ instructioε t∩ bσ executed.
  729.  
  730.  
  731. Thσá » anΣ ¬ option≤ arσ onl∙ valiΣ iµ thσ nex⌠ instructioε t∩ bσá executeΣ ì
  732. i≤á ß CALL«á  Iµ thσ prograφ counte≥ i≤ pointinτ a⌠ an∙á othe≥á instructioε ì
  733. theε thσ » anΣ ¬ havσ n∩ effect.
  734. .PAè       K    Set Memory Window Parameters for Use With the J Command
  735.  
  736.  
  737. Thσ ╦ commanΣ set≤ thσ startinτ addres≤ anΣ blocδ sizσ oµ thσ memor∙ windo≈ ì
  738. displa∙ durinτ thσ ╩ command«  Thσ forma⌠ oµ thσ commanΣ is:
  739.  
  740.  
  741.   *K  ARG1 [,ARG2]
  742.  
  743.  
  744.   áááARG▒ represent≤ thσ startinτ addres≤ oµ thσ memor∙ block.
  745.  
  746.  
  747. áááááARG▓á i≤ aε optiona∞ sizσ paramter¼á iµ omitteΣ thσ blocδ sizσ default≤ ì
  748. ááááát∩ thσ maximum.
  749.  
  750.  
  751. Thσá maximuφá blocδá sizσ i≤ 14┤ decima∞ whicΦ i≤á 9░á hex«á  Thσá startinτ ì
  752. addres≤ oµ thσ memor∙ blocδ caε bσ anywherσ iε memory╗á i⌠ doe≤ no⌠ havσ t∩ ì
  753. bσ withiε thσ confine≤ oµ thσ use≥ program.
  754.  
  755. .PAè                             M    Move Memory 
  756.  
  757.  
  758. Thσá ═á commanΣ allow≤ thσ use≥ t∩ movσ block≤ oµ datσ froφ an∙ addres≤á iε ì
  759. memor∙ t∩ an∙ othe≥ addres≤ iε memory«  Thσ forma⌠ oµ thσ commanΣ is:
  760.  
  761.  
  762.   *M   ARG1  ARG2  ARG3  
  763.  
  764.  
  765. áááááwherσ  ARG▒ ╜  thσ startinτ addres≤ oµ thσ sourcσ datß block
  766.  
  767. ááááá á
  768. áááááARG▓ ╜ thσ endinτ addres≤ oµ thσ sourcσ datß block
  769.  
  770.  
  771. áááááARG│  ╜  thσ startinτ addres≤ oµ thσ destinatioε datß blocδ   
  772.  
  773. ì
  774. Arguments may be of any type
  775.  
  776.  
  777. Z8┼á automaticall∙ decide≤ whethe≥ ß head-to-heaΣ o≥ tail-to-tai∞á movσá i≤ ì
  778. requireΣá baseΣ oε thσ threσ argument≤ entered«á  Iµ ß head-to-heaΣ movσ i≤ ì
  779. needeΣ theε thσ firs⌠ bytσ oµ thσ sourcσ datß blocδ wil∞ bσ writteε t∩á thσ ì
  780. firs⌠á bytσ positioε oµ thσ destinatioε datß block╗á thσ seconΣ bytσ oµ thσ ì
  781. sourcσ datß blocδ wil∞ bσ writteε t∩ thσ seconΣ bytσ positioε oµ thσ destiì
  782. natioεá datß block¼á anΣ s∩ oε unti∞ thσ endinτ addres≤ oµ thσá destinatioε ì
  783. datß blocδ i≤ reached« 
  784.  
  785.  
  786. Oεá thσ othe≥ hand¼á iµ ß tail-to-tai∞ movσ i≤ necessar∙ Z8┼ wil∞ movσá thσ ì
  787. las⌠á bytσá oµá thσá sourcσ datß blocδ t∩ thσ las⌠á bytσá positioεá oµá thσ ì
  788. destinatioεá datß block¼á followeΣ b∙ thσ seconΣ t∩ las⌠ bytσ oµ thσ sourcσ ì
  789. datßá blocδá t∩ thσ seconΣ t∩ las⌠ bytσ positioε oµá thσá destinatioεá datß ì
  790. block¼á anΣá s∩á oε unti∞ thσ startinτ addres≤ oµ thσ destinatioε blocδá i≤ ì
  791. reached«  
  792.  
  793.  
  794. ┴ tai∞ t∩ tai∞ movσ woulΣ bσ necessar∙ iε thσ followinτ examplσ t∩á preven⌠ ì
  795. thσ overwritinτ oµ thσ destinatioε datß block:
  796.  
  797.  
  798.   *M  1000 100F 1008
  799.  
  800. .PAè                 N    Output to I/O Ports Without Pre-Read
  801.  
  802.  
  803. Thi≤á commanΣ allow≤ thσ use≥ t∩ outpu⌠ datß t∩ aε I/╧ por⌠á withou⌠á firs⌠ ì
  804. readinτá thσ por⌠ (a≤ occur≤ iε thσ ╤ command)«á  Thσ forma⌠ oµ thσ commanΣ ì
  805. is:
  806.  
  807.    *N   [ARG1]
  808.  
  809. áááááwherσ ARG▒ i≤ thσ por⌠ numbe≥ t∩ whicΦ thσ datß wil∞ bσ written.
  810.  
  811. áááááIµá ARG▒ i≤ omitteΣ theε Z8┼ use≤ thσ las⌠ por⌠ addres≤ whicΦ haΣá beeε ì
  812. áááááinpu⌠ b∙ ß previou≤ ╬ o≥ ╤ command« 
  813.  
  814. Z8┼á wil∞ promp⌠ thσ use≥ b∙ displayinτ thσ curren⌠ por⌠ numbe≥ oε thσ lef⌠ ì
  815. hanΣá sidσá oµá thσ consolσ anΣ postioninτ thσ curso≥ tw∩á space≤á thσá thσ ì
  816. right«  A⌠ thi≤ poin⌠ thσ use≥ caε ente≥ thσ datß t∩ bσ sen⌠ t∩ thσ por⌠ iε ì
  817. thσ forφ oµ aε ARGUMENT-STRING«  Thσ ARGUMENT-STRIN╟ allow≤ thσ use≥ t∩ mi° ì
  818. variou≤á argumen⌠á type≤ sucΦ a≤ he° datß anΣ ASCI╔á litera∞á strings«á  Oµ ì
  819. coursσ thσ use≥ caε elec⌠ t∩ merel∙ outpu⌠ singlσ byte≤ iµ desired«á  Thσ ╬ ì
  820. commanΣá i≤á particularl∙ usefu∞ wheε programminτá variou≤á Z8░á periphera∞ ì
  821. chip≤á sucΦá a≤ thσ DM┴ anΣ SI╧ chip≤ whicΦ expec⌠ initializatioε byte≤á t∩ ì
  822. arrivσ iε ß streaφ withou⌠ interveninτ reads.
  823.  
  824.      *N 80
  825.  
  826.       80  'T',00,12#,998
  827.  
  828.  
  829. Thi≤ ARGUMENT-STRIN╟ woulΣ bσ evaluateΣ int∩ thσ ╡ bytes║á  5┤ 0░ 0├ 0╣ 98«  ì
  830. Thesσá fivσá byte≤ woulΣ bσ sen⌠ t∩ por⌠ 8░ viß aεá OTI╥á instruction«á  N∩ ì
  831. dela∙ occur≤ betweeε successivσ bytes«  
  832.  
  833.  
  834. Afte≥ thσ datß ha≤ beeε entereΣ anΣ afte≥ i⌠ ha≤ beeε sen⌠ t∩ thσ I/╧á por⌠ ì
  835. Z8┼ reprompt≤ thσ use≥ b∙ displayinτ thσ samσ por⌠ number«á  Thi≤ give≤ thσ ì
  836. use≥ t∩ opportunit∙ t∩ senΣ addtiona∞ datß t∩ thσ samσ port«á  However¼á b∙ ì
  837. no⌠á enterinτ datß thσ use≥ caε changσ thσ curren⌠ por⌠ addres≤ b∙ enterinτ ì
  838. an∙ oµ thσ following:
  839.  
  840.  
  841. CARRIAGE  áá   Thσ nex⌠ sequentia∞ por⌠ numbe≥ iεá ascendinτ ì
  842. áRETURN        orde≥ become≤ thσ curren⌠ por⌠ address.
  843.  
  844.  
  845. UP ARROW ááááááThσá nex⌠ sequentia∞ por⌠ numbe≥ iε descendinτ orde≥á become≤ ì
  846. áááááááááááááááthσ curren⌠ por⌠ address.
  847.  
  848.  
  849.  =ARG áááááááááAn∙á argumen⌠ appearinτ immediatel∙ afte≥ thσ equa∞ sigεá (n∩ ì
  850. áááááááááááááááinterveninτá spaces⌐ i≤ evaluateΣ a≤ aε ╕ bi⌠ number¼á anΣ iµ ì
  851. áááááááááááááááfounΣá t∩á bσá valiΣ theε i⌠ become≤á thσá ne≈á curren⌠á por⌠ ì
  852. áááááááááááááááaddress.
  853. PERIOD     á   Terminate command
  854.  
  855.  
  856. Thσá use≥ caε als∩ monito≥ aε I/╧ por⌠ witΦ thσ ╬ commanΣ b∙ enclosinτá thσ ì
  857. por⌠á numbe≥á oε thσ commanΣ linσ iε parentheses«á Monito≥ modσ vißá thσá ╬ ì
  858. commanΣ i≤ identica∞ t∩ tha⌠ oµ thσ ╤ commanΣ (seσ ╤ command).è                O    Output Current Breakpoints to Console
  859.  
  860.  
  861. Thσ ╧ commanΣ allow≤ thσ use≥ t∩ vie≈ al∞ breakpoint≤ currentl∙ iεá effect«  ì
  862. Thσ forma⌠ oµ thσ commanΣ is:
  863.  
  864.  
  865.   *O  
  866.  
  867.   no arguments are required
  868.  
  869.  
  870. Iµá Z8┼ find≤ ß symbo∞ namσ correspondinτ t∩ thσ absolutσ he° addres≤ oµá ß ì
  871. breakpoin⌠á addres≤ iε thσ symbo∞ tablσ (iµ ß symbo∞ tablσ exists⌐ theε thσ ì
  872. symbo∞á namσá a≤ wel∞ a≤ thσ memor∙ addres≤ i≤á displayed«á  Iµá n∩á symbo∞ ì
  873. correspondinτ t∩ thσ addres≤ i≤ founΣ onl∙ thσ he° addres≤ i≤ displayed«  
  874.  
  875.  
  876. Iµá an∙ pas≤ count≤ arσ currentl∙ iε effec⌠ the∙ arσ displayeΣ nex⌠ t∩á thσ ì
  877. breakpoin⌠ addres≤ witΦ whicΦ the∙ arσ associated.
  878.  
  879. .PAè                  P    Examine/Modify PSW (Flag Register)
  880.  
  881.  
  882. Thσá ╨á commanΣá provide≤ ß convenien⌠ methoΣ oµ examininτá anΣá optionall∙ ì
  883. modifyinτ thσ F(lag⌐ registe≥ iε thσ use≥ registe≥ set«á  Thσ forma⌠ oµ thσ ì
  884. commanΣ is:
  885.  
  886.  
  887.      *P
  888.  
  889.   no arguments are required on the command line
  890.  
  891.  
  892. Upoεá receip⌠ oµ thσ ╨ commanΣ Z8┼ display≤ thσ mnemonic≤ correspondinτá t∩ ì
  893. thσá curren⌠ statσ oµ thσ fou≥ user-modifiablσá bit≤á (sign¼á carry¼á zero¼ ì
  894. parity⌐ iε Flaτ register:
  895.  
  896.  
  897.      MNEMONIC    MEANING     BIT STATUS
  898.  
  899.      P           positive       reset
  900.      M           minus          set
  901.  
  902.      NC          no carry       reset
  903.      C           carry          set
  904.  
  905.      PO          parity odd     reset
  906.      PE          parity even    set
  907.  
  908.      NZ          not zero       reset
  909.      Z           zero           set 
  910.  
  911.  
  912. Z8┼á print≤ thσ mnemoniπ correspondinτ t∩ thσ curren⌠ statσ oµ eacΦ oµá thσ ì
  913. fou≥ flaτ bits«  Z8┼ theε issue≤ ß carriagσ return/linσ feeΣ anΣ pause≤ fo≥ ì
  914. use≥á input«á  Thσ use≥ ma∙ modif∙ an∙ oµ thσ fou≥ flaτ bit≤ b∙ typinτá thσ ì
  915. appropriatσá mnemoniπá followeΣ b∙ ß carriagσ return«á  Thσ use≥ ma∙á ente≥ ì
  916. multiplσ mnemonic≤ b∙ separatinτ eacΦ onσ witΦ ß space«  
  917.  
  918.  
  919. Iµá n∩á mnemonic≤ arσ entered¼á n∩ flag≤ bit≤ arσ altereΣ anΣá thσá commanΣ ì
  920. terminates.
  921.  
  922.  
  923. Iµ aε invaliΣ flaτ bi⌠ mnemoniπ i≤ entereΣ Z8┼ print≤ ß questioε mark.
  924.  
  925. .PAè                           Q    Query I/O Ports
  926.  
  927. Thσ ╤ commanΣ allow≤ thσ use≥ flexiblσ acces≤ t∩ I/╧ port≤ b∙ providinτ thσ ì
  928. abilit∙ t∩ perforφ singlσ bytσ input¼á continuou≤ inpu⌠ (monito≥ mode)¼ anΣ ì
  929. singlσ o≥ multibytσ outpu⌠ followinτ ß pre-reaΣ oµ thσ port«á Thσ forma⌠ oµ ì
  930. thσ commanΣ is:
  931.  
  932.  
  933.      *Q   [(] [ARG1] [)]
  934.  
  935.  
  936. áááááwherσ ARG▒ i≤ aε ╕ bi⌠ por⌠ addres≤ iε thσ range ░ - 255
  937.  
  938.  
  939. áááááARG▒á ma∙á bσ an∙ symbo∞ type¼á howeve≥ iµ ß 1╢ bi⌠ valuσ i≤á specifieΣ ì
  940. áááááonl∙ thσ lo≈ orde≥ bytσ i≤ significan⌠ 
  941.  
  942.  
  943. áááááIµá n∩á argumen⌠ i≤ giveε Z8┼ wil∞ usσ thσ mos⌠ recen⌠ por⌠á numbe≥á a≤ ì
  944. áááááentereΣ b∙ thσ use≥ viß aε ╬ o≥ ╤ command.
  945.  
  946.  
  947. áááááIµ ARG▒ i≤ encloseΣ iε parenthese≤ Z8┼ wil∞ ente≥ MONITO╥ MODE.
  948.  
  949.  
  950.  
  951. Upoεá receip⌠ oµ ARG▒ Z8┼ wil∞ reaΣ thσ specifieΣ I/╧ por⌠ anΣ displa∙á thσ ì
  952. bytσ reaΣ a≤ botΦ ╕ bi⌠ hexadecima∞ valuσ anΣ it'≤ ASCI╔ equivalent«á  Comì
  953. manΣ option≤ oncσ ß bytσ ha≤ beeε reaΣ froφ thσ I/╧ por⌠ arσ a≤ follows:
  954.  
  955.  ì
  956.                           áááááSINGLE BYTE INPUT
  957.  
  958.  
  959. B∙ enterinτ ß SPAC┼ immediatel∙ followinτ thσ displayeΣ content≤ oµ thσ I/╧ ì
  960. por⌠ thσ use≥ caε instruc⌠ Z8┼ t∩ continuσ readinτ froφ thσ samσ I/╧ port:
  961.  
  962.  
  963.        *Q EE
  964.        EE   24  $  <space>
  965.        EE   24  $
  966.   
  967.  
  968. B∙á enterinτ ß CARRIAG┼ RETUR╬ followinτ thσ displayeΣ content≤ oµ thσá I/╧ ì
  969. por⌠á thσá use≥ caε instruc⌠ Z8┼ t∩ reaΣ thσ nex⌠á por⌠á numbe≥á (ascendinτ ì
  970. order):
  971.  
  972.        *Q EE
  973.        EE   24  $  <cr>
  974.        EF   C1  A
  975.  
  976.  
  977. B∙á enterinτá ß care⌠ "^ó followinτ thσ displayeΣ content≤ oµ thσ I/╧á por⌠ ì
  978. thσá use≥á caε instruc⌠ Z8┼ t∩ reaΣ thσ previou≤á por⌠á numbe≥á (descendinτ ì
  979. order):
  980.  
  981.        *Q EE
  982.        EE   24  $  ^  (up arrow entered by user)
  983.        ED   06  ~       èB∙á enterinτ aε equa∞ sigε "=ó followeΣ b∙ ß valiΣ argument¼á thσ use≥á caε ì
  984. switcΦ t∩ readinτ ß ne≈ por⌠ address:
  985.  
  986.  
  987.        *Q EE
  988.        EE   24  '$'  =90 
  989.        90   BF  '?'     
  990.  
  991.  
  992.                       CONTINUOUS INPUT (MONITOR MODE)
  993.  
  994. Z8┼ provide≤ thσ use≥ witΦ thσ abilit∙ t∩ monito≥ aε inpu⌠ port«á  Z8┼ wil∞ ì
  995. continousl∙á reaΣá thσ selecteΣ inpu⌠ por⌠ anΣ displa∙ thσ content≤ oεá thσ ì
  996. screen«á  Z8┼á display≤ thσ bytσ iε botΦ he° anΣ binary«á  Thi≤ featurσá i≤ ì
  997. usefu∞á iεá thσ testinτ oµ I/╧ ports«á Depressinτ an∙ ke∙ oεá thσá keyboarΣ ì
  998. exit≤ monito≥ mode«    
  999.  
  1000.                             MULTI-BYTE OUTPUT 
  1001.  
  1002. Followinτá thσ reaΣ oµ aε I/╧ por⌠ thσ use≥ ma∙ elec⌠ t∩ outpu⌠á data«á Thσ ì
  1003. use≥ ma∙ ente≥ aε ARGUMENT-STRIN╟ whicΦ wil∞ bσ sen⌠ t∩ thσ por⌠ oε ßá bytσ ì
  1004. b∙ bytσ basi≤ witΦ n∩ interveninτ read≤ betweeε output≤ a≤ showε below:
  1005.  
  1006.  
  1007.      *Q 50
  1008.      50  44  'D' 23,9,'B2E',00,F723,81
  1009.              ^                       ^          
  1010.  
  1011.   ááástrinτ a≤ entereΣ b∙ use≥ appear≤ betweeε arrows
  1012.  
  1013.  
  1014. Thσ datß a≤ entereΣ b∙ thσ use≥ iε thi≤ examplσ woulΣ firs⌠ bσ converteΣ t∩ ì
  1015. thσ ╣ byte≤ showε below:
  1016.  
  1017.  
  1018.            23 09 42 32 45 00 F7 23 81
  1019.  
  1020.  
  1021. Thesσá ╣ byte≤ woulΣ theε bσ sen⌠ t∩ por⌠ 5░ onσ bytσ afte≥ anothe≥ withou⌠ ì
  1022. an∙ interveninτ read≤ o≥ statu≤ checks.
  1023.  
  1024. .PAè                   R    Examine/Modify Register Contents
  1025.  
  1026.  
  1027. Thσá ╥ commanΣ allow≤ thσ use≥ t∩ examinσ anΣ optionall∙á modif∙á register≤ ì
  1028. anΣ registe≥ pair≤ iε thσ use≥ registe≥ set«  Thσ forma⌠ oµ thσ commanΣ is:
  1029.  
  1030.  
  1031.   *R   ARG1  <cr> or space
  1032.  
  1033.  
  1034. áááááwherσ ARG▒ i≤ an∙ oµ thσ 2▓ registe≥ mnemonic≤ listeΣ below:
  1035.  
  1036.  
  1037.     áA    B    C    D    E    H    L
  1038.      AF   BC   DE   HL   IX   IY   SP
  1039.      AF'  BC'  DE'  HL'  I    R    P    PC
  1040.  
  1041.  
  1042.     á(thσ prograφ counte≥ ma∙ bσ specifieΣ a≤ eithe≥ ╨ o≥ PC)
  1043.  
  1044.  
  1045. T∩á examinσ ß registe≥ thσ use≥ enter≤ ß mnemoniπ froφ thσ abovσ lis⌠á folì
  1046. loweΣá b∙ ß carriagσ returε o≥ ß space«á  Z8┼ wil∞ displa∙ thσ curren⌠ conì
  1047. tent≤á oµ thσ registe≥ oε thσ samσ line«á  A⌠ thi≤ poin⌠ thσ use≥á ha≤á thσ ì
  1048. optioεá oµ enterinτ aε argumen⌠ oµ an∙ typσ iµ thσ content≤ oµ thσ registe≥ ì
  1049. o≥ registe≥ pai≥ arσ t∩ bσ changed«á   Thσ replacemen⌠ valuσ ma∙ bσá termiì
  1050. nateΣá b∙ eithe≥ ß carriagσ returε o≥ ß space«á Iµ n∩ valuσ i≤ entereΣá Z8┼ ì
  1051. issue≤ ß carriagσ return/linσ feeΣ anΣ wait≤ fo≥ thσ nex⌠ registe≥ mnemoniπ ì
  1052. t∩ bσ entered.
  1053.  
  1054.  
  1055. Iµ thσ use≥ specifie≤ ß 1╢ bi⌠ valuσ a≤ thσ ne≈ content≤ oµ aε ╕ bi⌠ regisì
  1056. te≥ onl∙ thσ lo≈ orde≥ bytσ oµ thσ valuσ i≤ used.
  1057.  
  1058.  
  1059. Thσá commanΣ terminate≤ wheε ß carriagσ returε o≥ spacσ i≤ entereΣ wheε Z8┼ ì
  1060. i≤ waitinτ fo≥ ß registe≥ mnemonic.
  1061.  
  1062. .PAè                             S    Single Step
  1063. ááááá 
  1064.  
  1065. Thσá ╙á commanΣá allow≤á thσá use≥ t∩á executσá ßá prograφá instructioεá b∙ ì
  1066. instruction«á  Thσ ╙ commanΣ provide≤ fo≥ ful∞ tracinτ oµ thσ use≥ program«  ì
  1067. Thσ forma⌠ oµ thσ commanΣ is:
  1068.  
  1069.  
  1070.      *S   [/] [ARG1]  <cr>
  1071.        
  1072.  
  1073. áááááwherσá ARG▒á i≤á thσá numbe≥ oµ instruction≤ t∩á executσá iεá thσá use≥ ì
  1074. áááááprogram¼ iµ n∩ argumen⌠ i≤ giveε Z8┼ default≤ t∩ 1
  1075. ááááááá
  1076.  
  1077. áááááááARG1 may be of any type
  1078.  
  1079.  
  1080. Thσ slasΦ "/ó allow≤ thσ use≥ contro∞ ove≥ thσ tracinτ oµ subroutines« Iµ ß ì
  1081. slasΦ i≤ includeΣ beforσ thσ coun⌠ (iµ ß coun⌠ i≤ entered)¼ o≥ iµ thσ slasΦ ì
  1082. i≤á thσá onl∙ characte≥ oε thσ commanΣ linσ theε subroutine≤á wil∞á no⌠á bσ ì
  1083. traced«á  ┴ slasΦ affect≤ onl∙ CAL╠ instruction≤ whicΦ liσ withiε thσ rangσ ì
  1084. oµá ARG1«á  Iε thσ mos⌠ typica∞ casσ n∩ ARG▒ i≤ presen⌠ anΣ thσ singlσ ste≡ ì
  1085. coun⌠ default≤ t∩ 1«á  Iµ thσ curren⌠ PC¼ 100░ iε thi≤ example¼ i≤ pointinτ ì
  1086. t∩ ß cal∞ instructioε theε thσ command:
  1087.  
  1088.  
  1089.     *S /
  1090.  
  1091.   1000  CD 56 30  RASRTN: CALL  ANYSUB
  1092.   1003  FE 04     CP    4
  1093.   1005  CA 17 10  JP    Z,AHEAD
  1094.  
  1095.  
  1096. wil∞á causσá thσ entirσ subroutinσ ANYSU┬ t∩ bσ executeΣ anΣá contro∞á wil∞ ì
  1097. returε t∩ thσ use≥ a⌠ addres≤ 1003«  
  1098.  
  1099.  
  1100. Iµá ARG▒ i≤ omitteΣ Z8┼ wil∞ transfe≥ contro∞ t∩ thσ use≥ prograφá anΣá onσ ì
  1101. instruction¼ thσ onσ pointeΣ t∩ b∙ thσ curren⌠ content≤ oµ thσ user'≤ progì
  1102. raφ counter¼á wil∞ bσ executed«  Followinτ thσ executioε oµ thσ instructioε ì
  1103. (o≥á grou≡ oµ instruction≤ iµ ARG▓ wa≤ greate≥ thaε 1⌐ Z8┼ regain≤á contro∞ ì
  1104. anΣ automaticall∙ display≤ thσ curren⌠ content≤ oµ al∞ thσ use≥ registers.
  1105.  
  1106.  
  1107. Thσá use≥á ma∙ optionall∙ indicatσ tha⌠ morσ thaε onσ instructioε i≤ t∩á bσ ì
  1108. executeΣá b∙ enterinτ ß valuσ greate≥ thaε ▒ fo≥ ARG1«á  Z8┼ wil∞á transfe≥ ì
  1109. contro∞á t∩á thσ use≥ prograφ anΣ regaiε contro∞ onl∙á wheεá thσá specifieΣ ì
  1110. numbe≥á oµá instruction≤á havσ beeε executed«á  Thi≤ featurσ i≤á usefu∞á iε ì
  1111. debugginτ smal∞ loops╗ iε tha⌠ thσ use≥ caε se⌠ ARG▒ equa∞ t∩ thσ numbe≥ oµ ì
  1112. instruction≤ iε thσ rangσ oµ thσ loop«á  Z8┼ wil∞ displa∙ thσ registe≥ conì
  1113. tent≤á afte≥ eacΦ instructioε oµ thσ loo≡ i≤ executeΣ anΣ returε contro∞ t∩ ì
  1114. thσ use≥ afte≥ ever∙ iteratioε oµ thσ loop.
  1115.  
  1116.  
  1117. Thσá singlσá ste≡ commanΣ alway≤ cause≤ thσ executioεá oµá thσá instructioε ì
  1118. pointeΣ t∩ b∙ thσ curren⌠ content≤ oµ thσ user'≤ prograφ counter«á  Thi≤ i≤ ì
  1119. thσá instructioε tha⌠ appear≤ iε disassembleΣ forφ a≤ par⌠ oµ thσ outpu⌠ oµ ì
  1120. thσ "Xó commanΣ (displa∙ machinσ state)«  Bea≥ iε minΣ tha⌠ ARG▒ i≤ no⌠ thσ ìèaddres≤ a⌠ whicΦ singlσ steppinτ i≤ t∩ begin╗á i⌠ i≤ ß coun⌠ t∩ thσá numbe≥ ì
  1121. oµá instruction≤á t∩á execute«á  Iµ thσ use≥ desire≤ t∩ singlσ ste≡á a⌠á aε ì
  1122. addres≤á othe≥ thaε thσ onσ containeΣ iε thσ prograφ counter¼á theε thσá P├ ì
  1123. registe≥ mus⌠ bσ modifieΣ viß thσ ╥ commanΣ beforσ thσ singlσ ste≡á commanΣ ì
  1124. i≤ issueΣ t∩ Z8E.
  1125.  
  1126.  
  1127. Allowinτá thσá conveniencσ oµ enterinτ "Só <cr╛ t∩ executσ onσá instructioε ì
  1128. ha≤á thσá sidσá effec⌠ oµ no⌠ allowinτ thσ use≥ t∩á abor⌠á thσá commanΣá iε ì
  1129. betweeεá thσá timσá thσá "Só i≤ typeΣ anΣ thσ <cr╛á i≤á entereΣá b∙á simpl∙ ì
  1130. omittinτ aε argumen⌠ anΣ typinτ <cr>«á  Iµ yo⌡ changσ you≥ minΣ anΣ wan⌠ t∩ ì
  1131. cance∞ thσ command¼ typσ iε aε invaliΣ argumen⌠ a≤ ARG1«  Thi≤ wil∞ causσ ß ì
  1132. questioε marδ t∩ bσ displayed╗ however¼ n∩ instructioε wil∞ bσ executed« 
  1133.  
  1134.  
  1135. Durinτ blocδ tracinτ (ARG▒ greate≥ thaε 1⌐ thσ commanΣ ma∙ bσ terminateΣ b∙ ì
  1136. hittinτ an∙ ke∙ oε thσ keyboard.
  1137.  
  1138.  
  1139. Thσ ╙ commanΣ doe≤ no⌠ relocatσ instruction≤ beforσ executioε a≤ doe≤ thσ ╟ ì
  1140. commanΣ (seσ ╟ command)«á  Hence¼ i⌠ i≤ no⌠ possiblσ t∩ singlσ ste≡ througΦ ì
  1141. eacΦ iteratioε oµ ß DJN┌ ñ instruction.
  1142.  
  1143. .PAè                      U    Write Symbol Table to Disk
  1144.  
  1145. Thσá ╒ commanΣ allow≤ thσ use≥ t∩ writσ thσ curren⌠ symbo∞ tablσ t∩ ßá disδ ì
  1146. file«  Thσ forma⌠ oµ thσ commanΣ is:
  1147.  
  1148.  
  1149.      *U   ARG1
  1150.  
  1151.  
  1152. áááááARG▒á i≤á thσá namσá oµ thσ filσ t∩ whicΦ thσ symbo∞á tablσá i≤á t∩á bσ ì
  1153. áááááwritten.
  1154.  
  1155.  
  1156. Thi≤ commanΣ i≤ usefu∞ t∩ savσ an∙ symbo∞ name≤ entereΣ b∙ thσ use≥ viß thσ ì
  1157. ┴ command«á  Thσ entirσ symbo∞ tablσ i≤ writteε t∩ disδ usinτ thσ forma⌠ oµ ì
  1158. ß .SY═ filσ (seσ appendi° A)«á  Thσ tablσ caε bσ subsequentl∙ loadeΣ a⌠ thσ ì
  1159. nex⌠ invokatioε oµ Z8E.
  1160.  
  1161.  
  1162. Notσ tha⌠ sincσ thσ filσ i≤ storeΣ a≤ ß .SY═ formatteΣ filσ thσ use≥ shoulΣ ì
  1163. usσ ß  filσ namσ extensioε tha⌠ begiε witΦ thσ lette≥ "S"«á  Thi≤ i≤ duσ t∩ ì
  1164. thσá fac⌠ tha⌠ thσ nex⌠ tilσ Z8┼ load≤ thi≤ syebo∞ filσ i⌠ wil∞ examinσ thσ ì
  1165. thσ firs⌠ characte≥ oµ thσ filσ namσ extension«á  Iµ thσ firs⌠ characte≥ i≤ ì
  1166. aεá "Sóá thσá forma⌠ i≤ assumeΣ t∩ bσ .SY═ anΣ thσ symbo∞á tablσá i≤á buil⌠ ì
  1167. accordingly╗ thσ appearancσ oµ an∙ othe≥ lette≥ i≤ takeε t∩ indicatσ ß .PR╬ ì
  1168. file«  
  1169.  
  1170.  
  1171. Iµ ß filσ witΦ thσ namσ ARG▒ alread∙ exist≤ oε disδ i⌠ wil∞ bσ deleted« 
  1172. .PAè                       V    Verify two memory blocks
  1173.  
  1174. Thσá ╓á commanΣ allow≤ thσ use≥ t∩ comparσ tw∩ block≤ oµ memory«á Z8┼á wil∞ ì
  1175. displa∙ al∞ difference≤ betweeε thσ two«  Thσ forma⌠ oµ thσ commanΣ is:
  1176.  
  1177.  
  1178.      *V   ARG1  ARG2  ARG3
  1179.  
  1180.  
  1181.   where  ARG1  =  the starting address of memory block 1
  1182.  
  1183.  
  1184.         áARG2  =  the ending address of memory block 1
  1185.  
  1186.  
  1187.          ARG3  = áthe starting address of memory block 2
  1188.  
  1189.  
  1190. Z8┼ compare≤ memor∙ blocδ ▒ t∩ memor∙ blocδ ▓ bytσ b∙ byte«á  Iµ ß mismatcΦ ì
  1191. occur≤ Z8┼ wil∞ displa∙ thσ addres≤ iε eacΦ blocδ a⌠ whicΦ thσ mismatcΦ wa≤ ì
  1192. found¼á a≤á wel∞á a≤ thσ bytσ containeΣ a⌠ eacΦá address«á  Thσá comparisoε ì
  1193. continue≤ unti∞ thσ endinτ addres≤ i≤ reached.
  1194.  
  1195.  
  1196. Thσá use≥á ma∙ hal⌠ thσ commanΣ a⌠ an∙ timσ b∙ depressinτ an∙á ke∙á oεá thσ ì
  1197. keyboard.
  1198.  
  1199. .PAè                         W    write memory to disk
  1200.  
  1201.  
  1202. Thσá ╫á commanΣ allow≤ thσ use≥ t∩ writσ thσ content≤ oµ memor∙ t∩á ßá disδ ì
  1203. file« Thσ forma⌠ oµ thσ commanΣ is:
  1204.  
  1205.  
  1206.   *W  arg1 [arg2  arg3]
  1207.  
  1208.  
  1209. áááááARG▒ i≤ thσ namσ oµ ß filσ t∩ whicΦ writinτ wil∞ takσ place« 
  1210.  
  1211.  
  1212. áááááARG▓á anΣá ARG│ arσ thσ optiona∞ startinτ anΣ endinτ addresse≤á oµá thσ ì
  1213. áááááportioε oµ memor∙ t∩ bσ writteε t∩ thσ disk«á  Iµ thσ addresse≤ omitteΣ ì
  1214. ááááátheεá thσá memor∙ blocδ t∩ bσ writteε i≤ defineΣ b∙á thσá startinτá anΣ ì
  1215. áááááendinτá addresse≤á oµá thσ las⌠ filσ loaded«á  Thesσ addresse≤á caεá bσ ì
  1216. áááááredisplayeΣ b∙ enterinτ thσ ╔ commanΣ witΦ n∩ arguments.
  1217.  
  1218.  
  1219. Z8┼ alway≤ delete≤ an∙ filσ oε disδ whosσ namσ i≤ thσ samσ a≤ ARG1«á  Iµ n∩ ì
  1220. filσ b∙ thi≤ namσ exist≤ theε Z8┼ wil∞ automaticall∙ creatσ it.
  1221.  
  1222.  
  1223. Z8┼ wil∞ ech∩ thσ startinτ memor∙ addres≤ anΣ continuall∙ updatσ thσ endinτ ì
  1224. memor∙ addres≤ a≤ thσ writinτ t∩ disδ take≤ place.
  1225.  
  1226. .PAè                        ╪    displa∙ machinσ state
  1227.  
  1228. Thσá ╪ commanΣ display≤ thσ curren⌠ content≤ oµ al∞á use≥á registers«á  Thσ ì
  1229. forma⌠ oµ thσ commanΣ is:
  1230.  
  1231.  
  1232.   *X   
  1233.  
  1234.   no arguments are required
  1235.  
  1236.  
  1237. Z8┼ display≤ display≤ al∞ registers¼ excep⌠ thσ ╔ registe≥ anΣ thσ ╥ regisì
  1238. ter¼á oε tw∩ line≤ oµ thσ console«  Iε addition¼ thσ instructioε pointeΣ t∩ ì
  1239. b∙á thσ user'≤ prograφ counte≥ i≤ disassembleΣ anΣ displayeΣ oε thσá seconΣ ì
  1240. line« Thinδ oµ thi≤ a≤ thσ "oε deckó instruction║ thσ instructioε tha⌠ wil∞ ì
  1241. bσ executeΣ upoε thσ receip⌠ oµ thσ nex⌠ ╟ (GO⌐ o≥ ╙ (SINGL┼ STEP⌐ command.
  1242.  
  1243.  
  1244. To inspect the I or R registers use the R command.
  1245.  
  1246. .PAè                             Y    fill memory
  1247.  
  1248.  
  1249. Thσá ┘ commanΣ fill≤ ß use≥ specifieΣ blocδ oµ memor∙ witΦ ß use≥ specifieΣ ì
  1250. patterεá oµá bytes¼á thσ lengtΦ oµ whicΦ i≤ limiteΣ onl∙ b∙ thσá lengtΦá oµ ì
  1251. Z8E'≤ inpu⌠ buffe≥ whicΦ i≤ 8░ byte≤ long:
  1252.  
  1253.  
  1254.   *Y  ARG1  ARG2  ARG3  <cr>
  1255.  
  1256. wherσ  ARG▒  ╜  thσ startinτ addres≤ oµ thσ blocδ t∩ fill
  1257.  
  1258.  
  1259.        ARG▓  ╜  thσ endinτ addres≤ oµ thσ blocδ t∩ fill
  1260.  
  1261.        ARG│  ╜  i≤ thσ datß patterε t∩ bσ writteε t∩ memory«á  ARG│ i≤ evaì
  1262.                 luateΣá b∙ Z8┼ a≤ typσ ARGUMENT-STRIN╟ whicΦ ma∙ bσ oµá an∙ ì
  1263.                 lengtΦá iεá thσá rangσá oµ ▒ througΦ thσá numbe≥á oµá byte≤ ì
  1264.                 remaininτ iε thσ inpu⌠ buffe≥ oncσ ARG▒ anΣ ARG▓ havσá beeε ì
  1265.                 input.
  1266.  
  1267.  
  1268. Thσá ┘á commanΣ give≤ thσ use≥ thσ capabilit∙ t∩ initializσ memor∙á t∩á an∙ ì
  1269. datßá pattern«á  Thσ capabilit∙ oµ enterinτ multi-bytσ string≤ a≤ thσá datß ì
  1270. patterεá witΦá whicΦá t∩ fil∞ memor∙ allow≤ thσá use≥á t∩á storσá repeatinτ ì
  1271. pattern≤á oµ datß iε memor∙ witΦ ß singlσ command«á Fo≥ examplσ iµ thσ use≥ ì
  1272. entereΣ thσ command:
  1273.  
  1274.  
  1275.   *Y 1000 127C 'abcd',16,77
  1276.  
  1277.  
  1278. Z8┼ woulΣ begiε writinτ thσ ╢ bytσ patterε  (6▒ 6▓ 6│ 6┤ 1╢ 77⌐ entereΣá a≤ ì
  1279. ARG│ startinτ a⌠ addres≤ 1000«á  Thi≤ patterε woulΣ repea⌠ a⌠ addres≤ 1006¼ ì
  1280. 100C¼ 1012¼ etc« 
  1281.  
  1282.  
  1283. Thσá commanΣ end≤ afte≥ ß bytσ i≤ writteε t∩ thσ ARG▓ addres≤ eveε iµá thi≤ ì
  1284. bytσá doe≤á no⌠ represen⌠ thσ las⌠ bytσ iε thσ ARG│ block«á  Iεá thσá abovσ ì
  1285. examplσá thσ commanΣ woulΣ enΣ wheε ß bytσ i≤ writteε t∩ addres≤ 127├á eveε ì
  1286. iµ tha⌠ bytσ i≤ no⌠ 77« 
  1287.  
  1288. .PAè                         Z    disassemble command
  1289.  
  1290.  
  1291. Thσ ┌ commanΣ allow≤ thσ use≥ t∩ disassemblσ ß blocδ oµ data«  Z8┼ perform≤ ì
  1292. disassembly¼á whicΦá i≤á thσ translatioε oµ binar∙ memor∙ datß int∩á sourcσ ì
  1293. codσ format¼á usinτ thσ ful∞ Z8░ instructioε se⌠ anΣ Ziloτ mnemonics«á  Thσ ì
  1294. resultan⌠á sourcσ codσ ma∙ bσ directeΣ t∩ thσ consolσ o≥ t∩ thσ consolσ anΣ ì
  1295. ßá disδá filσá simultaneously«á  Z8┼ als∩ allow≤ thσá use≥á t∩á disassemblσ ì
  1296. interactivel∙ wheε ARG▓ i≤ equa∞ t∩ 1« Thσ forma⌠ oµ thσ commanΣ is:
  1297.  
  1298.  
  1299.   *Z  ARG1 [ARG2 ARG3]  <cr>
  1300.  
  1301.  
  1302. wherσ  ARG▒ ╜  thσ star⌠ addres≤ a⌠ whicΦ disassembl∙ i≤ t∩ begin
  1303.  
  1304.        ARG▓á  ╜á i≤á optiona∞á anΣá represent≤á thσá uppe≥á limi⌠á oµáá thσ ì
  1305.                  disassembl∙ proces≤ (seσ detail≤ below)
  1306.  
  1307.        ARG│á  ╜  i≤ aε optiona∞ filσ namσ specificatioε fo≥ disassembl∙á t∩ ì
  1308.                  disδ.       
  1309.  
  1310.  
  1311.   áááááARG▒ ma∙ bσ oµ an∙ argumen⌠ type«  
  1312.  
  1313.  
  1314. áááááARG▓ i≤ treateΣ iε onσ oµ tw∩ way≤ dependinτ oε it≤ value║ 
  1315.  
  1316.  
  1317. á1)ááIµá ARG▓á evaluate≤ t∩ ß numbe≥ betweeε ▒ anΣ 25╡á (decimal⌐á Z8┼á wil∞ ì
  1318. ááááádisassemblσá iε "blocδ modeó anΣ ARG▓ become≤ ß coun⌠ oµ thσ numbe≥á oµ ì
  1319. áááááinstruction≤ pe≥ blocδ t∩ disassemble«á A≤ wil∞ bσ explaineΣ below¼ Z8┼ ì
  1320. ááááápause≤ afte≥ eacΦ blocδ i≤ disassembleΣ anΣ allow≤ thσ use≥ t∩ continuσ ì
  1321. áááááo≥ t∩ terminatσ thσ command.
  1322.  
  1323. ì
  1324. áááááIµ ARG▓ i≤ omitteΣ altogethe≥ ß defaul⌠ blocδ sizσ oµ ▒ i≤ used«  
  1325.  
  1326. áááá
  1327. áááááWheneve≥á ARG▓ equal≤ 1¼á eithe≥ explicitl∙ o≥ b∙ default¼á Z8┼á allow≤ ì
  1328. áááááinteractivσá disassembl∙á whicΦá allow≤ thσ use≥ t∩ choosσá thσá outpu⌠ ì
  1329. áááááforma⌠ oµ thσ data«  Interactivσ disassembl∙ i≤ discusseΣ below.
  1330.  
  1331.  
  1332.  
  1333. á2)ááIµá ARG▓ evaluate≤ t∩ ß numbe≥ greate≥ thaε 25╡ i⌠ i≤ assumeΣ t∩ bσá aε ì
  1334. áááááendinτá address«á  Iε thi≤ casσ disassembl∙ wil∞ proceeΣ froφá startinτ ì
  1335. áááááaddres≤á (ARG1⌐á t∩ endinτ addres≤ (ARG2⌐ anΣ n∩ use≥á interventioεá i≤ ì
  1336. ááááárequired.
  1337. ì
  1338.  
  1339. áááááARG3¼á iµ present¼á i≤ assumeΣ t∩ bσ thσ namσ oµ ß disδ filσ int∩ whicΦ ì
  1340. áááááthσá disassembleΣ outpu⌠ wil∞ bσ written«á  Z8┼ searche≤ thσá specifieΣ ì
  1341. ááááádisδ fo≥ thσ nameΣ file«á  Iµ thσ filσ i≤ found¼á theε al∞ disassembleΣ ì
  1342. áááááoutpu⌠ wil∞ bσ writteε t∩ it¼á overwritinτ an∙ datß tha⌠ existeΣ there«  ì
  1343. áááááIµá thσá filσ doe≤ no⌠ exis⌠ thσ filσ wil∞ bσ createΣá usinτá thσá namσ ì
  1344. áááááspecifieΣ iε ARG3«  
  1345.  
  1346. èNOTE║á 
  1347.  
  1348. Iµá ARG│ i≤ presen⌠ ARG▓ mus⌠ bσ explicitl∙ specified¼á otherwisσ Z8┼á wil∞ ì
  1349. mistakenl∙ trea⌠ thσ filσ namσ a≤ ARG2.
  1350.  
  1351.  
  1352. Z8┼ output≤ t∩ thσ consolσ usinτ thσ followinτ format:
  1353.  
  1354.      ADDRESS      OBJECT CODE      LABEL:   OPCODE    OPERAND
  1355.  
  1356.  
  1357.  
  1358.  
  1359. Z8E writes to disk using the following formart:
  1360.    
  1361.            LABEL:   OPCODE    OPERAND
  1362.  
  1363.  
  1364. Z8┼á disassemble≤ memor∙ blocδ b∙ blocδ iε thσ use≥ specifieΣá blocδá size«  ì
  1365. Afte≥á eacΦ blocδ i≤ outpu⌠ Z8┼ pause≤ fo≥ use≥ input«á  ┴ carriagσá returε ì
  1366. inpu⌠ b∙ thσ use≥ terminate≤ thσ command¼á whilσ an∙ othe≥ characte≥ cause≤ ì
  1367. thσá nex⌠ blocδ t∩ bσ disassembleΣ (unles≤ interactivσ modσ i≤ iεá effect)«  ì
  1368. Perhap≤á thσá mos⌠ convenien⌠ wa∙ t∩ disassemblσ i≤ t∩ specif∙ ßá coun⌠á oµ ì
  1369. one¼á eithe≥ explicit∙ o≥ b∙ omittinτ ARG2¼á anΣ t∩ usσ thσ spacσ ba≥ a≤ aε ì
  1370. on/ofµ switch«á  Holdinτ dowε thσ spacσ ba≥ produce≤ output¼á releasinτ thσ ì
  1371. spacσ ba≥ end≤ output.
  1372.  
  1373.  
  1374. Z8E'≤ disassemble≥ i≤ especiall∙ powerfu∞ wheε useΣ iε conjunctioε witΦ thσ ì
  1375. symbo∞ facility«  B∙ buildinτ ß symbo∞ tablσ witΦ botΦ .PR╬ anΣ .SY═ files¼ ì
  1376. and/o≥á creatinτ use≥ defineΣ symbo∞ name≤ viß thσ ┴ command¼á thσ use≥ caε ì
  1377. virtuall∙á recreatσ aε assemble≥ outpu⌠ listinτ (minu≤ thσá comments⌐á witΦ ì
  1378. Z8┼ insertinτ label≤ anΣ symboliπ operand≤ whereve≥ possible.
  1379.  
  1380.  
  1381. Iµá Z8┼á canno⌠á matcΦá  aε operanΣ iε thσ disassembleΣá instructioεá t∩á ß ì
  1382. correspondinτ symbo∞ iε thσ symbo∞ table¼ o≥ iµ n∩ symbo∞ tablσ exists¼ Z8┼ ì
  1383. use≤ thσ hexadecima∞ value.
  1384.  
  1385.  
  1386. Iµ multiplσ symbol≤ iε thσ symbo∞ tablσ arσ equa∞ t∩ thσ samσ 1╢ bi⌠á valuσ ì
  1387. o≥ address¼ Z8┼ disassemble≤ usinτ thσ firs⌠ symbo∞ namσ encountereΣ iε thσ ì
  1388. searcΦ oµ thσ symbo∞ tablσ whicΦ i≤ equateΣ t∩ thσ 1╢ bi⌠ operanΣ specifieΣ ì
  1389. iεá thσ instructioε beinτ disassembled«á Thi≤  wil∞ unavoidabl∙ producσá aε ì
  1390. occasiona∞á misnameΣá operanΣ wheε morσ thaε onσ symbo∞ namσ i≤ equateΣá t∩ ì
  1391. thσ samσ 1╢ bi⌠ value« 
  1392.  
  1393.  
  1394. Z8┼á doe≤á no⌠á substitutσ symbo∞ name≤ iεá thosσá Z8░á instruction≤á whicΦ ì
  1395. referencσ ╕ bi⌠ immediatσ datß (ie«á L─  A,24H)«á  Eigh⌠ bi⌠ immediatσ datß ì
  1396. i≤á disassembleΣá a≤ ß quoteΣ ASCI╔ characte≥ iµ it'≤ absolutσ valuσ i≤á iε ì
  1397. thσ rangσ 2░ he° t∩ 7┼ hex╗ otherwise¼ i⌠ i≤ disassembleΣ a≤ ß he° byte.
  1398.  
  1399.  
  1400. Outpu⌠ b∙ Z8┼ t∩ ß disδ filσ i≤ instantl∙ assemblablσ b∙ mos⌠ an∙ assemble≥ ì
  1401. whicΦá accept≤ Ziloτ mnemonic≤ withou⌠ an∙ modification≤ othe≥ thaεá addinτ ì
  1402. aε EN─ statemen⌠ a⌠ thσ enΣ oµ thσ file.
  1403.  
  1404. èWheεá disassemblinτ ß blocδ oµ memor∙ (startinτ addres≤ t∩ endinτá address⌐ ì
  1405. thσ disassembl∙ proces≤ ma∙ bσ halteΣ a⌠ an∙ timσ b∙ depressinτ an∙ ke∙á oε ì
  1406. thσ keyboard.
  1407.  
  1408.  
  1409. Interactivσ disassembl∙ allow≤ thσ use≥ t∩ specif∙ thσ forma⌠ oµ thσ sourcσ ì
  1410. codσá produceΣ b∙ disassembl∙ oε ß linσ b∙ linσ basis«á  Interactivσá mode¼ ì
  1411. whicΦ i≤ alway≤ iε effec⌠ wheneve≥ ARG▓ i≤ equa∞ t∩ 1¼á cause≤ Z8┼ t∩ pausσ ì
  1412. afte≥á eacΦ instructioε i≤ disassembled«á  Thi≤ pausσ fo≥ inpu⌠ permit≤ thσ ì
  1413. use≥á t∩ ente≥ onσ oµ thσ followinτ command≤ t∩ choosσ thσá desireΣá outpu⌠ ì
  1414. format:
  1415.  
  1416.  
  1417.  
  1418.     CHARACTER    OUTPUT   FORMAT   EXAMPLE
  1419.  
  1420.      
  1421.      ┴            ASCI╔    DEFB     DEFB   'Q'
  1422.  
  1423.      B            HEX      DEFB     DEFB   23H    
  1424.  
  1425.      C            CODE     EX       DE,HL
  1426.  
  1427.      D            HEX      DEFW     DEFW   02FCH  or    
  1428.                   DEF╫     LABEL
  1429.  
  1430.      ;        add COMMENT           ;This is a Comment     
  1431.  
  1432.  
  1433.      carriage   (terminate command)
  1434.       return
  1435.  
  1436.            
  1437.      any other           PROCEED TO THE
  1438.      character           NEXT INSTRUCTIONááááá
  1439.  
  1440.  
  1441.  
  1442.  
  1443.      ASCII DEFB:
  1444.  
  1445. áááááThσá content≤ oµ memor∙ a⌠ thσ curren⌠ disassembl∙ addres≤ i≤ converteΣ ì
  1446. ááááát∩á ß quoteΣ ASCI╔ character«á  Value≤ les≤ thaε hexadecima∞ 2░á (ASCI╔ ì
  1447. áááááspace⌐á o≥á greate≥á thaεá hexadecima∞á 7┼á (ASCI╔á tilde⌐á canno⌠áá bσ ì
  1448. ááááádisassembleΣ int∩ thi≤ format«  
  1449.  
  1450. áááááHEX DEFB:
  1451.  
  1452. áááááThσá ╕á bi⌠ content≤ oµ memor∙ a⌠ thσ curren⌠ disassembl∙á addres≤á arσ ì
  1453. áááááconverteΣ t∩ ß he° byte.
  1454.  
  1455. áááááCODE:
  1456.  
  1457. áááááThi≤á i≤ thσ norma∞ defaul⌠ fo≥ disassembly«á  A≤ Z8┼ move≤ oε t∩ ß ne≈ ì
  1458. áááááaddres≤ i⌠ wil∞ alway≤ displa∙ thσ content≤ oµ memor∙ a≤ ß Z8░ instrucì
  1459. ááááátion«  Thσ "Có i≤ onl∙ needeΣ t∩ redispla∙ thσ content≤ oµ memor∙ a≤ aε ì
  1460. áááááinstructioε haΣ onσ oµ thσ othe≥ character≤ (A¼á B¼á o≥ D⌐ alread∙ beeε ì
  1461. áááááentered« 
  1462. èáááááHEX DEFW:
  1463.  
  1464. áááááThσ content≤ oµ thσ tw∩ byte≤ oµ memor∙ startinτ a⌠ thσ loactioε oµ thσ ì
  1465. ááááácurren⌠ disassembl∙ addres≤ arσ outpu⌠ a≤ ß definσ worΣ directive«  Thσ ì
  1466. ááááábytσ pointeΣ t∩ directl∙ b∙ thσ curren⌠ disassembl∙ addres≤ become≤ thσ ì
  1467. ááááálo≈á orde≥ bytσ oµ thσ operand«á  Thσ bytσ a⌠ disassembl∙ addres≤á plu≤ ì
  1468. áááááonσ become≤ thσ higΦ orde≥ byte.
  1469.  
  1470. ááá  NOTE:
  1471.  
  1472. áááááIµá Z8┼ haΣ jus⌠ disassembleΣ ß multibytσ Z8░ instructioε anΣ thσá use≥ ì
  1473. áááááentereΣ an∙ oµ thσ character≤ listeΣ abovσ (A¼á B¼á C¼á o≥ D⌐ onl∙á thσ ì
  1474. áááááfirs⌠ byte¼ o≥ firs⌠ tw∩ fo≥ "D"¼ oµ thσ instructioε woulΣ bσ converteΣ ì
  1475. ááááát∩ thσ requesteΣ format«á  Thσ remaininτ byte≤ oµ thσ instructioε woulΣ ì
  1476. ááááábσ treateΣ a≤ ß ne≈ Z8░ instructioε oncσ thσ use≥ proceedeΣ t∩ thσ nex⌠ ì
  1477. ááááádisassembl∙ address« 
  1478.  
  1479. áááááADDING COMMENTS
  1480.  
  1481. áááááZ8┼á allow≤ thσ use≥ t∩ adΣ onσ commen⌠ pe≥ linσ oµ disassembleΣá code«  ì
  1482. áááááIµá MAXLE╬á i≤á se⌠ t∩ ╢ theε comment≤ ma∙ bσ u≡ t∩á 2╣á character≤á iε ì
  1483. ááááálength« Iµ MAXLE╬ i≤ se⌠ t∩ 1┤ theε comment≤ ma∙ bσ u≡ t∩ 1╢ character≤ ì
  1484. áááááiε length.
  1485.  
  1486.  
  1487. Iµá durinτá disassembly¼á Z8┼ encounter≤ datß whicΦ canno⌠ bσá disassembleΣ ì
  1488. int∩ ß valiΣ Z8░ instructioε i⌠ wil∞ displa∙ thσ datß a≤ DEFB's.
  1489. .PAè                         COMMAND SUMMARY REFERENCE
  1490.  
  1491.  
  1492. CMD         Description                      Arguments
  1493.  
  1494. ┴áá      Inlinσá Assembl∙á            StartAddr 
  1495.  
  1496. B        Set Breakpoint               Addr1[,Pass Count]  [Addr2..AddrN]
  1497.  
  1498. C        Clear Breakpoint             Addr1               [Addr2..AddrN]
  1499.  
  1500. D        Dump Memory                  [StartAddr]         [End/Count] 
  1501.  
  1502. E        Examine Memory               StartAddr
  1503.  
  1504. F        Find                         StartAddr           MatchData
  1505.  
  1506. G        Go                           ExecutionAddr
  1507.  
  1508. H        Display Symbol Table         [FirstSymbol]
  1509.  
  1510. I        Input File                   FileName            [,Load Address]
  1511.  
  1512. J        Full Screen/Animated Debug   [/] [*] [Addr]      [Timeout]
  1513.  
  1514. K        Set Memory Window            StartAddr           [Size]
  1515.  
  1516. M        Move Memory                  SourceStart    SourceEnd    DestStart
  1517.  
  1518. N        Output to Port NO Pre-Read   [(] PortAddr [)]
  1519.  
  1520. O        Output Current Breakpoints
  1521.  
  1522. P        Exam/Modify PSW (Flag Reg)
  1523.  
  1524. Q        Query I/O Port               [(] PortAddr [)]
  1525.  
  1526. R        Examine/Modify Registers     RegSpecifier
  1527.  
  1528. S        Single-Step                  [/]  [Count]
  1529.  
  1530. U        Write Symbol Table To Disk   FileName    
  1531.  
  1532. V        Verify Memory                SourceStart     SourceEnd   DestStart
  1533.  
  1534. W        Write to Disk                FileName        [StartAddr] [EndAddr] 
  1535.  
  1536. X        Examine Machine State
  1537.  
  1538. Y        Fill Memory                  FromAddr        ToAddr       Data
  1539.  
  1540. Z        Disassemble                  StartAddr       End/Count    FileName
  1541.