home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / MBUG / MBUG112.ARC / Z8E14.LBR / Z8E.DZC / Z8E.DOC
Text File  |  1979-12-31  |  206KB  |  6,223 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                                 Z8E USER'S MANUAL
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.                                  Copyright 1984
  22.                                        by
  23.                                   RICK SURWILO
  24.                                  23 PLMOUTH ROAD
  25.                            STAMFORD,CONNECTICUT 06906
  26.                                  (203) 324-3809
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55. è
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.                                 TABLE OF CONTENTS
  73.  
  74.                 Section                                        Page
  75.            
  76.           I.  INTRODUCTION                                       1
  77.  
  78.          II.  INSTALLATION                                       3
  79.         áááááááááááááááááááá 
  80.         III.  INVOKING Z8E AT THE CP/M COMMAND LEVEL            13
  81.              
  82.          IV.  INITIALIZATION                                    19
  83.               
  84.           V.  COMMAND INPUT                                     23
  85.  
  86.          VI.  BREAKPOINTS                                       29
  87.  
  88.         VII.  COMMANDS:
  89.  
  90.                A     Assemble                                   33
  91.                B     Set Breakpoint                             37
  92.                C     Clear Breakpoint                           38
  93.                D     Dump                                       39     
  94.                E     Examine                                    40
  95.                F     Find                                       42
  96.                G     Go                                         44
  97.                H     Display Symbol Table                       45
  98.                I     Initialize Command Line (and FCB fields)   46
  99.                J     Animated Full Screen Debugging             47
  100.                K     Set Memory Window Address for J command    49
  101.                L     Load File                                  50
  102.                M     Move Memory                                51
  103.                N     Output to I/O Port without Pre-read        52
  104.                O     Output Current Breakpoints to Console      54
  105.                P     Examine Flag Register                      55
  106.                Q     Query I/O Ports                            56
  107.                R     Register                                   58
  108.                S     Single Step                                59
  109.                U     Save Symbol Table to Disk                  61è               V     Verify Memory                              62
  110.                W     Write Memory Segment to Disk               63
  111.                X     Display Machine State                      64
  112.                Y     Fill Memory                                65 
  113.                Z     Disassemble                                66
  114.  
  115.               APPENDIX A - Symbol File Formats                  70
  116.               APPENDIX B - ZILOG Mnemonics                      71 
  117.               APPENDIX C - System Memory Map                    92
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.                            Z8E - Z8░ DEBUGGIN╟ MONITOR
  142.          
  143.  
  144.         I« INTRODUCTION
  145.                     
  146.         Z8┼ i≤ ß professiona∞ qualit∙ interactivσ debugginτ too∞ designeΣ ì
  147.         t∩ speeΣ thσ testinτ oµ Z8░ assembl∙ languagσ programs«á  Origin-ì
  148.         all∙ writteε a≤ ß standalonσ monitor¼á Z8┼ wa≤ useΣ iε thσá deve-ì
  149.         lopemen⌠á oµ thσ world'≤ larges⌠ Touch-Tonσ Input/Voicσá Responsσ ì
  150.         system«á  No≈ redonσ t∩ ruε iε ß CP/═ o≥ TurboDO╙ environmen⌠ Z8┼ ì
  151.         contain≤á morσ feature≤ iε les≤ memor∙ thaε an∙ comparablσá soft-ì
  152.         warσ product«  Occupyinτ les≤ thaε 9╦ oµ memory¼ Z8┼ include≤ thσ ì
  153.         followinτ amonτ it≤ man∙ features:
  154.  
  155.         áááááá-áFul∞ screeε animateΣ displa∙ oµ thσ prograφ unde≥ ì
  156.         áááááááátes⌠ whilσ i⌠ i≤ beinτ executeΣ b∙ thσ Z8░ 
  157.  
  158.         áááá  - Completσ Z8░ inlinσ assembler¼á witΦ labels¼ sym-ì
  159.         áááááááábols¼á expressions¼á anΣ directives¼á usinτ Ziloτ ì
  160.         áááááááámnemonics
  161.                                 
  162.               - Interactivσá disassembl∙ witΦ label≤ anΣá symbol≤ ì
  163.         áááááááát∩á consolσá o≥ disδ allow≤ thσ use≥á t∩á specif∙ ìè        ááááááááoutpu⌠ format≤ anΣ adΣ comment≤ 
  164.  
  165.         áááááá- Full∙á traceΣ prograφ executioε includinτ ßá ful∞ ì
  166.         ááááááááscreeε singlσ ste≡ commanΣ tha⌠ instruct≤ Z8┼á t∩ ì
  167.         áááááááádisassemblσá codσá anΣ t∩ movσ thσ curso≥ t∩á thσ ì
  168.         áááááááánex⌠ instructioε t∩ execute
  169.  
  170.               - U≡ t∩ 1╢ use≥ settablσ breakpoint≤ witΦá optiona∞ ì
  171.         áááááááápas≤ counts
  172.  
  173.               - Truσá symboliπá debugginτá usinτ thσá inpu⌠á froφ ì
  174.         áááááááámultiplσá  Microsof⌠á MACRO-8░ .PR╬á anΣá LINK-8░ ì
  175.         áááááááá.SY═á file≤ anΣ Z80AS═ .LS╘ anΣ SLRN╦ anΣá Z80AS═ ì
  176.         áááááááá.SY═ file≤ froφ SL╥ System≤. 
  177.  
  178.               - Dynamiπ relocatioε oµ Z8┼ a⌠ loaΣ timσ t∩ thσ to≡ ì
  179.         ááááááááoµá  use≥á memor∙ regardles≤ oµá size«á  N∩á use≥ ì
  180.         ááááááááconfiguratioε oµ an∙ kinΣ i≤ required«       
  181.  
  182.  
  183.         Yo⌡á ma∙á wan⌠ t∩ spenΣ somσ timσ familarizinτ yourselµ witΦá thσ ì
  184.         manua∞ anΣ Z8E'≤ commanΣ structure¼ especiall∙ thσ EXAMIN┼ memor∙ ì
  185.         command¼ beforσ turninτ t∩ thσ INSTALLATIO╬ section.
  186.  
  187.  
  188.  
  189.  
  190.  
  191.                                         1
  192.  
  193.  
  194.  
  195.  
  196.  
  197.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  198.  
  199.  
  200.  
  201.  
  202.  
  203.                        This Page Intentionally Left Blank.
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217. è
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.                                         2
  257.  
  258.  
  259.  
  260.  
  261.  
  262.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  263.  
  264.  
  265.         II.  INSTALLATION
  266.  
  267.         Firs⌠ makσ ß workinτ cop∙ oµ Z8E¼á theε placσ you≥ origina∞ disk-ì
  268.         ettσá iεá ß safσ place«á  Makσ al∞ modification≤ t∩á thσá workinτ ì
  269.         copy¼ no⌠ thσ original« 
  270.  
  271.         Z8E'≤á (E)xaminσá memor∙á commanΣ wil∞ bσ useΣ t∩á changσá memor∙ ìè        contents«á Thi≤á commanΣ i≤ describeΣ briefl∙ below«á Fo≥ ßá morσ ì
  272.         detaileΣá explanatioε pleasσ refe≥ t∩ SECTIO╬ ╓ oµá thi≤á manual¼ ì
  273.         COMMAND INPUT.
  274.  
  275.         Z8┼ require≤ aε addressablσ curso≥ whicΦ caε bσ patcheΣá symboli-ì
  276.         call∙ a≤ follows:
  277.  
  278.              Firs⌠ instruc⌠ Z8┼ t∩ loaΣ itselµ a≤ wel∞ a≤ thσ symbo∞ ì
  279.         áááááfile:
  280.  
  281.         ááááá          áA>Z8E Z8E.COM Z8E.SYM
  282.  
  283.         áááááThσá symbo∞ filσ Z8E.SY═ contain≤ thσ namσ anΣá addres≤ ì
  284.         áááááof each parameter which may need to be modified.
  285.  
  286.         áááááUsσ thσ (E)xaminσ memor∙ commanΣ t∩ changσ thσ requireΣ ì
  287.         ááááábytes«á  Yo⌡á ma∙á ente≥ command≤ iε responsσ t∩á Z8E'≤ ì
  288.         áááááasterisδá prompt«á Oncσ yo⌡ ente≥ "Eó followeΣá b∙á thσ ì
  289.         ááááásymboliπá namσ oµ thσ addres≤ yo⌡ whicΦ t∩ change¼á Z8┼ ì
  290.         áááááwil∞ responΣ b∙ displayinτ  thσ actua∞ addres≤ followeΣ ì
  291.         áááááb∙á thσ he° anΣ ASCI╔ representatioε oµ thσ bytσá beinτ ì
  292.         áááááexamineΣ (non-printablσ character≤ arσ showε a≤ ß "~")«  ì
  293.         áááááFo≥ example║ 
  294.  
  295.         áááá *┼  MXYC╨ <cr>
  296.  
  297.         ááááá285┼á  ▓   ■   X╪   <cr>   ;X╪ represent≤ your input
  298.         ááááá285F   1B  ~   XX   <cr>   
  299.         ááááá2860   3D  =   XX   <cr>   
  300.         ááááá2861   00  ~   .           ;PERIOD ENDS COMMAND
  301.         ááááá*   
  302.  
  303.  
  304.         áááááIMPORTANT:
  305.         áááááAlway≤á patcΦ usinτ thσ symboliπ namσ oµ thσá variable╗ ì
  306.         áááááthσ addresse≤ showε iε thσ examplσ abovσ arσ fo≥ demon-ì
  307.         ááááástratioε onl∙ anΣ d∩ no⌠ necessaril∙ reflec⌠ thσ actua∞ ì
  308.         ááááálocation≤ oµ thσ variable≤ iε memory.
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.                                         3
  322.  
  323.  
  324.  
  325. è
  326.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  327.  
  328.  
  329.         áááááListeΣá belo≈ arσ thσ symboliπ name≤ oµá thσá addresse≤ ì
  330.         áááááwhicΦ ma∙ havσ t∩ bσ patcheΣ fo≥ you≥ CRT«  
  331.  
  332.              MXYCPá - Curso≥ addressinτ lead-iε string«á  Thσá firs⌠ ì
  333.         áááááááááááááábytσá (thσ numbe≥ ▓ iε thσ abovσ example⌐á re-ì
  334.         áááááááááááááápresent≤á thσá numbe≥ oµ byte≤ iε thσá string«  ì
  335.         ááááááááááááááThσ strinτ ma∙ bσ u≡ t∩ 1░ byte≤á long«á  Thi≤ ì
  336.         ááááááááááááááactua∞á lead-iε strinτ shoulΣ immediatel∙ fol-ì
  337.         áááááááááááááálo≈ thσ coun⌠ byte.
  338.  
  339.         ááááááááááááááDefault is the two character string:
  340.         áááááááááááááá      
  341.         áááááááááááááá      1B (Hex), 3D (Hex)
  342.  
  343.         ááááááááááááááASCII ESCAPE, followed by EQUAL SIGN.  
  344.         ááááááááááááá    
  345.         áááááROWB4? - Set this byte as follows:
  346.  
  347.                       NOT ZERO - Row is sent before Column
  348.                       ZERO     - Column is sent before Row
  349.  
  350.         ááááááááááááááDefault is NOT ZERO, row sent before column.áááááááááááááá 
  351.  
  352.  
  353.              ROW    - Se⌠á thi≤ bytσ t∩ contaiε thσ valuσ whicΦ i≤ t∩á bσ ì
  354.         ááááááááááááááaddeΣ ro≈ numbe≥ beforσ i⌠ i≤ sen⌠ t∩ thσ screen.
  355.  
  356.                       Default is 20 Hex, ASCII space. 
  357.  
  358.  
  359.              COLUMN - Se⌠á thi≤ bytσ t∩ contaiε thσ valuσ whicΦ i≤ t∩á bσ ì
  360.         ááááááááááááááaddeΣá columεá numbe≥á beforσá i⌠ i≤á sen⌠á t∩á thσ ì
  361.         ááááááááááááááscreen« Defaul⌠ i≤ 2░ Hex¼ ASCI╔ space.
  362.  
  363.  
  364.              CASEá  - Thi≤á bytσá control≤ whethe≥á yo⌡á prefe≥á enterinτ ì
  365.         áááááááááááááásymbo∞á name≤á iεá uppe≥ o≥ lowe≥á case«á  I⌠á als∩ ì
  366.         áááááááááááááácontrol≤ whethe≥ disassembl∙ wil∞ bσ donσ iεá uppe≥ ì
  367.         ááááááááááááááo≥áá lowe≥á case«áá PatcΦá as follows:
  368.  
  369.         ááááá         FF - lower case  (DEFAULT)
  370.         ááááá         00 - UPPER CASE  
  371.  
  372.         áááááMAXLEN - Thi≤á i≤á thσ maximuφ lengtΦ oµ permitteΣá fo≥ ì
  373.         áááááááááááááásymbo∞á names«á  Thσ permissablσ value≤ arσá ╢ ì
  374.         ááááááááááááááanΣá 14«á  Iµ patcheΣ t∩ an∙ othe≥ valuσá theε ì
  375.         ááááááááááááááZ8┼á wil∞ usσ 6«á  Thσ maximuφ lengtΦá oµá thσ ì
  376.         áááááááááááááásymbo∞ i≤ requireΣ b∙ Z8┼ iε orde≥ t∩ allocatσ ì
  377.         ááááááááááááááspacσ fo≥ loadinτ thσ symbo∞ table«  Iµ MAXLE╬ ì
  378.         ááááááááááááááequal≤á ╢ theε Z8┼ reserve≤ ╕ bytσ pe≥ symbol¼ ì
  379.         áááááááááááááá╢á fo≥ thσ namσ anΣ tw∩ fo≥ thσá address«á  Iµ ìè        ááááááááááááááthσá numbe≥á 1┤ i≤ useΣ theε Z8┼á reserve≤á 1╢ ì
  380.         áááááááááááááábyte≤á pe≥ symbol«á  Hencσ MAXLE╬ impact≤á thσ ì
  381.         ááááááááááááááamoun⌠ oµ TP┴ availablσ t∩ thσ prograφ sincσ ß ì
  382.         áááááááááááááásymbo∞á tablσ oµ 1╢ byte≤ pe≥ entr∙á obviousl∙ ì
  383.  
  384.  
  385.                                         4
  386.  
  387.  
  388.  
  389.  
  390.  
  391.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  392.  
  393.  
  394.         áááááááááááááátake≤á u≡á twicσ a≤ mucΦ spacσ a≤ onσá witΦá ╕ ì
  395.         áááááááááááááábytσ entries«  
  396.  
  397.         ááááááááááááááIf¼á whilσá readinτ iε thσ symbol≤ froφá disk¼ ì
  398.         ááááááááááááááZ8┼á encounter≤ ß symbo∞ longe≥ thaε thσ valuσ ì
  399.         ááááááááááááááspecifieΣáá iεá MAXLE╬á thσá symbo∞á namσáá i≤ ì
  400.         áááááááááááááátruncated to MAXLEN.
  401.  
  402.         áááááááááááááá      6 - Maximum Symbol Length (DEFAULT)áááááááááááááá 
  403.         áááááááááááááá     14 - Optional Symbol Length 
  404.  
  405.         TO SAVE THE PATCHED PROGRAM:
  406.  
  407.                            *W ANYNAME.COM  (Writes the File to Disk)
  408.  
  409.         Thi≤ complete≤ thσ installatioε oµ Z8E«  Typinτ iε ^├ (Contro∞ C⌐ ì
  410.         iεá responsσá t∩á Z8E'≤ asterisδ promp⌠ wil∞ returεá yo⌡á t∩á thσ ì
  411.         operatinτ system.
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433. è
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.                                         5
  451.  
  452.  
  453.  
  454.  
  455.  
  456.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  457.  
  458.  
  459.                              USER CODED CONSOLE I/O
  460.  
  461.         Thσ followinτ sectioε provide≤ detail≤ oε ß methoΣ oµá optionall∙ ì
  462.         replacinτá thσá BDO╙á call≤ fo≥ Consolσ I/╧ whicΦ Z8┼á use≤á witΦ ì
  463.         physica∞ consolσ I/╧ routine≤ o≥ direc⌠ BIO╙ calls« 
  464.  
  465.         T∩á modif∙á theφ usσ thσ symbo∞ name≤ listeΣ belo≈á anΣá assemblσ ì
  466.         you≥á routinσá a⌠ thσ appropriatσ addres≤ (vißá Z8E'≤á (A)ssemblσ ì
  467.         commanΣ - Seσ Manual).
  468.  
  469.  
  470.              TTYQ:      Thi≤á routinσ check≤ thσ statu≤ oµá thσá console«  ì
  471.         ááááááááááááááááIµ ß characte≥ i≤ waitinτ i⌠ i≤ read╗á otherwise¼ ì
  472.         ááááááááááááááááTTYQá return≤á ßá zer∩ iε ┴ t∩ indicatσá tha⌠á n∩ ì
  473.         áááááááááááááááácharacte≥ i≤ waiting.
  474.           
  475.         áááááTTYI║      ReaΣ ß character¼ waitinτ unti∞ onσ arrives.
  476.         ááááá           Return Character in A.
  477.           
  478.         áááááTTYO║      Outpu⌠ ß character¼ waitinτ unti∞ i⌠ i≤ sent.
  479.         ááááá           Character passed in A.
  480.  
  481.  
  482.         ListeΣ belo≈ i≤ thσ codσ tha⌠ Z8┼ use≤ t∩ d∩ consolσ I/O╗á usσ i⌠ ì
  483.         a≤á ß model«á You≥ routine≤ shoulΣ replacσ thσ instruction≤á witΦ ì
  484.         thσá doublσá semicolons«á  Bσ surσ t∩ savσ thσ reqister≤ a≤á sho≈ ì
  485.         below«  Thσ sizσ oµ eacΦ routinσ mus⌠ no⌠ exceeΣ 3▓ bytes«  
  486.  
  487. è
  488.  
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.                                         6
  516.  
  517.  
  518.  
  519.  
  520.  
  521.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  522.  
  523.  
  524.                                                                                 
  525.                 TTYQ:   push    bc
  526.                         push    de
  527.                         push    hl
  528.                         ld      c,11     ;;Check Console Status
  529.                         call    BDOS     ;;BDOS returns:  A = 00  No Character 
  530.                                          ;;               A = NZ  Input Waiting
  531.                                          ;;
  532.                         and     a        ;;Character Here?
  533.                         ld      c,6      ;;
  534.                         ld      e,0ffh   ;;     
  535.                         cal∞    nz,BDO╙  ;;Iµ Characte≥ Herσ ReaΣ It...
  536.                                          ;;   Else Fall Thru
  537.                         pop     hl
  538.                         pop     de
  539.                         pop     bc
  540.                         and     7fh             
  541.                         retè
  542.                         org     TTYQ+32
  543.  
  544.                 TTYI:   push    bc
  545.                         push    de
  546.                         push    hl
  547.                 TTYI00: ld      c,06     ;;Unadorned Console Input
  548.                         ld      e,0ffh   ;;Tell CP/M this is Input Request
  549.                         call    BDOS     ;;
  550.                         and     7fh      ;;Strip Parity
  551.                         jr      z,TTYI00 ;;Loop til Input Arrives
  552.                         pop     hl
  553.                         pop     de
  554.                         pop     bc
  555.                         ret
  556.  
  557.                         org     TTYI+32
  558.  
  559.  
  560.                 TTYO:   push    af
  561.                         push    bc
  562.                         push    de
  563.                         push    hl
  564.                         ld      c,02     ;;
  565.                         ld      e,a      ;;
  566.                         call    BDOS     ;;Console Output
  567.                         pop     hl      
  568.                         pop     de
  569.                         pop     bc
  570.                         pop     af
  571.                         ret
  572.  
  573.                         org     TTYO+32
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.                                         7
  581.  
  582.  
  583.  
  584.  
  585.  
  586.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  587.  
  588.  
  589.         Thσ symbol≤ TTYQ¼ TTYI¼ anΣ TTY╧ arσ includeΣ iε Z8E.SYM«  There-ì
  590.         forσá thesσá routine≤á caε bσ patcheΣá symbolicall∙á usinτá Z8E'≤ ì
  591.         assemblσ command¼ fo≥ example║ 
  592.  
  593.  
  594.                 *A TTYQ
  595.                 1F76    C5      TTYQ:   PUSH    BCè
  596.  
  597.  
  598.  
  599.         Z8┼á als∩ contain≤ ß provisioε fo≥ use≥ installeΣá initializatioε ì
  600.         code«á A≤á sooε a≤ Z8┼ i≤ loaded¼á bu⌠ beforσ i⌠ relocate≤ itselµ ì
  601.         int∩ higΦ memory¼á i⌠ make≤ ß cal∞ t∩ INIT«á  A≤ presentl∙ confi-ì
  602.         gureΣ INI╘ merel∙ contain≤ ß RE╘ instruction«á  Howeve≥ thσá use≥ ì
  603.         ma∙ adΣ u≡ t∩ 12╖ byte≤ oµ initializatioε code«  Thi≤ codσ ma∙ bσ ì
  604.         useΣá fo≥ an∙ purpose¼á fo≥ example¼á t∩ changσ you≥ SI╧ o≥á Uar⌠ ì
  605.         froφá interrup⌠ driveε t∩ non-interrup⌠ driveε iε thσ even⌠á tha⌠ ì
  606.         thσá Z8┼á consolσ routine≤ werσ replaced«á An∙ codσ installeΣá a⌠ ì
  607.         INI╘á i≤ executeΣ oncσ anΣ i≤ no⌠ moveΣ t∩ higΦ memor∙á witΦá thσ ì
  608.         res⌠ oµ Z8E« Yo⌡ neeΣ no⌠ savσ an∙ registers.
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.                                         8
  646.  
  647.  
  648.  
  649. è
  650.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  651.  
  652.  
  653.                   SUPPLYING YOUR OWN CURSOR ADDRESSING ROUTINE
  654.  
  655.  
  656.         Iµá you≥ compute≥ require≤ ß custoφ curso≥ addressinτ routinσá i⌠ ì
  657.         can be easily added by following the steps listed below:
  658.  
  659.         1.  áExaminσá thσ Z8E.SY═ filσ tha⌠ t∩ determinσ thσ addres≤ ì
  660.         áááááoµá Z8E'≤ standarΣ curso≥ addressinτ routinσá whicΦá i≤ ì
  661.         ááááácalleΣ XYCP«á  AssociateΣ witΦ namσ XYC╨ iε thσ filσ i≤ ì
  662.         áááááit≤ absolutσ address.
  663.  
  664.         2.áááUsinτ you≥ owε tex⌠ edito≥ codσ you≥ routinσ and prefacσá i⌠ ì
  665.         áááááwitΦ thσ followinτ puedo-ops:
  666.  
  667.         ááááá               ASEG
  668.         ááááá               .PHASE    XXXXH
  669.  
  670.         ááááá     Wherσá XXX╪á represent≤ thσá absolutσá hexadecima∞ ì
  671.         ááááááááááaddres≤ obtaineΣ iε ste≡ 1.
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703. è
  704.  
  705.  
  706.  
  707.  
  708.  
  709.                                         9
  710.  
  711.  
  712.  
  713.  
  714.  
  715.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  716.  
  717.  
  718.  
  719.  
  720.         áááááZ8┼ wil∞ pas≤ thσ ro≈ addres≤ iε thσ ┬ REGISTE╥ anΣ thσ ì
  721.         ááááácolumεá addres≤á iε thσ ├ REGISTER«á Ro≈ number≤á rangσ ì
  722.         áááááfroφ ░ t∩ 2│ whilσ columε number≤ rangσ froφ ░ t∩ 79« 
  723.         áááááYou≥ joΓ i≤ t∩ translatσ thesσ tw∩ numbe≥ int∩ ß curso≥ ì
  724.         ááááápostion on the screen of your CRT.
  725.  
  726.         áááááSavσá al∞á register≤ includinτ BC«á Usσá thσá followinτ ì
  727.         áááááskeletoε a≤ ß guide:
  728.  
  729.         ááááá                    ASEG
  730.         ááááá                    .PHAS┼  XXX╪        ;From áZ8E.SYM 
  731.  
  732.         ááááá          YOURS:    
  733.         ááááá                    PUSH    BC
  734.         ááááá                    PUSH    DE
  735.         ááááá                    PUSH    HL
  736.  
  737.         ááááá                    CURSOR ADDRESSING CODE HERE
  738.  
  739.         ááááá                    POP     HL
  740.         ááááá                    POP     DE
  741.         ááááá                    POP     BC
  742.         ááááá                    RET
  743.  
  744.         ááááá                    ENDáááá
  745.         á                                 
  746.         áááááUsσá Z8E'≤ outpu⌠ routinσ TTY╧ a≤ describeΣá abovσá (o≥ ì
  747.         áááááyou≥á owεá routine⌐á t∩ outpu⌠ thσ character≤á iεá you≥ ì
  748.         ááááácurso≥ addressinτ sequence« Obtaiε thσ absolutσ addres≤ ì
  749.         áááááoµá TTY╧ froφ thσ filσ Z8E.SYM«á Codσ thσ cal∞á t∩á thσ ì
  750.         ááááásubroutinσá usinτ thσ absolutσ addres≤ iεá hexadecimal«  ì
  751.         áááááFor instance, if Z8E.SYM contains the entry:
  752.  
  753.         ááááá                    2FE2   TTYO
  754.  
  755.         áááááthen code your call statements as:
  756.  
  757.         ááááá                    CALL   2FE2Hè
  758.         áááááZ8┼ impose≤ onl∙ onσ restrictioε oε thσ codσ yo⌡ write« ì
  759.         áááááIεá orde≥á t∩ guaranteσ tha⌠ you≥ routinσ caε bσá relo-ì
  760.         ááááácateΣá int∩ higΦ memor∙ b∙ Z8┼ d∩ no⌠ loaΣ an∙á 1╢á bi⌠ ì
  761.         áááááconstant≤á int∩á registe≥ pairs╗á insteaΣ d∩ tw∩ ╕á bi⌠ ì
  762.         áááááloads«á  Fo≥ example¼á d∩ no⌠ usσ thσ followinτá state-ì
  763.         áááááment:
  764.  
  765.         ááááá                    LD     HL,1234H
  766.  
  767.         áááááRather, code it like this:
  768.  
  769.         ááááá                    LD     H,12H
  770.         ááááá                    LD     L,34H
  771.  
  772.  
  773.  
  774.                                        10
  775.  
  776.  
  777.  
  778.  
  779.  
  780.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  781.  
  782.  
  783.         áááááThi≤á i≤á thσ onl∙ restrictioε othe≥ thaεá thσá maximuφ ì
  784.         ááááácodσá lengtΦ whicΦ i≤ placeΣ oε you≥ codσ whicΦ i≤á 12╕ ì
  785.         ááááábytes.
  786.  
  787.         3.áááAssemblσá you≥ routinσ witΦ eithe≥ Macro-8░ o≥á Z80ASM« ì
  788.         áááááLink it with either Link-80 or SLRNK.
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.  
  800.  
  801.  
  802.  
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811. è
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.                                        11
  840.  
  841.  
  842.  
  843.  
  844.  
  845.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  846.  
  847.  
  848.         4.áááLoad Z8E.COM using Z8E:
  849.  
  850.         ááááá     A>Z8E Z8E.COM Z8E.SYM
  851.  
  852.         ááááá     *
  853.  
  854.         5.áááNow overlay Z8E's cursor address code with your own:
  855.  
  856.         ááááá     *I YOURCODE.COM,XYCP
  857.  
  858.         áááááZ8┼ wil∞ loaΣ you≥ curso≥ addressinτ routinσ oε to≡ it≤ ì
  859.         áááááowεá beginninτá a⌠á thσá addres≤á associateΣá witΦá thσ ì
  860.         ááááásymbol XYCP.ááááááááá
  861.  
  862.         6.áááSave the new file using a name of your choosing:
  863.  
  864.         ááááá     *W  NEWDEBUG.COM
  865. è        7.áááExi⌠á bacδá t∩á thσá operatinτá systeφá bσá enterinτá ß ì
  866.         áááááControl-C at the asterisk prompt. 
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.                                        12
  905.  
  906.  
  907.  
  908.  
  909.  
  910.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  911.  
  912.  
  913.  
  914.  
  915.  
  916.                        This Page Intentionally Left Blank.
  917.  
  918.  
  919. è
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.                                        13
  970.  
  971.  
  972.  
  973. è
  974.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  975.  
  976.  
  977.         III.  INVOKING Z8E AT THE CP/M COMMAND LEVEL
  978.  
  979.         Upoεá invokatioε a⌠ thσ CP/═ commanΣ leve∞ Z8E load≤ a⌠á thσá lo≈ ì
  980.         enΣá oµ thσ Transien⌠ Prograφ Areß (TPA⌐ whicΦ begin≤ a⌠ absolutσ ì
  981.         addres≤ 100H«á Thσ TP┴ i≤ thσ areß iε memor∙ wherσ use≥á program≤ ì
  982.         arσ executed« 
  983.  
  984.         Oncσá loadeΣ Z8┼ determine≤ thσ sizσ oµ thσ TP┴ b∙ examininτá thσ ì
  985.         addres≤á fielΣ oµ thσ jum≡ instructioε a⌠ locatioε 5«á  Thi≤á ad-ì
  986.         dres≤á represent≤á botΦ thσ entr∙ poin⌠ int∩ CP/═ anΣ thσ enΣá oµ ì
  987.         thσ TPA«á  Z8┼ lower≤ thi≤ addres≤ b∙ approximatel∙ 9╦ byte≤á anΣ ì
  988.         relocate≤ int∩ thi≤ areß b∙ adjustinτ al∞ addresse≤ withiε itselµ ì
  989.         t∩ reflec⌠ it≤ ne≈ location«á  Thσ jum≡ instructioε a⌠ locatioε ╡ ì
  990.         i≤ similiarl∙ modifieΣ t∩ reflec⌠ thσ ne≈ sizσ oµ thσ TPA«á  Thu≤ ì
  991.         al∞á program≤á whicΦ usσ thi≤ addres≤ t∩ determinσ thσ amoun⌠á oµ ì
  992.         availablσ memor∙ caε ruε unchanged«á  Z8┼ complete≤ it≤ initiali-ì
  993.         zatioεá b∙ storinτ ß jum≡ instructioε t∩ it≤ breakpoin⌠á handlinτ ì
  994.         softwarσ a⌠ absolutσ addres≤ 3╕ (hexadecimal)«  
  995.  
  996.         Symbol≤ whicΦ arσ loadeΣ froφ file≤ arσ storeΣ b∙ Z8┼ iε ß symbo∞ ì
  997.         tablσ a⌠ thσ to≡ oµ thσ TP┴ jus⌠ belo≈ Z8E«  Z8┼ wil∞ dynamicall∙ ì
  998.         allocatσá thσá storagσ necessar∙ t∩ holΣ al∞ symbol≤ loadeΣá froφ ì
  999.         files╗ however¼ Z8┼ als∩ allow≤ thσ use≥ t∩ ente≥ hi≤ owε symbol≤ ì
  1000.         froφá thσá keyboarΣ viß thσ (A)ssemblσá command«á  Z8┼á doe≤á NOT ì
  1001.         reservσ ANY spacσ iε memor∙ fo≥ use≥ generateΣ symbols«  Thσ use≥ ì
  1002.         mus⌠á explicitl∙á reques⌠ memor∙ spacσ oε thσ CP/═ commanΣá line«  ì
  1003.         Thi≤ i≤ accomplisheΣ b∙ enterinτ thσ numbe≥ oµ symbol≤ fo≥á whicΦ ì
  1004.         spacσá shoulΣ bσ reserveΣ a≤ ß decima∞ number«á  Thi≤ numbe≥ mus⌠ ì
  1005.         bσ encloseΣ iε parenthese≤ anΣ mus⌠ appea≥ a≤ thσ firs⌠á argumen⌠ ì
  1006.         oε thσ commanΣ linσ a≤ showε below:
  1007.  
  1008.                    A>Z8E (32)
  1009.  
  1010.         Iεá thi≤ examplσ thσ use≥ ha≤ requesteΣ spacσ fo≥ 3▓ use≥ defineΣ ì
  1011.         symbols«á  Iµá MAXLE╬ ha≤ bσ se⌠ t∩ ╢ (Seσ INSTALLATIO╬á Section⌐ ì
  1012.         theεá eacΦ symbo∞ require≤ ╕ byte≤ oµá storage¼á hence¼á iεá thi≤ ì
  1013.         examplσá Z8┼ wil∞ se⌠ asidσ 25╢ byte≤ oµ memor∙ fo≥ use≥á defineΣ ì
  1014.         symbols«  
  1015.  
  1016.         Subsequen⌠ actioε i≤ baseΣ oε thσ forma⌠ oµ thσ remainde≥ oµá thσ ì
  1017.         commanΣ linσ a≤ entereΣ b∙ thσ user«  Iε thσ example≤ tha⌠ follo≈ ì
  1018.         bea≥á iεá minΣá tha⌠ an∙ oµ thesσ commanΣ line≤ ma∙á contaiεá thσ ì
  1019.         argumen⌠á requestinτ memor∙ spacσ fo≥ use≥ symbo∞ tablσá entries«  ì
  1020.         Thσ argumen⌠ woulΣ appea≥ immmediatσ afte≥ "Z8Eó iε ever∙ case.
  1021.  
  1022.  
  1023.              1«    A>Z8E
  1024.                         
  1025.                            Z8E reside≤ a≤ ß standalonσ prograφ iε memory.
  1026.  
  1027. è
  1028.              2.    A>Z8E  USERFILE.COM
  1029.  
  1030.         áááááááááááááááááááUSERFILE.CO═ i≤ loadeΣ a⌠ thσ beginninτ oµ thσ ì
  1031.  
  1032.  
  1033.                                        14
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1040.  
  1041.  
  1042.         áááááááááááááááááááTP┴á anΣ i≤ read∙ t∩ bσ acteΣ oε b∙á Z8Eá com-ì
  1043.         ááááááááááááááááááámands«á  
  1044.  
  1045.  
  1046.  
  1047.              3.    A>Z8E  USERFILE.COM USERFILE.SYM [,bias]
  1048.  
  1049.         áááááááááááááááááááUSERFILE.SY═ i≤ reaΣ iε b∙ Z8E anΣ al∞á symbo∞ ì
  1050.         áááááááááááááááááááname≤ containeΣ iε thσ filσ arσ entereΣ int∩ ß ì
  1051.         ááááááááááááááááááátablσá whicΦ begin≤ a⌠ thσ startinτ addres≤ oµ ì
  1052.         áááááááááááááááááááZ8E (thσ endinτ addres≤ oµ thσ "newó TPA⌐á anΣ  ì
  1053.         áááááááááááááááááááextend≤á downwarΣá iεá memory«á  Thσá optiona∞ ì
  1054.         ááááááááááááááááááábias¼á iµá specified¼á i≤ ß 1╢ bi⌠ valuσ whicΦ ì
  1055.         áááááááááááááááááááwil∞ bσ addeΣ t∩ thσ 1╢ bi⌠ addres≤ associateΣ ì
  1056.         áááááááááááááááááááwitΦ eacΦ symbo∞ iε thσ file«á  (Iε thi≤ exam-ì
  1057.         áááááááááááááááááááplσ ß .SY═ filσ i≤ shown╗á however¼  sincσ al∞ ì
  1058.         áááááááááááááááááááaddresse≤á appearinτ iε ß .SY═ filσ arσá abso-ì
  1059.         ááááááááááááááááááálutσá thσ optiona∞ bia≤ woulΣ probabl∙ no⌠á bσ ì
  1060.         áááááááááááááááááááused.)
  1061.  
  1062.         áááááááááááááááááááUSERFILE.CO═ i≤ loadeΣ a⌠ thσ star⌠ oµ thσ TP┴ ì
  1063.         áááááááááááááááááááonl∙ afte≥ thσ .SY═ filσ ha≤ beeε reaΣ anΣ thσ ì
  1064.         ááááááááááááááááááásymbo∞á tablσ built«á 
  1065.         áááááááááááááááááááá     
  1066.  
  1067.  
  1068.              4«    A>Z8E  USERFILE.CO═  USERFILE.PRN [,bias]
  1069.         áááááááááááááááááááá 
  1070.         áááááááááááááááááááA≤á iεá thσ previou≤ examplσá USERFILE.CO═á i≤ ì
  1071.         áááááááááááááááááááloadeΣá a⌠ thσ beginninτ oµ thσá TPA¼á bu⌠á iε ì
  1072.         áááááááááááááááááááthi≤ instancσ ß .PR╬ filσ i≤ useΣ t∩ construc⌠ ì
  1073.         áááááááááááááááááááthσá symbo∞ table«á  Thσ optiona∞ bia≤ become≤ ì
  1074.         áááááááááááááááááááver∙á usefu∞ iµ thσ .LS╘ o≥ .PR╬á filσá repre-ì
  1075.         ááááááááááááááááááásent≤á thσá listinτ oµ ß relocatablσá program«  ì
  1076.         áááááááááááááááááááRelocatablσ program≤ linkeΣ usinτá Microsoft'≤ ì
  1077.         áááááááááááááááááááLINK-8░ defaul⌠ t∩ ß loaΣ addres≤ oµ 103╚ witΦ ì
  1078.         áááááááááááááááááááthσá threσá byte≤á oµ memor∙ locateΣá a⌠á 100╚ ì
  1079.         ááááááááááááááááááácontaininτá ß jum≡ t∩ thσ entr∙ poin⌠á oµá thσ ì
  1080.         áááááááááááááááááááprogram«á  Therefore¼á iµá thσ use≥ supplie≤ ß ì
  1081.         ááááááááááááááááááábia≤á oµ 10│ iε thσ commanΣ linσ al∞á relocat-ìè        áááááááááááááááááááablσá symbol≤ iε thσ filσ wil∞á bσá associateΣ ì
  1082.         áááááááááááááááááááwitΦá thei≥ actua∞ addresse≤ iεá memory«á  An∙ ì
  1083.         ááááááááááááááááááábia≤á specifieΣá wil∞ onl∙ bσ addeΣá t∩á thosσ ì
  1084.         ááááááááááááááááááásymbol≤á whicΦ arσ flaggeΣ a≤ codσ relativσ iε ì
  1085.         áááááááááááááááááááthσ .PR╬ file« ┴ bia≤ wil∞ no⌠ bσ addeΣ t∩ an∙ ì
  1086.         ááááááááááááááááááásymbo∞á flaggeΣá a≤á ABSOLUTE¼áá EXTERANL¼á O╥ ì
  1087.         áááááááááááááááááááCOMMON.
  1088.  
  1089.         áááááááááááááááááááUSERFILE.CO═ i≤ loadeΣ a⌠ thσ star⌠ oµ thσ TP┴ ì
  1090.         áááááááááááááááááááonl∙ afte≥ thσ .LS╘ o≥ .PR╬ filσ ha≤ beeε reaΣ ì
  1091.         áááááááááááááááááááanΣ thσ symbo∞ tablσ built.
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.                                        15
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1105.  
  1106.  
  1107.              5«    A>Z8E USERFILE.CO═ USERFILE.SY═ [,bias▌ NFILE.LST [,bias]
  1108.         áááááááááááááááááááá          
  1109.         áááááááááááááááááááThσ truσ powe≥ oµ Z8E'≤ symbo∞ loadinτ i≤ bes⌠ ì
  1110.         áááááááááááááááááááevidenceΣ wheε loadinτ multiplσ symbo∞á table≤ ì
  1111.         áááááááááááááááááááfroφá severa∞ files«á  Thσ firs⌠ filσ i≤á gen-ì
  1112.         áááááááááááááááááááerall∙á ß .SY═ filσ specifyinτ al∞ thσá globa∞ ì
  1113.         ááááááááááááááááááásymbo∞ name≤ iε thσ prograφ t∩ bσ tested«  Thσ ì
  1114.         ááááááááááááááááááásubsequen⌠ file≤ specifieΣ oε thσ commanΣ linσ ì
  1115.         áááááááááááááááááááarσá usuall∙ .PR╬ o≥ .LS╘ file≤ oµ thσ indivi-ì
  1116.         ááááááááááááááááááádua∞á sourcσ module≤ tha⌠ werσ originall∙á as-ì
  1117.         ááááááááááááááááááásembleΣá anΣ theε linkeΣ (whicΦá produceΣá thσ ì
  1118.         ááááááááááááááááááá.SY═ file)«  AlthougΦ onl∙ tw∩ file≤ (USERFIL┼ ì
  1119.         áááááááááááááááááááanΣ NFILE⌐ arσ showε iε thi≤ example¼ iε actu-ì
  1120.         áááááááááááááááááááalit∙ thσ numbe≥ oµ .SY═ anΣ .PR╬ file≤ speci-ì
  1121.         áááááááááááááááááááfieΣá iεá thσ commanΣ linσ i≤ limiteΣ onl∙á b∙ ì
  1122.         áááááááááááááááááááthσá sizσá oµ Z8E'≤ inpu⌠ buffe≥ whicΦá i≤á 8░ ì
  1123.         ááááááááááááááááááácharacter≤ long.
  1124.  
  1125.  
  1126.         áááááááááááááááááááUSERFILE.CO═á i≤ loadeΣ  a⌠ thσ star⌠á oµá thσ ì
  1127.         áááááááááááááááááááTP┴á onl∙á afte≥ al∞ .SY═ anΣ .PRN/.LS╘á file≤ ì
  1128.         áááááááááááááááááááhavσ beeε reaΣ anΣ thσ symbo∞ tablσ built.
  1129.  
  1130.  
  1131.         áááááááááááááááááááNote:
  1132.         áááááááááááááááááááIµ n∩ bia≤ i≤ specified¼á Z8E wil∞ usσ ßá bia≤ ì
  1133.         áááááááááááááááááááoµ zero« 
  1134.  
  1135. è        Iµá morσ thaε onσ .LS╘ o≥ .PR╬ filσ i≤ beinτá loaded¼á theεá eacΦ ì
  1136.         filσá namσ caε bσ specifieΣ witΦ it≤ owε bias«á  Thσ bia≤ ma∙á bσ ì
  1137.         entereΣ iε thσ forφ oµ ß symbo∞ name¼ hexadecima∞ number¼ decima∞ ì
  1138.         number¼á o≥á an∙ combinatiioε oµ thσ threσ iε aε expressioε usinτ ì
  1139.         thσá ½ anΣ - operators«á  Iµ thσ individua∞ modulσ ha≤á ßá globa∞ ì
  1140.         entr∙á point¼á thσ namσ oµ whicΦ wa≤ previousl∙ loaded¼á thσ use≥ ì
  1141.         caεá bia≤ al∞ symbol≤ witΦ thσ valuσ associateΣ witΦá thi≤á name«  ì
  1142.         Iεá thi≤á wa∙ al∞ symbols¼á botΦ absolutσá anΣá relocatable¼á arσ ì
  1143.         associateΣ witΦ thei≥ actua∞ locatioε iε memory.
  1144.  
  1145.         Z8┼á a≤á presentl∙ configureΣ caε builΣ ß symbo∞ tablσá froφá thσ ì
  1146.         list files produced by the following programs:
  1147.  
  1148.             1. Microsoft   MACRO-80    V3.37  .PRN Files  May 8, 1980
  1149.             2. Microsoft   MACRO-80    V3.44  .PRN Files  Dec 9, 1981
  1150.             3. Microsoft   LINK-80     V3.44  .SYM Files  Dec 9, 1981 
  1151.             4. SLR Systems Z80ASM      V1.07  .LST Files
  1152.             5. SLR Systems SLRNK       V1.07  .SYM Files  
  1153.  
  1154.         Z80AS═ anΣ SLRN╦ ma∙ bσ configureΣ fo≥ 8░ o≥ 13▓ columε output.
  1155.  
  1156.         Z8┼á use≤ thσ filσ namσ extensioε (thσ threσ character≤ appearinτ ì
  1157.         t∩ thσ righ⌠ oµ thσ period⌐ t∩ determinσ thσ forma⌠ oµ thσá file« ì
  1158.         EacΦá oµá thσ abovσ filσ type≤ ha≤ ß distinguishinτá format«á Thσ ì
  1159.         characteritics of each type are described in APPENDIX A. 
  1160.                  
  1161.  
  1162.  
  1163.                                        16
  1164.  
  1165.  
  1166.  
  1167.  
  1168.  
  1169.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1170.  
  1171.  
  1172.         Durinτ thσ loadinτ proces≤ Z8E display≤ statu≤ anΣ erro≥ message≤ ì
  1173.         oεá thσá consolσ relatinτ t∩ thσ activit∙ iεá progres≤á a≤á showε ì
  1174.         below:
  1175.                    
  1176.         áááááááá    STATUS  MESSAGE                  DESCRIPTION
  1177.  
  1178.              1. Loading: USERFILE.COM áááááááááZ8Eá i≤ attemptinτ t∩ opeε ì
  1179.         áááááááááááááááááááááááááááááááááááááááthσá nameΣá filσ (iεá thi≤ ì
  1180.         ááááááááááááááááááááááááááááááááááááááácase, USERFILE.COM)
  1181.  
  1182.  
  1183.              2.  Number of symbols loaded:     Followinτá thσ loadinτá oµ ì
  1184.         áááááááááááááááááááááááááááááááááááááááal∞ symbol≤ froφ ß listinτ ì
  1185.         áááááááááááááááááááááááááááááááááááááááfilσá o≥á ß .SY═ filσ, thσ ì
  1186.         ááááááááááááááááááááááááááááááááááááááánumbe≥á oµ symbol≤á loadeΣ ì
  1187.         áááááááááááááááááááááááááááááááááááááááfroφ thσ specifieΣ filσ i≤ ì
  1188.         ááááááááááááááááááááááááááááááááááááááádisplayeΣá a≤á ßáá decima∞ ì
  1189.         ááááááááááááááááááááááááááááááááááááááánumber.è
  1190.  
  1191.              3.   Loaded: 100  YYYY            Z8E display≤ thσá startinτ           ì
  1192.         ááááááááááPages:á ZZZá ááááááááááááááááanΣá endinτ memor∙ addres-ì
  1193.         áááááááááááááááááááááááááááááááááááááááse≤á oµá thσá targe⌠á filσ ì
  1194.         ááááááááááááááááááááááááááááááááááááááá(thσ firs⌠ filσá specifieΣ ì
  1195.         áááááááááááááááááááááááááááááááááááááááoεá thσ CP/═ commanΣá linσ ì
  1196.         áááááááááááááááááááááááááááááááááááááááanΣ thσ onσ whicΦ i≤ goinτ ì
  1197.         ááááááááááááááááááááááááááááááááááááááát∩ bσ debugged).
  1198.  
  1199.          áááááááááááááááááááááááááááááááááááááá"Pages:óáá refer≤á t∩á thσ  ì
  1200.         ááááááááááááááááááááááááááááááááááááááádecima∞á numbe≥á oµá page≤ ì
  1201.         áááááááááááááááááááááááááááááááááááááááanΣá i≤ thσ coun⌠á oµá 25╢ ì
  1202.         ááááááááááááááááááááááááááááááááááááááábytσá page≤á iε thσá file« ì
  1203.         áááááááááááááááááááááááááááááááááááááááThi≤ numbe≥ ma∙  bσ subse-ì
  1204.         áááááááááááááááááááááááááááááááááááááááquentl∙ useΣ witΦ thσ CP/═ ì
  1205.         áááááááááááááááááááááááááááááááááááááááSAV┼ commanΣ oncσ thσá de-ì
  1206.         ááááááááááááááááááááááááááááááááááááááábuτ sessioε ends« 
  1207.  
  1208.  
  1209.                   ERROR  MESSAGE                        DESCRIPTION
  1210.  
  1211.              1.á  File not foundáááááááááááááááThσá filσ specifieΣ iε thσ ì
  1212.         ááááááááááááááááááááááááááááááááááááááácommanΣ coulΣ no⌠ bσ founΣ ì
  1213.         áááááááááááááááááááááááááááááááááááááááoε thσ specifieΣ drive.
  1214.  
  1215.              2.á  Symbol table not foundáááááááThσáá specifieΣá filσá wa≤ ì
  1216.         áááááááááááááááááááááááááááááááááááááááfounΣ bu⌠ diΣ no⌠á contaiε ì
  1217.         áááááááááááááááááááááááááááááááááááááááßá properl∙ formatteΣ sym-ì
  1218.         ááááááááááááááááááááááááááááááááááááááábo∞ table.
  1219.  
  1220.              3.á  Invalid offset - using 0000  Thσá use≥ ha≤ specifieΣ aε ì
  1221.         áááááááááááááááááááááááááááááááááááááááinvaliΣ offse⌠ t∩ bσ addeΣ ì
  1222.         ááááááááááááááááááááááááááááááááááááááát∩ eacΦ loadeΣ symbol« Z8E ì
  1223.         áááááááááááááááááááááááááááááááááááááááwil∞ continuσ t∩ loaΣ thi≤ ì
  1224.         ááááááááááááááááááááááááááááááááááááááásymbo∞á filσ bu⌠ wil∞á no⌠ ì
  1225.         áááááááááááááááááááááááááááááááááááááááadΣá an∙ bia≤ t∩ thσá sym-ì
  1226.  
  1227.  
  1228.                                        17
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1235.  
  1236.  
  1237.         ááááááááááááááááááááááááááááááááááááááábols«  Thi≤ erro≥ ma∙ havσ ì
  1238.         áááááááááááááááááááááááááááááááááááááááoccureΣá becausσ thσá use≥ ì
  1239.         áááááááááááááááááááááááááááááááááááááááspecifieΣ aε offse⌠ iε thσ ì
  1240.         áááááááááááááááááááááááááááááááááááááááforφ oµ ß symbo∞ whicΦ haΣ ì
  1241.         áááááááááááááááááááááááááááááááááááááááno⌠ááá beeεáááá previousl∙ ì
  1242.         áááááááááááááááááááááááááááááááááááááááloaded¼á o≥á thσ use≥á ma∙ ì
  1243.         áááááááááááááááááááááááááááááááááááááááhavσá specifieΣ ßá numeriπ ìè        ááááááááááááááááááááááááááááááááááááááávaluσá whicΦ containeΣá aε ì
  1244.         áááááááááááááááááááááááááááááááááááááááillega∞ character.
  1245.  
  1246.               4.   Syntax Error                Thσá filσ namσ wa≤á incor-ì
  1247.         ááááááááááááááááááááááááááááááááááááááárectl∙ specified« 
  1248.  
  1249.  
  1250.         Afte≥á al∞ use≥ files¼á botΦ symbo∞ file≤ anΣ thσ .CO═ filσ t∩ bσ ì
  1251.         debugged¼á havσ beeε loadeΣ Z8E display≤ curren⌠ memor∙ usagσá a≤ ì
  1252.         follows:
  1253.  
  1254.              Total Symbols:    XXXX
  1255.              Symbol Table:     XXXX - XXXX
  1256.              Z8E relocated:    XXXX - XXXX
  1257.              Top of memory:    XXXX  ááá       
  1258.  
  1259.  
  1260.  
  1261.         I⌠á i≤ importan⌠ t∩ notσ tha⌠ Z8E expect≤ thσ file≤ appearinτá iε ì
  1262.         thσá commanΣá linσ t∩ bσ appea≥ iε ß specifiπ order«á  Thσá firs⌠ ì
  1263.         filσá namσá appearinτ iε thσ commanΣ linσ i≤ assumeΣá t∩á bσá thσ ì
  1264.         targe⌠ filσ whicΦ i≤ t∩ bσ debugged«á  I⌠ i≤ alway≤ thσ las⌠ filσ ì
  1265.         t∩á bσ loaded«á Al∞ filσ name≤ followinτ thσ targe⌠ filσ namσ arσ ì
  1266.         assumeΣ t∩ bσ symbo∞ inpu⌠ file≤ anΣ the∙ arσ loadeΣ iε thσ orde≥ ì
  1267.         iε whicΦ the∙ appear.
  1268.  
  1269.         Thσá firs⌠á filσá nameΣá iε thσ commanΣá linσá i≤á alway≤á loadeΣ ì
  1270.         startinτ a⌠ addres≤ 10░ hex«á  Thσ "Ió commanΣ contain≤ aε optioε ì
  1271.         t∩á allo≈á thσ filσ t∩ bσ loadeΣ a⌠ ßá differen⌠á address«á  Thi≤ ì
  1272.         feature is not available at the CP/M command line level.
  1273.  
  1274.         Fo≥ ß discussioε oµ thσ forma⌠ oµ symbo∞ file≤ seσ APPENDI╪ A.
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.  
  1281.  
  1282.  
  1283.  
  1284.  
  1285.  
  1286.  
  1287.  
  1288.  
  1289.  
  1290.  
  1291.  
  1292.  
  1293.                                        18
  1294.  
  1295.  
  1296.  
  1297. è
  1298.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.                        This Page Intentionally Left Blank.
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328.  
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351. è
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.                                        19
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1364.  
  1365.  
  1366.         IV. INITIALIZATION
  1367.  
  1368.         Oncσ Z8E ha≤ beeε loaded¼ anΣ ha≤ iε turε loadeΣ al∞ file≤ speci-ì
  1369.         fieΣ oε thσ commanΣ line¼á i⌠ initialize≤ al∞ use≥ register≤ t∩ ░ ì
  1370.         witΦ thσ followinτ exceptions:
  1371.  
  1372.              Thσá user'≤ prograφ counte≥ contain≤ addres≤á 10░á he° ì
  1373.         áááááwhicΦ i≤ thσ star⌠ oµ thσ TPA«á  
  1374.  
  1375.         áááááThσá user'≤á stacδ pointe≥ i≤ se⌠ t∩ thσ startinτá ad-ì
  1376.         ááááádres≤á oµ Z8┼ (thσ to≡ oµ thσ TPA⌐ minu≤á two«á  Thesσ ì
  1377.         ááááátw∩á byte≤á arσ se⌠ t∩ zer∩ iεá accordancσá witΦá CP/═ ì
  1378.         áááááconvention«á  Wheε CP/═ load≤ ß prograφ i⌠ initialize≤ ì
  1379.         áááááßá stacδ fo≥ thσ loadeΣ prograφ b∙ pushinτ thσ addres≤ ì
  1380.         áááááoµá thσ jum≡ t∩ thσ systeφ warφ boo⌠ routinσ ont∩á it« ì
  1381.         áááááThu≤ use≥ program≤ (STAT.CO═ i≤ aε example⌐ caε choosσ ì
  1382.         ááááát∩ terminatσ themselve≤  anΣ returε t∩ CP/═ b∙á execu-ì
  1383.         ááááátinτá aε RE╘ througΦ thi≤ addres≤ oε thσá stack«á  Z8┼ ì
  1384.         áááááaccomplishe≤á thσá samσ objective║á  thσ 000░á oεá thσ ì
  1385.         ááááástacδá permit≤ thσ use≥ prograφ t∩ returε t∩ CP/═á viß ì
  1386.         áááááaddres≤á 000░á whicΦá alway≤ contain≤ ßá jum≡á t∩á thσ ì
  1387.         ááááásystem'≤ warφ boo⌠ routine«  
  1388.         ááááá 
  1389.  
  1390.         áááááThσá use≥á ╔ (interrupt⌐ registe≥ i≤ se⌠ t∩ thσá valuσ ì
  1391.         ááááácontaineΣá iεá thσá ╔ registe≥ wheεá Z8Eá wa≤á loaded«  ì
  1392.         áááááModif∙ a⌠ you≥ owε risk.
  1393.  
  1394.  
  1395.  
  1396.         Al∞á inpu⌠ anΣ outpu⌠ b∙ Z8E i≤ accomplisheΣ usinτá buffer≤á con-ì
  1397.         taineΣ withiε itself«  Z8E doe≤ no⌠ usσ thσ defaul⌠ DM┴ buffe≥ a⌠ ì
  1398.         absolutσá locatioεá 8░ no≥ doe≤ i⌠ usσ thσ defaul⌠á Filσá Contro∞ ì
  1399.         Blocδá (FCB⌐á a⌠ absolutσ locatioε 5C. 
  1400.  
  1401.              Note:                                           
  1402.         áááááááááááWheεá CP/═ finishe≤ loadinτá an∙á program¼ ì
  1403.         áááááááááááincludinτá Z8E¼á i⌠ move≤ thσ commanΣ linσ ì
  1404.         ááááááááááátai∞ t∩ thσ defaul⌠ DM┴ buffe≥ a⌠ absolutσ ì
  1405.         áááááááááááaddres≤á 8░ (hex⌐ anΣ initialize≤ thσá de-ìè        áááááááááááfaul⌠á FC┬ a⌠ absolutσ addres≤ 5├á t∩á thσ ì
  1406.         ááááááááááánamσ oµ thσ firs⌠ filσ (o≥ firs⌠ tw∩ file≤ ì
  1407.         áááááááááááiµ tw∩ o≥ morσ arσ specified⌐ appearinτ iε ì
  1408.         áááááááááááthσ commanΣ line«á  Z8E make≤ usσ oµ  thi≤ ì
  1409.         áááááááááááinformatioεá iεá orde≥ t∩  loaΣá thσá use≥ ì
  1410.         áááááááááááprograφá anΣá an∙ symbo∞á files«á  Iµá thσ ì
  1411.         áááááááááááprograφá t∩ bσ testeΣ als∩ expect≤ aε ini-ì
  1412.         ááááááááááátializeΣ FC┬ and/o≥ DM┴ buffe≥ (a≤ i≤ ver∙ ì
  1413.         áááááááááááofteε thσ case)¼ theε thσ use≥ mus⌠ effec⌠ ì
  1414.         áááááááááááthi≤á beforσá attemptinτá t∩á executσá thσ ì
  1415.         áááááááááááprogram«á
  1416.  
  1417.         áááááááááááFo≥á example¼á man∙ tex⌠ editinτá program≤ ì
  1418.         áááááááááááarσá invokeΣá b∙á typinτ thσ namσá oµá thσ ì
  1419.         áááááááááááedito≥ prograφ followeΣ b∙ thσ namσ oµ thσ ì
  1420.  
  1421.  
  1422.                                        20
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1429.  
  1430.  
  1431.         áááááááááááprograφ t∩ edi⌠ oε thσ CP/═ commanΣá line¼ ì
  1432.         áááááááááááa≤ iε hypothetica∞ case:
  1433.  
  1434.         ááááááááááá      A>EDIT B:FYL2EDIT.BAS
  1435.  
  1436.         áááááááááááOncσ thσ prograφ EDIT.CO═ i≤ loadeΣ i⌠ ma∙ ì
  1437.         áááááááááááexpec⌠á t∩ finΣ thσ defaul⌠ FC┬ t∩ bσá al-ì
  1438.         áááááááááááread∙ááá se⌠áá u≡áá t∩áá reaΣáá thσáá filσ ì
  1439.         áááááááááááFYL2EDIT.BAS«á  EDIT.CO═á ma∙ als∩á expec⌠ ì
  1440.         áááááááááááthσá DM┴ buffe≥ t∩ contaiε thσá numbe≥á oµ ì
  1441.         ááááááááááácharacter≤á iε thσ commanΣ linσ a⌠ addres≤ ì
  1442.         ááááááááááá80¼á a≤á wel∞ thσ thσ tex⌠ oµ thσá commanΣ ì
  1443.         ááááááááááálinσ startinτ a⌠ addres≤ 81« Iε thi≤ exam-ì
  1444.         áááááááááááplσá locatioε 8░ woulΣ contaiε ßá hexadec-ì
  1445.         áááááááááááima∞ ╞ (decima∞ 15⌐ representinτ thσá num-ì
  1446.         ááááááááááábe≥áá oµá characters¼áá anΣá location≤á 8▒ ì
  1447.         áááááááááááthrougΦ 8╞ woulΣ contaiε thσ 1╡ character≤ ì
  1448.         ááááááááááá(spacσ througΦ S)«á Similiarly¼á thσ firs⌠ ì
  1449.         ááááááááááábytσá oµá thσ defaul⌠ FC┬á a⌠á addres≤á 5├ ì
  1450.         áááááááááááwoulΣá contaiε thσ numbe≥ ▒ (numeriπ equi-ì
  1451.         ááááááááááávalen⌠á oµ drivσ B⌐ anΣ thσ nex⌠ 1▒á byte≤ ì
  1452.         áááááááááááwoulΣá contaiε thσ filσ namσá FYL2EDI╘á iε ì
  1453.         áááááááááááASCII«á  Iµá thσ namσ FYL2EDI╘ wa≤ shorte≥ ì
  1454.         áááááááááááthaε ╕ characters¼á theε thσ remainde≥á oµ ì
  1455.         áááááááááááthσá filσá namσ fielΣ iε thσ FC┬ woulΣá bσ ì
  1456.         áááááááááááfilleΣ witΦ ASCI╔ spaces« Thσ nex⌠ │ byte≤ ì
  1457.         áááááááááááwoulΣ contaiε thσ filσ typσ iεá ASCII╗á iε ì
  1458.         áááááááááááthi≤á examplσ thσ filσ typσ i≤ BAS«á Iµ n∩ ì
  1459.         áááááááááááfilσ typσ wa≤ specified¼á thi≤ fielΣ woulΣ ìè        ááááááááááácontaiε  │ ASCI╔ spaces.
  1460.  
  1461.         áááááááááááNow¼á iµá thσá use≥ wa≤ t∩ debuτ thσá EDI╘ ì
  1462.         áááááááááááprograφ usinτ Z8E¼á thi≤ initializatioε oµ ì
  1463.         áááááááááááthσá defaul⌠á DM┴ buffe≥ anΣá defaul⌠á FC┬ ì
  1464.         ááááááááááámus⌠á bσ accomplisheΣ "b∙ handóá prio≥á t∩ ì
  1465.         áááááááááááattemptinτ t∩ debuτ EDIT.COM¼ owinτ t∩ thσ ì
  1466.         áááááááááááfac⌠ tha⌠ CP/═ ha≤ alread∙ se⌠ u≡ thesσ t∩ ì
  1467.         áááááááááááarea≤á witΦ thσ datß froφ thσ commanΣ linσ ì
  1468.         áááááááááááwhicΦ wa≤ typeΣ iε t∩ loaΣ Z8E«  Iε short¼ ì
  1469.         áááááááááááEDI╘ mus⌠ bσ trickeΣ int∩ believinτ i⌠ wa≤ ì
  1470.         áááááááááááloadeΣ b∙ CP/═ anΣ no⌠ b∙ Z8┼ anΣ thσ use≥ ì
  1471.         ááááááááááámus⌠á perforφ thσ initializatioε oµá thesσ ì
  1472.         ááááááááááátw∩ areas«  Thσ use≥ ma∙ usσ thσ ┼ commanΣ ì
  1473.         ááááááááááá(t∩á storσ botΦ ASCI╔ anΣ numeriπ datßá iε ì
  1474.         ááááááááááámemory⌐ t∩ simulatσ aε initializeΣ commanΣ ì
  1475.         ááááááááááálinσ buffe≥ anΣ FCB«á  Furthe≥ informatioε ì
  1476.         áááááááááááregardinτá thσ forma⌠ oµ thσ FC┬á anΣá DM┴ ì
  1477.         ááááááááááábuffe≥á ma∙ mσ founΣ iε Digita∞ Research'≤ ì
  1478.         áááááááááááCP/═ 2.░ INTERFAC┼ GUIDE.
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.                                        21
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1494.  
  1495.  
  1496.         DEBUGGING HINT:
  1497.  
  1498.         I⌠á i≤á no⌠ necessar∙ t∩ initializσ thσ defaul⌠á FC┬á and/o≥á thσ ì
  1499.         defaul⌠á (commanΣá line⌐á DM┴ buffe≥ ever∙ timσ ß prograφá t∩á bσ ì
  1500.         testeΣ i≤ loadeΣ (iµ indeeΣ thi≤ prograφ utilize≤ them)«  InsteaΣ ì
  1501.         follo≈ thσ procedurσ listeΣ belo≈ (Iµ yo⌡ haven'⌠ reaΣ thσá indi-ì
  1502.         vidua∞ commanΣ summarie≤ thσ followinτ ma∙ makσ morσ sensσ later):
  1503.  
  1504.         ááááááááááOncσá yo⌡á havσá loadeΣ thσ prograφá t∩á tes⌠ ì
  1505.         ááááááááááperforφá thσ requireΣ initializatioεá oµá thσ ì
  1506.         ááááááááááFCB'≤á a⌠á 5C╚ anΣ 6C╚ anΣ thσá commanΣá linσ ì
  1507.         áááááááááábuffe≥á a⌠ 80╚ usinτ thσ ┼ command«á Usσá thσ ì
  1508.         ááááááááááASCI╔ strinτ optioε witΦ thσ ┼ commanΣ t∩ se⌠ ì
  1509.         ááááááááááthσá tex⌠á portions«á Usσ thσá numeriπá inpu⌠ ì
  1510.         ááááááááááfunctioε t∩ intializσ thσ drivσ specificatioε ì
  1511.         ááááááááááa⌠ addres≤ 5├ anΣ thσ characte≥ coun⌠ a⌠ 80H« 
  1512.  
  1513.         ááááááááááUsσá thσ ╫ commanΣ t∩ writσ ou⌠ memor∙ start-ìè        ááááááááááinτ a⌠ addres≤ ZERO« A≤ in:
  1514.  
  1515.                              *W  NEWFILE.COM  0   XXXX
  1516.  
  1517.         ááááááááááWherσ XXX╪ i≤ thσ highes⌠ addres≤ yo⌡ wisΦ t∩ ì
  1518.         áááááááááásave«á  No≈ thσ nex⌠ timσ yo⌡ loaΣ thi≤á filσ ì
  1519.         áááááááááái⌠á wil∞ oµ coursσ loaΣ a⌠ addres≤ 100H«á Usσ ì
  1520.         ááááááááááthσá ═á (movσ memor∙ command⌐ t∩ movσá i⌠á t∩ ì
  1521.         áááááááááálocatioε 0000«á  You≥ FC┬ anΣ DM┴ buffe≥á arσ ì
  1522.         ááááááááááinitialized«  
  1523.  
  1524.                               *M  100  XXXX+100  0
  1525.  
  1526.         SPECIA╠ NOTE║á  Iµ yo⌡ havσ Z8┼ versioε 1.┤ o≥ late≥ theε yo⌡ ma∙ ì
  1527. ááááááááusσ thσ ╔ (initialize⌐ commanΣ t∩ d∩ mos⌠ oµ thσ work«  Iε nearl∙ ì
  1528. ááááááááal∞á case≤ thσ ╔ commanΣ provide≤ thσ simples⌠ methoΣ fo≥ settinτ ì
  1529. ááááááááu≡á thσá commanΣ tai∞ anΣ FC┬ filσ namσ field≤á afte≥á loadinτá ß ì
  1530. ááááááááprogram.
  1531.  
  1532.  
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.                                        22
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.                        This Page Intentionally Left Blank.
  1565.  
  1566.  
  1567. è
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603.  
  1604.  
  1605.  
  1606.  
  1607.  
  1608.  
  1609.  
  1610.  
  1611.  
  1612.  
  1613.  
  1614.  
  1615.  
  1616.  
  1617.                                        23
  1618.  
  1619.  
  1620.  
  1621. è
  1622.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1623.  
  1624.  
  1625.         V.  COMMAND INPUTáá  
  1626.  
  1627.         Oncσá filσá anΣá symbo∞ tablσ loadinτá ha≤á beeεá completed¼á Z8E ì
  1628.         prompt≤á thσá operato≥ fo≥ commanΣ inpu⌠ b∙á displayinτá thσá "*ó ì
  1629.         character«  Thσ operato≥ caε theε typσ an∙ oµ Z8E'≤ singlσ lette≥ ì
  1630.         commands«á  Somσá command≤ requirσ n∩ argument≤ whilσ other≤á re-ì
  1631.         quirσ  betweeε onσ anΣ four« Argument≤ ma∙ bσ iε an∙ oµ thσ form≤ ì
  1632.         listeΣá belo≈ (excep⌠ a≤ noteΣ iε thσ descriptioε oµ thσá indivi-ì
  1633.         dua∞ commands)║      
  1634.  
  1635.  
  1636.  
  1637.  
  1638.              SYMBOL:áááááá  An∙á symbo∞ previousl∙ loadeΣá o≥á previousl∙ ì
  1639.         ááááááááááááááááááááentereΣá viß thσ keyboarΣ (seσ ┴ command⌐ ma∙ ì
  1640.         ááááááááááááááááááááappea≥ a≤ ß commanΣ argument« Al∞ symbol≤ arσ ì
  1641.         áááááááááááááááááááátreateΣ a≤ 1╢ bi⌠ values.
  1642.              
  1643.         áááááááááááááááááááá                                            
  1644.              HEX:           ┴á 1╢á bi⌠á he° numbe≥ ma∙ bσ entereΣá a≤á aε ì
  1645.         ááááááááááááááááááááargument«á Onl∙ thσ las⌠ fou≥ character≤á en-ì
  1646.         áááááááááááááááááááátereΣ arσ treateΣ a≤ significan⌠ inpu⌠ iµ Z8E ì
  1647.         áááááááááááááááááááái≤á expectinτá ß 1╢ bi⌠á argument«á Iεá thosσ ì
  1648.         ááááááááááááááááááááinstance≤ wherσ Z8E expect≤ ß ╕ bi⌠ argument¼ ì
  1649.         ááááááááááááááááááááonl∙ thσ las⌠ tw∩ character≤ arσ significant«  ì
  1650.         ááááááááááááááááááááA≤á such¼á thσ use≥ ma∙ elec⌠ t∩ correc⌠ mis-ì
  1651.         áááááááááááááááááááátake≤ b∙ eithe≥ backspacinτ anΣ retyping¼á o≥ ì
  1652.         ááááááááááááááááááááb∙á continuinτ t∩ ente≥ thσ numbe≥ anΣá ensu-ì
  1653.         áááááááááááááááááááárinτá tha⌠ thσ erroneou≤ digi⌠ doe≤ no⌠á ap-ì
  1654.         áááááááááááááááááááápea≥á iε thσ rightmos⌠ fou≥ (o≥ two⌐á charac-ì
  1655.         ááááááááááááááááááááter≤ a≤ showε iε thσ followinτ example:
  1656.  
  1657.         áááááááááááááááááááá  áá*E 1E21F4
  1658.  
  1659.         áááááááááááááááááááá áááááááááIµá ß 1╢ bi⌠ argumen⌠á i≤á expecteΣ ì
  1660.         ááááááááááááááááááááááááááááááZ8Eá woulΣá ignorσá thσá firs⌠á tw∩ ì
  1661.         áááááááááááááááááááááááááááááádigit≤á (▒ anΣ E⌐ anΣ woulΣ examinσ ì
  1662.         ááááááááááááááááááááááááááááááthσá content≤á oµá memor∙á locatioε ì
  1663.         áááááááááááááááááááááááááááááá21F4.
  1664.  
  1665.  
  1666.         ááááááááááááááááááááIµá n∩ symbo∞ tablσ i≤ presen⌠ iε memor∙ theε ì
  1667.         ááááááááááááááááááááhexadecima∞ number≤ (╕ o≥ 1╢ bit≤ iεá length⌐ ì
  1668.         ááááááááááááááááááááma∙ begiε witΦ an∙ digi⌠ ░ - F«á  However¼ iµ ì
  1669.         ááááááááááááááááááááßá symbo∞ tablσ i≤ iε memor∙ theε al∞ hexade-ì
  1670.         áááááááááááááááááááácima∞ number≤ whicΦ begiε witΦ ß digi⌠ iε thσ ì
  1671.         áááááááááááááááááááárangσá ┴á - ╞ arσ evaluateΣ firs⌠á a≤á symbo∞ ì
  1672.         áááááááááááááááááááánames«á  Iµ n∩ correspondinτ namσ i≤ founΣ iε ì
  1673.         ááááááááááááááááááááthσ symbo∞ tablσ theε Z8┼ attempt≤ t∩ reeval-ì
  1674.         ááááááááááááááááááááuatσ thσ namσ a≤ ß hexadecima∞á number«á  Fo≥ ì
  1675.         ááááááááááááááááááááexample¼á thσá tokeεá DEA─ i≤ ß valiΣá symbo∞ ìè        ááááááááááááááááááááname≤ a≤ wel∞ a≤ ß valiΣ hexadecima∞á number«  ì
  1676.         ááááááááááááááááááááIµá ß symbo∞ tablσ i≤ presen⌠ theε Z8┼á firs⌠ ì
  1677.         áááááááááááááááááááásearche≤á thσá symbo∞ tablσ lookinτá fo≥á thσ ì
  1678.         áááááááááááááááááááástrinτá DEAD.á  Iµá n∩ matcΦ occur≤ theεá Z8┼ ì
  1679.  
  1680.  
  1681.                                        24
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1688.  
  1689.  
  1690.         áááááááááááááááááááátreat≤ DEA─ a≤ thσ hexadecima∞ numbe≥á 0DEAD« ì
  1691.         ááááááááááááááááááááT∩á forcσá Z8┼ t∩ evaluatσ aε argumen⌠á a≤á ß ì
  1692.         ááááááááááááááááááááhexadecima∞ numbe≥ prefi° thσ argumen⌠ witΦ ß ì
  1693.         ááááááááááááááááááááleadinτ zer∩ a≤ iε 0DEAD« 
  1694.  
  1695.  
  1696.              REGISTER:      ValiΣ Z8░ 1╢ bi⌠ registe≥  name≤ arσá permit-ì
  1697.         ááááááááááááááááááááteΣá a≤ arguments«á Iµ ß 1╢ bi⌠ registe≥ namσ ì
  1698.         áááááááááááááááááááái≤á entered¼áá Z8Eá use≤á thσá 1╢á bi⌠á valuσ ì
  1699.         áááááááááááááááááááácurrentl∙ containeΣ iε thσ specifieΣ registe≥ ì
  1700.         áááááááááááááááááááápai≥á iε thσ user'≤ registe≥ se⌠ a≤ aεá argu-ì
  1701.         ááááááááááááááááááááment« 
  1702.          
  1703.         áááááááááááááááááááá     *D HL 8
  1704.  
  1705.         ááááááááááááááááááááááááááááááinstruct≤á Z8┼á t∩ dum≡á thσá firs⌠ ì
  1706.         ááááááááááááááááááááááááááááááeigh⌠á oµá memor∙ byte≤á whicΦá arσ ì
  1707.         áááááááááááááááááááááááááááááálocateΣ a⌠ thσ addres≤ containeΣ iε ì
  1708.         ááááááááááááááááááááááááááááááthσ user'≤ H╠ registe≥ pair
  1709.  
  1710.  
  1711.                             Valid 16 bit register names:
  1712.                                       
  1713.                                       AF - Accumulator and Flag
  1714.                                       BC - BC register pair
  1715.                                       DE - DE register pair
  1716.                                       HL - HL register pair
  1717.                                       SP - Stack Pointer
  1718.                                       P  - Program Counter
  1719.                                       PC - Program Counter
  1720.                                       IX - IX index register 
  1721.                                       IY - IY index register
  1722.  
  1723.         ááááááááááááááááááááNotσá tha⌠ thσ prograφ counte≥ ma∙ bσá speci-ì
  1724.         ááááááááááááááááááááfieΣ iε eithe≥ oµ tw∩ ways«á  Thσ singlσ cha-ì
  1725.         ááááááááááááááááááááracte≥ "Pó caε bσ useΣ t∩ specif∙ thσ prograφ ì
  1726.         áááááááááááááááááááácounte≥á provideΣá i⌠ doe≤ no⌠ appea≥á iεá aε ì
  1727.         ááááááááááááááááááááexpression«á  T∩ includσ thσ curren⌠ valuσ oµ ì
  1728.         ááááááááááááááááááááthσá user'≤ prograφ counte≥ iε aεá expressioε ì
  1729.         ááááááááááááááááááááthσ mnemoniπ "PCó mus⌠ bσ used.è
  1730.         ááááááááááááááááááááIµ aε expressioε useΣ a≤ aε argumen⌠ contain≤ ì
  1731.         ááááááááááááááááááááßá registe≥á pai≥ a≤ onσ oµá it≤á terms¼á thσ ì
  1732.         ááááááááááááááááááááregiste≥ pai≥ mus⌠ bσ thσ firs⌠ term«á  Also¼ ì
  1733.         ááááááááááááááááááááonl∙á onσ registe≥ pai≥ ma∙ bσ includeΣ iε aε ì
  1734.         ááááááááááááááááááááexpression:
  1735.  
  1736.  
  1737.         áááááááááááááááááááá     HL+4      valid expression
  1738.  
  1739.         áááááááááááááááááááá     5+DE      invaliΣ expressioε - registe≥ ì
  1740.         ááááááááááááááááááááááááááááááááááápai≥ i≤ no⌠ thσ firs⌠ term
  1741.         áááááááááááááááááááááááá
  1742.         ááááááááááááááááááááááááHL+BC áááááinvaliΣáá expressioεá - morσ ì
  1743.         áááááááááááááááááááááááááááááááááááthaεá onσá registe≥ pai≥á wa≤ ì
  1744.  
  1745.  
  1746.                                        25
  1747.  
  1748.  
  1749.  
  1750.  
  1751.  
  1752.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1753.  
  1754.  
  1755.         áááááááááááááááááááááááááááááááááááspecified
  1756.  
  1757.         áááááááááááááááááááááááááP-3ááááá  invaliΣáá expressioεáá - "PCó ì
  1758.         ááááááááááááááááááááááááááááááááááámus⌠á bσ useΣ t∩ includσá thσ ì
  1759.         ááááááááááááááááááááááááááááááááááácurren⌠á valuσ oµ thσ prograφ ì
  1760.         ááááááááááááááááááááááááááááááááááácounter in an expression      
  1761.         ááááááááááááááááááááááááááááááááááá
  1762.  
  1763.         ááááááááááááááááááááT∩áá differentiatσá betweeεá thσá hexadecima∞ ì
  1764.         áááááááááááááááááááánumber≤ AF¼á BC¼á anΣ D┼ anΣ thσ Z8░ registe≥ ì
  1765.         áááááááááááááááááááápair≤ oµ thσ samσ namσ bσ surσ t∩ prefi°á thσ ì
  1766.         áááááááááááááááááááánumerica∞ versioε witΦ ß leadinτ 0.
  1767.          
  1768.         ááááááááááááááááááááNotσá als∩ tha⌠ thσ Z8░ primσ registe≥á name≤ ì
  1769.         ááááááááááááááááááááarσá no⌠ alloweΣ a≤ argument≤ excep⌠ iε thσ ╥ ì
  1770.         áááááááááááááááááááácommand.
  1771.  
  1772.  
  1773.         áááááREGISTERá      Z8┼ allow≤ thσ use≥ t∩ specif∙ thσ datßá con-ì
  1774.              INDIRECT:  áááátaineΣ iε thσ memor∙ locatioε pointeΣ t∩ b∙ ß ì
  1775.         ááááááááááááááááááááregiste≥ pai≥ a≤ aε argument«á  Fo≥ instance¼ ì
  1776.         ááááááááááááááááááááiµ thσ user'≤ H╠ registe≥ pai≥ containeΣ 18E┼ ì
  1777.         ááááááááááááááááááááanΣ thσ addresse≤ 18E┼ anΣ 18E╞ containeΣ thσ ì
  1778.         áááááááááááááááááááábyte≤á 4▓ anΣ 6▒ respectively¼á theε thσ com-ì
  1779.         áááááááááááááááááááámanΣ   *┼ (HL⌐    woulΣ examinσ thσá content≤ ì
  1780.         ááááááááááááááááááááoµá memor∙ locatioε 6142«á Notσ tha⌠ registe≥ ì
  1781.         ááááááááááááááááááááindirec⌠á memor∙ reference≤ arσ indicateΣá b∙ ì
  1782.         ááááááááááááááááááááenclosinτá thσ registe≥ pai≥ namσá iεá PAREN-ì
  1783.         ááááááááááááááááááááTHESE╙ whicΦ follow≤ thσ ZILO╟ mnemoniπ meth-ìè        ááááááááááááááááááááoΣ oµ signifyinτ "thσ content≤ of".
  1784.  
  1785.         ááááááááááááááááááááThσá mos⌠ usefu∞ applicatioε oµ registe≥á in-ì
  1786.         áááááááááááááááááááádirec⌠á argument≤á i≤ t∩ se⌠á breakpoint≤á a⌠ ì
  1787.         áááááááááááááááááááásubroutinσá returε addresses«á  Conside≥á thσ ì
  1788.         áááááááááááááááááááásituatioεá oµá ß prograφ whicΦá i≤á currentl∙ ì
  1789.         áááááááááááááááááááásuspendeΣá viß ß breakpoin⌠ somewherσ iεá thσ ì
  1790.         áááááááááááááááááááámiddlσá oµá ßá subroutine«á  Thσ use≥á i≤á n∩ ì
  1791.         áááááááááááááááááááálonge≥á interesteΣ debugginτ thσ bod∙ oµá thσ ì
  1792.         áááááááááááááááááááásubroutine╗á hσ onl∙ care≤ abou⌠ gettinτ bacδ ì
  1793.         áááááááááááááááááááát∩ thσ instructioε tha⌠ follow≤ thσ CAL╠ tha⌠ ì
  1794.         áááááááááááááááááááágo⌠á hiφ int∩ thσ subroutine«á  Registe≥á in-ì
  1795.         áááááááááááááááááááádirec⌠ forma⌠ allow≤ hiφ t∩ enter:
  1796.  
  1797.         áááááááááááááááááááá                 *B (SP)
  1798.  
  1799.         ááááááááááááááááááááThi≤á inform≤ Z8┼ t∩ se⌠ ß breakpoin⌠ a⌠á thσ ì
  1800.         ááááááááááááááááááááaddres≤á pointeΣá t∩á b∙á thσá stacδá pointe≥ ì
  1801.         ááááááááááááááááááááregister.
  1802.  
  1803.  
  1804.  
  1805.         áááá DECIMAL:       Decima∞ number≤ iε thσ rangσ ░ - 6553╡ ma∙ bσ ì
  1806.         ááááááááááááááááááááentereΣ a≤ arguments«á Al∞ digit≤ oµ thσ num-ì
  1807.         áááááááááááááááááááábe≥á mus⌠á bσ iε thσ rangσá 0-9«á  ┴á decima∞ ì
  1808.         áááááááááááááááááááánumbe≥á mus⌠ bσ followeΣ b∙ ß "#óá character¼ ì
  1809.  
  1810.  
  1811.                                        26
  1812.  
  1813.  
  1814.  
  1815.  
  1816.  
  1817.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1818.  
  1819.  
  1820.         ááááááááááááááááááááotherwisσ Z8E wil∞ trea⌠ i⌠ a≤ ß he°á number«  ì
  1821.         ááááááááááááááááááááThσá followinτ examplσ show≤ ß decima∞ numbe≥ ì
  1822.         áááááááááááááááááááábeinτ inpu⌠ a≤ par⌠ oµ thσ ┼ command:
  1823.  
  1824.                 ááááááááááááááááá*E 512#  
  1825.         áááááááááááááááááááá  
  1826.         ááááááááááááááááááááááááááááááinstruct≤á Z8Eá t∩á examinσá memor∙ ì
  1827.         áááááááááááááááááááááááááááááálocatioεá 51▓ decima∞ (200 hex)
  1828.  
  1829.  
  1830.               LITERAL:    á ASCI╔á literal≤ u≡ t∩ 7╕ byte≤ iε lengtΦá arσ ì
  1831.         áááááááááááááááááááápermitteΣ a≤ argument≤ (Z8E'≤ inpu⌠ buffe≥ i≤ ì
  1832.         áááááááááááááááááááá8░á character≤á lonτá les≤á thσá openinτá anΣ ì
  1833.         áááááááááááááááááááátrailinτá quotσ characters)«á  ASCI╔ literal≤ ì
  1834.         áááááááááááááááááááámus⌠ bσ encloseΣ iε quotes«á  Thσ quotσ char-ì
  1835.         ááááááááááááááááááááacte≥á itselµ i≤ thσ onl∙ characte≥ no⌠á per-ì
  1836.         áááááááááááááááááááámitteΣ a≤ ß literal«á  Command≤ whicΦ d∩á no⌠ ì
  1837.         áááááááááááááááááááápermi⌠á thσ usσ oµ ARGUMENT-STRING≤ (seσá be-ìè        áááááááááááááááááááálow⌐á wil∞ stil∞ accep⌠ inpu⌠ iε thσ forφá oµ ì
  1838.         ááááááááááááááááááááquoteΣá strings«á  Iεá sucΦ ß casσá Z8┼á wil∞ ì
  1839.         ááááááááááááááááááááignorσ al∞ bu⌠ thσ las⌠ tw∩ character≤ oµ thσ ì
  1840.         ááááááááááááááááááááquoteΣá literal¼á treatinτ thσ inpu⌠ a≤ ßá 1╢ ì
  1841.         áááááááááááááááááááábi⌠ number«  Fo≥ examplσ iµ thσ use≥ entered:
  1842.  
  1843.         áááááááááááááááááááá áááááááááá     *Z 'ABCD'
  1844.  
  1845.         ááááááááááááááááááááZ8┼ woulΣ begiε trea⌠ 'BCº a≤ ß 1╢ bi⌠ numbe≥ ì
  1846.         ááááááááááááááááááááand begin disassembling at address at 4243.
  1847.  
  1848.  
  1849.         ááARGUMENT-á áááááá Thσ ╞ (find)¼á ┼ (examinσ memory)¼á ╬á (quer∙   ì
  1850.         ááSTRINGS:ááááááááááI/╧á port≤ withou⌠ pre-read)¼á ╤ (quer∙   I/╧ ì
  1851.         ááááááááááááááááááááports)¼á anΣá ┘ (fil∞ memory⌐ command≤ permi⌠ ì
  1852.         ááááááááááááááááááááthσ usσ oµ ARGUMENT-STRINGS¼ whicΦ arσ simpl∙ ì
  1853.         áááááááááááááááááááácombination≤á oµá al∞á valiΣá argumen⌠á type≤ ì
  1854.         ááááááááááááááááááááseparateΣ b∙ commas«  ARGUMENT-STRING≤ ma∙ bσ ì
  1855.         ááááááááááááááááááááan∙á lengtΦá u≡ t∩ thσ limi⌠ oµá Z8E'≤á inpu⌠ ì
  1856.         áááááááááááááááááááábuffe≥á whicΦ i≤ 8░á byte≤á long«á  ARGUMENT-ì
  1857.         ááááááááááááááááááááSTRING≤á ma∙á bσ terminateΣ b∙ eithe≥ ßá car-ì
  1858.         ááááááááááááááááááááriagσ returε o≥ thσ firs⌠ spacσ characte≥ no⌠ ì
  1859.         ááááááááááááááááááááappearinτá iε betweeε quotσ characters«á  Thσ ì
  1860.         ááááááááááááááááááááfollowinτáá i≤á aεá examplσá oµá ßá 1╡áá bytσ ì
  1861.         ááááááááááááááááááááARGUMENT-STRING╙á strinτ whicΦ combine≤á SYM-ì
  1862.         ááááááááááááááááááááBOLS¼ LITERALS¼ HEX¼ anΣ DECIMA╠ numbers:
  1863.  
  1864.         áááááááááááááááááááá   SYMBOL,'xyZ',4F,12E4,9,21#,511#,'ABc'
  1865.  
  1866.         ááááááááááááááááááááAssuminτá tha⌠ SYMBO╠ i≤ equa∞ t∩á 177╚á theε ì
  1867.         ááááááááááááááááááááthe above ARGUMENT-STRING would evaluate to:
  1868.         áááááááááááááááááááá
  1869.         áááááááááááááááááááá01 77 78 79 5A 4F 12 E4 09 15 01 FF 41 42 63     
  1870.  
  1871.                             Again¼á ARGUMENT-STRING╙á arσá terminateΣá b∙ ì
  1872.         ááááááááááááááááááááeithe≥á ßá carriagσ returε o≥á b∙á thσá firs⌠ ì
  1873.         ááááááááááááááááááááspacσá characte≥á tha⌠ doe≤ no⌠ appea≥á iεá ß ì
  1874.  
  1875.  
  1876.                                        27
  1877.  
  1878.  
  1879.  
  1880.  
  1881.  
  1882.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1883.  
  1884.  
  1885.         ááááááááááááááááááááquoteΣ litera∞ string.
  1886.  
  1887.         Z8E permit≤ expression≤ usinτ thσ ½ anΣ - operators«á  An∙  argu-ì
  1888.         men⌠ typσ ma∙ bσ combineΣ witΦ an∙ othe≥ type«á  Thσ lengtΦ oµ aε ì
  1889.         expressioεá i≤á limiteΣá onl∙ b∙ thσ sizσ oµá thσá inpu⌠á buffer«  ì
  1890.         Expression≤á arσá evaluateΣá froφ left to right anΣá thσá usσá oµ ì
  1891.         parenthese≤ i≤ no⌠ permitted« è
  1892.         Z8Eá indicate≤ argumen⌠ error≤ b∙ printinτ ß questioε marδ.
  1893.  
  1894.         Arguments ma∙á bσá line-editeΣ usinτ thσá standarΣá CP/═á contro∞ ì
  1895.         characters:
  1896.  
  1897.                        backspace:  erase the last character typed
  1898.                        control X:  erase the entire line 
  1899.                        control C:  return to CP/M via warm boot
  1900.  
  1901.         Al∞ inpu⌠ i≤ truncateΣ t∩ thσ sizσ oµ Z8E'≤ inpu⌠ buffe≥ whicΦ i≤ ì
  1902.         8░ character≤ long«  
  1903.  
  1904.         Al∞ alphabetiπ inpu⌠ t∩ Z8┼ ma∙ bσ iε uppercasσ o≥ lowercase« Al∞ ì
  1905.         outpu⌠ b∙ Z8┼ follow≤ thσ dictate≤ oµ thσ CAS┼ bytσ a≤ patcheΣ b∙ ì
  1906.         thσ use≥ (seσ INSTALLATION).
  1907.  
  1908.         Iεá thi≤á manua∞ thσ appearancσ oµ squarσ bracket≤ █ ▌ arounΣá aε ì
  1909.         argumen⌠ alway≤ indicate≤ tha⌠ thσ argumen⌠ i≤ optional.
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.  
  1916.  
  1917.  
  1918.  
  1919.  
  1920.  
  1921.  
  1922.  
  1923.  
  1924.  
  1925.  
  1926.  
  1927.  
  1928.  
  1929.  
  1930.  
  1931.  
  1932.  
  1933.  
  1934.  
  1935.  
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941.                                        28
  1942.  
  1943.  
  1944.  
  1945. è
  1946.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  1947.  
  1948.  
  1949.  
  1950.  
  1951.  
  1952.  
  1953.                        This Page Intentionally Left Blank.
  1954.  
  1955.  
  1956.  
  1957.  
  1958.  
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.  
  1988.  
  1989.  
  1990.  
  1991.  
  1992.  
  1993.  
  1994.  
  1995.  
  1996.  
  1997.  
  1998.  
  1999. è
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.                                        29
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2012.  
  2013.  
  2014.  
  2015.         VI. BREAKPOINTS
  2016.  
  2017.         Breakpoint≤á arσá thosσ addresse≤ iε thσ prograφá unde≥á tes⌠á a⌠ ì
  2018.         whicΦá thσ use≥ wishe≤ t∩ suspenΣ executioε anΣ returε contro∞ t∩ ì
  2019.         Z8E«á Thσá use≥ ma∙ set¼á clear¼á anΣ displa∙ breakpoint≤ a⌠á an∙ ì
  2020.         time¼á viß thσ appropriatσ commanΣ iε responsσ t∩ Z8E'≤á asterisδ ì
  2021.         prompt«á  Z8E'≤á implementatioε oµ breakpoint≤ doe≤ no⌠ forcσ thσ ì
  2022.         use≥ t∩ tediousl∙ ente≥ breakpoin⌠ addresse≤ ever∙ timσ executioε ì
  2023.         i≤ resumed«á Rather¼á thσ use≥ ma∙ ente≥ u≡ t∩ 1╢ breakpoin⌠á ad-ì
  2024.         dresse≤ anΣ eacΦ breakpoint¼á oncσ set¼ i≤ storeΣ iε onσ oµ Z8E'≤ ì
  2025.         interna∞ table≤ anΣ remain≤ iε effec⌠ unti∞ explicitl∙ cleareΣ b∙ ì
  2026.         thσ use≥ viß thσ Clea≥ breakpoin⌠ commanΣ (seσ ├ command).
  2027.  
  2028.         Z8┼ als∩ allow≤ yo⌡ t∩ specif∙ ß pas≤ coun⌠ t∩ bσ associateΣ witΦ ì
  2029.         an∙ breakpoin⌠ tha⌠ i≤ set«á  Pas≤ count≤ indicatσ thσ numbe≥á oµ ì
  2030.         time≤á ß particula≥ instructioε mus⌠ bσ executeΣ beforσ Z8┼á wil∞ ì
  2031.         regain control.
  2032.  
  2033.         Furthermore¼á Z8Eá doe≤ no⌠ modif∙ an∙ codσ iε thσá use≥á prograφ ì
  2034.         unti∞á ß G╧ commanΣ i≤ issueΣ (seσ ╟ command)«á Thi≤ permit≤á thσ ì
  2035.         use≥ t∩ examinσ code¼á anΣ makσ patche≤ iµ desired¼á a⌠ an∙ poin⌠ ì
  2036.         iε thσ debuτ session.
  2037.  
  2038.         Wheεá ß breakpoin⌠ i≤ reacheΣ iε thσ use≥ prograφ anΣ Z8E regain≤ ì
  2039.         control¼á thσ message║á     *BP*XXX╪      i≤ displayeΣ wherσ XXX╪ ì
  2040.         represent≤ thσ hexadecima∞ addres≤ oµ thσ breakpoint«á  Iεá addi-ì
  2041.         tion¼á Z8Eá wil∞ displa∙ thσ symboliπ namσ oµ thi≤ addres≤ iµ onσ ì
  2042.         exist≤á iε thσ symbo∞ table«á Z8E follow≤ thi≤ witΦ ß displa∙á oµ ì
  2043.         thσá asterisδá promp⌠ indicatinτ i⌠ i≤ read∙á read∙á fo≥á commanΣ ì
  2044.         processing.
  2045.  
  2046.         Thσá message║á    *ERROR*BP*XXX╪      i≤ displayeΣ oε thσ consolσ ì
  2047.         wheneve≥ Z8┼ determine≤ tha⌠ contro∞ ha≤ beeε regaineΣ withou⌠á ß ì
  2048.         valiΣá breakpoin⌠ havinτ beeε reached«á  Thi≤ i≤ generall∙ causeΣ ì
  2049.         b∙ ß use≥ prograφ whicΦ ha≤ gonσ ofµ thσ dee≡ end«á  Iµ thσá use≥ ì
  2050.         examine≤á thσá curren⌠ content≤ oµ thσ register≤ (viß thσ ╪á com-ì
  2051.         mand⌐ thσ curren⌠ prograφ counte≥ wil∞ mos⌠ assuredl∙ contaiεá aε ì
  2052.         addres≤á whicΦá haΣá no⌠á previousl∙ beeε se⌠á a≤á ßá breakpoint«  ì
  2053.         Thing≤ t∩ looδ fo≥ wheε thi≤ situatioε arise≤ include║  ß prograφ ìè        tha⌠ ble≈ it≤ stack¼ ß prograφ tha⌠ performeΣ ß ▓ 1/▓ gaine≥ witΦ ì
  2054.         ß ful∞ twis⌠ indirec⌠ througΦ ß register╗á ie«á J╨ (HL⌐ int∩á thσ ì
  2055.         grea⌠á unknown¼á anΣá attemptinτ t∩ tracσ wherσ wisσ meε fea≥á t∩ ì
  2056.         treaΣ (BIO╙ anΣ BDO╙ I/╧ routines).
  2057.  
  2058.         Z8┼á wil∞á allo≈ yo⌡ t∩ singlσ ste≡ (trace⌐ anΣá se⌠á breakpoint≤ ì
  2059.         anywherσ iε memory«á However¼á bea≥ iε minΣ tha⌠ a≤ yo⌡ ente≥ thσ ì
  2060.         BIO╙á anΣ BDO╙ netherworlΣ you≥ stacδ pointe≥ wil∞ a⌠ somσá poin⌠ ì
  2061.         bσá saveΣá directl∙ iε memor∙ a≤ CP/═ switche≤ t∩ it≤á owεá stacδ ì
  2062.         (you≥á stacδá pointe≥ i≤ no⌠ saveΣ oε ß stacδá b∙á CP/M)«á  Iµá ß ì
  2063.         breakpoin⌠ ha≤ beeε se⌠ a⌠ aε instructioε somewherσ iε BDO╙ o≥ iε ì
  2064.         thσá BIO╙ (afte≥ thi≤ savσ oµ you≥ stacδ pointe≥ ha≤ occured⌐ anΣ ì
  2065.         thi≤ breakpoin⌠ i≤ reached¼á Z8┼ wil∞ itselµ cal∞ ß BDO╙á routinσ ì
  2066.         iε aε attemp⌠ t∩ displa∙ thσ *BP*XXX╪ messagσ oε thσ console«á A⌠ ì
  2067.         thi≤á poin⌠ CP/═ wil∞ savσ Z8E'≤ stacδ pointe≥  anΣ overla∙ your≤ ì
  2068.  
  2069.  
  2070.                                        30
  2071.  
  2072.  
  2073.  
  2074.  
  2075.  
  2076.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2077.  
  2078.  
  2079.         iε memory«á  Wheε BDO╙ eventuall∙ restore≤ thσ stacδ pointe≥á anΣ ì
  2080.         execute≤á ßá RE╘ instructioε yo⌡ wil∞ no⌠ returε t∩ you≥á prograφ ì
  2081.         anΣá you≥á stacδ pointe≥ wil∞ bσ gone«á  Thesσá routine≤á caεá bσ ì
  2082.         traced¼ albei⌠ witΦ difficulty¼  bu⌠ yo⌡ mus⌠ kee≡ aε eyσ oε wha⌠ ì
  2083.         CP/═ i≤ doinτ witΦ thσ stacδ pointer.
  2084.  
  2085.  
  2086.  
  2087.  
  2088.  
  2089.  
  2090.  
  2091.  
  2092.  
  2093.  
  2094.  
  2095.  
  2096.  
  2097.  
  2098.  
  2099.  
  2100.  
  2101.  
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107. è
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118.  
  2119.  
  2120.  
  2121.  
  2122.  
  2123.  
  2124.  
  2125.  
  2126.  
  2127.  
  2128.  
  2129.  
  2130.  
  2131.  
  2132.  
  2133.  
  2134.  
  2135.                                        31
  2136.  
  2137.  
  2138.  
  2139.  
  2140.  
  2141.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2142.  
  2143.  
  2144.  
  2145.  
  2146.  
  2147.  
  2148.                        This Page Intentionally Left Blank.
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.  
  2156.  
  2157.  
  2158.  
  2159.  
  2160.  
  2161. è
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.  
  2188.  
  2189.  
  2190.  
  2191.  
  2192.  
  2193.  
  2194.  
  2195.  
  2196.  
  2197.  
  2198.  
  2199.  
  2200.                                        32
  2201.  
  2202.  
  2203.  
  2204.  
  2205.  
  2206.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2207.  
  2208.  
  2209.         A    Assemble
  2210.         _________________________________________________________________
  2211.  
  2212.  
  2213.         Thσá ┴ commanΣ permit≤ thσ use≥ t∩ effec⌠ inlinσ assembl∙ oµá Z8░ ì
  2214.         assemble≥ sourcσ code¼á includinτ label≤ anΣ symbols¼á usinτá thσ ì
  2215.         ful∞á Z8░á instructioε set«á Iε addition¼á thσ assemble≥á accept≤ ìè        standarΣá Ziloτ mnemonic≤ (APPENDIX B)¼á expression≤ usinτ thσá ½ ì
  2216.         anΣ - operators¼á a≤ wel∞ a≤ thσ followinτ fivσ assemble≥á direc-ì
  2217.         tives║á ORG¼ DEFB¼ DDB¼ EQU¼ anΣ DEFW«  Thσ forma⌠ oµ thσ commanΣ ì
  2218.         is:
  2219.  
  2220.                 *A  ARG1  <cr>
  2221.  
  2222.                   wherσá ARG1á represent≤ thσ startinτ addres≤á a⌠á whicΦ ì
  2223.         ááááááááááassembly will take place
  2224.  
  2225.         ááááááááááARG1 may be of any type
  2226.  
  2227.  
  2228.         Z8Eá initiall∙á prompt≤á thσá use≥á b∙á firs⌠á disassemblinτá anΣ ì
  2229.         displayinτ thσ instructioε currentl∙ locateΣ a⌠ thσ addres≤á spe-ì
  2230.         cifieΣ b∙ ARG1«  Thi≤ i≤ donσ a≤ ß conveniencσ t∩ permi⌠ thσ use≥ ì
  2231.         t∩á ensurσ tha⌠ an∙ patche≤ wil∞ bσ assembleΣ int∩ memor∙ a⌠á thσ ì
  2232.         intendeΣ location«  Z8E theε output≤ ß carriagσ return/linσ feed¼ ì
  2233.         display≤á thσ addres≤ specifieΣ a≤ ARG1¼á anΣ await≤á input«á Z8E ì
  2234.         wil∞á no⌠ disassemblσ beforσ ever∙ linσ oµ sourcσ codσ entereΣ b∙ ì
  2235.         thσ user¼ onl∙ beforσ thσ firs⌠ one« 
  2236.  
  2237.  
  2238.         Z8E expect≤ assembler input in the following format:
  2239.  
  2240.  
  2241.                      LABEL:  opcode  [operand1] [,operand2]
  2242.  
  2243.  
  2244.         Thσ labe∞ fielΣ i≤ alway≤ optional¼ thσ opcodσ fielΣ i≤ mandator∙ ì
  2245.         onl∙á iµá n∩á labe∞á wa≤ entered¼á anΣá thσá operanΣá fielΣá mus⌠ ì
  2246.         naturall∙á bσá includeΣ fo≥ thosσ Z8░ instruction≤ whicΦá requirσ ì
  2247.         one« Thσ threσ field≤ ma∙ bσ separateΣ froφ onσ anothe≥ b∙ space≤ ì
  2248.         o≥ taΓ characters.
  2249.  
  2250.         Z8┼á doe≤ no⌠ automaticall∙ reservσ spacσ withiε itselµ fo≥á use≥ ì
  2251.         supplieΣ symbo∞ names« Use≥ supplieΣ symbols¼ a≤ opposeΣ t∩ thosσ ì
  2252.         loadeΣá froφ files¼á arσ entereΣ froφ thσ keyboarΣ iεá thσá labe∞ ì
  2253.         fielΣá usinτ thσ (A)ssemblσ command«á Symbo∞ tablσ spacσ t∩á holΣ ì
  2254.         use≥á supplieΣá symbo∞ name≤ mus⌠ bσ explicitl∙ requesteΣ oεá thσ ì
  2255.         CP/═ commanΣ linσ a≤ explaineΣ iε thσ sectioε "INVOKIN╟ Z8┼ a⌠ oε ì
  2256.         thσ CP/═ COMMAN─ LEVEL"«á Thesσ use≥ supplieΣ symbols¼á oncσá en-ì
  2257.         tered¼á ma∙á bσ referenceΣ iε thσ operanΣ fielΣ oµ an∙ subsequen⌠ ì
  2258.         assembl∙á statemen⌠ o≥ iε thσ argumen⌠ fielΣ oµ an∙ Z8┼á command« ì
  2259.         Thesσá symbol≤á comσ iε hand∙ wheε disassemblinτ .CO═á file≤á fo≥ ì
  2260.         whicΦ n∩ sourcσ listinτ exist≤ anΣ als∩ wheε patchinτ code.
  2261.  
  2262.         Thσá assemble≥ i≤ ß onσ pas≤ assemble≥ anΣ forwarΣ reference≤á t∩ ì
  2263.  
  2264.  
  2265.                                        33
  2266.  
  2267.  
  2268.  
  2269. è
  2270.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2271.  
  2272.  
  2273.         symbol≤á whicΦá d∩á no⌠ alread∙ appea≥ iε thσá symbo∞á tablσá arσ ì
  2274.         flaggeΣá a≤á errors«á   However¼á Z8┼ allow≤ thσ usσ oµá thσá OR╟ ì
  2275.         directivσá (seσ discussioε below⌐ whicΦ allow≤ thσ use≥ t∩á mani-ì
  2276.         pulatσ thσ assembler'≤ locatioε counter¼á whicΦ help≤ t∩ minimizσ ì
  2277.         thσ n∩ forwarΣ referencσ limitation.
  2278.  
  2279.         Label≤á ma∙ begiε iε an∙ column¼á bu⌠ al∞ label≤ mus⌠ bσ followeΣ ì
  2280.         b∙ ß coloε eveε thosσ appearinτ iε aε EQ╒ statement«á  Label≤ ma∙ ì
  2281.         bσ oµ an∙ lengtΦ bu⌠ onl∙ thσ firs⌠ ╢ character≤ arσ significant«  ì
  2282.         Z8┼á alway≤ assign≤ thσ 1╢ bi⌠ valuσ oµ thσá assembler'≤á curren⌠ ì
  2283.         locatioε counte≥ t∩ thσ labe∞ beinτ entered¼ unles≤ thσ statemen⌠ ì
  2284.         i≤á aε EQ╒ directive«á  Label≤ neeΣ no⌠ bσ followeΣ b∙ aεá opcodσ ì
  2285.         anΣ thi≤ (a≤ wel∞ a≤ thσ EQ╒ directive⌐ provide≤ ß convenien⌠ wa∙ ì
  2286.         t∩á assigε ß valuσ t∩ ß symbo∞ name«á  Merel∙ se⌠ thσá assembler≤ ì
  2287.         locatioε counte≥ (viß thσ OR╟ directivσ o≥ a≤ ARG1 iε thσ commanΣ ì
  2288.         line⌐ t∩ thσ valuσ yo⌡ wisΦ t∩ assign¼á theε typσ thσ symbo∞ namσ ì
  2289.         followeΣ b∙ ß carriagσ return«  N∩ objec⌠ codσ i≤ produceΣ anΣ n∩ ì
  2290.         use≥á memor∙ area≤ arσ modifieΣ bu⌠ thσ symbo∞ anΣ it≤ associateΣ ì
  2291.         valuσá arσá entereΣ int∩ thσ use≥ symbo∞ table«á   Z8┼á doe≤á no⌠ ì
  2292.         trea⌠á duplicatσ symbo∞ name≤ a≤ errors«á  Rather¼á iµá thσá use≥ ì
  2293.         enter≤á ß symbo∞ namσ whicΦ alread∙ appear≤ iε thσ symbo∞á table¼ ì
  2294.         thσá valuσ associateΣ witΦ thσ ne≈ symbo∞ replace≤ thσ onσá asso-ì
  2295.         ciateΣ witΦ thσ old«  Fo≥ example¼ iµ thσ symbo∞ ENTRY╨ exist≤ iε ì
  2296.         thσá symbo∞á tablσ anΣ i≤ associateΣ witΦ thσ valuσ 23D┴ anΣá thσ ì
  2297.         use≥ assemble≤ thσ followinτ instruction:
  2298.  
  2299.              41FF 0E 04       ENTRYP: LD C,4
  2300.  
  2301.         Z8E would replace 23DA with 41FF.
  2302.  
  2303.         Assemble≥ statement≤ whicΦ d∩ no⌠ contaiε label≤ ma∙ begiε iε an∙ ì
  2304.         column¼á includinτá columε one«á  Therσ i≤ N╧  neeΣ t∩á inser⌠á ß ì
  2305.         leadinτá spacσ o≥ taΓ beforσ aε opcodσ iµ thσ opcodσ i≤ no⌠á pre-ì
  2306.         cedeΣ b∙ ß label.
  2307.  
  2308.         Operand≤á appearinτ iε thσ operanΣ fielΣ oµ thσ instructioε t∩ bσ ì
  2309.         assembleΣá ma∙ bσ an∙ oµ thσ followinτ type≤ subjec⌠ onl∙ t∩á thσ ì
  2310.         provis∩ tha⌠ 1╢ bi⌠ value≤ canno⌠ appea≥ a≤ operanΣ fo≥ thosσ Z8░ ì
  2311.         instruction≤á whicΦ requirσ ╕ bi⌠ values«á  Expression≤ combininτ ì
  2312.         an∙ oµ thσ followinτ fou≥ type≤ (witΦ thσ ½ anΣ - operators⌐á arσ ì
  2313.         als∩ permissable«  
  2314.  
  2315.                        SYMBOL  (from symbol table)
  2316.                        HEX
  2317.                        LITERAL (two bytes maximum)
  2318.                        DECIMAL
  2319.  
  2320.  
  2321.         Iεá additioεá thσá dolla≥ sigε ($⌐ ma∙ als∩ appea≥ iεá botΦá thσ ì
  2322.         operanΣá fielΣ oµ an∙ instructioε iε whicΦ ß 1╢ bi⌠á operanΣá i≤ ì
  2323.         allowed¼á anΣá als∩á iε thσ operanΣ fielΣ oµ an∙á relativσá jum≡ ìè        instruction«á  Thσá dolla≥ sigε represent≤ thσ curren⌠ valuσá oµ ì
  2324.         thσ assembler'≤ locatioε counter¼ tha⌠ is¼ thσ addres≤ appearinτ ì
  2325.         oε thσ linσ a⌠ whicΦ thσ assembl∙ i≤ takinτ place.
  2326.  
  2327.  
  2328.  
  2329.                                        34
  2330.  
  2331.  
  2332.  
  2333.  
  2334.  
  2335.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2336.  
  2337.  
  2338.         Thσá operanΣ fielΣ oµ ß relativσ jum≡ instructioε caε bσá entereΣ ì
  2339.         iεá eithe≥ oµ tw∩ ways«á  Thσ use≥ ma∙ codσ thσ operanΣ usinτ thσ ì
  2340.         dolla≥ sigε  mentioneΣ abovσ a≤ iε thσ followinτ examples:
  2341.  
  2342.  
  2343.                   JR  NZ,$+11   áá  ;jump to address PC+11 (hex)     
  2344.                   
  2345.                   DJNZ  $-24#       ;jump to address PC-24 (decimal)
  2346.  
  2347.         Thσ use≥ ma∙ alternativel∙ specif∙ ß 1╢ bi⌠ valuσ iε thσá operanΣ ì
  2348.         fielΣá oµá ß relativσ jum≡ instructioε anΣ le⌠ Z8E calculatσá thσ ì
  2349.         relativσá displacemen⌠á froφ thσ assembler'≤ prograφá counte≥á a≤ ì
  2350.         showε below:
  2351.  
  2352.                   JRá   C,LABEL      Assuminτ LABE╠ exists¼ iε thσ symbo∞  ì
  2353.         ááááááááááááááááááááááááááááátablσ Z8┼ wil∞ calculatσ thσ offset« ì
  2354.         áááááááááááááááááááááááááááááLABE╠á mus⌠á bσ withiε +12╣ o≥á -12╢  ì
  2355.         ááááááááááááááááááááááááááááábyte≤ froφ thσ assembler'≤á locatioε  ì
  2356.         ááááááááááááááááááááááááááááácounte≥á o≥á aε assembl∙ erro≥á wil∞  ì
  2357.         áááááááááááááááááááááááááááááresult.
  2358.  
  2359.                   JRáá    NZ,1080á   Z8Eá calculate≤ thσ displacemen⌠ be- ì
  2360.         ááááááááááááááááááááááááááááátweeε thσ assembler'≤ curren⌠á loca-ì
  2361.         ááááááááááááááááááááááááááááátioεá counte≥á anΣ thσ addres≤á 108░  ì
  2362.         ááááááááááááááááááááááááááááá(hex).
  2363.  
  2364.  
  2365.            
  2366.         Z8E indicate≤  error-freσ inpu⌠ b∙ firs⌠ displayinτ thσ resultan⌠ ì
  2367.         objec⌠á codσá anΣá theε displayinτ (oε thσ nex⌠á line⌐á thσá nex⌠ ì
  2368.         addres≤ a⌠ whicΦ assembl∙ wil∞ takσ place«  
  2369.  
  2370.         Assembl∙ error≤ arσ alway≤ indicateΣ b∙ ß doublσ pai≥ oµ questioε ì
  2371.         mark≤ whicΦ appea≥ followinτ thσ locatioε counter«  Aε erro≥ flaτ ì
  2372.         i≤ als∩ printeΣ anΣ wil∞ bσ onσ oµ thσ following:
  2373.  
  2374.                         ERROR FLAG               MEANING
  2375.  
  2376.                             Láá       Label starts with numeric character
  2377.         áááááááááááááááááááááááááááááá   è                            O         InvaliΣ opcode
  2378.  
  2379.                             SáááááááááSyntax error
  2380.  
  2381.                             T         Symbol table full                  
  2382.  
  2383.                             ╒áá       Instructioεáreference≤ an undefined
  2384.                                       symbol name
  2385.  
  2386.                             ╓á        Valuσ error - a 1╢ bi⌠á valuσ ì
  2387.                                       wa≤ specifieΣ a≤ aε operanΣ fo≥ ì
  2388.                                       aεá instructioεá whicΦá permit≤ ì
  2389.                                       onl∙ ╕ bi⌠ numbers«                  
  2390.  
  2391.         Iµá aεá erro≥ occurs¼á Z8E wil∞ repromp⌠ thσ use≥ witΦá thσá samσ ì
  2392.  
  2393.  
  2394.                                        35
  2395.  
  2396.  
  2397.  
  2398.  
  2399.  
  2400.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2401.  
  2402.  
  2403.         location counter address.
  2404.          
  2405.         A≤ wa≤ mentioneΣ previousl∙ thσ Z8E assmeble≥ use≤ standarΣ Ziloτ ì
  2406.         mnemonics«á  Thσá onσ exceptioε t∩ thi≤ i≤ thσ E╪ AF,AFº instruc-ì
  2407.         tion«á  T∩ assemblσ thi≤ instructioε thσ trailinτ quotσ characte≥ ì
  2408.         mus⌠ bσ omitted.
  2409.  
  2410.         Z8┼á support≤ thσ OR╟ directivσ whicΦ allow≤ thσ use≥á t∩á changσ ì
  2411.         thσ valuσ oµ thσ assembl∙ locatioε counter«á Thσ operanΣ fielΣ oµ ì
  2412.         thσá OR╟ directivσ ma∙ bσ ß 1╢ bi⌠ argumen⌠ oµ an∙á type«á  Afte≥ ì
  2413.         settinτ thσ ne≈ assembl∙ locatioε counte≥ Z8┼ display≤ thσ disas-ì
  2414.         sembleΣ instructioε a⌠ thσ ne≈ address.
  2415.  
  2416.         Z8E support≤ thσ DEFB¼á DEFW¼á anΣ DD┬ directive≤ whicΦ givσá thσ ì
  2417.         use≥á thσ abilit∙ t∩ assemblσ datß constant≤ int∩á memory«á  DEF┬ ì
  2418.         accept≤á aεá ╕á bi⌠ operand╗á thσ valuσ oµ whicΦ iεá placeΣá int∩ ì
  2419.         memor∙á a⌠ thσ addres≤ oµ thσ assembler'≤ curren⌠ locatioεá coun-ì
  2420.         ter«  DEF╫ allow≤ thσ use≥ t∩ specif∙ ß 1╢ bi⌠ operanΣ value¼ thσ ì
  2421.         lo≈á orde≥ bytσ oµ whicΦ i≤ placeΣ int∩ memor∙ a⌠ thσ addres≤á oµ ì
  2422.         thσá assembler'≤ curren⌠ locatioε counter¼á whilσ thσ higΦá orde≥ ì
  2423.         bytσá oµ thσ operanΣ i≤ placeΣ int∩ memor∙ a⌠ thσ addres≤ oµá thσ ì
  2424.         assembler'≤ curren⌠ locatioε counte≥ plu≤ one«á Thi≤ i≤ iε accor-ì
  2425.         dancσ witΦ thσ 8080/Z8░ conventioε oµ storinτ thσ higΦ orde≥ bytσ ì
  2426.         oµá 1╢ bi⌠ datß towarΣ thσ higΦ enΣ oµ memory«á Thσá DD┬á (definσ ì
  2427.         doublσá byte⌐ directivσ allow≤ thσ use≥ t∩ specif∙ ß 1╢ bi⌠ valuσ ì
  2428.         which¼á iεá contras⌠ t∩ thσ DEF╫ directive¼á i≤ storeΣ iεá memor∙ ì
  2429.         witΦ thσ higΦ orde≥ bytσ towarΣ thσ lo≈ enΣ oµ memory«á  Tha⌠ is¼ ì
  2430.         ß DD┬ directivσ instruct≤ Z8E t∩ storσ thσ mos⌠ significan⌠á bytσ ì
  2431.         oµá thσá 1╢á bi⌠ operanΣ valuσ iε memor∙ a⌠ thσá addres≤á oµá thσ ìè        assembler'≤á curren⌠ locatioε counter¼á anΣ thσ leas⌠ significan⌠ ì
  2432.         (lo≈á order⌐á bytσ i≤ placeΣ int∩ memor∙ a⌠ thσá addres≤á oµá thσ ì
  2433.         assembler'≤ curren⌠ locatioε counte≥ plu≤ one« 
  2434.  
  2435.         Thσ EQ╒ directivσ allow≤ thσ use≥ t∩ assigε ß valuσ t∩ ßá symbol«  ì
  2436.         Aε EQ╒ directivσ doe≤ no⌠ generatσ objec⌠ code«  I⌠ merel∙ allow≤ ì
  2437.         thσá use≥á t∩á referencσ ß numeriπ valuσ b∙ ßá symboliπá namσá iε ì
  2438.         subsequen⌠ assembl∙ statement≤ o≥ monito≥ commands«á  I⌠ i≤ espe-ì
  2439.         ciall∙á usefu∞á wheε useΣ prio≥ t∩ disassemblinτ (seσ ┌á command⌐ ì
  2440.         codσá fo≥ whicΦ n∩ symbo∞ tablσ exists«á  Thσ EQ╒á directivσá re-ì
  2441.         quire≤á thσ use≥ t∩ suppl∙ ß symboliπ namσ iε thσ labe∞ fielΣá oµ ì
  2442.         thσ instruction«á  Iµ Z8E indicate≤ error≤ iε aε EQ╒ statemen⌠ b∙ ì
  2443.         printinτ questioε marks«  Iµ aε EQ╒ statemen⌠ i≤ correctl∙ assem-ì
  2444.         bleΣá b∙á Z8E¼á thσ addres≤ oµ thσ assembler'≤á curren⌠á locatioε ì
  2445.         counte≥á i≤á eraseΣá sincσ aε EQ╒ statemen⌠ generate≤á n∩á objec⌠ ì
  2446.         code«  Operand≤ appearinτ iε EQ╒ statement≤ arσ evaluateΣ t∩ ß 1╢ ì
  2447.         bi⌠á value«á Z8E wil∞ displa∙ thσ valuσ oµ thi≤ 1╢ bi⌠ numbe≥á a≤ ì
  2448.         fou≥ he° digit≤ iε thσ objec⌠ codσ fielΣ oε thσ console.
  2449.  
  2450.  
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456.  
  2457.  
  2458.  
  2459.                                        36
  2460.  
  2461.  
  2462.  
  2463.  
  2464.  
  2465.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2466.  
  2467.  
  2468.         B    Set Breakpoint 
  2469.         _________________________________________________________________
  2470.  
  2471.  
  2472.         Breakpoint≤á arσá thosσá addresse≤ a⌠ whicΦ thσá userá wishe≤á t∩ ì
  2473.         suspenΣ executioε oµ thσ prograφ unde≥ test«á  Breakpoint≤ ma∙ bσ ì
  2474.         se⌠ a⌠ an∙ timσ iε responsσ t∩ Z8E'≤ asterisδ prompt«  Z8E allow≤ ì
  2475.         thσá use≥ t∩ se⌠ u≡ t∩ 1╢ individua∞ breakpoint≤ iε hi≤á program« ì
  2476.         Z8┼ als∩ allow≤ thσ use≥ t∩ specif∙ ß pas≤ coun⌠ t∩ bσ associateΣ ì
  2477.         with any breakpoint.
  2478.           ì
  2479.         Thσ commanΣ i≤ invokeΣ a≤ follows:
  2480.  
  2481.  
  2482.              *B ARG1[,pass count] [ARG2... ARGn] <cr>
  2483.  
  2484.                   wherσ eacΦ argumen⌠ represent≤ thσ addres≤ iε thσá use≥ ì
  2485.         ááááááááááprogram at which a breakpoint is to be set è
  2486.         Normally¼á tha⌠ i≤ wheε n∩ pas≤ coun⌠ i≤ specifed¼á executioεá oµ ì
  2487.         thσá use≥á prograφ stop≤ anΣ contro∞ return≤ t∩ thσá Z8┼á commanΣ ì
  2488.         leve∞ a≤ sooε a≤ ß breakpoin⌠ i≤ reached« Pas≤ count≤ arσ useΣ t∩ ì
  2489.         inforφá Z8┼á tha⌠ executioε oµ thσ use≥ prograφ shoulΣ hal⌠á onl∙ ì
  2490.         wheεá thσá specifieΣ breakpoin⌠ i≤ reacheΣ thσá numbe≥á oµá time≤ ì
  2491.         time≤ indicateΣ b∙ thσ pas≤ count« 
  2492.  
  2493.         Pas≤á count≤á arσ specifieΣ b∙ followinτ thσá breakpoin⌠á addres≤ ì
  2494.         witΦ ß commß anΣ theε enterinτ ß pas≤ coun⌠ immediatel∙ followinτ ì
  2495.         thσ comma.
  2496.  
  2497.         Aε existinτ pas≤ coun⌠ ma∙ bσ changeΣ t∩ ß differen⌠ valuσ b∙ re-ì
  2498.         enterinτ thσ samσ breakpoin⌠ address¼á followinτ i⌠ witΦ ß comma¼ ì
  2499.         and then specifying the new pass count.
  2500.          
  2501.         T∩ breaδ oε ß multi-bytσ Z8░ instructioε thσ addres≤ specifieΣ a≤ ì
  2502.         thσá breakpoin⌠á addres≤ mus⌠ bσ tha⌠ oµ thσ firs⌠á bytσá oµá thσ ì
  2503.         instruction«á  User≤ wh∩ fai∞ t∩ observσ thi≤ rulσ wil∞ generall∙ ì
  2504.         finΣ thei≥ program≤ hoppinτ thσ nex⌠ bu≤ t∩ never-neve≥ land«á Iµ ì
  2505.         ß patcΦ i≤ madσ a⌠ aε addres≤ oµ ß breakpoin⌠ currentl∙ iε effec⌠ ì
  2506.         bσá surσá thσ breakpoin⌠ addres≤ i≤ stil∞ pointinτ a⌠á thσá firs⌠ ì
  2507.         bytσá oµá thσ ne≈ instruction«á  
  2508.  
  2509.         Multiplσ breakpoint≤ ma∙ bσ se⌠ witΦ thσ samσ ┬ commanΣ b∙á sepa-ì
  2510.         ratinτ eacΦ onσ witΦ ß singlσ space«  Iµ multiplσ breakpoint≤ arσ ì
  2511.         specifieΣá anΣ Z8E detect≤ aε erroneou≤ argumen⌠ (ßá non-existen⌠ ì
  2512.         symbo∞á fo≥á example⌐ ß questioε marδ wil∞ bσá printed¼á anΣá thσ ì
  2513.         commanΣá terminates«á  Al∞ valiΣ breakpoint≤ specifieΣ u≡ t∩á thσ ì
  2514.         invaliΣ onσ will be set« 
  2515.  
  2516.         Z8Eá display≤á ßá questioε marδ wheε ß attemp⌠ i≤ madσ t∩á se⌠á ß ì
  2517.         seventeentΦ breakpoint.
  2518.  
  2519.  
  2520.  
  2521.  
  2522.  
  2523.  
  2524.                                        37
  2525.  
  2526.  
  2527.  
  2528.  
  2529.  
  2530.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2531.  
  2532.  
  2533.         C    Clear Breakpoint 
  2534.         _________________________________________________________________
  2535.  
  2536.  
  2537.         Thσ ├ commanΣ clear≤ individua∞ breakpoint≤ previousl∙ se⌠ b∙ ß ┬ ì
  2538.         command«  Thσ forma⌠ oµ thσ commanΣ is:
  2539. è
  2540.                   *C  ARG1 [ARG2...ARGn] <cr>
  2541.  
  2542.                        wherσ eacΦ arτ ma∙ bσ an∙ valiΣ argumen⌠ typσ ì
  2543.         áááááááááááááááwhicΦá evaluate≤ t∩ aε addres≤ previousl∙ se⌠ ì
  2544.         áááááááááááááááas a breakpoint
  2545.  
  2546.  
  2547.         Multiplσá breakpoint≤á ma∙á bσ cleareΣ b∙ thσ samσ ├á commanΣá b∙ ì
  2548.         separating each argument with a single space.
  2549.  
  2550.         Z8Eá display≤ ß questioε marδ wheε aε attemp⌠ i≤ madσ t∩ clea≥á ß ì
  2551.         non-existent breakpoint.
  2552.  
  2553.         T∩á clea≥á AL╠á breakpoint≤ enter║á  *├ ¬á   wherσá thσá asterisδ ì
  2554.         indicates ALL.
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.  
  2581.  
  2582.  
  2583.  
  2584.  
  2585.  
  2586.  
  2587.  
  2588.  
  2589.                                        38
  2590.  
  2591.  
  2592.  
  2593. è
  2594.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2595.  
  2596.  
  2597.         D    Dump 
  2598.         _________________________________________________________________
  2599.  
  2600.  
  2601.         Thσ ─ commanΣ allow≤ thσ use≥ t∩ dum≡ memor∙ iε botΦ hexadecima∞ ì
  2602.         anΣ ASCI╔ t∩ thσ consolσ iε use≥ specifieΣ blocδ size≤.
  2603.          ì
  2604.         The forma⌠ oµ thσ commanΣ is:
  2605.  
  2606.                   *D  [ARG1]  [ARG2]  <cr>
  2607.  
  2608.                        where    ARG1 =  the starting address to dump
  2609.                                 
  2610.                                 ARG2 = ádictate≤ááá thσááá dum≡ááá forma⌠ ì
  2611.         áááááááááááááááááááááááááááááááádependinτ oε it≤ value«á  Iµ ARG2 ì
  2612.         áááááááááááááááááááááááááááááááái≤á iε thσ rangσ ░ - 25╡ theεá i⌠ ì
  2613.         áááááááááááááááááááááááááááááááái≤á treateΣá a≤ ß blocδ sizσá anΣ ì
  2614.         áááááááááááááááááááááááááááááááárepresent≤ thσ numbe≥ oµ byte≤ t∩ ì
  2615.         áááááááááááááááááááááááááááááááábσá displayeΣá (░ i≤á treateΣá a≤ ì
  2616.         áááááááááááááááááááááááááááááááá256)« Iµ ARG2 i≤ greate≥ thaε 25╡ ì
  2617.         áááááááááááááááááááááááááááááááátheε ARG2 i≤ treateΣ a≤ aε endinτ ì
  2618.         ááááááááááááááááááááááááááááááááaddres≤ anΣ memor∙ wil∞ bσ dumpeΣ ì
  2619.         áááááááááááááááááááááááááááááááánon-interactively to the console.
  2620.  
  2621.         ááááááááááááá  ARG1 and ARG2 may be of any argument type.
  2622.  
  2623.         Iµá ARG1á i≤ omitteΣ theε thσ dum≡ resume≤ froφ thσá las⌠á memory ì
  2624.         addres≤á +▒á a≤ displayeΣ viß thσ previou≤ invocatioεá oµá thσá ─ ì
  2625.         command«á Iµá n∩ previou≤ ─ commanΣ haΣ beeε giveε theε memor∙ i≤ ì
  2626.         dumped starting at address 100H.
  2627.  
  2628.         Iµá ARG▓ i≤ omitteΣ theε thσ mos⌠ recen⌠ valuσ oµ ARG▓ (froφá thσ ì
  2629.         las⌠ ─ command⌐ i≤ used.
  2630.          
  2631.         Thσá dum≡ commanΣ display≤ thσ content≤ oµ memor∙ iεá hexadecima∞ ì
  2632.         oεá thσá lef⌠ sidσ oµ thσ consolσ whilσ thσ ASCI╔á equivalen⌠á oµ ì
  2633.         eacΦ bytσ i≤ showε oε thσ righ⌠ side«  
  2634.  
  2635.         Durinτá ßá blocδ b∙ blocδ dum≡ (ARG▓ ╝ 25╢ signifie≤ ßá blocδá b∙ ì
  2636.         blocδá dump⌐á Z8┼ wait≤ fo≥ use≥ inpu⌠ afte≥ eacΦ blocδá i≤á dis-ì
  2637.         played«á  ┴á carriagσ returε entereΣ b∙ thσ use≥ cause≤ thσá nex⌠ ì
  2638.         sequentia∞á blocδ t∩ bσ dumpeΣ whilσ an∙ othe≥á characte≥á cause≤ ì
  2639.         thσ commanΣ t∩ terminate.
  2640.  
  2641.         Fo≥á non-interactivσ dumps¼á startinτ addres≤ t∩ endinτá address¼ ì
  2642.         pressinτ an∙ ke∙ terminate≤ thσ dump.
  2643.  
  2644.         Thσá dum≡á commanΣ provide≤ aε especiall∙ eas∙ wa∙á oµá examininτ ì
  2645.         tabula≥ data¼á fo≥ examplσ iε scanninτ thσ disδ paramete≥ header≤ ì
  2646.         iε you≥ BIOS«á  Tha⌠ is¼á b∙ specifyinτ thσ basσ addres≤ a≤á ARG1 ì
  2647.         anΣá thσá tablσá sizσ a≤ ARG2 thσ use≥ caε walδá througΦá memory¼ ìè        tablσ b∙ table.
  2648.  
  2649.  
  2650.  
  2651.  
  2652.  
  2653.                                        39
  2654.  
  2655.  
  2656.  
  2657.  
  2658.  
  2659.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2660.  
  2661.  
  2662.         E    Examine Memory   
  2663.         _________________________________________________________________
  2664.  
  2665.  
  2666.         Thσá ┼á commanΣ allow≤ thσ use≥ t∩ examinσ anΣ optionall∙á modif∙ ì
  2667.         the contents of memory.  The format of the command is:
  2668.  
  2669.              *E   ARG1  <cr>
  2670.  
  2671.                        wherσá ARG1 i≤ thσ addres≤ oµ thσ firs⌠ bytσá t∩ ì
  2672.         áááááááááááááááexamine
  2673.  
  2674.                        ARG1 ma∙ bσ an∙ symbo∞ type ì
  2675.  
  2676.         Upoεá receip⌠ oµ ARG1 Z8┼ wil∞ reaΣ thσ content≤ oµ thσ specifieΣ ì
  2677.         memor∙á addres≤ anΣ displa∙ thσ bytσ iε botΦ he° anΣá ASCII«á  A⌠ ì
  2678.         thi≤á poin⌠ thσ use≥ ha≤ tw∩ options«á Thσ use≥ ma∙ specif∙á  re-ì
  2679.         placemen⌠á datßá t∩ bσ writteε t∩ memor∙ startinτ a⌠ thσá curren⌠ ì
  2680.         address¼á o≥á hσá ma∙á choosσ t∩ continuσá t∩á passivel∙á examinσ ì
  2681.         memory«á  Thσ choicσ i≤ determineΣ b∙ thσ character(s⌐ whicΦá arσ ì
  2682.         inpu⌠ afte≥ thσ content≤ oµ aε addres≤ arσ displayed«  
  2683.  
  2684.         Iµá thσá use≥á wishe≤ t∩ modif∙ memor∙ startinτá a⌠á thσá curren⌠ ì
  2685.         memor∙ address¼á theε aε ARGUMENT-STRING ma∙ bσ entereΣ followinτ ì
  2686.         thσá displayeΣá byte«á  Z8┼ wil∞ evaluatσ thσ entirσá strinτá anΣ ì
  2687.         writσá thσá evaluateΣ equivalen⌠ oµ thσ strinτá int∩á consecutivσ ì
  2688.         memor∙á location≤ startinτ witΦ thσ curren⌠ memor∙á address«á Fo≥ ì
  2689.         examplσ thσ use≥ coulΣ ente≥ thσ followinτ ARGUMENT-STRING║ 
  2690.  
  2691.              *E 45F9
  2692.              45F9  42  B  'This is a string',0D,0A,13,4F,9,'More Text',05
  2693.                           ^                                             ^  
  2694.  
  2695.                           Thσ use≥ inpu⌠ apprear≤ betweeε thσ arrow≤á anΣ ì
  2696.         ááááááááááááááááááwould be evaluated to the following 31 bytes: 
  2697.         áááááááááááááááááá  
  2698.         áááááááááááááááááá54 68 69 73 20 49 73 20 61 20 73 74 72 69 6E 67 
  2699.         áááááááááááááááááá0D 0A 13 4F 09 4D 6F 62 65 20 74 65 78 74 05  
  2700.  
  2701.         ááááááááááááááááááThesσá 3▒á byte≤á woulΣ bσ storeΣá int∩á memory ìè        áááááááááááááááááálocation≤á 45F╣á t∩ 4617 anΣ thσá nex⌠á addres≤ ì
  2702.         áááááááááááááááááádisplayed on the screen would be 4618.
  2703.  
  2704.         ááááá4618  23  #
  2705.  
  2706.         Remembe≥á tha⌠á ARGUMENT-STRING╙ ma∙ bσ terminateΣá b∙á eithe≥á ß ì
  2707.         carriagσá returεá o≥ b∙ thσ firs⌠ spacσ characte≥ whicΦ doe≤á no⌠ ì
  2708.         appea≥á iεá ß quoteΣ litera∞ string«á Thσá choicσá oµá terminato≥ ì
  2709.         determine≤á thσ whicΦ addres≤ wil∞ bσ displayeΣ next«á  Iµ ß car-ì
  2710.         riagσá returε i≤ useΣ t∩ terminatσ thσ ARGUMENT-STRING¼á theε Z8┼ ì
  2711.         wil∞ displa∙ thσ nex⌠ sequentia∞ memor∙ address« Fo≥ example:
  2712.  
  2713.                   *E 1002
  2714.                   1002  45  E  12,8F,00 <cr>
  2715.                   1005  28  (
  2716.  
  2717.  
  2718.                                        40
  2719.  
  2720.  
  2721.  
  2722.  
  2723.  
  2724.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2725.  
  2726.  
  2727.  
  2728.         Thσ use≥ entereΣ aε ARGUMENT-STRIN╟ 12,8F,0░ whicΦ wa≤á evaluateΣ ì
  2729.         t∩á │ bytes«á  Sincσ thσ ARGUMENT-STRIN╟ wa≤ terminateΣ b∙ ß car-ì
  2730.         riagσ returε thσ nex⌠ addres≤ displayeΣ wa≤ 1002+│ o≥ 1005« 
  2731.  
  2732.         B∙á terminatinτá thσá ARGUMENT-STRIN╟ witΦ ß spacσ thσá use≥á caε ì
  2733.         verif∙á thσ content≤ oµ memor∙ jus⌠á modified«á  ARGUMENT-STRING╙ ì
  2734.         terminateΣá b∙á ß spacσ causσ Z8┼ t∩ redispla∙ thσá startinτá ad-ì
  2735.         dress╗á thi≤á make≤á thσá datß jus⌠á entereΣá availalbσá fo≥á re-ì
  2736.         inspection:
  2737.  
  2738.                   *E 1002
  2739.                   1002  45  E  12,8F,00  <space>
  2740.                   1002  12  ~
  2741.  
  2742.         Iµ thσ use≥ doe≤ no⌠ wan⌠ t∩ writσ an∙ datß t∩ thσ curren⌠ memor∙ ì
  2743.         address¼á theε thσ characte≥ entereΣ shoulΣ bσ ß spacσ character¼ ì
  2744.         up arrow (carret) character, or a carriage return.
  2745.  
  2746.         ááááááááááááááá   CHARACTER                     ACTION
  2747.         ááááááááááááááá
  2748.         ááááááááááááááá     spaceáá             reaΣ nex⌠ sequentia∞ mem-ì
  2749.         ááááááááááááááááááááááááááááááááááááááááor∙ addres≤ 
  2750.                             
  2751.                           up arrow            ááreaΣ previou≤ memor∙á ad-ì
  2752.         áááááááááááááááááááááááááááááááááááááááádres≤ 
  2753.         áááááááááááááááááááááááááááááááááááááááá     
  2754.                             <cr>ááááááááááááááááreaΣ nex⌠ sequentia∞ mem-ì
  2755.         ááááááááááááááááááááááááááááááááááááááááor∙ address command  è
  2756.  
  2757.                            periodáááááááááááááááterminate commandáááááá     áááááááááááááááááááááááááááááááááá
  2758.  
  2759.         Thσá use≥ ma∙ als∩ changσ thσ curren⌠ memor∙ addres≤ b∙á enterinτ ì
  2760.         aεá equa∞á sigε "=ó followeΣ b∙ ß valiΣá argument«á  Thσá addres≤ ì
  2761.         obtaineΣá b∙á evaluatinτ thi≤ argumen⌠ become≤á thσá ne≈á curren⌠ ì
  2762.         memory address as shown below: 
  2763.  
  2764.              *E 1344
  2765.              1344  89  ~  <cr>
  2766.              1345  6F  o  <cr>
  2767.              1346  52  R  =9F34 <cr>
  2768.              9F34  63  c
  2769.  
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.  
  2777.  
  2778.  
  2779.  
  2780.  
  2781.  
  2782.  
  2783.                                        41
  2784.  
  2785.  
  2786.  
  2787.  
  2788.  
  2789.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2790.  
  2791.  
  2792.          F    Find 
  2793.         _________________________________________________________________
  2794.  
  2795.  
  2796.         Thσá finΣ commanΣ allow≤ thσ use≥ t∩ searcΦ memor∙ fo≥ multi-bytσ ì
  2797.         strings in memory.  The format of the command is:
  2798.  
  2799.              *F   ARG1  ARG2 <cr>
  2800.  
  2801.                   where  ARG1  =  thσá startinτ addres≤ a⌠ whicΦ t∩ begiε ì
  2802.         ááááááááááááááááááááááááááthe search, it may be of any type
  2803.         ááááááááááááááááá
  2804.         áááááááááááááááááARG2  =  i≤á aε ARGUMENT-STRIN╟ representinτ thσ ì
  2805.         áááááááááááááááááááááááááápatterεá t∩ searcΦ for╗á thσá use≥á ma∙ ì
  2806.         ááááááááááááááááááááááááááspecif∙á an∙á combinatioε oµá argument≤ ì
  2807.         ááááááááááááááááááááááááááseparateΣ b∙ comma≤ o≥ space≤ u≡ t∩ thσ ì
  2808.         áááááááááááááááááááááááááálimi⌠á oµá Z8E'≤á commanΣá linσá buffe≥ ì
  2809.         ááááááááááááááááááááááááááwhicΦá i≤ 8░ byte≤á long«á  Thσá actua∞ ìè        áááááááááááááááááááááááááánumbe≥ oµ byte≤ searcheΣ fo≥ depend≤ oε ì
  2810.         ááááááááááááááááááááááááááho≈ thσ strinτ i≤ ultimatel∙ evaluated.
  2811. ì
  2812.         áááááááááááááááááááááááááá    
  2813.         Z8E wil∞ displa∙ ever∙ addres≤ whicΦ contain≤ datß matchinτ ARG2«  ì
  2814.         The search continues until the end of memory is reached.
  2815.  
  2816.         Thσ use≥ ma∙ elec⌠ t∩ cance∞ thσ searcΦ a⌠ an∙ timσ b∙ depressinτ ì
  2817.         any key on the keyboard.
  2818.  
  2819.         Iµá ARG▓ i≤ ß singlσ argumen⌠ (a≤ opposeΣ t∩ aε argumen⌠á string⌐ ì
  2820.         anΣá iµ thi≤ argumen⌠ i≤ ß symbo∞ namσ theε Z8┼ wil∞ reversσá thσ ì
  2821.         orde≥ oµ thσ tw∩ byte≤ comprisinτ thσ 1╢ bi⌠ operand« Mos⌠ 1╢ bi⌠ ì
  2822.         value≤ iε Z8░ program≤ arσ storeΣ witΦ thσ leas⌠ significan⌠ bytσ ì
  2823.         a⌠á ßá giveε addres≤ anΣ thσ mos⌠ significan⌠ bytσ a⌠á thσá giveε ì
  2824.         address+▒ (towarΣ thσ higΦ enΣ oµ memory)«  Thi≤ i≤ iε accordancσ ì
  2825.         witΦ thσ Z8░ conventioε oµ storinτ thσ mos⌠ significan⌠ bytσ oµ ß ì
  2826.         16 bit argument toward the high end of memory.
  2827.  
  2828.         The following are examples of the FIND command:
  2829.  
  2830.              *F 0 SYMBOL
  2831.  
  2832.         áááááAssuminτá tha⌠ thσ symbo∞ "SYMBOLó i≤á associateΣá witΦ ì
  2833.         áááááthσá he°á valuσ 3B╞ theε Z8┼ woulΣ attemp⌠ t∩ finΣá al∞ ì
  2834.         áááááaddres≤á containinτá thσ bytσ pai≥ B╞ anΣá 0│á iεá tha⌠ ì
  2835.         áááááorder¼ witΦ thσ searcΦ beginninτ a⌠ addres≤ 0000«  Notσ ì
  2836.         ááááátha⌠ thσ orde≥ oµ thσ tw∩ byte≤ i≤ reverseΣ becausσ thσ ì
  2837.         ááááásymbo∞ "SYMBOLó exist≤ iε thσ symbo∞ table«á  T∩ searcΦ ì
  2838.         áááááfo≥á thσá bytσá pai≥ 0│ anΣ B╞ iε tha⌠ orde≥á thσá use≥ ì
  2839.         áááááshoulΣ ente≥ thσ argumen⌠ a≤ eithe≥ ß 1╢ bi⌠ he° numbe≥ ì
  2840.         ááááá(3BF⌐ o≥ a≤ tw∩ ╕ bi⌠ he° number≤ (03,BF)«  
  2841.  
  2842.  
  2843.              *F 100 87,32#,'ABCD',0C3,symbol,'p',271F
  2844.  
  2845.              Assuminτá tha⌠ thσ symbo∞ "symboló i≤á associateΣá witΦ          ì
  2846.  
  2847.  
  2848.                                        42
  2849.  
  2850.  
  2851.  
  2852.  
  2853.  
  2854.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2855.  
  2856.  
  2857.         áááááthσá he°á valuσ 3B╞ theε Z8┼ woulΣ attemp⌠ t∩ finΣá al∞ ì
  2858.         ááááástartinτ addresse≤ oµ thσ followinτ 12 bytσ string:
  2859.  
  2860.         ááááá       á87 20 41 42 43 44 C3 03 BF 70 27 1F
  2861.  
  2862.  
  2863.         áááááNoticσá tha⌠ Z8┼ woulΣ searcΦ fo≥ thσ tw∩ bytσá patterε ìè        ááááá0│ B╞ a≤ thσ valuσ fo≥ "symbol"«á  Iµ thσ use≥ happeneΣ ì
  2864.         ááááát∩á bσá tryinτ t∩ finΣ thσá instructioεá    J╨á  symbo∞   ì
  2865.         áááááthσ searcΦ woulΣ fai∞ becausσ a≤ mentioneΣ abovσ 1╢ bi⌠ ì
  2866.         ááááávalue≤á arσá storeΣá lo≈ orde≥ bytσá first«á  Thσá use≥ ì
  2867.         áááááshould have entered C3 BF 03.
  2868.  
  2869.         áááááThσ tw∩ byte≤ whicΦ represen⌠ thσ addres≤ oµ symbo∞ arσ ì
  2870.         áááááno⌠á reverseΣ a≤ iε thσ examplσ abovσ becausσá ARG▓á i≤ ì
  2871.         áááááspecifieΣá a≤ aε ARGUMENT-STRIN╟ a≤ opposeΣ t∩ ß singlσ ì
  2872.         áááááargument.
  2873.  
  2874.              Z8E would begin its search at address 100 (ARG1). 
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  
  2890.  
  2891.  
  2892.  
  2893.  
  2894.  
  2895.  
  2896.  
  2897.  
  2898.  
  2899.  
  2900.  
  2901.  
  2902.  
  2903.  
  2904.  
  2905.  
  2906.  
  2907.  
  2908.  
  2909.  
  2910.  
  2911.  
  2912.  
  2913.                                        43
  2914.  
  2915.  
  2916.  
  2917. è
  2918.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2919.  
  2920.  
  2921.         G    Go 
  2922.         _________________________________________________________________
  2923.  
  2924.  
  2925.         Thσá ╟ commanΣ instruct≤ Z8E t∩ begiε o≥ resumσ executioε oµá thσ ì
  2926.         use≥ program.  The format of the command is:
  2927.  
  2928.                   *G   ARG1  <cr>
  2929.  
  2930.                        wherσá     ARG1á  ╜á  thσá addres≤á oµá thσá firs⌠ ì
  2931.                                              instruction the user wishes
  2932.         áááááááááááááááááááááááááááááááááááááto execute.
  2933.  
  2934.                        ARG1 may be any argument type
  2935.  
  2936.         Upoεá receip⌠ oµ thi≤ commanΣ Z8E initialize≤ al∞ breakpoint≤á iε ì
  2937.         thσá use≥á program¼á restore≤ al∞ use≥ registers¼á anΣá transfer≤ ì
  2938.         contro∞á t∩ thσ use≥ prograφ unde≥ tes⌠ a⌠ thσ addres≤á specifieΣ ì
  2939.         iε ARG1«á  Executioε withiε thσ use≥ prograφ wil∞ continuσá unti∞ ì
  2940.         thσá use≥á prograφ reache≤ ß breakpoint¼á a⌠ whicΦ poin⌠á contro∞ ì
  2941.         wil∞á returε t∩ Z8E«á  Thi≤ i≤ thσ onl∙ wa∙ thσ use≥ i≤á ablσá t∩ ì
  2942.         returε contro∞ t∩ Z8E oncσ thσ G╧ commanΣ i≤ issued.
  2943.  
  2944.         Z8┼ breakpoin⌠ techniquσ ha≤ beeε designeΣ sucΦ tha⌠ Z8┼ wil∞ no⌠ ì
  2945.         directl∙á initializσá ßá breakpoin⌠ a⌠ thσ addres≤á specifieΣá iε ì
  2946.         ARG1«á Iεá actualiit∙ i⌠  woulΣ bσ impossiblσ t∩ d∩ s∩á sincσá aε ì
  2947.         attemp⌠á woulΣá bσ madσ t∩ resumσ executioε a⌠á thi≤á address¼á ß ì
  2948.         breakpoin⌠ woulΣ havσ beeε se⌠ a⌠ thi≤ address¼ anΣ contro∞ woulΣ ì
  2949.         immediatel∙á returε t∩ thσ monito≥ withou⌠ thi≤ instructioεá eve≥ ì
  2950.         havinτ beeε executed«á   Thi≤ limitatioε ha≤ beeε overcomσ iε Z8┼ ì
  2951.         b∙á actuall∙á copyinτ thσ singlσ instructioε locateΣ a⌠á ARG▒á t∩ ì
  2952.         Z8E'≤á memory¼á THE╬ settinτ thσ breakpoin⌠ a⌠ thσ ARG▒á address¼ ì
  2953.         anΣá finall∙ executinτ thσ "movedó versioε oµ thσ instructioεá iε ì
  2954.         Z8E'≤ memor∙ rathe≥ thaε iε thσ use≥ program« Z8┼ compensate≤ fo≥ ì
  2955.         thσá tha⌠ CAL╠ anΣ RELATIV┼ JUM╨ instruction≤ arσ affecteΣ b∙ thσ ì
  2956.         addres≤ a⌠ whicΦ the∙ arσ executed« Thi≤ entirσ proces≤ i≤ total-ì
  2957.         l∙á transparen⌠ anΣ i⌠ allow≤ thσ use≥ t∩ debuτ loop≤ b∙á settinτ ì
  2958.         onl∙ ß singlσ breakpoin⌠ withiε thσ rangσ oµ ß loop¼ obviate≤ thσ ì
  2959.         neeΣá t∩ clea≥ an∙ breakpoint≤ whicΦ arσ locateΣ a⌠á thσá addres≤ ì
  2960.         wherσá executioε i≤ t∩ resume¼á anΣ eveε allow≤ breakpoint≤ a⌠á ß  ì
  2961.         DJN┌  ñ   instructions!
  2962.  
  2963.  
  2964.         HINT:
  2965.         Wheεá proceedinτ froφ ß breakpoin⌠ i⌠ i≤ simples⌠ t∩ usσ thσ forφ ì
  2966.         oµ thσ G╧ command║á   *╟   ╨ <cr╛    whicΦ inform≤ Z8E t∩á resumσ ì
  2967.         executioεá a⌠ thσ addres≤ specifieΣ b∙ thσ user'≤ curren⌠ prograφ ì
  2968.         counter«á  
  2969.  
  2970.  
  2971. è
  2972.  
  2973.  
  2974.  
  2975.  
  2976.  
  2977.                                        44
  2978.  
  2979.  
  2980.  
  2981.  
  2982.  
  2983.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  2984.  
  2985.  
  2986.         H    Display Symbol Table
  2987.         _________________________________________________________________
  2988.  
  2989.  
  2990.         Thσá ╚á commanΣ allow≤ thσ use≥ t∩ vie≈ thσ symbo∞ tablσá oεá thσ ì
  2991.         console.  The format of the command is:
  2992.  
  2993.                   *H   [ARG1]  <cr>
  2994.  
  2995.                        where ARG1 must be a symbol name
  2996.  
  2997.  
  2998.         Iµá ARG▒á i≤á omitteΣ Z8┼ wil∞ displa∙ thσá entirσá symbo∞á tablσ ì
  2999.         startinτ witΦ thσ firs⌠ symbo∞ iε thσ table«á  Iµ ARG▒ i≤ presen⌠ ì
  3000.         Z8┼á wil∞á begiε thσ displa∙ witΦ tha⌠ symbol«á  Z8┼á display≤á ß ì
  3001.         blocδá oµá 3▓á symbol≤ theε wait≤ fo≥ use≥ input«á  Iµá thσá use≥ ì
  3002.         enter≤á ßá carriagσ returε thσ thσ nex⌠ blocδ oµá 3▓á symbol≤á i≤ ì
  3003.         displayed«á Iµá thσ use≥ entere≤ an∙ othe≥ characte≥ thσá commanΣ ì
  3004.         terminates.
  3005.  
  3006.         Iµá ßá symbo∞ namσ entereΣ a≤ ARG1 canno⌠ bσ founΣ iε thσá symbo∞ ì
  3007.         table Z8E prints a question mark.
  3008.  
  3009.  
  3010.  
  3011.  
  3012.  
  3013.  
  3014.  
  3015.  
  3016.  
  3017.  
  3018.  
  3019.  
  3020.  
  3021.  
  3022.  
  3023.  
  3024.  
  3025. è
  3026.  
  3027.  
  3028.  
  3029.  
  3030.  
  3031.  
  3032.  
  3033.  
  3034.  
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.  
  3041.  
  3042.                                        45
  3043.  
  3044.  
  3045.  
  3046.  
  3047.  
  3048.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3049.  
  3050.  
  3051.         I    Initialize FCB and command tail
  3052.         _________________________________________________________________
  3053.  
  3054.  
  3055.         Thσ I  commanΣ initializes  the  command tail at 80h and the file ì
  3056.         name fields in the default FCB (5Ch and 6Ch).
  3057.  
  3058.                   *I  [ARG1] [ARG2] ... [ARGn] <cr>
  3059.  
  3060.                        wherσ eacΦ arτ ma∙ bσ an∙ string.
  3061.  
  3062.         Thσá commanΣ tai∞ iε thσ defaul⌠ DM┴ buffe≥ a⌠ 80Φ wil∞ bσ filleΣ ì
  3063. ááááááááiε witΦ ß standarΣ forma⌠ commanΣ buffe≥ comprisinτ ß lengtΦ bytσ ì
  3064. ááááááááfolloweΣá b∙á thσ strinτ formeΣ b∙ translatinτ al∞á thσá ARG≤á t∩ ì
  3065. ááááááááupper case.  A zero is appended after the last ARG.ì
  3066.  
  3067.         The first two ARGs are treated as (possibly ambiguous) file names ì
  3068.         anΣ arσ copieΣ witΦ appropriatσ paddinτ int∩ thσ filσ namσ field≤ ì
  3069. ááááááááin the default FCB area.
  3070.  
  3071.         Iµá n∩á ARG▓ i≤ presen⌠ theε thσ filσ namσ fielΣ a⌠ 6CΦá wil∞á bσ ì
  3072. ááááááááblank-filleΣá froφá 6DΦ t∩ 77h«á  Iµ n∩ ARG▒ i≤ presen⌠ theεá thσ ì
  3073. ááááááááfile name field at 5Ch will be blank-filled from 5Dh to 67h.
  3074.  
  3075.         Sincσá thσ "Ió commanΣ witΦ n∩ argument≤ i≤ ß valiΣá command¼á i⌠ ì
  3076. áááááááácannot be aborted.
  3077.  
  3078.         Notσá tha⌠ Z8┼ doe≤ no⌠ automaticall∙ inser⌠ ß spacσ a⌠ thσá heaΣ ì
  3079. ááááááááoµ thσ commanΣ tail«á  Iµ yo⌡ arσ debugginτ routine≤ t∩ parsσ thσ ìèáááááááácommanΣá linσá yo⌡ shoulΣ inser⌠ ß taΓ o≥ spacσ yourselµ t∩á makσ ì
  3080. ááááááááthe command tail realistic.  For example, the Z8E command:
  3081.  
  3082. áááááááá                 i   square.peg
  3083.  
  3084.         generates the command tail:
  3085.  
  3086.                0A 53 51 55 41 52 45 21 50 45 47 00
  3087.                10  ╙  ╤  ╒  ┴  ╥  ┼  «  ╨  ┼  ╟ 00
  3088.  
  3089.         wherea≤á thσ commanΣ tai∞ t∩ prograφ 'fitº generateΣ a⌠ thσá CP/═ ì
  3090. ááááááááleve∞ by:
  3091.  
  3092.                          fit square.peg
  3093.  
  3094.         would be:
  3095.  
  3096.                0B 20 53 51 55 41 52 45 21 50 45 47 00
  3097.                11     ╙  ╤  ╒  ┴  ╥  ┼  «  ╨  ┼  ╟ 00
  3098.  
  3099.         anΣá yo⌡á caε emulatσ thi≤ forφ b∙ puttinτ thσ spacσ iεá yourselµ ì
  3100. áááááááábeforσ thσ worΣ 'square'.
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.  
  3107.                                        46
  3108.  
  3109.  
  3110.  
  3111.  
  3112.  
  3113.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3114.  
  3115.  
  3116.         J    Animated Full Screen Debugger
  3117.         ________________________________________________________________
  3118.  
  3119.         Thσá ╩ commanΣ provide≤ thσ use≥ witΦ thσ abilit∙ t∩ "seeó insidσ ì
  3120.         thσá Z8░á a≤ i⌠ execute≤ ß program«á  Thσ Z8┼á animateΣá debugge≥ ì
  3121.         allow≤ thσ use≥ t∩ vie≈ registers¼ memory¼ anΣ instruction≤ whilσ ì
  3122.         thσá Z8░á i≤ simultaneousl∙ executinτ code«á  Iεá addtioεá thσá ╩ ì
  3123.         commanΣá provide≤á thσá use≥ witΦ thσá abilit∙á t∩á interactivel∙ ì
  3124.         single-ste≡ througΦ ß prograφ usinτ thσ ful∞ screeε facilitie≤ oµ ì
  3125.         thσ command« Thσ forma⌠ oµ thσ ╩ commanΣ is:
  3126.  
  3127.                   *J   [/] [*] [ARG1] [ARG2]
  3128.  
  3129.  
  3130.                        US┼á O╞á TH┼á ╩á COMMAN─ FO╥á SINGL┼á STEPPIN╟á I╙ ì
  3131.         áááááááááááááááDESCRIBE─á A╘á TH┼á EN─á O╞á THI╙á SECTION«á  THI╙ ì
  3132.         áááááááááááááááSECTIO╬á DESCRIBE╙ TH┼ NON-INTERACTIV┼ VERSIO╬á O╞ ì
  3133.         áááááááááááááááTH┼á ╩á COMMAN─ DURIN╟ WHIC╚ TH┼ USE╥á TURN╙á OVE╥ ìè        áááááááááááááááCOMPLET┼á CONTRO╠ O╞ TH┼ EXECUTIO╬ O╞ TH┼á PROGRA═ ì
  3134.         áááááááááááááááUNDER TEST TO Z8E. 
  3135.  
  3136.                        ARG▒á i≤á thσ startinτ addres≤ oµ thσ displa∙á anΣ ì
  3137.         áááááááááááááááma∙á bσ oµ an∙ valiΣ argumen⌠ type«á Fo≥á example¼ ì
  3138.         áááááááááááááááthσ use≥ ma∙ specif∙   *J ╨    t∩ resumσ executioε ì
  3139.         áááááááááááááááa⌠ thσ poin⌠ wherσ i⌠ haΣ previoul∙ been stopped« 
  3140.  
  3141.         áááááááááááááááThσá slasΦ anΣ sta≥ contro∞ subroutinσ tracinτá a≤ ì
  3142.         áááááááááááááááfollows:
  3143.  
  3144.         ááááááááááááááá"/"  SlasΦá inform≤á Z8┼ no⌠ t∩ tracσ an∙á subrou-ì
  3145.         áááááááááááááááááááátine≤ a⌠ all.
  3146.         ááááááááá
  3147.         ááááááááááá    "*"  Asterisδ inform≤ Z8┼ no⌠ t∩ tracσ an∙ subrou-ì
  3148.         áááááááááááááááááááátinσá call≤ t∩ addresse≤ locateΣ iε thσ rangσ ì
  3149.         áááááááááááááááááááá░ t∩ FF«á Thi≤ featurσ i≤ intendeΣ t∩á screeε ì
  3150.         ááááááááááááááááááááou⌠á call≤á t∩ locatioε ╡ (BDOS⌐ iε orde≥á t∩ ì
  3151.         áááááááááááááááááááápreven⌠á Z8E'≤á anΣá thσá user'≤á stacδá froφ ì
  3152.         áááááááááááááááááááábecominτ hopelessl∙ entangled.
  3153.         ááááááááááááááá
  3154.         áááááááááááááááARG2 represent≤ aε optiona∞ timeou⌠ paramte≥ whicΦ ì
  3155.         áááááááááááááááaffect≤á thσ speeΣ a⌠ whicΦ instruction≤ arσá exe-ì
  3156.         ááááááááááááááácuted«á  Thi≤á numbe≥ ma∙ bσ iε thσ rangσ ░ - 255¼ ì
  3157.         áááááááááááááááwitΦá 1░ (decimal⌐ a≤ thσ defaul⌠ iµ n∩á valuσá i≤ ì
  3158.         áááááááááááááááentered« ┴ timeou⌠ valuσ oµ 1░ yield≤ approximate-ì
  3159.         ááááááááááááááál∙á ß onσ halµ seconΣ dela∙ betweeε thσá executioε ì
  3160.         áááááááááááááááoµ sequentia∞ instructions«á  ┴ valuσ oµ ░á repre-ì
  3161.         ááááááááááááááásent≤á N╧ timσ dela∙ anΣ i≤ iε actualit∙ thσ fast-ì
  3162.         áááááááááááááááes⌠ ratσ ß whicΦ thσ ╩ commanΣ caε run.
  3163.  
  3164.         Oncσá thσ ╩ commanΣ commences¼á Z8┼ take≤ ove≥ thσ Z8░á anΣá fur-ì
  3165.         nishe≤ thσ use≥ witΦ ß "peepholeó int∩ thσ CPU«  Z8┼ execute≤ onσ ì
  3166.         instructioεá a⌠ ß timσ iε thσ use≥ prograφ pausinτ afte≥ eacΦ onσ ì
  3167.         t∩ dynamicall∙ updatσ thσ screeε display«á Thσ ╩ commanΣá divide≤ ì
  3168.         thσ screeε int∩ threσ areas║ registe≥ map¼ disassembleΣ code¼ anΣ ì
  3169.         memor∙á window«á  Thσ registe≥ ma≡ display≤ al∞ register≤ oεá thσ ì
  3170.  
  3171.  
  3172.                                        47
  3173.  
  3174.  
  3175.  
  3176.  
  3177.  
  3178.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3179.  
  3180.  
  3181.         to≡á tw∩á line≤á oµ thσ screeε alonτ witΦ thσ content≤ oµá thσá ╞ ì
  3182.         registe≥ whicΦ i≤ showε iε mnemoniπ form«á  Z8┼ als∩ disassemble≤ ì
  3183.         1╕á instruction≤ baseΣ oε thσ curren⌠ P├ valuσ anΣ display≤á theφ ì
  3184.         oεá thσ screen╗á finally¼á usinτ thσ parameter≤ entereΣ iε thσá ╫ ì
  3185.         command¼á Z8┼á snapshot≤ ß blocδ oµ memor∙ anΣ display≤ i⌠á a≤á ß ì
  3186.         windo≈ oε thσ screen« 
  3187. è        Executioε oµ thσ use≥ prograφ continue≤ unti∞ an∙ non-numeriπ ke∙ ì
  3188.         oε thσ keyboarΣ i≤ presseΣ whicΦ end≤ thσ command«á  Iµ ß numeriπ ì
  3189.         ke∙ i≤ pressed¼ theε Z8┼ respond≤ b∙ changinτ thσ timeou⌠ parame-ì
  3190.         te≥ oε thσ fly«  Thσ use≥ ma∙ usσ thσ key≤ ░ - ╣ a≤ ß throttlσ t∩ ì
  3191.         goverε thσ executioε speed«á  Zer∩ beinτ thσ fastest╗á ninσ beinτ ì
  3192.         thσ slowest.
  3193.  
  3194.         Thσ commanΣ als∩ terminate≤ wheneve≥ ß use≥ defineΣ breakpoin⌠ i≤ ì
  3195.         reached«á  Tha⌠á is¼á iµ thσ use≥ haΣ se⌠ ß breakpoin⌠ viß thσá ┬ ì
  3196.         commanΣá anΣ thi≤ addres≤ i≤ reacheΣ thσ ╩ commanΣ end≤á anΣá Z8┼ ì
  3197.         prompt≤á thσ use≥ fo≥ thσ nex⌠ command«á  Iµ thσ breakpoin⌠ haΣ ß ì
  3198.         pas≤á coun⌠ associateΣ witΦ it¼á thσ pas≤ coun⌠ mus⌠á reacΦá zer∩ ì
  3199.         beforσ thσ ╩ commanΣ will terminate.
  3200.  
  3201.         USING THE J COMMAND FOR SINGLE STEPPING
  3202.  
  3203.         Z8┼á permit≤á thσá use≥ t∩ single-ste≡ througΦá ßá prograφá whilσ ì
  3204.         allowinτá ßá continuou≤ full-screeε vie≈ oµ thσá registers¼á codσ ì
  3205.         beinτ executed¼á anΣ thσ content≤ oµ ß blocδ oµ memor∙ a≤á speci-ì
  3206.         fieΣ b∙ thσ ╦ command« Iε orde≥ t∩ invokσ thσ ful∞ screeε single-ì
  3207.         ste≡ thσ use≥ enter≤ thσ followinτ command:
  3208.  
  3209.                   *J   [/]  [*] 
  3210.  
  3211.                             » instruct≤ Z8┼ no⌠ t∩ tracσ an∙á subroutine≤ ì
  3212.         ááááááááááááááááááááa⌠ all
  3213.  
  3214.         áááááááááááááááááááá¬á instruct≤ Z8┼ no⌠ t∩ tracσ an∙ subroutine≤ ì
  3215.         áááááááááááááááááááálocatioεáá belo≈áá addres≤áá 100╚áá anΣááá i≤ ì
  3216.         ááááááááááááááááááááspecificall∙á designeΣ t∩ allo≈ thσ use≥á thσ ì
  3217.         ááááááááááááááááááááoptioεá oµá no⌠ becominτ tangleΣ iε BDO╙á anΣ ì
  3218.         ááááááááááááááááááááBIOS.
  3219.  
  3220.         ááááááááááááááááááááNotσá tha⌠á thi≤ versioε oµ thσ ╩ commanΣá i≤ ì
  3221.         áááááááááááááááááááádifferentiateΣáá froφáá thσáá non-interactivσ ì
  3222.         ááááááááááááááááááááversioεá b∙á thσá absencσá oµá an∙áá argumen⌠ ì
  3223.         ááááááááááááááááááááindicating a execution address.  
  3224.  
  3225.         Thi≤á versioε allow≤ thσ use≥ t∩ executσ onσ instructioεá iεá hi≤ ì
  3226.         prograφá anΣ theε regaiε contro∞ a⌠ thσ Z8┼ commanΣá level«á  Z8┼ ì
  3227.         wil∞ executσ thσ instructioε pointeΣ t∩ b∙ thσ user'≤ curren⌠ PC« ì
  3228.         Afte≥á thσ instructioε i≤ executeΣ aε ARRO╫ ¿ =╛ ⌐ point≤ t∩á thσ ì
  3229.         nex⌠ instructioε t∩ bσ executed.
  3230.  
  3231.         Thσ » anΣ ¬ option≤ arσ onl∙ valiΣ iµ thσ nex⌠ instructioε t∩á bσ ì
  3232.         executeΣá i≤ ß CALL«á  Iµ thσ prograφ counte≥ i≤ pointinτ a⌠á an∙ ì
  3233.         other instruction then the / and * have no effect.
  3234.  
  3235.  
  3236.  
  3237.                                        48
  3238.  
  3239.  
  3240.  
  3241. è
  3242.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3243.  
  3244.  
  3245.         K    Set Memory Window Parameters for Use With the J Command
  3246.         ________________________________________________________________
  3247.  
  3248.         Thσá Ká commanΣ set≤ thσ startinτ addres≤ anΣ blocδ sizσá oµá thσ ì
  3249.         memor∙á windo≈ displa∙ durinτ thσ ╩ command«á  Thσ forma⌠ oµá thσ ì
  3250.         command is:
  3251.  
  3252.                   *K  ARG1 [,ARG2]
  3253.  
  3254.                   ARG1á represent≤á thσ startinτ addres≤á oµá thσá memor∙ ì
  3255.         ááááááááááblock.
  3256.  
  3257.         ááááááááááARG2 i≤ aε optiona∞ sizσ paramter¼ iµ omitteΣ thσ blocδ ì
  3258.         áááááááááásize defaults to the maximum.
  3259.  
  3260.         Thσá maximuφá blocδ sizσ i≤ 14┤ decima∞ whicΦá i≤á 9░á hex«á  Thσ ì
  3261.         startinτá addres≤ oµ thσ memor∙ blocδ caε bσ anywherσ iεá memory╗ ì
  3262.         i⌠ doe≤ no⌠ havσ t∩ bσ withiε thσ confine≤ oµ thσ use≥ program.
  3263.  
  3264.  
  3265.  
  3266.  
  3267.  
  3268.  
  3269.  
  3270.  
  3271.  
  3272.  
  3273.  
  3274.  
  3275.  
  3276.  
  3277.  
  3278.  
  3279.  
  3280.  
  3281.  
  3282.  
  3283.  
  3284.  
  3285.  
  3286.  
  3287.  
  3288.  
  3289.  
  3290.  
  3291.  
  3292.  
  3293.  
  3294.  
  3295. è
  3296.  
  3297.  
  3298.  
  3299.  
  3300.  
  3301.                                        49
  3302.  
  3303.  
  3304.  
  3305.  
  3306.  
  3307.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3308.  
  3309.  
  3310.         L    Load file
  3311.         _________________________________________________________________
  3312.  
  3313.  
  3314.         Thσá L commanΣ allow≤ thσ use≥ t∩ loaΣ file≤ int∩ thσá TP┴á afte≥ ì
  3315.         the debug session has started.  The format of the command is:
  3316.  
  3317.              *L   ARG1[,ARG2]  <cr>
  3318.  
  3319.         áááááááááááááááARG1 i≤ ß singlσ unambiguou≤ filσ namσá con-ì
  3320.         áááááááááááááááforminτ t∩ standarΣ CP/═ synta° rules:
  3321.         ááááááááááááááá
  3322.         ááááááááááááááá     - optiona∞á drivσá namσ followeΣ b∙á ßá coloε  ì
  3323.         ááááááááááááááá
  3324.         áááááááááááááááááááá- mandatory primary file name
  3325.  
  3326.         áááááááááááááááááááá- optiona∞á secondar∙ filσ namσ precedeΣ b∙ ß ì
  3327.         áááááááááááááááááááá  period      
  3328.  
  3329.         áááááááááááááááARG2 i≤ aε optiona∞ loaΣ address«á Iµ ARG2 i≤á no⌠ ì
  3330.         áááááááááááááááspecifieΣ thσ nameΣ filσ i≤ loadeΣ a⌠ thσ star⌠ oµ ì
  3331.         áááááááááááááááthσá TP┴ (addres≤ 10░ hex)«á  Iµ ARG2 i≤ giveε thσ ì
  3332.         áááááááááááááááfilσ wil∞ bσ loadeΣ a⌠ thi≤ address«  Z8E wil∞ NO╘ ì
  3333.         ááááááááááááááárelocatσá individua∞ addresse≤ withiε thσ filσá t∩ ì
  3334.         áááááááááááááááreflec⌠ thσ ne≈ loaΣ address«á  ARG2 ma∙ bσ oµ an∙ ì
  3335.         ááááááááááááááátype.
  3336.  
  3337.         áááááááááááááááNOTE:  Iµá n∩ argument≤ arσ entereΣ theε Z8┼á wil∞ ì
  3338.         ááááááááááááááááááááááredispla∙ thσ startinτ address¼á endinτ ad-ì
  3339.         áááááááááááááááááááááádress¼á anΣ thσ numbe≥ oµ 25╢ bytσ page≤ oµ ì
  3340.         ááááááááááááááááááááááthσ las⌠ filσ loaded«  
  3341.  
  3342.  
  3343.         If Z8E detect≤ ß erro≥ iε thσ filσ namσ specificatioε thσ messagσ ì
  3344.         "Synta°á erroróá i≤á printeΣá oεá thσá consolσá anΣá thσá commanΣ ì
  3345.         terminates.
  3346.  
  3347.         Iµá Z8Eá i≤ unablσ t∩ locatσ thσ filσ oε thσ specifieΣ drivσá thσ ì
  3348.         messagσá "Filσá no⌠á foundó i≤ printeΣ oεá thσá consolσá anΣá thσ ì
  3349.         command terminates.è
  3350.         Z8E contain≤ n∩ faciltie≤ fo≥ convertinτ .HE╪ (Inte∞ He°á format⌐ ì
  3351.         objec⌠ file≤ t∩ loadablσ memor∙ image«á  Al∞ files¼ regardles≤ oµ ì
  3352.         type¼á arσá loadeΣá int∩ memor∙ iε exactl∙ thσ samσ forφ a≤á the∙ ì
  3353.         appea≥ oε disk«á  T∩ debuτ ß .HE╪ filσ thσ use≥ shoulΣ firs⌠ loaΣ ì
  3354.         thσá filσ witΦ thσ CP/═ LOA─ commanΣ anΣ savσ thσ filσá witΦá thσ ì
  3355.         CP/═á SAV┼ commanΣ whicΦ produce≤ aε absolutσ memor∙ imagσá load-ì
  3356.         ablσá b∙ Z8E«á  Al∞ .CO═ file≤ arσ oµ coursσ alread∙ iεá loadablσ ì
  3357.         forφ anΣ n∩ LOADinτ anΣ SAVEinτ i≤ required.
  3358.  
  3359.         Iµá thσá filσá wil∞á no⌠ fi⌠ int∩ thσ TPA¼á Z8Eá wil∞á prin⌠á thσ ì
  3360.         message:
  3361.  
  3362.              Out of memory - Continue?
  3363.  
  3364.  
  3365.  
  3366.                                        50
  3367.  
  3368.  
  3369.  
  3370.  
  3371.  
  3372.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3373.  
  3374.  
  3375.         Iµá thσá use≥ answer≤ "Y"¼á Z8E wil∞ resumσ loadinτ thσá filσá a⌠ ì
  3376.         addres≤ 10░ he° iµ ARG2 wa≤ no⌠ entered¼ o≥ a⌠ thσ addres≤ speci-ì
  3377.         fieΣ a≤ ARG2«á  Iµ thσ use≥ type≤ an∙ othe≥ response¼ thσ loadinτ ì
  3378.         proces≤ terminate≤ anΣ Z8E return≤ t∩ thσ commanΣ level« However¼ ì
  3379.         thσá use≥ ma∙ resumσ loadinτ thσ filσ a⌠ ß late≥ timσ b∙á issuinτ ì
  3380.         thσ L commanΣ anΣ specifyinτ thσ filσ namσ ".ó (ß singlσ period)«  ì
  3381.         Thσá use≥á ma∙á choosσá t∩ specif∙ ß ne≈á startinτá loaΣá addres≤ ì
  3382.         followinτá thσ period╗á iµ ARG2 i≤ omitteΣ theε thσ loaΣá addres≤ ì
  3383.         default≤ bacδ t∩ 10░ hex¼á thσ star⌠ oµ thσ TPA«á Iµ thσ use≥ ha≤ ì
  3384.         donσá an∙á subsequen⌠á disδ I/╧ (sucΦ a≤ loadinτ ßá ne≈á filσá oµ ì
  3385.         disassemblinτá t∩ disk⌐ iε betweeε thσ timσ loadinτ wa≤ suspendeΣ ì
  3386.         anΣ theε restarted¼á Z8┼ wil∞ trea⌠ thσ filσ namσ ".ó a≤ ß synta° ì
  3387.         error« 
  3388.  
  3389.         Thσá use≥ ma∙ occasionall∙ neeΣ t∩ overla∙ ß sectioε oµ codσ iε ß ì
  3390.         prograφ whicΦ alread∙ reside≤ iε memor∙ witΦ inpu⌠ froφ ß filσ oε ì
  3391.         disk¼á fo≥ examplσ iε modifyinτ ß BIO╙ iε preparatioε fo≥ MOVCPM« ì
  3392.         Whilσá thi≤á i≤ possiblσ witΦ loader≤ whicΦ proces≤á .HE╪á objec⌠ ì
  3393.         files¼á i⌠ i≤ no⌠ feasiblσ witΦ Z8E« Thσ use≥ caε circumven⌠ thi≤ ì
  3394.         limitatioεá b∙ loadinτ thσ filσ froφ disδ int∩ aε unuseΣá sectioε ì
  3395.         oµ memor∙ anΣ theε usinτ Z8E'≤ movσ commanΣ t∩ movσ onl∙ thσ datß ì
  3396.         needeΣ t∩ accomplisΦ thσ overlay.
  3397.  
  3398.  
  3399.  
  3400.  
  3401.  
  3402.  
  3403. è
  3404.  
  3405.  
  3406.  
  3407.  
  3408.  
  3409.  
  3410.  
  3411.  
  3412.  
  3413.  
  3414.  
  3415.  
  3416.  
  3417.  
  3418.  
  3419.  
  3420.  
  3421.  
  3422.  
  3423.  
  3424.  
  3425.  
  3426.  
  3427.  
  3428.  
  3429.  
  3430.  
  3431.                                        51
  3432.  
  3433.  
  3434.  
  3435.  
  3436.  
  3437.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3438.  
  3439.  
  3440.         M    Move Memory 
  3441.         _________________________________________________________________
  3442.  
  3443.  
  3444.         Thσá ═á commanΣ allow≤ thσ use≥ t∩ movσ block≤ oµ datσá froφá an∙ ì
  3445.         addres≤ iε memor∙ t∩ an∙ othe≥ addres≤ iε memory«á  Thσ forma⌠ oµ ì
  3446.         thσ commanΣ is:
  3447.  
  3448.                   *M   ARG1  ARG2  ARG3  
  3449.  
  3450.                        whereá  ARG1á =  thσáá startinτá addres≤á oµáá thσ ì
  3451.         áááááááááááááááááááááááááááááááásourcσ datß blocδ        
  3452.         ááááááááááááááááááááá á
  3453.         áááááááááááááááááááááááARG2á =ááthσá endinτ addres≤ oµ thσ sourcσ ì
  3454.         áááááááááááááááááááááááááááááááádatß block
  3455.  
  3456.                                ARG3  =  thσáá startinτá addres≤á oµáá thσ ì
  3457.         áááááááááááááááááááááááááááááááádestinatioε datß blocδ   è
  3458. ì
  3459.                                         arguments may be of any type
  3460.  
  3461.         Z8┼ automaticall∙ decide≤ whethe≥ ß head-to-heaΣ o≥á tail-to-tai∞ ì
  3462.         movσá i≤á requireΣ baseΣ oε thσ threσ argument≤á entered«á  Ifá ß ì
  3463.         head-to-heaΣá movσá i≤ needeΣ theε thσ firs⌠ bytσ oµá thσá sourcσ ì
  3464.         datßá blocδá wil∞á bσ writteε t∩ thσ firs⌠ bytσ positioεá oµá thσ ì
  3465.         destinatioε datß block╗á thσ seconΣ bytσ oµ thσ sourcσ datß blocδ ì
  3466.         wil∞á bσ writteε t∩ thσ seconΣ bytσ positioε oµá thσá destinatioε ì
  3467.         datß block¼ anΣ s∩ oε unti∞ thσ endinτ addres≤ oµ thσ destinatioε ì
  3468.         datß blocδ i≤ reached« 
  3469.  
  3470.         Oεá thσ othe≥ hand¼á iµ ß tail-to-tai∞ movσ i≤ necessar∙ Z8┼ wil∞ ì
  3471.         movσá thσá las⌠ bytσ oµ thσ sourcσ datß blocδ t∩á thσá las⌠á bytσ ì
  3472.         positioε oµ thσ destinatioε datß block¼ followeΣ b∙ thσ seconΣ t∩ ì
  3473.         las⌠á bytσá oµ thσ sourcσ datß blocδ t∩ thσ seconΣ t∩á las⌠á bytσ ì
  3474.         positioεá oµá thσá destinatioε datß block¼á anΣ s∩ oεá unti∞á thσ ì
  3475.         startinτ addres≤ oµ thσ destinatioε blocδ i≤ reached«  
  3476.  
  3477.         ┴á tai∞ t∩ tai∞ movσ woulΣ bσ necessar∙ iε thσ followinτá examplσ ì
  3478.         to prevent the overwriting of the destination data block:
  3479.  
  3480.                   *M  1000 100F 1008
  3481.  
  3482.  
  3483.  
  3484.  
  3485.  
  3486.  
  3487.  
  3488.  
  3489.  
  3490.  
  3491.  
  3492.  
  3493.  
  3494.  
  3495.  
  3496.                                        52
  3497.  
  3498.  
  3499.  
  3500.  
  3501.  
  3502.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3503.  
  3504.  
  3505.         N    Output to I/O Ports Without Pre-Read
  3506.         _________________________________________________________________
  3507.  
  3508.  
  3509.         Thi≤á commanΣ allow≤ thσ use≥ t∩ outpu⌠ datß t∩ aε I/╧ por⌠ with-ì
  3510.         ou⌠á firs⌠ readinτ thσ por⌠ (a≤ occur≤ iε thσá ╤á command)«á  Thσ ì
  3511.         forma⌠ oµ thσ commanΣ is:è
  3512.                         *N   [ARG1]
  3513.  
  3514.                                whereáARG▒ i≤ thσ por⌠ numbe≥ t∩ whicΦ thσ ì
  3515.         ááááááááááááááááááááááááááááádatß wil∞ bσ written.
  3516.  
  3517.         áááááááááááááááááááááááááááááIµ ARG▒ i≤ omitteΣ theε Z8┼ use≤ thσ ì
  3518.         ááááááááááááááááááááááááááááálas⌠á por⌠á addres≤ whicΦá haΣá beeε ì
  3519.         áááááááááááááááááááááááááááááinpu⌠ b∙ ß previou≤ ╬ o≥ ╤ command« 
  3520.  
  3521.         Z8┼ wil∞ promp⌠ thσ use≥ b∙ displayinτ thσ curren⌠ por⌠ numbe≥ oε ì
  3522.         thσá lef⌠ hanΣ sidσ oµ thσ consolσ anΣ postioninτ thσ curso≥á tw∩ ì
  3523.         space≤ thσ thσ right«á  A⌠ thi≤ poin⌠ thσ use≥ caε ente≥ thσ datß ì
  3524.         t∩á bσ sen⌠ t∩ thσ por⌠ iε thσ forφ oµ aεá ARGUMENT-STRING«á  Thσ ì
  3525.         ARGUMENT-STRIN╟á allow≤á thσ use≥ t∩ mi° variou≤á argumen⌠á type≤ ì
  3526.         sucΦ a≤ he° datß anΣ ASCI╔ litera∞ strings«á  Oµ coursσ thσá use≥ ì
  3527.         caεá elec⌠ t∩ merel∙ outpu⌠ singlσ byte≤ iµ desired«á  Thσ ╬ com-ì
  3528.         manΣá i≤ particularl∙ usefu∞ wheε programminτ variou≤á Z8░á peri-ì
  3529.         phera∞á chip≤ sucΦ a≤ thσ DM┴ anΣ SI╧ chip≤ whicΦ expec⌠á initia-ì
  3530.         lizatioε byte≤ t∩ arrivσ iε ß streaφ withou⌠ interveninτ reads.
  3531.  
  3532.                         *N 80
  3533.                         80  'T',00,12#,998
  3534.  
  3535.                         Thi≤á ARGUMENT-STRIN╟ woulΣ bσ evaluateΣ int∩ thσ ì
  3536.         áááááááááááááááá╡ bytes║  5┤ 0░ 0├ 0╣ 98«  Thesσ fivσ byte≤ woulΣ ì
  3537.         áááááááááááááááábσ sen⌠ t∩ por⌠ 8░ viß aε OTI╥á instruction«á  N∩ ì
  3538.         áááááááááááááááádela∙ occur≤ betweeε successivσ bytes«  
  3539.  
  3540.         Afte≥ thσ datß ha≤ beeε entereΣ anΣ afte≥ i⌠ ha≤ beeε sen⌠ t∩ thσ ì
  3541.         I/╧á por⌠á Z8┼á reprompt≤ thσ use≥ b∙ displayinτá thσá samσá por⌠ ì
  3542.         number«á  Thi≤á give≤ thσ use≥ t∩ oppportunit∙ t∩ senΣá addtiona∞ ì
  3543.         datßá t∩ thσ samσ port«á  However¼á b∙ no⌠ enterinτ datß thσ use≥ ì
  3544.         caεá changσá thσá curren⌠ por⌠ addres≤ b∙á enterinτá an∙á oµá thσ ì
  3545.         following:
  3546.  
  3547.  
  3548.  
  3549.  
  3550.  
  3551.  
  3552.  
  3553.  
  3554.  
  3555.  
  3556.  
  3557.  
  3558.  
  3559.  
  3560.  
  3561.                                        53
  3562.  
  3563.  
  3564.  
  3565. è
  3566.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3567.  
  3568.  
  3569.  
  3570.                 CARRIAGE  ááThσ nex⌠ sequentia∞ por⌠ numbe≥ iεá ascendinτ ì
  3571.         áááááááááRETURN     orde≥ become≤ thσ curren⌠ por⌠ address.
  3572.  
  3573.                 UP ARROW áááThσ nex⌠ sequentia∞ por⌠ numbe≥ iε descendinτ ì
  3574.         ááááááááááááááááááááorde≥ become≤ thσ curren⌠ por⌠ address.
  3575.  
  3576.                  =ARG ááááááAn∙ argumen⌠ appearinτ immediatel∙ afte≥á thσ ì
  3577.         ááááááááááááááááááááequa∞á sigεá (n∩ interveninτ spaces⌐ i≤á eva-ì
  3578.         ááááááááááááááááááááluateΣ a≤ aε ╕ bi⌠ number¼ anΣ iµ founΣ t∩ bσ ì
  3579.         áááááááááááááááááááávaliΣá theε i⌠ become≤ thσ ne≈á curren⌠á por⌠ ì
  3580.         ááááááááááááááááááááaddress.
  3581.  
  3582.                 PERIOD     áTerminate command
  3583.  
  3584.  
  3585.         Thσá use≥á caεá als∩ monito≥ aε I/╧ por⌠ witΦ thσá ╬á commanΣá b∙ ì
  3586.         enclosinτá thσá por⌠ numbe≥ oε thσ commanΣ linσá iεá parentheses« ì
  3587.         Monito≥á modσá vißá thσ ╬ commanΣ i≤ identica∞ t∩ tha⌠ oµá thσá ╤ ì
  3588.         command (see Q command).
  3589.  
  3590.  
  3591.  
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619. è
  3620.  
  3621.  
  3622.  
  3623.  
  3624.  
  3625.                                        54
  3626.  
  3627.  
  3628.  
  3629.  
  3630.  
  3631.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3632.  
  3633.  
  3634.         O    Output Current Breakpoints to Console
  3635.         _________________________________________________________________
  3636.  
  3637.  
  3638.         Thσá ╧ commanΣ allow≤ thσ use≥ t∩ vie≈ al∞ breakpoint≤á currentl∙ ì
  3639.         in effect.  The format of the command is:
  3640.  
  3641.                   *O  
  3642.  
  3643.                        no arguments are required
  3644.  
  3645.         Iµá Z8Eá find≤á ß symbo∞ namσ correspondinτ t∩ thσá absolutσá he° ì
  3646.         addres≤ oµ ß breakpoin⌠ addres≤ iε thσ symbo∞ tablσ (iµ ßá symbo∞ ì
  3647.         tablσá exists⌐ theε thσ symbo∞ namσ a≤ wel∞ a≤ thσ memor∙ addres≤ ì
  3648.         i≤ displayed«  Iµ n∩ symbo∞ correspondinτ t∩ thσ addres≤ i≤ founΣ ì
  3649.         onl∙ thσ hex addres≤ i≤ displayed«  
  3650.  
  3651.         Iµá an∙á pas≤ count≤ arσ currentl∙ iε effec⌠ the∙á arσá displayeΣ ì
  3652.         nex⌠ t∩ thσ breakpoin⌠ addres≤ witΦ whicΦ the∙ arσ associated.
  3653.  
  3654.  
  3655.  
  3656.  
  3657.  
  3658.  
  3659.  
  3660.  
  3661.  
  3662.  
  3663.  
  3664.  
  3665.  
  3666.  
  3667.  
  3668.  
  3669.  
  3670.  
  3671.  
  3672.  
  3673. è
  3674.  
  3675.  
  3676.  
  3677.  
  3678.  
  3679.  
  3680.  
  3681.  
  3682.  
  3683.  
  3684.  
  3685.  
  3686.  
  3687.  
  3688.  
  3689.  
  3690.                                        55
  3691.  
  3692.  
  3693.  
  3694.  
  3695.  
  3696.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3697.  
  3698.  
  3699.         P    Examine/Modify PSW (Flag Register)
  3700.         _________________________________________________________________
  3701.  
  3702.  
  3703.         Thσá ╨á commanΣá provide≤ ß convenien⌠ methoΣá oµá examininτá anΣ ì
  3704.         optionall∙á modifyinτá thσ F(lag⌐ registe≥ iε thσá use≥á registe≥ ì
  3705.         set«  Thσ forma⌠ oµ thσ commanΣ is:
  3706.  
  3707.              *P
  3708.  
  3709.                   no arguments are required on the command line
  3710.  
  3711.         Upoεá receip⌠ oµ thσ ╨ commanΣ Z8E display≤ thσ mnemonic≤ corres-ì
  3712.         pondinτá t∩á thσ curren⌠ statσ oµ thσ fou≥á user-modifiablσá bit≤ ì
  3713.         (sign¼ carry¼ zero¼ parity⌐ iε Flaτ register:
  3714.  
  3715.  
  3716.              MNEMONIC            MEANING             BIT STATUS
  3717.  
  3718.                 P                positive               reset
  3719.                 M                 minus                  set
  3720.  
  3721.                 NC               no carry               reset
  3722.                 C                 carry                  set
  3723.  
  3724.                 PO              parity odd              reset
  3725.                 PE              parity even              set
  3726.  
  3727.                 NZ               not zero               resetè                Z                  zero                  set 
  3728.  
  3729.  
  3730.         Z8Eá print≤á thσ mnemoniπ correspondinτ t∩ thσ curren⌠á statσá oµ ì
  3731.         eacΦá oµá thσá fou≥á flaτá bits«á  Z8Eá theεá issue≤á ßá carriagσ ì
  3732.         return/linσ feeΣ anΣ pause≤ fo≥ use≥ input«á  Thσ use≥ ma∙ modif∙ ì
  3733.         an∙á oµá thσ fou≥ flaτ bit≤ b∙ typinτá thσá appropriatσá mnemoniπ ì
  3734.         followeΣá b∙á ßá carriagσ return«á  Thσ use≥ ma∙á ente≥á multiplσ ì
  3735.         mnemonic≤ b∙ separatinτ eacΦ onσ witΦ ß space«  
  3736.  
  3737.         Iµá n∩ mnemonic≤ arσ entered¼á n∩ flag≤ bit≤ arσ altereΣ anΣá thσ ì
  3738.         command terminates.
  3739.  
  3740.         Iµ aε invaliΣ flaτ bi⌠ mnemoniπ i≤ entereΣ Z8E print≤ ßá questioε ì
  3741.         mark.
  3742.  
  3743.  
  3744.  
  3745.  
  3746.  
  3747.  
  3748.  
  3749.  
  3750.  
  3751.  
  3752.  
  3753.  
  3754.  
  3755.                                        56
  3756.  
  3757.  
  3758.  
  3759.  
  3760.  
  3761.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3762.  
  3763.  
  3764.         Q    Query I/O Ports
  3765.         _________________________________________________________________
  3766.  
  3767.         Thσá ╤á commanΣ allow≤ thσ use≥ flexiblσ acces≤ t∩ I/╧á port≤á b∙ ì
  3768.         providinτá thσ abilit∙ t∩ perforφ singlσ bytσá input¼á continuou≤ ì
  3769.         inpu⌠ (monito≥ mode)¼ anΣ singlσ o≥ multi-bytσ outpu⌠ followinτ ß ì
  3770.         pre-reaΣ oµ thσ port« Thσ forma⌠ oµ thσ commanΣ is:
  3771.          
  3772.              *Q   [(] [ARG1] [)]
  3773.  
  3774.                        wherσ ARG1 i≤ aε ╕ bi⌠ por⌠ addres≤ iε thσ range
  3775.                        0 - 255
  3776.  
  3777.                        ARG1 ma∙ bσ an∙ symbo∞ type¼á howeve≥ iµ ß 1╢á bi⌠ ì
  3778.         ááááááááááááááávaluσá i≤á specifieΣá onl∙ thσ lo≈ orde≥á bytσá i≤ ì
  3779.         ááááááááááááááásignifican⌠ 
  3780.  
  3781.         áááááááááááááááIµá n∩á argumen⌠ i≤ giveε Z8┼ wil∞á usσá thσá mos⌠ ìè        ááááááááááááááárecen⌠ por⌠ numbe≥ a≤ entereΣ b∙ thσ use≥ viß aε ╬ ì
  3782.         áááááááááááááááo≥ ╤ command.
  3783.  
  3784.         áááááááááááááááIµá ARG1 i≤ encloseΣ iε parenthese≤ Z8┼ wil∞ ente≥ ì
  3785.         áááááááááááááááMONITO╥ MODE.
  3786.  
  3787.  
  3788.         Upoεá receip⌠á oµ ARG1 Z8┼ wil∞ reaΣ thσ specifieΣ I/╧á por⌠á anΣ ì
  3789.         displa∙á thσ bytσ reaΣ a≤ botΦ ╕ bi⌠ hexadecima∞ valuσá anΣá it'≤ ì
  3790.         ASCI╔ equivalent«  CommanΣ option≤ oncσ ß bytσ ha≤ beeε reaΣ froφ ì
  3791.         thσ I/╧ por⌠ arσ a≤ follows:
  3792.  
  3793.                                                                                          ì
  3794.         áááááSINGLE BYTE INPUT
  3795.  
  3796.         ááááááááB∙á enterinτá ß SPACE immediatel∙á followinτá thσ ì
  3797.         áááááááádisplayeΣá content≤ oµ thσ I/╧ por⌠ thσ use≥á caε ì
  3798.         ááááááááinstruc⌠á Z8┼ t∩ continuσ readinτ froφá thσá samσ ì
  3799.         ááááááááI/╧ port:
  3800.  
  3801.                                *Q EE
  3802.                                EE   24  $  <space>
  3803.                                EE   24  $
  3804.                           
  3805.         áááááááá
  3806.         ááááááááB∙á enterinτ ß CARRIAGE RETURN followinτ thσ dis-ì
  3807.         ááááááááplayeΣá content≤á oµ thσ I/╧ por⌠á thσá use≥á caε ì
  3808.         ááááááááinstruc⌠áá Z8┼á t∩á reaΣá thσá nex⌠á por⌠á numbe≥ ì
  3809.         áááááááá(ascendinτ order):
  3810.  
  3811.                                *Q EE
  3812.                                EE   24  $  <cr>
  3813.                                EF   C1  A
  3814.  
  3815.  
  3816.         ááááááááB∙á enterinτ ß care⌠ "^ó followinτ thσá displayeΣ ì
  3817.         áááááááácontent≤á oµ thσ I/╧ por⌠ thσ use≥á caεá instruc⌠ ì
  3818.  
  3819.  
  3820.                                        57
  3821.  
  3822.  
  3823.  
  3824.  
  3825.  
  3826.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3827.  
  3828.  
  3829.         ááááááááZ8┼á t∩ reaΣ thσ previou≤ por⌠ numbe≥ (descendinτ ì
  3830.         ááááááááorder):
  3831.  
  3832.                                *Q EE
  3833.                                EE   24  $  ^  (up arrow entered by user)
  3834.                                ED   06  ~                       
  3835. è
  3836.         ááááááááB∙ enterinτ aε equa∞ sigε "=ó followeΣ b∙ ß valiΣ ì
  3837.         ááááááááargument¼á thσá use≥ caε switcΦ t∩ readinτ ßá ne≈ ì
  3838.         ááááááááport address:
  3839.  
  3840.         áááááááá               *Q EE
  3841.         áááááááá               EE   24  '$'  =90 
  3842.         áááááááá               90   BF  '?'   á  áá     
  3843.  
  3844.  
  3845.         áááááCONTINUOUS INPUT (MONITOR MODE)
  3846.  
  3847.         ááááááááZ8┼ provide≤ thσ use≥ witΦ thσ abilit∙ t∩ monito≥ ì
  3848.         ááááááááaεá inpu⌠á port«á  Z8┼ wil∞ continousl∙ reaΣá thσ ì
  3849.         ááááááááselecteΣá inpu⌠ por⌠ anΣ displa∙ thσ content≤á oε ì
  3850.         ááááááááthσá screen«á  Z8┼ display≤ thσ bytσ iε botΦá he° ì
  3851.         ááááááááanΣá binary«á  Thi≤á featurσ i≤á usefulá iεá thσ ì
  3852.         áááááááátestinτá oµ I/╧ ports«á Depressinτ an∙ ke∙ oε thσ 
  3853.         áááááááákeyboard exits monitor mode.    
  3854.  
  3855.         áááááMULTI-BYTE OUTPUT 
  3856.  
  3857.         ááááááááFollowinτá thσá reaΣ oµ aε I/╧ por⌠ thσ use≥á ma∙ ì
  3858.         ááááááááelec⌠á t∩á outpu⌠ data«á Thσ use≥á ma∙á ente≥á aε ì
  3859.         ááááááááARGUMENT-STRIN╟ whicΦ wil∞ bσ sen⌠ t∩ thσ por⌠ oε ì
  3860.         ááááááááßá bytσá b∙ bytσ basi≤ witΦ n∩ interveninτá read≤ ì
  3861.         áááááááábetweeε output≤ a≤ showε below:
  3862.  
  3863.         áááááááá        *Q 50
  3864.                         50  44  'D' 23,9,'B2E',00,F723,81
  3865.         áááááááá                    ^                   ^
  3866.         áááááááá á                áástrinτá a≤ entereΣ b∙ ì
  3867.         ááááááááááááááááá     ááááááuse≥ appear≤á betweeε ì
  3868.         ááááááááááááááááááá     ááááarrow≤
  3869.  
  3870.         ááááááááThσá datß a≤ entereΣ b∙ thσ use≥ iε thi≤á examplσ ì
  3871.         ááááááááwoulΣá firs⌠á bσ converteΣ t∩ thσ ╣á byte≤á showε ì
  3872.         áááááááábelow:
  3873.                            23 09 42 32 45 00 F7 23 81
  3874.  
  3875.         ááááááááThesσá ╣ byte≤ woulΣ theε bσ sen⌠ t∩ por⌠ 5░á onσ ì
  3876.         áááááááábytσá afte≥ anothe≥ withou⌠ an∙ interveninτ read≤ ì
  3877.         ááááááááo≥ statu≤ checks.
  3878.  
  3879.  
  3880.  
  3881.  
  3882.  
  3883.  
  3884.  
  3885.                                        58
  3886.  
  3887.  
  3888.  
  3889. è
  3890.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3891.  
  3892.  
  3893.         R    Examine/Modify Register Contents
  3894.         _________________________________________________________________
  3895.  
  3896.  
  3897.         Thσá ╥á commanΣ allow≤ thσ use≥ t∩ examinσ anΣ optionall∙á modif∙ ì
  3898.         register≤á anΣá registe≥ pair≤ iε thσá use≥á registe≥á set«á  Thσ ì
  3899.         format of the command is:
  3900.  
  3901.                   *R   ARG1  <cr> or space
  3902.  
  3903.                        wherσá ARG1á i≤ an∙ oµ thσ 2▓á registe≥á mnemonic≤ ì
  3904.         ááááááááááááááálisteΣ below:
  3905.  
  3906.         ááááááááááááááá     áA    B    C    D    E    H    L
  3907.                  áááááá      AF   BC   DE   HL   IX   IY   SP
  3908.                  áááááá      AF'  BC'  DE'  HL'  I    R    P    PC
  3909.  
  3910.                             (thσá prograφá counte≥ ma∙á bσá specifieΣá a≤ ì
  3911.         ááááááááááááááááááááeithe≥ ╨ o≥ PC)
  3912.  
  3913.         T∩á examinσ ß registe≥ thσ use≥ enter≤ ß mnemoniπ froφ thσá abovσ ì
  3914.         lis⌠ followeΣ b∙ ß carriagσ returε o≥ ß space«á  Z8E wil∞ displa∙ ì
  3915.         thσá curren⌠ content≤ oµ thσ registe≥ oε thσ samσ line«á  A⌠ thi≤ ì
  3916.         poin⌠ thσ use≥ ha≤ thσ optioε oµ enterinτ aε argumen⌠ oµ an∙ typσ ì
  3917.         iµá thσá content≤á oµ thσ registe≥ o≥ registe≥á pai≥á arσá t∩á bσ ì
  3918.         changed«á   Thσá replacemen⌠ valuσ ma∙ bσ terminateΣ b∙ eithe≥á ß ì
  3919.         carriagσá returε o≥ ß space«á Iµ n∩ valuσ i≤ entereΣ Z8E issue≤ ß ì
  3920.         carriagσ return/linσ feeΣ anΣ wait≤ fo≥ thσ nex⌠ registe≥á mnemo-ì
  3921.         niπ t∩ bσ entered.
  3922.  
  3923.         Iµá thσ use≥ specifie≤ ß 1╢ bi⌠ valuσ a≤ thσ ne≈ content≤ oµ aε ╕ ì
  3924.         bit register only the low order byte of the value is used.
  3925.  
  3926.         Thσ commanΣ terminate≤ wheε ß carriagσ returε o≥ spacσ i≤ entereΣ ì
  3927.         wheε Z8E i≤ waitinτ fo≥ ß registe≥ mnemonic.
  3928.  
  3929.  
  3930.  
  3931.  
  3932.  
  3933.  
  3934.  
  3935.  
  3936.  
  3937.  
  3938.  
  3939.  
  3940.  
  3941.  
  3942.  
  3943. è
  3944.  
  3945.  
  3946.  
  3947.  
  3948.  
  3949.                                        59
  3950.  
  3951.  
  3952.  
  3953.  
  3954.  
  3955.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  3956.  
  3957.  
  3958.         S    Single Step
  3959.         _________________________________________________________________
  3960.  
  3961.         ááááááááááááááááááááááááááááá 
  3962.         Thσ ╙ commanΣ allow≤ thσ use≥ t∩ executσ ß prograφ instructioε b∙ ì
  3963.         instruction«á  Thσá ╙á commanΣ provide≤ fo≥ ful∞ tracinτá oµá thσ ì
  3964.         user program«  Thσ forma⌠ oµ thσ commanΣ is:
  3965.  
  3966.              *S   [/] [ARG1]  <cr>
  3967.                        
  3968.         áááááááááááááááwherσá ARG1 i≤ thσ numbe≥ oµ instruction≤ t∩á exe-ì
  3969.         ááááááááááááááácutσ iε thσ use≥ program¼á iµ n∩ argumen⌠ i≤ giveε ì
  3970.         áááááááááááááááZ8E defaults to 1
  3971.         ááááááááááááááá
  3972.         áááááááááááááááARG1 may be of any type
  3973.  
  3974.         Thσ slasΦ "/ó allow≤ thσ use≥ contro∞ ove≥ thσ tracinτ oµ subrou-ì
  3975.         tines«á Iµá ß slasΦ i≤ includeΣ beforσ thσ coun⌠ (iµ ßá coun⌠á i≤ ì
  3976.         entered)¼á o≥á iµ thσ slasΦ i≤ thσ onl∙ characte≥ oε thσá commanΣ ì
  3977.         linσá theε subroutine≤ wil∞ no⌠ bσ traced«á  ┴ slasΦ affect≤ onl∙ ì
  3978.         CAL╠á instruction≤ whicΦ liσ withiε thσ rangσ oµá ARG1«á  Iεá thσ ì
  3979.         mos⌠á typica∞á casσ n∩ ARG1 i≤ presen⌠ anΣ thσ single ste≡á coun⌠ ì
  3980.         default≤á t∩ 1«á  Iµ thσ curren⌠ PC¼á 100░ iεá thi≤á example¼á i≤ ì
  3981.         pointinτ t∩ ß cal∞ instructioε theε thσ command:
  3982.  
  3983.                             *S /
  3984.  
  3985.                   1000  CD 56 30  RASRTN: CALL  ANYSUB
  3986.                   1003  FE 04             CP    4
  3987.                   1005  CA 17 10          JP    Z,AHEAD
  3988.  
  3989.  
  3990.         wil∞á causσá thσá entirσá subroutinσ ANYSU┬ t∩á bσá executeΣá anΣ ì
  3991.         contro∞á wil∞á returε t∩ thσ use≥ a⌠ addres≤ 1003«á  
  3992.  
  3993.         Iµ ARG▒ i≤ omitteΣ Z8┼ wil∞ transfe≥ contro∞ t∩ thσ use≥á prograφ ì
  3994.         anΣá onσ instruction¼á thσ onσ pointeΣ t∩ b∙ thσ curren⌠ content≤ ì
  3995.         oµ thσ user'≤ prograφ counter¼á wil∞ bσ executed«á  Followinτ thσ ì
  3996.         executioεá oµ thσ instructioε (o≥ grou≡ oµ instruction≤á iµá ARG▓ ì
  3997.         wa≤á greate≥á thaε 1⌐ Z8┼ regain≤ contro∞ anΣ automaticall∙á dis-ìè        play≤ thσ curren⌠ content≤ oµ al∞ thσ use≥ registers.
  3998.  
  3999.         Thσá use≥ ma∙ optionall∙ indicatσ tha⌠ morσ thaε onσá instructioε ì
  4000.         i≤á t∩á bσ executeΣ b∙ enterinτ ß valuσ greate≥ thaε ▒ fo≥á ARG1«  ì
  4001.         Z8E wil∞ transfe≥ contro∞ t∩ thσ use≥ prograφ anΣ regaiεá contro∞ ì
  4002.         onl∙á wheεá thσ specifieΣ numbe≥ oµ instruction≤ havσá beeεá exe-ì
  4003.         cuted«á  Thi≤ featurσ i≤ usefu∞ iε debugginτ smal∞ loops╗ iε tha⌠ ì
  4004.         thσá use≥ caε se⌠ ARG1 equa∞ t∩ thσ numbe≥ oµ instruction≤ iε thσ ì
  4005.         rangσ oµ thσ loop«á  Z8E wil∞ displa∙ thσ registe≥ content≤ afte≥ ì
  4006.         eacΦá instructioε oµ thσ loo≡ i≤ executeΣ anΣ returεá contro∞á t∩ ì
  4007.         thσ use≥ afte≥ ever∙ iteratioε oµ thσ loop.
  4008.  
  4009.         Thσá singlσá ste≡ commanΣ alway≤ cause≤ thσ executioε oµ thσá in-ì
  4010.         structioεá pointeΣ t∩ b∙ thσ curren⌠ content≤ oµ thσ user'≤á pro-ì
  4011.         graφ counter«á  Thi≤ i≤ thσ instructioε tha⌠ appear≤ iε disassem-ì
  4012.  
  4013.  
  4014.                                        60
  4015.  
  4016.  
  4017.  
  4018.  
  4019.  
  4020.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4021.  
  4022.  
  4023.         bleΣá forφá a≤á par⌠ oµ thσ outpu⌠ oµ thσá "Xóá commanΣá (displa∙ ì
  4024.         machinσá state)«á  Bea≥ iε minΣ tha⌠ ARG1 i≤ no⌠ thσá addres≤á a⌠ ì
  4025.         whicΦ singlσ steppinτ i≤ t∩ begin╗ i⌠ i≤ ß coun⌠ t∩ thσ numbe≥ oµ ì
  4026.         instruction≤á t∩ execute«á  Iµ thσ use≥ desire≤ t∩ singlσ ste≡ a⌠ ì
  4027.         aεá addres≤ othe≥ thaε thσ onσ containeΣ iε thσ prograφá counter¼ ì
  4028.         theεá thσ P├ registe≥ mus⌠ bσ modifieΣ viß thσ ╥á commanΣá beforσ ì
  4029.         thσ singlσ ste≡ commanΣ i≤ issueΣ t∩ Z8E.
  4030.  
  4031.         Allowinτá thσá conveniencσ oµ enterinτ "Só <cr╛á t∩á executσá onσ ì
  4032.         instructioε ha≤ thσ sidσ effec⌠ oµ no⌠ allowinτ thσ use≥ t∩ abor⌠ ì
  4033.         thσá commanΣ iε betweeε thσ timσ thσ "Só i≤ typeΣ anΣ thσ <cr╛ i≤ ì
  4034.         entereΣ b∙ simpl∙ omittinτ aε argumen⌠ anΣ typinτ <cr>«á  Iµá yo⌡ ì
  4035.         changσ you≥ minΣ anΣ wan⌠ t∩ cance∞ thσ command¼ typσ iε aε inva-ì
  4036.         liΣá argumen⌠á a≤ ARG1«á  Thi≤ wil∞ causσ ß questioε marδá t∩á bσ ì
  4037.         displayed╗ however¼ n∩ instructioε wil∞ bσ executed« 
  4038.  
  4039.         Durinτá blocδá tracinτ (ARG1 greate≥ thaε 1⌐ thσ commanΣá ma∙á bσ ì
  4040.         terminated by hitting any key on the keyboard.
  4041.  
  4042.         Thσá ╙ commanΣ doe≤ no⌠ relocatσ instruction≤ beforσ executioε a≤ ì
  4043.         doe≤ thσ ╟ commanΣ (seσ ╟ command)«  Hence¼ i⌠ i≤ no⌠ possiblσ t∩ ì
  4044.         single step through each iteration of a DJNZ $ instruction.
  4045.  
  4046.  
  4047.  
  4048.  
  4049.  
  4050.  
  4051. è
  4052.  
  4053.  
  4054.  
  4055.  
  4056.  
  4057.  
  4058.  
  4059.  
  4060.  
  4061.  
  4062.  
  4063.  
  4064.  
  4065.  
  4066.  
  4067.  
  4068.  
  4069.  
  4070.  
  4071.  
  4072.  
  4073.  
  4074.  
  4075.  
  4076.  
  4077.  
  4078.  
  4079.                                        61
  4080.  
  4081.  
  4082.  
  4083.  
  4084.  
  4085.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4086.  
  4087.  
  4088.         U    Write Symbol Table to Disk
  4089.         _________________________________________________________________
  4090.  
  4091.  
  4092.         Thσá ╒ commanΣ allow≤ thσ use≥ t∩ writσ thσ curren⌠ symbo∞á tablσ ì
  4093.         to a disk file.  The format of the command is:
  4094.  
  4095.                   
  4096.              *U   ARG1
  4097.  
  4098.         áááááááááááááááARG▒á i≤ thσ namσ oµ thσ filσ t∩ whicΦ thσá symbo∞ ì
  4099.         ááááááááááááááátable is to be written.
  4100.  
  4101.         Thi≤á commanΣ i≤ usefu∞ t∩ savσ an∙ symbo∞ name≤ entereΣá b∙á thσ ì
  4102.         use≥á viß thσ ┴ command«á  Thσ entirσ symbo∞ tablσ i≤ writteεá t∩ ì
  4103.         disδ usinτ thσ forma⌠ oµ ß .SY═ filσ (seσ appendi° A)«  Thσ tablσ ì
  4104.         caε bσ subsequentl∙ loadeΣ a⌠ thσ nex⌠ invokatioε oµ Z8E.
  4105. è        Notσá tha⌠ sincσ thσ filσ i≤ storeΣ a≤ ß .SY═ formatteΣ filσá thσ ì
  4106.         use≥ shoulΣ usσ ß  filσ namσ extensioε tha⌠ begiε witΦ thσ lette≥ ì
  4107.         "S"«á  Thi≤á i≤ duσ t∩ thσ fac⌠ tha⌠ thσ nex⌠ timσ Z8┼ load≤ thi≤ ì
  4108.         symbo∞á filσ i⌠ wil∞ examinσ thσ thσ firs⌠ characte≥ oµ thσá filσ ì
  4109.         namσ extension«á  Iµ thσ firs⌠ characte≥ i≤ aε "Só thσ forma⌠á i≤ ì
  4110.         assumeΣ t∩ bσ .SY═ anΣ thσ symbo∞ tablσ i≤ buil⌠ accordingly╗ thσ ì
  4111.         appearancσá oµ an∙ othe≥ lette≥ i≤ takeε t∩ indicatσ ß .PR╬ file«  
  4112.  
  4113.         Iµá ß filσ witΦ thσ namσ ARG▒ alread∙ exist≤ oε disδ i⌠á wil∞á bσ ì
  4114.         deleted« 
  4115.  
  4116.  
  4117.  
  4118.  
  4119.  
  4120.  
  4121.  
  4122.  
  4123.  
  4124.  
  4125.  
  4126.  
  4127.  
  4128.  
  4129.  
  4130.  
  4131.  
  4132.  
  4133.  
  4134.  
  4135.  
  4136.  
  4137.  
  4138.  
  4139.  
  4140.  
  4141.  
  4142.  
  4143.  
  4144.                                        62
  4145.  
  4146.  
  4147.  
  4148.  
  4149.  
  4150.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4151.  
  4152.  
  4153.         V    Verify two memory blocks
  4154.         _________________________________________________________________
  4155.  
  4156.  
  4157.         Thσá ╓á commanΣ allow≤ thσ use≥ t∩ comparσ tw∩ block≤ oµá memory« ì
  4158.         Z8E wil∞ displa∙ al∞ difference≤ betweeε thσ two«á  Thσ forma⌠ oµ ì
  4159.         thσ commanΣ is:è
  4160.              *V   ARG1  ARG2  ARG3
  4161.  
  4162.                   where  ARG1  =  the starting address of memory block 1
  4163.  
  4164.         áááááááááááááááááARG2  =  the ending address of memory block 1
  4165.  
  4166.                          ARG3  = áthe starting address of memory block 2
  4167.  
  4168.         Z8E compare≤ memor∙ blocδ ▒ t∩ memor∙ blocδ ▓ bytσ b∙ byte«  If ß ì
  4169.         mismatcΦá occur≤á Z8E wil∞ displa∙ thσ addres≤ iε eacΦá blocδá a⌠ ì
  4170.         whicΦá thσ mismatcΦ wa≤ found¼á a≤ wel∞ a≤ thσ bytσ containeΣá a⌠ ì
  4171.         eacΦ address«á  Thσ comparisoε continue≤ unti∞ thσ endinτ addres≤ ì
  4172.         i≤ reached.
  4173.  
  4174.         Thσá use≥ ma∙ hal⌠ thσ commanΣ a⌠ an∙ timσ b∙ depressinτ an∙á ke∙ ì
  4175.         on the keyboard.
  4176.  
  4177.  
  4178.  
  4179.  
  4180.  
  4181.  
  4182.  
  4183.  
  4184.  
  4185.  
  4186.  
  4187.  
  4188.  
  4189.  
  4190.  
  4191.  
  4192.  
  4193.  
  4194.  
  4195.  
  4196.  
  4197.  
  4198.  
  4199.  
  4200.  
  4201.  
  4202.  
  4203.  
  4204.  
  4205.  
  4206.  
  4207.  
  4208.  
  4209.                                        63
  4210.  
  4211.  
  4212.  
  4213. è
  4214.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4215.  
  4216.  
  4217.         W    write memory to disk
  4218.         _________________________________________________________________
  4219.  
  4220.  
  4221.         Thσá ╫ commanΣ allow≤ thσ use≥ t∩ writσ thσ content≤ oµ memor∙ t∩ ì
  4222.         a disk file. The format of the command is:
  4223.  
  4224.                   *W  arg1 [arg2  arg3]
  4225.  
  4226.                        ARG▒á i≤ thσ namσ oµ ß filσ t∩ whicΦ writinτá wil∞ ì
  4227.         ááááááááááááááátakσ place. 
  4228.  
  4229.         áááááááááááááááARG▓ anΣ ARG│ arσ thσ optiona∞ startinτ anΣ endinτ ì
  4230.         áááááááááááááááaddresse≤á oµ thσ portioε oµ memor∙ t∩ bσá writteε ì
  4231.         ááááááááááááááát∩á thσ disk«á  Iµ thσ addresse≤ omitteΣ theεá thσ ì
  4232.         ááááááááááááááámemor∙á blocδá t∩á bσ writteε i≤á defineΣá b∙á thσ ì
  4233.         ááááááááááááááástartinτá anΣá endinτ addresse≤ oµ thσá las⌠á filσ ì
  4234.         áááááááááááááááloaded«á  Thesσá addresse≤ caε bσá redisplayeΣá b∙ ì
  4235.         áááááááááááááááenterinτ thσ ╔ commanΣ witΦ n∩ arguments.
  4236.  
  4237.  
  4238.         Z8┼á alway≤á delete≤ an∙ filσ oε disδ whosσ namσ i≤ thσá samσá a≤ ì
  4239.         ARG1«  Iµ n∩ filσ b∙ thi≤ namσ exist≤ theε Z8┼ wil∞ automaticall∙ ì
  4240.         creatσ it.
  4241.  
  4242.         Z8┼ wil∞ ech∩ thσ startinτ memor∙ addres≤ anΣ continuall∙á updatσ ì
  4243.         thσ endinτ memor∙ addres≤ a≤ thσ writinτ t∩ disδ take≤ place.
  4244.  
  4245.  
  4246.  
  4247.  
  4248.  
  4249.  
  4250.  
  4251.  
  4252.  
  4253.  
  4254.  
  4255.  
  4256.  
  4257.  
  4258.  
  4259.  
  4260.  
  4261.  
  4262.  
  4263.  
  4264.  
  4265.  
  4266.  
  4267. è
  4268.  
  4269.  
  4270.  
  4271.  
  4272.  
  4273.                                        64
  4274.  
  4275.  
  4276.  
  4277.  
  4278.  
  4279.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4280.  
  4281.  
  4282.         X    display machine state
  4283.         _________________________________________________________________
  4284.  
  4285.  
  4286.         Thσáá ╪á commanΣá display≤á thσá curren⌠á content≤á oµá al∞á use≥ ì
  4287.         registers.  The format of the command is:
  4288.  
  4289.                   *X   
  4290.  
  4291.                        no arguments are required
  4292.  
  4293.         Z8┼á display≤ display≤ al∞ registers¼á excep⌠ thσ ╔ registe≥á anΣ ì
  4294.         thσ ╥ register¼á oε tw∩ line≤ oµ thσ console«á  Iε addition¼á thσ ì
  4295.         instructioε pointeΣ t∩ b∙ thσ user'≤ prograφ counte≥ i≤ disassem-ì
  4296.         bleΣ anΣ displayeΣ oε thσ seconΣ line«á  Thinδ oµ thi≤ a≤ thσ "oε ì
  4297.         deckóá instruction║á  thσ instructioε tha⌠ wil∞ bσ executeΣá upoε ì
  4298.         thσ receip⌠ oµ thσ nex⌠ ╟ (GO⌐ o≥ ╙ (SINGL┼ STEP⌐ command.
  4299.  
  4300.         To inspect the I or R registers use the R command.
  4301.  
  4302.  
  4303.  
  4304.  
  4305.  
  4306.  
  4307.  
  4308.  
  4309.  
  4310.  
  4311.  
  4312.  
  4313.  
  4314.  
  4315.  
  4316.  
  4317.  
  4318.  
  4319.  
  4320.  
  4321. è
  4322.  
  4323.  
  4324.  
  4325.  
  4326.  
  4327.  
  4328.  
  4329.  
  4330.  
  4331.  
  4332.  
  4333.  
  4334.  
  4335.  
  4336.  
  4337.  
  4338.                                        65
  4339.  
  4340.  
  4341.  
  4342.  
  4343.  
  4344.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4345.  
  4346.  
  4347.         Y    fill memory
  4348.         _________________________________________________________________
  4349.  
  4350.  
  4351.         Thσá ┘ commanΣ fill≤ ß use≥ specifieΣ blocδ oµ memor∙ witΦ ß use≥ ì
  4352.         specifieΣá patterε oµ bytes¼á thσ lengtΦ oµ whicΦ i≤ limiteΣ onl∙ ì
  4353.         by the length of Z8E's input buffer which is 80 bytes long:
  4354.  
  4355.                   *Y  ARG1  ARG2  ARG3  <cr>
  4356.  
  4357.                        where  ARG1  =  thσá startinτ addres≤ oµ thσ blocδ ì
  4358.         ááááááááááááááááááááááááááááááát∩ fill
  4359.  
  4360.                               ARG2  =  thσ endinτ addres≤ oµ thσ blocδ t∩ ì
  4361.         áááááááááááááááááááááááááááááááfill
  4362.  
  4363.                               ARG3  =  i≤ thσ datß patterε t∩ bσá writteε ì
  4364.         ááááááááááááááááááááááááááááááát∩á memory«á  ARG3 i≤ evaluateΣ b∙ ì
  4365.         áááááááááááááááááááááááááááááááZ8┼ a≤ typσ ARGUMENT-STRIN╟á whicΦ ì
  4366.         áááááááááááááááááááááááááááááááma∙á bσ oµ an∙ lengtΦ iε thσ rangσ ì
  4367.         áááááááááááááááááááááááááááááááoµá ▒ througΦ thσ numbe≥ oµá byte≤ ì
  4368.         áááááááááááááááááááááááááááááááremaininτ iε thσ inpu⌠ buffe≥ oncσ ì
  4369.         áááááááááááááááááááááááááááááááARG1 anΣ ARG2 havσ been input.
  4370.  
  4371.  
  4372.         Thσ ┘ commanΣ give≤ thσ use≥ thσ capabilit∙ to initializσ memor∙ ì
  4373.         t∩á an∙á datß pattern«á  Thσ capabilit∙á oµá enterinτá multi-bytσ ì
  4374.         string≤á a≤ thσ datß patterε witΦ whicΦ t∩ fil∞ memor∙ allow≤ thσ ì
  4375.         use≥ t∩ storσ repeatinτ pattern≤ oµ datß iε memor∙ witΦ ßá singlσ ìè        command. For example if the user entered the command:
  4376.  
  4377.                   *Y 1000 127C 'abcd',16,77
  4378.  
  4379.         Z8┼á woulΣá begiε writinτ thσ ╢ bytσ patterε  (6▒ 6▓ 6│ 6┤ 1╢á77⌐ ì
  4380.         entereΣá a≤ ARG│ startinτ a⌠ addres≤ 1000«á  Thi≤á patterεá woulΣ ì
  4381.         repea⌠ a⌠ addres≤ 1006¼ 100C¼ 1012¼ etc« 
  4382.  
  4383.         Thσ commanΣ end≤ afte≥ ß bytσ i≤ writteε t∩ thσ ARG▓ addres≤ eveε ì
  4384.         iµá thi≤ bytσ doe≤ no⌠ represen⌠ thσ las⌠ bytσ iε thσ ARG│ block«  ì
  4385.         Iε thσ abovσ examplσ thσ commanΣ woulΣ enΣ wheε ß bytσ i≤ writteε ì
  4386.         t∩ addres≤ 127├ eveε iµ tha⌠ bytσ i≤ no⌠ 77« 
  4387.  
  4388.  
  4389.  
  4390.  
  4391.  
  4392.  
  4393.  
  4394.  
  4395.  
  4396.  
  4397.  
  4398.  
  4399.  
  4400.  
  4401.  
  4402.  
  4403.                                        66
  4404.  
  4405.  
  4406.  
  4407.  
  4408.  
  4409.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4410.  
  4411.  
  4412.         Z    disassemble command
  4413.         _________________________________________________________________
  4414.  
  4415.  
  4416.         Thσá ┌á commanΣ allow≤ thσ use≥ t∩ disassemblσ ß blocδá oµá data«  ì
  4417.         Z8Eá perform≤á disassembly¼á whicΦ i≤ thσ translatioεá oµá binar∙ ì
  4418.         memor∙ datß int∩ sourcσ codσ format¼á usinτ thσ ful∞ Z8░ instruc-ì
  4419.         tioε se⌠ anΣ Ziloτ mnemonics«á  Thσ resultan⌠ sourcσ codσ ma∙á bσ ì
  4420.         directeΣá t∩ thσ consolσ o≥ t∩ thσ consolσ anΣ ß disδ filσ simul-ì
  4421.         taneously«  Z8E als∩ allow≤ thσ use≥ t∩ disassemblσ interactivel∙ ì
  4422.         wheε ARG2 i≤ equa∞ t∩ 1« Thσ forma⌠ oµ thσ commanΣ is:
  4423.  
  4424.                   *Z  ARG1 [ARG2 ARG3]  <cr>
  4425.  
  4426.                        whereá  ARG1á =á  thσ star⌠ addres≤ a⌠ whicΦ disa-ì
  4427.         ááááááááááááááááááááááááááááááááássembl∙ i≤ t∩ begin
  4428.  
  4429.                                ARG2  =áá i≤á optiona∞ anΣ representsá thσ ìè        áááááááááááááááááááááááááááááááááuppe≥á limi⌠ oµ thσá disassembl∙ ì
  4430.         áááááááááááááááááááááááááááááááááproces≤ (seσ detail≤ below)
  4431.  
  4432.                                ARG3  =á  i≤á aε optiona∞ filσ namσ speci-ì
  4433.         áááááááááááááááááááááááááááááááááficatioε fo≥ disassembl∙ t∩ disδ       
  4434.  
  4435.         áááááááááááááááARG1 ma∙ bσ oµ an∙ argumen⌠ type«  
  4436.  
  4437.         áááááááááááááááARG2á i≤á treateΣ iε onσ oµ tw∩ way≤ dependinτá oε ì
  4438.         áááááááááááááááit≤á value:á 
  4439.  
  4440.         ááááááááááááááááá1)áIµá ARG2 evaluate≤ t∩ ß numbe≥ betweeε ▒á anΣ ì
  4441.         áááááááááááááááááááá25╡á (decimal⌐ Z8E wil∞ disassemblσ iε "blocδ ì
  4442.         áááááááááááááááááááámodeó anΣ ARG2 become≤ ß coun⌠ oµ thσá numbe≥ ì
  4443.         ááááááááááááááááááááoµ instruction≤ pe≥ blocδ t∩ disassemble«á A≤ ì
  4444.         ááááááááááááááááááááwil∞á bσá explaineΣ below¼á Z8E pause≤á afte≥ ì
  4445.         ááááááááááááááááááááeacΦá blocδá i≤ disassembleΣ anΣá allow≤á thσ ì
  4446.         ááááááááááááááááááááuse≥ t∩ continuσ o≥ t∩ terminatσ thσ command.
  4447. ì
  4448.         ááááááááááááááááááááIµ ARG2 i≤ omitteΣ altogethe≥ ß defaul⌠ blocδ ì
  4449.         áááááááááááááááááááásizσ oµ ▒ i≤ used«  
  4450.         áááááááááááááááááááá
  4451.         ááááááááááááááááááááWheneve≥ ARG2 equal≤ 1¼á eithe≥ explicitl∙ o≥ ì
  4452.         ááááááááááááááááááááb∙ default¼á Z8E allow≤ interactivσ disassem-ì
  4453.         áááááááááááááááááááábl∙ whicΦ allow≤ thσ use≥ t∩ choosσ thσá out-ì
  4454.         áááááááááááááááááááápu⌠á forma⌠ oµ thσ data«á  Interactivσ disas-ì
  4455.         áááááááááááááááááááásembl∙ i≤ discusseΣ below.
  4456.  
  4457.         ááááááááááááááááá2)áIµá ARG2 evaluate≤ t∩ ß numbe≥á greate≥á thaε ì
  4458.         áááááááááááááááááááá25╡á i⌠á i≤ assumeΣ t∩ bσ aε endinτá address«  ì
  4459.         ááááááááááááááááááááIεá thi≤ casσ disassembl∙ wil∞á proceeΣá froφ ì
  4460.         áááááááááááááááááááástartinτá addres≤á (ARG1⌐ t∩á endinτá addres≤ ì
  4461.         áááááááááááááááááááá(ARG2⌐ anΣ n∩ use≥ interventioε i≤ required.
  4462. ì
  4463.         áááááááááááááááARG3¼á iµ present¼á i≤ assumeΣ t∩ bσ thσ namσ oµ ß ì
  4464.         ááááááááááááááádisδá filσ int∩ whicΦ thσ disassembleΣ outpu⌠ wil∞ ì
  4465.         ááááááááááááááábσ written«á  Z8E searche≤ thσ specifieΣ disδá fo≥ ì
  4466.  
  4467.  
  4468.                                        67
  4469.  
  4470.  
  4471.  
  4472.  
  4473.  
  4474.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4475.  
  4476.  
  4477.         áááááááááááááááthσá nameΣ file«á  Iµ thσ filσ i≤ found¼á theε al∞ ì
  4478.         ááááááááááááááádisassembleΣ outpu⌠ wil∞ bσ writteε t∩á it¼á over-ì
  4479.         áááááááááááááááwritinτ an∙ datß tha⌠ existeΣ there«á  Iµ thσ filσ ì
  4480.         ááááááááááááááádoe≤á no⌠ exis⌠ thσ filσ wil∞ bσ createΣ usinτ thσ ì
  4481.         ááááááááááááááánamσ specifieΣ iε ARG3«  
  4482.  
  4483.         áááááááááááááááNOTE║á Iµá ARG3 i≤ presen⌠ ARG2 mus⌠ bσ explicitl∙ ìè        áááááááááááááááspecified¼ otherwisσ Z8E wil∞ mistakenl∙ trea⌠ thσ ì
  4484.         áááááááááááááááfilσ namσ a≤ ARG2.
  4485.  
  4486.         Z8E outputs to the console using the following format:
  4487.  
  4488.              ADDRESS      OBJECT CODE      LABEL:   OPCODE    OPERAND
  4489.  
  4490.  
  4491.         Z8E writes to disk using the following formart:
  4492.                                            
  4493.                                            LABEL:   OPCODE    OPERAND
  4494.  
  4495.         Z8Eá disassemble≤á memor∙ blocδ b∙ blocδ iεá thσá use≥á specifieΣ ì
  4496.         blocδá size«á  Afte≥á eacΦá blocδ i≤ outpu⌠ Z8E pause≤á fo≥á use≥ ì
  4497.         input«á  ┴ carriagσ returε inpu⌠ b∙ thσ use≥ terminate≤ thσá com-ì
  4498.         mand¼á whilσá an∙á othe≥á characte≥ cause≤ thσ nex⌠ blocδá t∩á bσ ì
  4499.         disassembleΣ (unles≤ interactivσ modσ i≤ iε effect)«  Perhap≤ thσ ì
  4500.         mos⌠ convenien⌠ wa∙ t∩ disassemblσ i≤ t∩ specif∙ ß coun⌠ oµá one¼ ì
  4501.         eithe≥ explicit∙ o≥ b∙ omittinτ ARG2¼ anΣ t∩ usσ thσ spacσ ba≥ a≤ ì
  4502.         aεá on/ofµ switch«á  Holdinτ dowε thσ spacσ ba≥ produce≤á output¼ ì
  4503.         releasinτá thσá spacσá ba≥ end≤ output.
  4504.  
  4505.         Z8E'≤á disassemble≥ i≤ especiall∙ powerfu∞ wheε useΣ iεá conjunc-ì
  4506.         tioεá witΦ thσ symbo∞ facility«á  B∙ buildinτ ß symbo∞ tablσ witΦ ì
  4507.         botΦá .PR╬ anΣ .SY═ files¼á and/o≥ creatinτ use≥á defineΣá symbo∞ ì
  4508.         name≤á vißá thσá ┴ command¼á thσ use≥ caε virtuall∙á recreatσá aε ì
  4509.         assemble≥ outpu⌠ listinτ (minu≤ thσ comments⌐ witΦ Z8Eá insertinτ ì
  4510.         label≤ anΣ symboliπ operand≤ whereve≥ possible.
  4511.  
  4512.         Iµá Z8E canno⌠ matcΦ  aε operanΣ iε thσ disassembleΣá instructioε ì
  4513.         t∩á ß correspondinτ symbo∞ iε thσ symbo∞ table¼á o≥ iµ n∩á symbo∞ ì
  4514.         tablσ exists¼ Z8E use≤ thσ hexadecima∞ value.
  4515.  
  4516.         Iµ multiplσ symbol≤ iε thσ symbo∞ tablσ arσ equa∞ t∩ thσ samσá 1╢ ì
  4517.         bi⌠á valuσá o≥ address¼á Z8E disassemble≤ usinτ thσ firs⌠á symbo∞ ì
  4518.         namσá encountereΣá iεá thσ searcΦ oµ thσ symbo∞á tablσá whicΦá i≤ ì
  4519.         equateΣ t∩ thσ 1╢ bi⌠ operanΣ specifieΣ iε thσ instructioεá beinτ ì
  4520.         disassembled«á Thi≤á  wil∞ unavoidabl∙ producσ aε occasiona∞ mis-ì
  4521.         nameΣá operanΣ wheε morσ thaε onσ symbo∞ namσ i≤ equateΣá t∩á thσ ì
  4522.         samσá 1╢á bi⌠ value«á 
  4523.  
  4524.         Z8┼á doe≤ no⌠ substitutσ symbo∞ name≤ iε thosσá Z8░á instruction≤ ì
  4525.         whicΦ referencσ ╕ bi⌠ immediatσ datß (ie«á L─  A,24H)«  Eigh⌠ bi⌠ ì
  4526.         immediatσá datßá i≤ disassembleΣ a≤ ß quoteΣ ASCI╔á characte≥á iµ ì
  4527.         it'≤ absolutσ valuσ i≤ iε thσ rangσ 2░ he° t∩ 7┼ hex╗á otherwise¼ ì
  4528.         i⌠ i≤ disassembleΣ a≤ ß he° byte.
  4529.  
  4530.         Outpu⌠ b∙ Z8E t∩ ß disδ filσ i≤ instantl∙ assemblablσ b∙ mos⌠ an∙ ì
  4531.  
  4532.  
  4533.                                        68
  4534.  
  4535.  
  4536.  
  4537. è
  4538.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4539.  
  4540.  
  4541.         assemble≥ whicΦ accept≤ Ziloτ mnemonic≤ withou⌠ an∙ modification≤ ì
  4542.         other than addinτ aε EN─ statemen⌠ a⌠ thσ enΣ oµ thσ file.
  4543.  
  4544.         Wheεá disassemblinτ ß blocδ oµ memor∙ (startinτ addres≤ t∩ endinτ ì
  4545.         address⌐á thσá disassembl∙ proces≤ ma∙ bσ halteΣ a⌠ an∙á timσá b∙ ì
  4546.         depressinτ an∙ ke∙ oε thσ keyboard.
  4547.  
  4548.         Interactivσá disassembl∙ allow≤ thσ use≥ t∩ specif∙ thσ forma⌠ oµ ì
  4549.         thσ sourcσ codσ produceΣ b∙ disassembl∙ oε ß linσ b∙ linσá basis«  ì
  4550.         Interactivσá mode¼á whicΦá i≤ alway≤ iε effec⌠ wheneve≥á ARG2á i≤ ì
  4551.         equa∞ t∩ 1¼á cause≤ Z8E t∩ pausσ afte≥ eacΦ instructioε i≤ disas-ì
  4552.         sembled«á  Thi≤á pausσ fo≥ inpu⌠ permit≤ thσ use≥ t∩ ente≥ onσ oµ ì
  4553.         thσ followinτ command≤ t∩ choosσ thσ desireΣ outpu⌠ format:
  4554.  
  4555.  
  4556.             CHARACTER            OUTPUT FORMAT         EXAMPLE
  4557.  
  4558.              
  4559.                 ┴                 ASCI╔ DEFB          DEFB   'Q'
  4560.  
  4561.                 B                  HEX DEFB           DEFB   23H    
  4562.  
  4563.                 C                    CODE             EX     DE,HL
  4564.  
  4565.                 D                  HEX DEFW           DEFW   02FCH  or    
  4566.                                                       DEF╫   LABEL
  4567.  
  4568.                 ;                 add COMMENT         ;This is a Comment     
  4569.  
  4570.              carriage           (terminate command)
  4571.               return
  4572.            
  4573.              any other           PROCEED TO THE
  4574.              character          NEXT INSTRUCTIONááááá
  4575.  
  4576.  
  4577.              ASCII DEFB:
  4578.         áááááThσá content≤ oµ memor∙ a⌠ thσ curren⌠ disassembl∙á ad-ì
  4579.         ááááádres≤ i≤ converteΣ t∩ ß quoteΣ ASCI╔ character«  Value≤ ì
  4580.         áááááles≤á thaε hexadecima∞ 2░ (ASCI╔ space⌐ o≥ greate≥ thaε ì
  4581.         áááááhexadecima∞á 7┼á (ASCI╔ tilde⌐ canno⌠á bσá disassembleΣ ì
  4582.         áááááint∩ thi≤ format«  
  4583.  
  4584.         áááááHEX DEFB:
  4585.         áááááThσ ╕ bi⌠ content≤ oµ memor∙ a⌠ thσ curren⌠ disassembl∙ ì
  4586.         áááááaddres≤ arσ converteΣ t∩ ß he° byte.
  4587.  
  4588.         áááááCODE:
  4589.         áááááThi≤á i≤ thσ norma∞ defaul⌠ fo≥á disassembly«á  A≤á Z8E ì
  4590.         ááááámove≤á oεá t∩ ß ne≈ addres≤ i⌠ wil∞ alway≤ displa∙á thσ ì
  4591.         ááááácontent≤á oµ memor∙ a≤ ß Z8░ instruction«á  Thσ "Cóá i≤ ìè        áááááonl∙á needeΣ t∩ redispla∙ thσ content≤ oµ memor∙ a≤á aε ì
  4592.         áááááinstructioε haΣ onσ oµ thσ othe≥ character≤ (A¼á B¼á o≥ ì
  4593.         áááááD⌐ alread∙ havσ beeε entered« 
  4594.  
  4595.  
  4596.  
  4597.                                        69
  4598.  
  4599.  
  4600.  
  4601.  
  4602.  
  4603.         Z8E - Z80 DEBUG MONITOR                              Rick Surwilo
  4604.  
  4605.  
  4606.         áááááHEX DEFW:
  4607.         áááááThσ content≤ oµ thσ tw∩ byte≤ oµ memor∙ startinτ a⌠ thσ ì
  4608.         áááááloactioε oµ thσ curren⌠ disassembl∙ addres≤ arσá outpu⌠ ì
  4609.         áááááa≤á ßá definσá worΣ directive«á  Thσá bytσá pointeΣá t∩ ì
  4610.         ááááádirectl∙ b∙ thσ curren⌠ disassembl∙ addres≤ become≤ thσ ì
  4611.         ááááálo≈ orde≥ bytσ oµ thσ operand«  Thσ bytσ a⌠ disassembl∙ ì
  4612.         áááááaddres≤ plu≤ onσ become≤ thσ higΦ orde≥ byte.
  4613.  
  4614.         ááá  NOTE:
  4615.         ááááááááááááIµá Z8E haΣ jus⌠ disassembleΣá ßá multi-ì
  4616.         áááááááááááábytσá Z8░á instructioε anΣ thσ use≥á en-ì
  4617.         áááááááááááátereΣ an∙ oµ thσ character≤ listeΣ abovσ ì
  4618.         áááááááááááá(A¼á B¼ C¼ o≥ D⌐ onl∙ thσ firs⌠ byte¼ o≥ ì
  4619.         ááááááááááááfirs⌠á tw∩ fo≥ "D"¼á oµ thσá instructioε ì
  4620.         ááááááááááááwoulΣá bσá converteΣá t∩á thσá requesteΣ ì
  4621.         ááááááááááááformat«á  Thσá remaininτá byte≤á oµá thσ ì
  4622.         ááááááááááááinstructioεá woulΣ bσ treateΣ a≤á ßá ne≈ ì
  4623.         ááááááááááááZ8░á instructioε oncσ thσ use≥ proceedeΣ ì
  4624.         áááááááááááát∩ thσ nex⌠ disassembl∙ address« 
  4625.  
  4626.         áááááADDING COMMENTS
  4627.         áááááZ8┼á allow≤á thσá use≥ t∩ adΣ onσ commen⌠ pe≥á linσá oµ ì
  4628.         ááááádisassembleΣ code«  Iµ MAXLE╬ i≤ se⌠ t∩ ╢ theε comment≤ ì
  4629.         áááááma∙ bσ u≡ t∩ 2╣ character≤ iε length«á Iµ MAXLE╬ i≤ se⌠ ì
  4630.         ááááát∩á 1┤á theεá comment≤ ma∙ bσ u≡ t∩á 1╢á character≤á iε ì
  4631.         ááááálength.
  4632.  
  4633.  
  4634.         Iµá durinτá disassembly¼á Z8Eá encounter≤ datßá whicΦá canno⌠á bσ ì
  4635.         disassembleΣá int∩á ß valiΣ Z8░ instructioε i⌠ wil∞á displa∙á thσ ì
  4636.         data as DEFB's.
  4637.  
  4638.  
  4639.  
  4640.  
  4641.  
  4642.  
  4643.  
  4644.  
  4645. è
  4646.  
  4647.  
  4648.  
  4649.  
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.  
  4659.  
  4660.  
  4661.  
  4662.                                        70
  4663.  
  4664.  
  4665.  
  4666.  
  4667.  
  4668.                                    APPENDIX A
  4669.  
  4670.  
  4671.  
  4672.  
  4673.  
  4674.  
  4675.  
  4676.  
  4677.  
  4678.         FILE FORMAT FOR SYMBOL TABLES
  4679.  
  4680.         Z8┼á i≤á currentl∙ se⌠ u≡ t∩ bσ ablσ t∩ reaΣ an∙ oµá thσá listinτ ì
  4681.         file≤  whicΦ appea≥ below:
  4682.  
  4683.             1. Microsoft   MACRO-80    V3.37  .PRN Files  May 8, 1980
  4684.             2. Microsoft   MACRO-80    V3.44  .PRN Files  Dec 9, 1981
  4685.             3. Microsoft   LINK-80     V3.44  .SYM Files  Dec 9, 1981 
  4686.             4. SLR Systems Z80ASM      V1.07  .LST Files
  4687.         áááá5. SLR Systems SLRNK       V1.07  .SYM Filesáááááá 
  4688.  
  4689.         The unique characteristics of each are:
  4690.  
  4691.         ááááMACRO-80 V3.37
  4692.  
  4693.         ááááZ8┼á searche≤á fo≥á thσ ╕ bytσ strinτ "Symbols:óá iεá thσ ì
  4694.         ááááfile«á  Oncσ thi≤ strinτ i≤ found¼á Z8┼ expect≤ aεá ASCI╔ ì
  4695.         áááácarriagσá returε characte≥ anΣ aε ASCI╔ linσ feeΣ charac-ì
  4696.         ááááte≥á t∩ bσ thσ  nex⌠ tw∩ byte≤ iε thσ file«á  Thσá symbo∞ ì
  4697.         áááátablσ listinτ shoulΣ begiε iε thσ nex⌠ characte≥ positioε ì
  4698.         ááááiε thσ file.
  4699. è        ááááEacΦá linσá oµá thσ symbo∞ tablσá listinτá contain≤á fou≥ ì
  4700.         áááásymbo∞ name≤ anΣ aε associateΣ address«  
  4701.  
  4702.         ááááIµá thσ characte≥ followinτ thσ symbol'≤ he° valuσ i≤á aε ì
  4703.         ááááapostophe¼á thσá symbo∞ i≤ considereΣ t∩ bσ prograφ rela-ì
  4704.         áááátive«á Iµá thσ use≥ specifieΣ ß bia≤ iε thσ commanΣá linσ ì
  4705.         ááááthσ bia≤ wil∞ bσ addeΣ t∩ thσ symbol'≤ value.
  4706.  
  4707.         ááááIµá thσ characte≥ followinτ thσ symbol'≤ he° valuσ i≤á aε ì
  4708.         áááá"Ióá (meaninτá tha⌠ thσ symbo∞ i≤ globall∙ defined⌐á theε ì
  4709.         ááááthσá characte≥ followinτ thσ "Ió i≤á examined«á  Iµá thi≤ ì
  4710.         áááácharacte≥ i≤ aε apostrophσ i⌠ i≤ considereΣ t∩ bσ prograφ ì
  4711.         áááárelativσá anΣá thσá bias¼á iµ specifieΣ i≤ addeΣá t∩á thσ ì
  4712.         áááávalue.
  4713.  
  4714.         ááááIµá thσ characte≥ followinτ thσ he° symbo∞ valuσá o≥á thσ ì
  4715.         áááá"Ió i≤ an∙ characte≥ beside≤ aε apostrophe¼ thσ symbo∞ i≤ ì
  4716.         ááááconsidereΣ absolutσ anΣ thσ bia≤ wil∞ no⌠ bσ added.
  4717.  
  4718.         ááááThσá filσ shoulΣ bσ terminateΣ witΦ thσ CP/═á end-of-filσ ì
  4719.         áááácharacte≥ (contro∞ ┌ whicΦ i≤ equivalen⌠ t∩ ß he° 1A).
  4720.  
  4721.         ááááIµá thσ strinτ "Symbolsó i≤ neve≥ found¼á Z8┼ print≤á thσ ì
  4722.         áááámessage║  Symbo∞ Tablσ no⌠ Found
  4723.  
  4724.  
  4725.  
  4726.  
  4727.                                        71
  4728.  
  4729.  
  4730.  
  4731.  
  4732.  
  4733.                                    APPENDIX A
  4734.  
  4735.  
  4736.         ááááMACRO-8░  V3.44
  4737.  
  4738.         ááááZ8┼á searche≤á fo≥á thσ ╕ bytσ strinτ "Symbols:óá iεá thσ ì
  4739.         ááááfile«á  Oncσ thi≤ strinτ i≤ found¼á Z8┼ expect≤ aεá ASCI╔ ì
  4740.         áááácarriagσá returε characte≥ anΣ aε ASCI╔ linσ feeΣ charac-ì
  4741.         ááááte≥á t∩ bσ thσ  nex⌠ tw∩ byte≤ iε thσ file«á  Thσá symbo∞ ì
  4742.         áááátablσ listinτ shoulΣ begiε iε thσ nex⌠ characte≥ positioε ì
  4743.         ááááiε thσ file.
  4744.  
  4745.         ááááIεá thi≤á releasσ oµ MACRO-8░ thσ forma⌠á oµá thσá symbo∞ ì
  4746.         áááátablσ i≤ completel∙ oppositσ oµ V3.37«á  Tha⌠ is¼ thσ he° ì
  4747.         áááávaluσ appear≤ beforσ thσ symbo∞ name«á Iε addition¼ thesσ ì
  4748.         ááááhe° value/symbo∞ namσ combinatioε appea≥ threσ pe≥ line.
  4749.  
  4750.         ááááThσá characte≥á appearinτ afte≥ thσ he° valuσá i≤á inter-ì
  4751.         áááápreteΣ a≤ describeΣ fo≥ versioε 3.37«   
  4752.  
  4753.         ááááIµá thσ strinτ "Symbolsó i≤ neve≥ found¼á Z8┼ print≤á thσ ìè        áááámessage║  Symbo∞ Tablσ no⌠ Found
  4754.  
  4755.         áááá
  4756.         ááááLINK-80  V3.44
  4757.  
  4758.         ááááLINK-8░á caεá optionall∙ producσ ß linδ ma≡á (.SY═á file⌐ ì
  4759.         ááááwhicΦá list≤á al∞á globall∙ defineΣ symbol≤ iµá thσá use≥ ì
  4760.         ááááspecifie≤á thσá "Yó optioε thσá L8░á commanΣá line«á  Z8┼ ì
  4761.         áááátreat≤á al∞ symbol≤ name≤ loadeΣ froφ ß LINK-8░ .SY═ filσ ì
  4762.         ááááa≤ absolutσ (non-relocatable⌐á addresses«á  Nevertheless¼ ì
  4763.         ááááiµá thσ use≥ specifie≤ ß bias¼á i⌠ wil∞ bσ addeΣ t∩ ever∙ ì
  4764.         áááásymbo∞ valuσ reaΣ iε froφ thσ .SY═ file.
  4765.  
  4766.         ááááZ8┼á expect≤á thσ firs⌠ symbo∞ valuσ iε ßá .SY═á filσá t∩ ì
  4767.         áááábegiεá iεá thσá firs⌠ bytσ positioε iεá thσá file«á  EacΦ ì
  4768.         áááásymbo∞ valuσ consist≤ oµ fou≥ hexadecima∞ byte≤ iεá ASCI╔ ì
  4769.         ááááfolloweΣá b∙ ß taΓ character«á  Immediatel∙ afte≥ thσ taΓ ì
  4770.         áááácharacte≥ i≤ thσ symbo∞ namσ whicΦ ma∙ bσ betweeε onσ anΣ ì
  4771.         áááási° alphanumeriπ character≤ iε length«á  Thσ symbo∞á namσ ì
  4772.         áááái≤á followeΣá b∙ ß taΓ anΣ thσ sequencσá repeats«á  Ever∙ ì
  4773.         ááááfourtΦá symbo∞ value/symbo∞ namσ pai≥ shoulΣ bσá followeΣ ì
  4774.         ááááb∙ ß carriagσ returε anΣ linσ feed.
  4775.  
  4776.         ááááThσá filσ shoulΣ bσ terminateΣ witΦ thσ CP/═á end-of-filσ ì
  4777.         áááácharacte≥ (contro∞ ┌ whicΦ i≤ equivalen⌠ t∩ ß he° 1A).
  4778.  
  4779.  
  4780.         ááááZ80ASM
  4781.  
  4782.         ááááZ80AS═á ma∙á bσ configureΣ t∩ producσ eithe≥á 8░á o≥á 13▓ ì
  4783.         áááácolumε output.
  4784.  
  4785.         ááááZ8┼ searche≤ fo≥ thσ ╕ bytσ strinτ "Symbo∞ Table:ó iε thσ ì
  4786.         ááááfile«á  Thi≤á strinτ neeΣ no⌠ bσ a⌠ thσ beginninτ oµá thσ ì
  4787.         ááááfile╗á Z8┼ wil∞ scaε thσ entirσ filσ lookinτ fo≥ it« Oncσ ì
  4788.         ááááthi≤á strinτá i≤ found¼á Z8┼ expect≤á aεá ASCI╔á carriagσ ì
  4789.         ááááreturεá characte≥ anΣ aε ASCI╔ linσ feeΣ characte≥ t∩á bσ ì
  4790.  
  4791.  
  4792.                                        72
  4793.  
  4794.  
  4795.  
  4796.  
  4797.  
  4798.                                    APPENDIX A
  4799.  
  4800.  
  4801.         ááááthσ  nex⌠ tw∩ byte≤ iε thσ file«á  Thσ symbo∞ tablσ list-ì
  4802.         ááááinτá shoulΣá begiε iε thσ nex⌠ characte≥ positioε iεá thσ ì
  4803.         ááááfile.
  4804.  
  4805.         ááááIεá ß Z80AS═ .LS╘ filσ thσ he° valuσ appear≤á beforσá thσ ì
  4806.         áááásymbo∞á name«á He° value/symbo∞ namσ combination≤á appea≥ ì
  4807.         ááááthreσ pe≥ line«á Z80AS═ symbo∞ name≤ ma∙ contaiε u≡ t∩ 1╢ ìè        áááácharacters«  Z8┼ wil∞ accep⌠ thσ firs⌠ 1┤ character≤ oµ ß ì
  4808.         áááásymbo∞ namσ iµ MAXLE╬ i≤ se⌠ t∩ 1┤ o≥ thσ firs⌠ ╢ charac-ì
  4809.         ááááter≤ iµ MAXLE╬ i≤ se⌠ t∩ 6«   
  4810.  
  4811.         ááááIµ thσ strinτ "Symbo∞ Table:ó i≤ neve≥ found¼á Z8┼ print≤ ì
  4812.         ááááthσ message║  
  4813.  
  4814.                              Symbo∞ Tablσ No⌠ Found
  4815.  
  4816.         ááááSLRNK
  4817.  
  4818.         ááááSLRN╦á caεá optionall∙á producσ ß linδá ma≡á (.SY═á File⌐ ì
  4819.         áááásimila≥á t∩ thσ onσ produceΣ b∙ Link-80«á Z8┼ treat≤á al∞ ì
  4820.         áááásymbol≤á loadeΣ froφ ß SLRN╦ .SY═ filσ a≤á absolutσá sym-ì
  4821.         áááábols«  However¼ a≤ iε thσ casσ oµ Link-8░ .SY═ files¼ Z8┼ ì
  4822.         ááááwil∞á adΣá ßá relocatioε bia≤ t∩ eacΦ symbo∞á iµá onσá i≤ ì
  4823.         ááááspecified.
  4824.  
  4825.         ááááEacΦá symbo∞ valuσ iε ß SLRN╦ .SY═ filσ consist≤ oµá fou≥ ì
  4826.         ááááhexadecima∞á byte≤á followeΣ b∙ ß spacσ followeΣá b∙á thσ ì
  4827.         áááásymbo∞á name«á  Thσ symbo∞ namσ i≤ followeΣ b∙ tw∩á ASCI╔ ì
  4828.         áááátaΓ characters«á  
  4829.  
  4830.         ááááUse SLRNK's /M option to produce a link map.
  4831.  
  4832.  
  4833.         NOTE:
  4834.  
  4835.         ááááWhilσ readinτ iε ß MACRO-8░ .PR╬ file¼á o≥ ß Z80AS═á .LS╘ ì
  4836.         ááááfile¼á Z8┼ i≤ capablσ oµ readinτ aε entirσ assembl∙ list-ì
  4837.         ááááinτá filσá lookinτ fo≥ thσ "Symbols:ó strinτá o≥á "Symbo∞ ì
  4838.         ááááTable:ó string«á Thesσ string≤ neeΣ no⌠ bσ locateΣ a⌠ thσ ì
  4839.         áááábeginninτá oµá thσ file«á  However¼á thσ loadinτá oµá thσ ì
  4840.         áááásymbo∞á tablσá wil∞á bσ speedeΣ u≡á considerabl∙á iµá thσ ì
  4841.         áááásymbo∞á tablσá i≤á thσ onl∙ datß iε thσá file«á  Thi≤á i≤ ì
  4842.         ááááaccomplisheΣ quitσ easil∙ iε botΦ MACRO-8░ b∙ turninτ ofµ ì
  4843.         ááááthσá listinτá durinτ aε assembl∙ througΦ thσ usσá oµá thσ ì
  4844.         áááá.XLIS╘ directive«  Thσ listinτ caε theε bσ turneΣ bacδ oε ì
  4845.         áááájus⌠ prio≥ t∩ thσ EN─ directivσ viß ß .LIS╘ directivσá t∩ ì
  4846.         ááááensurσ tha⌠ thσ symbo∞ tablσ i≤ writteε t∩ disk.
  4847.  
  4848.         ááááIµá yo⌡á arσ usinτ Z80AS═ usσ thσ /╙ optioεá t∩á instruc⌠ ì
  4849.         ááááZ80AS═ t∩ producσ ß symbo∞ file.
  4850.  
  4851.  
  4852.  
  4853.         Z8┼á i≤ ablσ t∩ proces≤ symbo∞ table≤ whicΦ occup∙ multiplσ page≤ ì
  4854.         iε an∙ oµ thσ filσ type≤ mentioneΣ above«  Heading≤ whicΦ precedσ ì
  4855.  
  4856.  
  4857.                                        73
  4858.  
  4859.  
  4860.  
  4861. è
  4862.                                    APPENDIX A
  4863.  
  4864.  
  4865.         eacΦ pagσ arσ automaticall∙ ignoreΣ b∙ Z8E« 
  4866.  
  4867.  
  4868.  
  4869.  
  4870.  
  4871.  
  4872.  
  4873.  
  4874.  
  4875.  
  4876.  
  4877.  
  4878.  
  4879.  
  4880.  
  4881.  
  4882.  
  4883.  
  4884.  
  4885.  
  4886.  
  4887.  
  4888.  
  4889.  
  4890.  
  4891.  
  4892.  
  4893.  
  4894.  
  4895.  
  4896.  
  4897.  
  4898.  
  4899.  
  4900.  
  4901.  
  4902.  
  4903.  
  4904.  
  4905.  
  4906.  
  4907.  
  4908.  
  4909.  
  4910.  
  4911.  
  4912.  
  4913.  
  4914.  
  4915. è
  4916.  
  4917.  
  4918.  
  4919.  
  4920.  
  4921.  
  4922.  
  4923.  
  4924.  
  4925.  
  4926.  
  4927.                       APPENDIX B - ZILOG MNEMONICS       
  4928.  
  4929.  
  4930.                                 
  4931.                                 
  4932.           0049                  NN     EQU   49H       ;8 BIT OPERAND
  4933.           123F                  NNNN   EQU   123FH     ;16 BIT   OPERAND
  4934.           0036                  INDEX  EQU   36H       ;INDEX REGISTER INDEX
  4935.  
  4936.           010B    8E                   ADC   A,(HL)
  4937.           010C    DD 8E 36             ADC   A,(IX+INDEX)
  4938.           010F    FD 8E 36             ADC   A,(IY+INDEX)
  4939.           0112    8F                   ADC   A,A
  4940.           0113    88                   ADC   A,B
  4941.           0114    89                   ADC   A,C
  4942.           0115    8A                   ADC   A,D
  4943.           0116    8B                   ADC   A,E
  4944.           0117    8C                   ADC   A,H
  4945.           0118    8D                   ADC   A,L
  4946.           0119    CE 49                ADC   A,NN
  4947.           011B    ED 4A                ADC   HL,BC
  4948.           011D    ED 5A                ADC   HL,DE
  4949.           011F    ED 6A                ADC   HL,HL
  4950.           0121    ED 7A                ADC   HL,SP
  4951.                                 
  4952.                                 
  4953.           0123    86                   ADD   A,(HL)
  4954.           0124    DD 86 36             ADD   A,(IX+INDEX)
  4955.           0127    FD 86 36             ADD   A,(IY+INDEX)
  4956.           012A    87                   ADD   A,A
  4957.           012B    80                   ADD   A,B
  4958.           012C    81                   ADD   A,C
  4959.           012D    82                   ADD   A,D
  4960.           012E    83                   ADD   A,E
  4961.           012F    84                   ADD   A,H
  4962.           0130    85                   ADD   A,L
  4963.           0131    C6 49                ADD   A,NN
  4964.           0133    09                   ADD   HL,BC
  4965.           0134    19                   ADD   HL,DE
  4966.           0135    29                   ADD   HL,HL
  4967.           0136    39                   ADD   HL,SP
  4968.           0137    DD 09                ADD   IX,BC
  4969.           0139    DD 19                ADD   IX,DEè          013B    DD 29                ADD   IX,IX
  4970.           013D    DD 39                ADD   IX,SP
  4971.           013F    FD 09                ADD   IY,BC
  4972.           0141    FD 19                ADD   IY,DE
  4973.           0143    FD 29                ADD   IY,IY
  4974.           0145    FD 39                ADD   IY,SP
  4975.                                 
  4976.  
  4977.           0147    A6                   AND   (HL)
  4978.           0148    DD A6 36             AND   (IX+INDEX)
  4979.           014B    FD A6 36             AND   (IY+INDEX)
  4980.           014E    A7                   AND   A
  4981.           014F    A0                   AND   B
  4982.           0150    A1                   AND   C
  4983.           0151    A2                   AND   D
  4984.  
  4985.  
  4986.                                        75
  4987.  
  4988.  
  4989.  
  4990.  
  4991.  
  4992.                       APPENDIX B - ZILOG MNEMONICS       
  4993.  
  4994.  
  4995.           0152    A3                   AND   E
  4996.           0153    A4                   AND   H
  4997.           0154    A5                   AND   L
  4998.           0155    E6 49                AND   NN
  4999.                                 
  5000.                                 
  5001.           0157    CB 46                BIT   0,(HL)
  5002.           0159    DD CB 36 46          BIT   0,(IX+INDEX)
  5003.           015D    FD CB 36 46          BIT   0,(IY+INDEX)
  5004.           0161    CB 47                BIT   0,A
  5005.           0163    CB 40                BIT   0,B
  5006.           0165    CB 41                BIT   0,C
  5007.           0167    CB 42                BIT   0,D
  5008.           0169    CB 43                BIT   0,E
  5009.           016B    CB 44                BIT   0,H
  5010.           016D    CB 45                BIT   0,L
  5011.                                 
  5012.                                 
  5013.           016F    CB 4E                BIT   1,(HL)
  5014.           0171    DD CB 36 4E          BIT   1,(IX+INDEX)
  5015.           0175    FD CB 36 4E          BIT   1,(IY+INDEX)
  5016.           0179    CB 4F                BIT   1,A
  5017.           017B    CB 48                BIT   1,B
  5018.           017D    CB 49                BIT   1,C
  5019.           017F    CB 4A                BIT   1,D
  5020.           0181    CB 4B                BIT   1,E
  5021.           0183    CB 4C                BIT   1,H
  5022.           0185    CB 4D                BIT   1,L
  5023.                                 è                                
  5024.           0187    CB 56                BIT   2,(HL)
  5025.           0189    DD CB 36 56          BIT   2,(IX+INDEX)
  5026.           018D    FD CB 36 56          BIT   2,(IY+INDEX)
  5027.           0191    CB 57                BIT   2,A
  5028.           0193    CB 50                BIT   2,B
  5029.           0195    CB 51                BIT   2,C
  5030.           0197    CB 52                BIT   2,D
  5031.           0199    CB 53                BIT   2,E
  5032.           019B    CB 54                BIT   2,H
  5033.           019D    CB 55                BIT   2,L
  5034.                                 
  5035.                                 
  5036.           019F    CB 5E                BIT   3,(HL)
  5037.           01A1    DD CB 36 5E          BIT   3,(IX+INDEX)
  5038.           01A5    FD CB 36 5E          BIT   3,(IY+INDEX)
  5039.           01A9    CB 5F                BIT   3,A
  5040.           01AB    CB 58                BIT   3,B
  5041.           01AD    CB 59                BIT   3,C
  5042.           01AF    CB 5A                BIT   3,D
  5043.           01B1    CB 5B                BIT   3,E
  5044.           01B3    CB 5C                BIT   3,H
  5045.           01B5    CB 5D                BIT   3,L
  5046.                                 
  5047.                                 
  5048.           01B7    CB 66                BIT   4,(HL)
  5049.  
  5050.  
  5051.                                        76
  5052.  
  5053.  
  5054.  
  5055.  
  5056.  
  5057.                       APPENDIX B - ZILOG MNEMONICS       
  5058.  
  5059.  
  5060.           01B9    DD CB 36 66          BIT   4,(IX+INDEX)
  5061.           01BD    FD CB 36 66          BIT   4,(IY+INDEX)
  5062.           01C1    CB 67                BIT   4,A
  5063.           01C3    CB 60                BIT   4,B
  5064.           01C5    CB 61                BIT   4,C
  5065.           01C7    CB 62                BIT   4,D
  5066.           01C9    CB 63                BIT   4,E
  5067.           01CB    CB 64                BIT   4,H
  5068.           01CD    CB 65                BIT   4,L
  5069.                                 
  5070.                                 
  5071.           01CF    CB 6E                BIT   5,(HL)
  5072.           01D1    DD CB 36 6E          BIT   5,(IX+INDEX)
  5073.           01D5    FD CB 36 6E          BIT   5,(IY+INDEX)
  5074.           01D9    CB 6F                BIT   5,A
  5075.           01DB    CB 68                BIT   5,B
  5076.           01DD    CB 69                BIT   5,C
  5077.           01DF    CB 6A                BIT   5,Dè          01E1    CB 6B                BIT   5,E
  5078.           01E3    CB 6C                BIT   5,H
  5079.           01E5    CB 6D                BIT   5,L
  5080.                                 
  5081.                                 
  5082.           01E7    CB 76                BIT   6,(HL)
  5083.           01E9    DD CB 36 76          BIT   6,(IX+INDEX)
  5084.           01ED    FD CB 36 76          BIT   6,(IY+INDEX)
  5085.           01F1    CB 77                BIT   6,A
  5086.           01F3    CB 70                BIT   6,B
  5087.           01F5    CB 71                BIT   6,C
  5088.           01F7    CB 72                BIT   6,D
  5089.           01F9    CB 73                BIT   6,E
  5090.           01FB    CB 74                BIT   6,H
  5091.           01FD    CB 75                BIT   6,L
  5092.                                 
  5093.                                 
  5094.           01FF    CB 7E                BIT   7,(HL)
  5095.           0201    DD CB 36 7E          BIT   7,(IX+INDEX)
  5096.           0205    FD CB 36 7E          BIT   7,(IY+INDEX)
  5097.           0209    CB 7F                BIT   7,A
  5098.           020B    CB 78                BIT   7,B
  5099.           020D    CB 79                BIT   7,C
  5100.           020F    CB 7A                BIT   7,D
  5101.           0211    CB 7B                BIT   7,E
  5102.           0213    CB 7C                BIT   7,H
  5103.           0215    CB 7D                BIT   7,L
  5104.                                 
  5105.                                 
  5106.           0217    DC 123F              CALL   C,NNNN
  5107.           021A    FC 123F              CALL   M,NNNN
  5108.           021D    D4 123F              CALL   NC,NNNN
  5109.           0220    CD 123F              CALL   NNNN
  5110.           0223    C4 123F              CALL   NZ,NNNN
  5111.           0226    F4 123F              CALL   P,NNNN
  5112.           0229    EC 123F              CALL   PE,NNNN
  5113.           022C    E4 123F              CALL   PO,NNNN
  5114.  
  5115.  
  5116.                                        77
  5117.  
  5118.  
  5119.  
  5120.  
  5121.  
  5122.                       APPENDIX B - ZILOG MNEMONICS       
  5123.  
  5124.  
  5125.           022F    CC 123F              CALL   Z,NNNN
  5126.                                 
  5127.                                 
  5128.           0232    3F                   CCF
  5129.                                 
  5130.                                 
  5131.           0233    BE                   CP   (HL)è          0234    DD BE 36             CP   (IX+INDEX)
  5132.           0237    FD BE 36             CP   (IY+INDEX)
  5133.           023A    BF                   CP   A
  5134.           023B    B8                   CP   B
  5135.           023C    B9                   CP   C
  5136.           023D    BA                   CP   D
  5137.           023E    BB                   CP   E
  5138.           023F    BC                   CP   H
  5139.           0240    BD                   CP   L
  5140.           0241    FE 49                CP   NN
  5141.                                 
  5142.                                 
  5143.           0243    ED A9                CPD
  5144.           0245    ED B9                CPDR
  5145.           0247    ED A1                CPI
  5146.           0249    ED B1                CPIR
  5147.                                 
  5148.                                 
  5149.           024B    2F                   CPL
  5150.                                 
  5151.                                 
  5152.           024C    27                   DAA
  5153.                                 
  5154.                                 
  5155.           024D    35                   DEC   (HL)
  5156.           024E    DD 35 36             DEC   (IX+INDEX)
  5157.           0251    FD 35 36             DEC   (IY+INDEX)
  5158.           0254    3D                   DEC   A
  5159.           0255    05                   DEC   B
  5160.           0256    0B                   DEC   BC
  5161.           0257    0D                   DEC   C
  5162.           0258    15                   DEC   D
  5163.           0259    1B                   DEC   DE
  5164.           025A    1D                   DEC   E
  5165.           025B    25                   DEC   H
  5166.           025C    2B                   DEC   HL
  5167.           025D    DD 2B                DEC   IX
  5168.           025F    FD 2B                DEC   IY
  5169.           0261    2D                   DEC   L
  5170.           0262    3B                   DEC   SP
  5171.                                 
  5172.                                 
  5173.           0263    F3                   DI
  5174.                                 
  5175.                                 
  5176.           0264    10 04                DJNZ   $+6
  5177.                                 
  5178.                                 
  5179.  
  5180.  
  5181.                                        78
  5182.  
  5183.  
  5184.  
  5185. è
  5186.                       APPENDIX B - ZILOG MNEMONICS       
  5187.  
  5188.  
  5189.           0266    FB                   EI
  5190.                                 
  5191.                                 
  5192.           0267    E3                   EX   (SP),HL
  5193.           0268    DD E3                EX   (SP),IX
  5194.           026A    FD E3                EX   (SP),IY
  5195.           026C    08                   EX   AF,AF'          
  5196.           026D    EB                   EX   DE,HL
  5197.           026E    D9                   EXX
  5198.                                 
  5199.                                 
  5200.           026F    76                   HALT
  5201.                                 
  5202.                                 
  5203.           0270    ED 46                IM   0
  5204.           0272    ED 56                IM   1
  5205.           0274    ED 5E                IM   2
  5206.                                 
  5207.                                 
  5208.           0276    ED 78                IN   A,(C)
  5209.           0278    DB 49                IN   A,(NN)
  5210.           027A    ED 40                IN   B,(C)
  5211.           027C    ED 48                IN   C,(C)
  5212.           027E    ED 50                IN   D,(C)
  5213.           0280    ED 58                IN   E,(C)
  5214.           0284    ED 60                IN   H,(C)
  5215.           0286    ED 68                IN   L,(C)
  5216.                                 
  5217.                                 
  5218.           0288    34                   INC   (HL)
  5219.           0289    DD 34 36             INC   (IX+INDEX)
  5220.           028C    FD 34 36             INC   (IY+INDEX)
  5221.           028F    3C                   INC   A
  5222.           0290    04                   INC   B
  5223.           0291    03                   INC   BC
  5224.           0292    0C                   INC   C
  5225.           0293    14                   INC   D
  5226.           0294    13                   INC   DE
  5227.           0295    1C                   INC   E
  5228.           0296    24                   INC   H
  5229.           0297    23                   INC   HL
  5230.           0298    DD 23                INC   IX
  5231.           029A    FD 23                INC   IY
  5232.           029C    2C                   INC   L
  5233.           029D    33                   INC   SP
  5234.                                 
  5235.                                 
  5236.           029E    ED AA                IND
  5237.           02A0    ED BA                INDR
  5238.           02A2    ED A2                INI
  5239.           02A4    ED B2                INIRè
  5240.  
  5241.           02A6    E9                   JP   (HL)
  5242.           02A7    DD E9                JP   (IX)
  5243.  
  5244.  
  5245.                                        79
  5246.  
  5247.  
  5248.  
  5249.  
  5250.  
  5251.                       APPENDIX B - ZILOG MNEMONICS       
  5252.  
  5253.  
  5254.           02A9    FD E9                JP   (IY)
  5255.           02AB    DA 123F              JP   C,NNNN
  5256.           02AE    FA 123F              JP   M,NNNN
  5257.           02B1    D2 123F              JP   NC,NNNN
  5258.           02B4    C3 123F              JP   NNNN
  5259.           02B7    C2 123F              JP   NZ,NNNN
  5260.           02BA    F2 123F              JP   P,NNNN
  5261.           02BD    EA 123F              JP   PE,NNNN
  5262.           02C0    E2 123F              JP   PO,NNNN
  5263.           02C3    CA 123F              JP   Z,NNNN
  5264.                                 
  5265.                                 
  5266.           02C6    38 04                JR   C,$+6
  5267.           02C8    18 04                JR   $+6
  5268.           02CA    30 04                JR   NC,$+6
  5269.           02CC    20 04                JR   NZ,$+6
  5270.           02CE    28 04                JR   Z,$+6
  5271.                                 
  5272.                                 
  5273.           02D0    02                   LD   (BC),A
  5274.           02D1    12                   LD   (DE),A
  5275.           02D2    77                   LD   (HL),A
  5276.           02D3    70                   LD   (HL),B
  5277.           02D4    71                   LD   (HL),C
  5278.           02D5    72                   LD   (HL),D
  5279.           02D6    73                   LD   (HL),E
  5280.           02D7    74                   LD   (HL),H
  5281.           02D8    75                   LD   (HL),L
  5282.           02D9    36 49                LD   (HL),NN
  5283.                                 
  5284.                                 
  5285.           02DB    DD 77 36             LD   (IX+INDEX),A
  5286.           02DE    DD 70 36             LD   (IX+INDEX),B
  5287.           02E1    DD 71 36             LD   (IX+INDEX),C
  5288.           02E4    DD 72 36             LD   (IX+INDEX),D
  5289.           02E7    DD 73 36             LD   (IX+INDEX),E
  5290.           02EA    DD 74 36             LD   (IX+INDEX),H
  5291.           02ED    DD 75 36             LD   (IX+INDEX),L
  5292.           02F0    DD 36 36 49          LD   (IX+INDEX),NN
  5293.                                 è                                
  5294.           02F4    FD 77 36             LD   (IY+INDEX),A
  5295.           02F7    FD 70 36             LD   (IY+INDEX),B
  5296.           02FA    FD 71 36             LD   (IY+INDEX),C
  5297.           02FD    FD 72 36             LD   (IY+INDEX),D
  5298.           0300    FD 73 36             LD   (IY+INDEX),E
  5299.           0303    FD 74 36             LD   (IY+INDEX),H
  5300.           0306    FD 75 36             LD   (IY+INDEX),L
  5301.           0309    FD 36 36 49          LD   (IY+INDEX),NN
  5302.                                 
  5303.                                 
  5304.           030D    32 123F              LD   (NNNN),A
  5305.           0310    ED 43 123F           LD   (NNNN),BC
  5306.           0314    ED 53 123F           LD   (NNNN),DE
  5307.           0318    22 123F              LD   (NNNN),HL
  5308.  
  5309.  
  5310.                                        80
  5311.  
  5312.  
  5313.  
  5314.  
  5315.  
  5316.                       APPENDIX B - ZILOG MNEMONICS       
  5317.  
  5318.  
  5319.           031B    DD 22 123F           LD   (NNNN),IX
  5320.           031F    FD 22 123F           LD   (NNNN),IY
  5321.           0323    ED 73 123F           LD   (NNNN),SP
  5322.                                 
  5323.                                 
  5324.           0327    0A                   LD   A,(BC)
  5325.           0328    1A                   LD   A,(DE)
  5326.           0329    7E                   LD   A,(HL)
  5327.           032A    DD 7E 36             LD   A,(IX+INDEX)
  5328.           032D    FD 7E 36             LD   A,(IY+INDEX)
  5329.           0330    3A 123F              LD   A,(NNNN)
  5330.           0333    7F                   LD   A,A
  5331.           0334    78                   LD   A,B
  5332.           0335    79                   LD   A,C
  5333.           0336    7A                   LD   A,D
  5334.           0337    7B                   LD   A,E
  5335.           0338    7C                   LD   A,H
  5336.           0339    ED 57                LD   A,I
  5337.           033B    7D                   LD   A,L
  5338.           033C    3E 49                LD   A,NN
  5339.           033E    ED 5F                LD   A,R
  5340.                                 
  5341.                                 
  5342.           0340    46                   LD   B,(HL)
  5343.           0341    DD 46 36             LD   B,(IX+INDEX)
  5344.           0344    FD 46 36             LD   B,(IY+INDEX)
  5345.           0347    47                   LD   B,A
  5346.           0348    40                   LD   B,B
  5347.           0349    41                   LD   B,Cè          034A    42                   LD   B,D
  5348.           034B    43                   LD   B,E
  5349.           034C    44                   LD   B,H
  5350.           034D    45                   LD   B,L
  5351.           034E    06 49                LD   B,NN
  5352.                                 
  5353.                                 
  5354.           0350    ED 4B 123F           LD   BC,(NNNN)
  5355.           0354    01 123F              LD   BC,NNNN
  5356.                                 
  5357.                                 
  5358.           0357    4E                   LD   C,(HL)
  5359.           0358    DD 4E 36             LD   C,(IX+INDEX)
  5360.           035B    FD 4E 36             LD   C,(IY+INDEX)
  5361.           035E    4F                   LD   C,A
  5362.           035F    48                   LD   C,B
  5363.           0360    49                   LD   C,C
  5364.           0361    4A                   LD   C,D
  5365.           0362    4B                   LD   C,E
  5366.           0363    4C                   LD   C,H
  5367.           0364    4D                   LD   C,L
  5368.           0365    0E 49                LD   C,NN
  5369.                                 
  5370.  
  5371.  
  5372.           0367    56                   LD   D,(HL)
  5373.  
  5374.  
  5375.                                        81
  5376.  
  5377.  
  5378.  
  5379.  
  5380.  
  5381.                       APPENDIX B - ZILOG MNEMONICS       
  5382.  
  5383.  
  5384.           0368    DD 56 36             LD   D,(IX+INDEX)
  5385.           036B    FD 56 36             LD   D,(IY+INDEX)
  5386.           036E    57                   LD   D,A
  5387.           036F    50                   LD   D,B
  5388.           0370    51                   LD   D,C
  5389.           0371    52                   LD   D,D
  5390.           0372    53                   LD   D,E
  5391.           0373    54                   LD   D,H
  5392.           0374    55                   LD   D,L
  5393.           0375    16 49                LD   D,NN
  5394.                                 
  5395.                                 
  5396.           0377    ED 5B 123F           LD   DE,(NNNN)
  5397.           037B    11 123F              LD   DE,NNNN
  5398.                                 
  5399.                                 
  5400.           037E    5E                   LD   E,(HL)
  5401.           037F    DD 5E 36             LD   E,(IX+INDEX)è          0382    FD 5E 36             LD   E,(IY+INDEX)
  5402.           0385    5F                   LD   E,A
  5403.           0386    58                   LD   E,B
  5404.           0387    59                   LD   E,C
  5405.           0388    5A                   LD   E,D
  5406.           0389    5B                   LD   E,E
  5407.           038A    5C                   LD   E,H
  5408.           038B    5D                   LD   E,L
  5409.           038C    1E 49                LD   E,NN
  5410.                                 
  5411.                                 
  5412.           038E    66                   LD   H,(HL)
  5413.           038F    DD 66 36             LD   H,(IX+INDEX)
  5414.           0392    FD 66 36             LD   H,(IY+INDEX)
  5415.           0395    67                   LD   H,A
  5416.           0396    60                   LD   H,B
  5417.           0397    61                   LD   H,C
  5418.           0398    62                   LD   H,D
  5419.           0399    63                   LD   H,E
  5420.           039A    64                   LD   H,H
  5421.           039B    65                   LD   H,L
  5422.           039C    26 49                LD   H,NN
  5423.                                 
  5424.                                 
  5425.           039E    2A 123F              LD   HL,(NNNN)
  5426.           03A1    21 123F              LD   HL,NNNN
  5427.                                 
  5428.                                 
  5429.           03A4    ED 47                LD   I,A
  5430.                                 
  5431.                                 
  5432.           03A6    DD 2A 123F           LD   IX,(NNNN)
  5433.           03AA    DD 21 123F           LD   IX,NNNN
  5434.                                 
  5435.                                 
  5436.           03AE    FD 2A 123F           LD   IY,(NNNN)
  5437.           03B2    FD 21 123F           LD   IY,NNNN
  5438.  
  5439.  
  5440.                                        82
  5441.  
  5442.  
  5443.  
  5444.  
  5445.  
  5446.                       APPENDIX B - ZILOG MNEMONICS       
  5447.  
  5448.  
  5449.  
  5450.  
  5451.  
  5452.           03B6    6E                   LD   L,(HL)
  5453.           03B7    DD 6E 36             LD   L,(IX+INDEX)
  5454.           03BA    FD 6E 36             LD   L,(IY+INDEX)
  5455.           03BD    6F                   LD   L,Aè          03BE    68                   LD   L,B
  5456.           03BF    69                   LD   L,C
  5457.           03C0    6A                   LD   L,D
  5458.           03C1    6B                   LD   L,E
  5459.           03C2    6C                   LD   L,H
  5460.           03C3    6D                   LD   L,L
  5461.           03C4    2E 49                LD   L,NN
  5462.                                 
  5463.                                 
  5464.           03C6    ED 4F                LD   R,A
  5465.                                 
  5466.                                 
  5467.           03C8    ED 7B 123F           LD   SP,(NNNN)
  5468.           03CC    F9                   LD   SP,HL
  5469.           03CD    DD F9                LD   SP,IX
  5470.           03CF    FD F9                LD   SP,IY
  5471.           03D1    31 123F              LD   SP,NNNN
  5472.                                 
  5473.                                 
  5474.           03D4    ED A8                LDD
  5475.           03D6    ED B8                LDDR
  5476.           03D8    ED A0                LDI
  5477.           03DA    ED B0                LDIR
  5478.                                 
  5479.                                 
  5480.           03DC    ED 44                NEG
  5481.                                 
  5482.                                 
  5483.           03DE    00                   NOP
  5484.                                 
  5485.                                 
  5486.           03DF    B6                   OR   (HL)
  5487.           03E0    DD B6 36             OR   (IX+INDEX)
  5488.           03E3    FD B6 36             OR   (IY+INDEX)
  5489.           03E6    B7                   OR   A
  5490.           03E7    B0                   OR   B
  5491.           03E8    B1                   OR   C
  5492.           03E9    B2                   OR   D
  5493.           03EA    B3                   OR   E
  5494.           03EB    B4                   OR   H
  5495.           03EC    B5                   OR   L
  5496.           03ED    F6 49                OR   NN
  5497.                                 
  5498.                                 
  5499.           03EF    ED BB                OTDR
  5500.           03F1    ED B3                OTIR
  5501.                                 
  5502.                                 
  5503.  
  5504.  
  5505.                                        83
  5506.  
  5507.  
  5508.  
  5509. è
  5510.                       APPENDIX B - ZILOG MNEMONICS       
  5511.  
  5512.  
  5513.           03F3    ED 79                OUT   (C),A
  5514.           03F5    ED 41                OUT   (C),B
  5515.  
  5516.  
  5517.  
  5518.           03F7    ED 49                OUT   (C),C
  5519.           03F9    ED 51                OUT   (C),D
  5520.           03FB    ED 59                OUT   (C),E
  5521.           03FD    ED 61                OUT   (C),H
  5522.           03FF    ED 69                OUT   (C),L
  5523.           0401    D3 49                OUT   (NN),A
  5524.                                 
  5525.                                 
  5526.           0403    ED AB                OUTD
  5527.           0405    ED A3                OUTI
  5528.                                 
  5529.                                 
  5530.           0407    F1                   POP   AF
  5531.           0408    C1                   POP   BC
  5532.           0409    D1                   POP   DE
  5533.           040A    E1                   POP   HL
  5534.           040B    DD E1                POP   IX
  5535.           040D    FD E1                POP   IY
  5536.                                 
  5537.                                 
  5538.           040F    F5                   PUSH   AF
  5539.           0410    C5                   PUSH   BC
  5540.           0411    D5                   PUSH   DE
  5541.           0412    E5                   PUSH   HL
  5542.           0413    DD E5                PUSH   IX
  5543.           0415    FD E5                PUSH   IY
  5544.                                 
  5545.                                 
  5546.           0417    CB 86                RES   0,(HL)
  5547.           0419    DD CB 36 86          RES   0,(IX+INDEX)
  5548.           041D    FD CB 36 86          RES   0,(IY+INDEX)
  5549.           0421    CB 87                RES   0,A
  5550.           0423    CB 80                RES   0,B
  5551.           0425    CB 81                RES   0,C
  5552.           0427    CB 82                RES   0,D
  5553.           0429    CB 83                RES   0,E
  5554.           042B    CB 84                RES   0,H
  5555.           042D    CB 85                RES   0,L
  5556.                                 
  5557.                                 
  5558.           042F    CB 8E                RES   1,(HL)
  5559.           0431    DD CB 36 8E          RES   1,(IX+INDEX)
  5560.           0435    FD CB 36 8E          RES   1,(IY+INDEX)
  5561.           0439    CB 8F                RES   1,A
  5562.           043B    CB 88                RES   1,B
  5563.           043D    CB 89                RES   1,Cè          043F    CB 8A                RES   1,D
  5564.           0441    CB 8B                RES   1,E
  5565.           0443    CB 8C                RES   1,H
  5566.           0445    CB 8D                RES   1,L
  5567.  
  5568.  
  5569.                                        84
  5570.  
  5571.  
  5572.  
  5573.  
  5574.  
  5575.                       APPENDIX B - ZILOG MNEMONICS       
  5576.  
  5577.  
  5578.                                 
  5579.                                 
  5580.           0447    CB 96                RES   2,(HL)
  5581.           0449    DD CB 36 96          RES   2,(IX+INDEX)
  5582.           044D    FD CB 36 96          RES   2,(IY+INDEX)
  5583.           0451    CB 97                RES   2,A
  5584.           0453    CB 90                RES   2,B
  5585.           0455    CB 91                RES   2,C
  5586.           0457    CB 92                RES   2,D
  5587.           0459    CB 93                RES   2,E
  5588.           045B    CB 94                RES   2,H
  5589.           045D    CB 95                RES   2,L
  5590.                                 
  5591.                                 
  5592.           045F    CB 9E                RES   3,(HL)
  5593.           0461    DD CB 36 9E          RES   3,(IX+INDEX)
  5594.           0465    FD CB 36 9E          RES   3,(IY+INDEX)
  5595.           0469    CB 9F                RES   3,A
  5596.           046B    CB 98                RES   3,B
  5597.           046D    CB 99                RES   3,C
  5598.           046F    CB 9A                RES   3,D
  5599.           0471    CB 9B                RES   3,E
  5600.           0473    CB 9C                RES   3,H
  5601.           0475    CB 9D                RES   3,L
  5602.                                 
  5603.                                 
  5604.           0477    CB A6                RES   4,(HL)
  5605.           0479    DD CB 36 A6          RES   4,(IX+INDEX)
  5606.           047D    FD CB 36 A6          RES   4,(IY+INDEX)
  5607.           0481    CB A7                RES   4,A
  5608.           0483    CB A0                RES   4,B
  5609.           0485    CB A1                RES   4,C
  5610.           0487    CB A2                RES   4,D
  5611.           0489    CB A3                RES   4,E
  5612.           048B    CB A4                RES   4,H
  5613.           048D    CB A5                RES   4,L
  5614.                                 
  5615.                                 
  5616.           048F    CB AE                RES   5,(HL)
  5617.           0491    DD CB 36 AE          RES   5,(IX+INDEX)è          0495    FD CB 36 AE          RES   5,(IY+INDEX)
  5618.           0499    CB AF                RES   5,A
  5619.           049B    CB A8                RES   5,B
  5620.           049D    CB A9                RES   5,C
  5621.           049F    CB AA                RES   5,D
  5622.           04A1    CB AB                RES   5,E
  5623.           04A3    CB AC                RES   5,H
  5624.           04A5    CB AD                RES   5,L
  5625.                                 
  5626.                                 
  5627.           04A7    CB B6                RES   6,(HL)
  5628.           04A9    DD CB 36 B6          RES   6,(IX+INDEX)
  5629.           04AD    FD CB 36 B6          RES   6,(IY+INDEX)
  5630.           04B1    CB B7                RES   6,A
  5631.           04B3    CB B0                RES   6,B
  5632.  
  5633.  
  5634.                                        85
  5635.  
  5636.  
  5637.  
  5638.  
  5639.  
  5640.                       APPENDIX B - ZILOG MNEMONICS       
  5641.  
  5642.  
  5643.           04B5    CB B1                RES   6,C
  5644.           04B7    CB B2                RES   6,D
  5645.           04B9    CB B3                RES   6,E
  5646.           04BB    CB B4                RES   6,H
  5647.           04BD    CB B5                RES   6,L
  5648.                                 
  5649.                                 
  5650.  
  5651.           04BF    CB BE                RES   7,(HL)
  5652.           04C1    DD CB 36 BE          RES   7,(IX+INDEX)
  5653.           04C5    FD CB 36 BE          RES   7,(IY+INDEX)
  5654.           04C9    CB BF                RES   7,A
  5655.           04CB    CB B8                RES   7,B
  5656.           04CD    CB B9                RES   7,C
  5657.           04CF    CB BA                RES   7,D
  5658.           04D1    CB BB                RES   7,E
  5659.           04D3    CB BC                RES   7,H
  5660.           04D5    CB BD                RES   7,L 
  5661.                                 
  5662.                                 
  5663.           04D7    C9                   RET
  5664.           04D8    D8                   RET   C
  5665.           04D9    F8                   RET   M
  5666.           04DA    D0                   RET   NC
  5667.           04DB    C0                   RET   NZ
  5668.           04DC    F0                   RET   P
  5669.           04DD    E8                   RET   PE
  5670.           04DE    E0                   RET   PO
  5671.           04DF    C8                   RET   Zè                                
  5672.                                 
  5673.           04E0    ED 4D                RETI
  5674.           04E2    ED 45                RETN
  5675.                                 
  5676.                                 
  5677.           04E4    CB 16                RL   (HL)
  5678.           04E6    DD CB 36 16          RL   (IX+INDEX)
  5679.           04EA    FD CB 36 16          RL   (IY+INDEX)
  5680.           04EE    CB 17                RL   A
  5681.           04F0    CB 10                RL   B
  5682.           04F2    CB 11                RL   C
  5683.           04F4    CB 12                RL   D
  5684.           04F6    CB 13                RL   E
  5685.           04F8    CB 14                RL   H
  5686.           04FA    CB 15                RL   L
  5687.                                 
  5688.                                 
  5689.           04FC    17                   RLA
  5690.                                 
  5691.                                 
  5692.           04FD    CB 06                RLC   (HL)
  5693.           04FF    DD CB 36 06          RLC   (IX+INDEX)
  5694.           0503    FD CB 36 06          RLC   (IY+INDEX)
  5695.           0507    CB 07                RLC   A
  5696.           0509    CB 00                RLC   B
  5697.  
  5698.  
  5699.                                        86
  5700.  
  5701.  
  5702.  
  5703.  
  5704.  
  5705.                       APPENDIX B - ZILOG MNEMONICS       
  5706.  
  5707.  
  5708.           050B    CB 01                RLC   C
  5709.           050D    CB 02                RLC   D
  5710.           050F    CB 03                RLC   E
  5711.           0511    CB 04                RLC   H
  5712.           0513    CB 05                RLC   L
  5713.                                 
  5714.                                 
  5715.           0515    07                   RLCA
  5716.                                 
  5717.  
  5718.           0516    ED 6F                RLD
  5719.                                 
  5720.                                 
  5721.           0518    CB 1E                RR   (HL)
  5722.           051A    DD CB 36 1E          RR   (IX+INDEX)
  5723.           051E    FD CB 36 1E          RR   (IY+INDEX)
  5724.           0522    CB 1F                RR   A
  5725.           0524    CB 18                RR   Bè          0526    CB 19                RR   C
  5726.           0528    CB 1A                RR   D
  5727.           052A    CB 1B                RR   E
  5728.           052C    CB 1C                RR   H
  5729.           052E    CB 1D                RR   L
  5730.                                 
  5731.                                 
  5732.           0530    1F                   RRA
  5733.                                 
  5734.                                 
  5735.           0531    CB 0E                RRC   (HL)
  5736.           0533    DD CB 36 0E          RRC   (IX+INDEX)
  5737.           0537    FD CB 36 0E          RRC   (IY+INDEX)
  5738.           053B    CB 0F                RRC   A
  5739.           053D    CB 08                RRC   B
  5740.           053F    CB 09                RRC   C
  5741.           0541    CB 0A                RRC   D
  5742.           0543    CB 0B                RRC   E
  5743.           0545    CB 0C                RRC   H
  5744.           0547    CB 0D                RRC   L
  5745.                                 
  5746.                                 
  5747.           0549    0F                   RRCA
  5748.                                 
  5749.                                 
  5750.           054A    ED 67                RRD
  5751.                                 
  5752.                                 
  5753.           054C    C7                   RST   0
  5754.           054D    CF                   RST   08H
  5755.           054E    D7                   RST   10H
  5756.           054F    DF                   RST   18H
  5757.           0550    E7                   RST   20H
  5758.           0551    EF                   RST   28H
  5759.           0552    F7                   RST   30H
  5760.           0553    FF                   RST   38H
  5761.                                 
  5762.  
  5763.  
  5764.                                        87
  5765.  
  5766.  
  5767.  
  5768.  
  5769.  
  5770.                       APPENDIX B - ZILOG MNEMONICS       
  5771.  
  5772.  
  5773.                                 
  5774.           0554    9E                   SBC   A,(HL)
  5775.           0555    DD 9E 36             SBC   A,(IX+INDEX)
  5776.           0558    FD 9E 36             SBC   A,(IY+INDEX)
  5777.           055B    9F                   SBC   A,A
  5778.           055C    98                   SBC   A,B
  5779.           055D    99                   SBC   A,Cè          055E    9A                   SBC   A,D
  5780.           055F    9B                   SBC   A,E
  5781.           0560    9C                   SBC   A,H
  5782.           0561    9D                   SBC   A,L
  5783.           0562    DE 49                SBC   A,NN
  5784.           0564    ED 42                SBC   HL,BC
  5785.           0566    ED 52                SBC   HL,DE
  5786.           0568    ED 62                SBC   HL,HL
  5787.           056A    ED 72                SBC   HL,SP
  5788.                                 
  5789.                                 
  5790.           056C    37                   SCF
  5791.                                 
  5792.                                 
  5793.           056D    CB C6                SET   0,(HL)
  5794.           056F    DD CB 36 C6          SET   0,(IX+INDEX)
  5795.           0573    FD CB 36 C6          SET   0,(IY+INDEX)
  5796.           0577    CB C7                SET   0,A
  5797.           0579    CB C0                SET   0,B
  5798.           057B    CB C1                SET   0,C
  5799.           057D    CB C2                SET   0,D
  5800.           057F    CB C3                SET   0,E
  5801.           0581    CB C4                SET   0,H
  5802.           0583    CB C5                SET   0,L
  5803.                                 
  5804.                                 
  5805.           0585    CB CE                SET   1,(HL)
  5806.           0587    DD CB 36 CE          SET   1,(IX+INDEX)
  5807.           058B    FD CB 36 CE          SET   1,(IY+INDEX)
  5808.           058F    CB CF                SET   1,A
  5809.           0591    CB C8                SET   1,B
  5810.           0593    CB C9                SET   1,C
  5811.           0595    CB CA                SET   1,D
  5812.           0597    CB CB                SET   1,E
  5813.           0599    CB CC                SET   1,H
  5814.           059B    CB CD                SET   1,L
  5815.                                 
  5816.                                 
  5817.           059D    CB D6                SET   2,(HL)
  5818.           059F    DD CB 36 D6          SET   2,(IX+INDEX)
  5819.           05A3    FD CB 36 D6          SET   2,(IY+INDEX)
  5820.           05A7    CB D7                SET   2,A
  5821.           05A9    CB D0                SET   2,B
  5822.           05AB    CB D1                SET   2,C
  5823.           05AD    CB D2                SET   2,D
  5824.           05AF    CB D3                SET   2,E
  5825.           05B1    CB D4                SET   2,H
  5826.           05B3    CB D5                SET   2,L
  5827.  
  5828.  
  5829.                                        88
  5830.  
  5831.  
  5832.  
  5833. è
  5834.                       APPENDIX B - ZILOG MNEMONICS       
  5835.  
  5836.  
  5837.                                 
  5838.                                 
  5839.           05B5    CB DE                SET   3,(HL)
  5840.           05B7    DD CB 36 DE          SET   3,(IX+INDEX)
  5841.           05BB    FD CB 36 DE          SET   3,(IY+INDEX)
  5842.           05BF    CB DF                SET   3,A
  5843.           05C1    CB D8                SET   3,B
  5844.           05C3    CB D9                SET   3,C
  5845.           05C5    CB DA                SET   3,D
  5846.           05C7    CB DB                SET   3,E
  5847.           05C9    CB DC                SET   3,H
  5848.           05CB    CB DD                SET   3,L
  5849.                                 
  5850.                                 
  5851.           05CD    CB E6                SET   4,(HL)
  5852.           05CF    DD CB 36 E6          SET   4,(IX+INDEX)
  5853.           05D3    FD CB 36 E6          SET   4,(IY+INDEX)
  5854.           05D7    CB E7                SET   4,A
  5855.           05D9    CB E0                SET   4,B
  5856.           05DB    CB E1                SET   4,C
  5857.           05DD    CB E2                SET   4,D
  5858.           05DF    CB E3                SET   4,E
  5859.           05E1    CB E4                SET   4,H
  5860.           05E3    CB E5                SET   4,L
  5861.                                 
  5862.                                 
  5863.           05E5    CB EE                SET   5,(HL)
  5864.           05E7    DD CB 36 EE          SET   5,(IX+INDEX)
  5865.           05EB    FD CB 36 EE          SET   5,(IY+INDEX)
  5866.           05EF    CB EF                SET   5,A
  5867.           05F1    CB E8                SET   5,B
  5868.           05F3    CB E9                SET   5,C
  5869.           05F5    CB EA                SET   5,D
  5870.           05F7    CB EB                SET   5,E
  5871.           05F9    CB EC                SET   5,H
  5872.           05FB    CB ED                SET   5,L
  5873.                                 
  5874.                                 
  5875.           05FD    CB F6                SET   6,(HL)
  5876.           05FF    DD CB 36 F6          SET   6,(IX+INDEX)
  5877.           0603    FD CB 36 F6          SET   6,(IY+INDEX)
  5878.           0607    CB F7                SET   6,A
  5879.           0609    CB F0                SET   6,B
  5880.           060B    CB F1                SET   6,C
  5881.           060D    CB F2                SET   6,D
  5882.           060F    CB F3                SET   6,E
  5883.           0611    CB F4                SET   6,H
  5884.           0613    CB F5                SET   6,L
  5885.                                 
  5886.                                 
  5887.           0615    CB FE                SET   7,(HL)è          0617    DD CB 36 FE          SET   7,(IX+INDEX)
  5888.           061B    FD CB 36 FE          SET   7,(IY+INDEX)
  5889.           061F    CB FF                SET   7,A
  5890.           0621    CB F8                SET   7,B
  5891.  
  5892.  
  5893.                                        89
  5894.  
  5895.  
  5896.  
  5897.  
  5898.  
  5899.                       APPENDIX B - ZILOG MNEMONICS       
  5900.  
  5901.  
  5902.           0623    CB F9                SET   7,C
  5903.           0625    CB FA                SET   7,D
  5904.           0627    CB FB                SET   7,E
  5905.           0629    CB FC                SET   7,H
  5906.           062B    CB FD                SET   7,L
  5907.                                 
  5908.                                 
  5909.           062D    CB 26                SLA   (HL)
  5910.           062F    DD CB 36 26          SLA   (IX+INDEX)
  5911.           0633    FD CB 36 26          SLA   (IY+INDEX)
  5912.           0637    CB 27                SLA   A
  5913.           0639    CB 20                SLA   B
  5914.           063B    CB 21                SLA   C
  5915.           063D    CB 22                SLA   D
  5916.           063F    CB 23                SLA   E
  5917.           0641    CB 24                SLA   H
  5918.           0643    CB 25                SLA   L
  5919.                                 
  5920.                                 
  5921.           0645    CB 2E                SRA   (HL)
  5922.           0647    DD CB 36 2E          SRA   (IX+INDEX)
  5923.           064B    FD CB 36 2E          SRA   (IY+INDEX)
  5924.           064F    CB 2F                SRA   A
  5925.           0651    CB 28                SRA   B
  5926.           0653    CB 29                SRA   C
  5927.           0655    CB 2A                SRA   D
  5928.           0657    CB 2B                SRA   E
  5929.           0659    CB 2C                SRA   H
  5930.           065B    CB 2D                SRA   L
  5931.                                 
  5932.                                 
  5933.           065D    CB 3E                SRL   (HL)
  5934.           065F    DD CB 36 3E          SRL   (IX+INDEX)
  5935.           0663    FD CB 36 3E          SRL   (IY+INDEX)
  5936.           0667    CB 3F                SRL   A
  5937.           0669    CB 38                SRL   B
  5938.           066B    CB 39                SRL   C
  5939.           066D    CB 3A                SRL   D
  5940.           066F    CB 3B                SRL   E
  5941.           0671    CB 3C                SRL   Hè          0673    CB 3D                SRL   L
  5942.                                 
  5943.                                 
  5944.           0675    96                   SUB   (HL)
  5945.           0676    DD 96 36             SUB   (IX+INDEX)
  5946.           0679    FD 96 36             SUB   (IY+INDEX)
  5947.           067C    97                   SUB   A
  5948.           067D    90                   SUB   B
  5949.           067E    91                   SUB   C
  5950.           067F    92                   SUB   D
  5951.           0680    93                   SUB   E
  5952.           0681    94                   SUB   H
  5953.           0682    95                   SUB   L                           
  5954.           0683    D6 49                SUB   NN
  5955.                                 
  5956.  
  5957.  
  5958.                                        90
  5959.  
  5960.  
  5961.  
  5962.  
  5963.  
  5964.                       APPENDIX B - ZILOG MNEMONICS       
  5965.  
  5966.  
  5967.                                 
  5968.           0685    AE                   XOR   (HL)
  5969.           0686    DD AE 36             XOR   (IX+INDEX)
  5970.           0689    FD AE 36             XOR   (IY+INDEX)
  5971.           068C    AF                   XOR   A
  5972.           068D    A8                   XOR   B
  5973.           068E    A9                   XOR   C
  5974.           068F    AA                   XOR   D
  5975.           0690    AB                   XOR   E
  5976.           0691    AC                   XOR   H
  5977.           0692    AD                   XOR   L
  5978.           0693    EE 49                XOR   NN
  5979.  
  5980.  
  5981.  
  5982.  
  5983.  
  5984.  
  5985.  
  5986.  
  5987.  
  5988.  
  5989.  
  5990.  
  5991.  
  5992.  
  5993.  
  5994.  
  5995. è
  5996.  
  5997.  
  5998.  
  5999.  
  6000.  
  6001.  
  6002.  
  6003.  
  6004.  
  6005.  
  6006.  
  6007.  
  6008.  
  6009.  
  6010.  
  6011.  
  6012.  
  6013.  
  6014.  
  6015.  
  6016.  
  6017.  
  6018.  
  6019.  
  6020.  
  6021.  
  6022.  
  6023.                                        91
  6024.  
  6025.  
  6026.  
  6027.  
  6028.  
  6029.                       APPENDIX B - ZILOG MNEMONICS       
  6030.  
  6031.  
  6032.  
  6033.  
  6034.  
  6035.  
  6036.  
  6037.  
  6038.  
  6039.  
  6040.  
  6041.  
  6042.  
  6043.  
  6044.  
  6045.  
  6046.  
  6047.  
  6048.  
  6049. è
  6050.  
  6051.  
  6052.  
  6053.  
  6054.  
  6055.  
  6056.  
  6057.  
  6058.  
  6059.  
  6060.  
  6061.  
  6062.  
  6063.  
  6064.  
  6065.  
  6066.  
  6067.  
  6068.  
  6069.  
  6070.  
  6071.  
  6072.  
  6073.  
  6074.  
  6075.  
  6076.  
  6077.  
  6078.  
  6079.  
  6080.  
  6081.  
  6082.  
  6083.  
  6084.  
  6085.  
  6086.  
  6087.  
  6088.  
  6089.  
  6090.  
  6091.  
  6092.  
  6093.  
  6094.                       APPENDIX B - ZILOG MNEMONICS       
  6095.  
  6096.  
  6097.  
  6098.  
  6099.                          APPENDIX C - SYSTEM MEMORY MAP
  6100.  
  6101.                        ||||||||||||||||||||||||||||||||||||     FFFF
  6102.                        ||                                ||
  6103.                        ||                                ||è                       ||      CP/M (BDOS and BIOS)      ||
  6104.                        ||                                ||
  6105.                        ||                                ||
  6106.                        ||||||||||||||||||||||||||||||||||||
  6107.                        ||                                ||
  6108.                        ||    Z8E (Approx 8.75 BYTES)     ||
  6109.                        ||                                ||
  6110.                        ||||||||||||||||||||||||||||||||||||
  6111.                        ||                                ||
  6112.                        ||     OPTIONAL SYMBOL TABLE      ||
  6113.                        ||                                ||
  6114.                        ||||||||||||||||||||||||||||||||||||
  6115.                        ||                                ||
  6116.                        ||                                ||
  6117.                        ||                                ||               
  6118.                        ||                                ||
  6119.                        ||                                ||
  6120.                        ||                                ||
  6121.                        ||              TPA               ||
  6122.                        ||                                ||
  6123.                        ||                                ||
  6124.                        ||                                ||
  6125.                        ||                                ||
  6126.                        ||                                ||
  6127.                        ||                                ||
  6128.                        ||                                ||
  6129.                        ||||||||||||||||||||||||||||||||||||  --- 0100
  6130.                        ||                                ||
  6131.                        ||      PAGE ZERO  RESERVED       || 
  6132.                        ||                                || 
  6133.                        ||||||||||||||||||||||||||||||||||||  ___ 0000
  6134.  
  6135.  
  6136.  
  6137.  
  6138.  
  6139.  
  6140.  
  6141.  
  6142.  
  6143.  
  6144.  
  6145.  
  6146.  
  6147.  
  6148.  
  6149.  
  6150.  
  6151.  
  6152.  
  6153.                                        93
  6154.  
  6155.  
  6156.  
  6157. è
  6158.                       APPENDIX B - ZILOG MNEMONICS       
  6159.  
  6160.  
  6161.                             COMMAND SUMMARY REFERENCE
  6162.  
  6163.         CMD         Description                      Arguments
  6164.  
  6165.          ┴áá      Inlinσá Assembl∙á            StartAddr 
  6166.          B        Set Breakpoint               Addr1[,Pass Count]  [Addr2..AddrN]
  6167.          C        Clear Breakpoint             Addr1               [Addr2..AddrN]
  6168.          D        Dump Memory                  [StartAddr]         [End/Count] 
  6169.          E        Examine Memory               StartAddr
  6170.          F        Find                         StartAddr           MatchData
  6171.          G        Go                           ExecutionAddr
  6172.          H        Display Symbol Table         [FirstSymbol]
  6173.          I        Initialize command line      [string1..stringN]
  6174.          J        Full Screen/Animated Debug   [/] [*] [Addr]      [Timeout]
  6175.          K        Set Memory Window            StartAddr           [Size]
  6176.          L        Load File                    FileName            [,Load Address]
  6177.          M        Move Memory                  SourceStart    SourceEnd    DestStart
  6178.          N        Output to Port NO Pre-Read   [(] PortAddr [)]
  6179.          O        Output Current Breakpoints
  6180.          P        Exam/Modify PSW (Flag Reg)
  6181.          Q        Query I/O Port               [(] PortAddr [)]
  6182.          R        Examine/Modify Registers     RegSpecifier
  6183.          S        Single-Step                  [/]  [Count]
  6184.          U        Write Symbol Table To Disk   FileName    
  6185.          V        Verify Memory                SourceStart     SourceEnd   DestStart
  6186.          W        Write to Disk                FileName        [StartAddr] [EndAddr] 
  6187.          X        Examine Machine State
  6188.          Y        Fill Memory                  FromAddr        ToAddr       Data
  6189.          Z        Disassemble                  StartAddr       End/Count    FileName
  6190.  
  6191.  
  6192.  
  6193.         []        Denotes Optional Argument
  6194.         [/]       Do Not Trace Subroutine
  6195.         [*]       Do Not Trace BDOS Call  
  6196.         [(] [)]   I/O Port Monitor Mode
  6197.  
  6198.  
  6199.  
  6200.  
  6201.  
  6202.                        Z8E   Copyright (c) 1984  AERO-SOFT
  6203.  
  6204.  
  6205.  
  6206.  
  6207.  
  6208.  
  6209.  
  6210.  
  6211. è
  6212.  
  6213.  
  6214.  
  6215.  
  6216.  
  6217.                                        94
  6218.  
  6219.  
  6220.  
  6221.  
  6222.  
  6223.