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 / ENTERPRS / CPM / UTILS / A / 6502DASM.LZH / DASM6502.MAC < prev   
Text File  |  1991-01-16  |  12KB  |  670 lines

  1. ;
  2. ;DASM6502.MAC from DASM.6502 (ver. >= 3.0)
  3. ;This routine is the 6502 mnemonic disassembler module for DASM.MAC.
  4. ;It is included into DASM during assembly under M80.
  5. ;
  6. ;    Hacked by: William F. Dudley Jr. (dudley@nadc)
  7. ;    uploaded to mit-mc Feb 22 1983
  8. ;
  9.     IF1
  10.     .PRINTX /DASM with 6502-Standard Mnemonics/
  11.     ENDIF
  12. ;
  13. ;  This is the Header to be printed for this module
  14. ;
  15. HEADER:
  16.     DEFB    'DASM for 6502-Standard Mnemonics',0dh,0ah
  17.     DEFB    '    Derived from ZZSOURCE/RESOURCE',0dh,0ah
  18.     DEFB    '$',0
  19. ;
  20. ;  This is the Disassembler Module -- Instruction to be disassembled
  21. ;    is pted to by PC
  22. ;
  23. DASM:
  24.     CALL    HSYM        ;WRITE A SYMBOL IF IT EXISTS
  25.     ;.. AND PUT PC ON THE CRT
  26.     LD    HL,(RPLPTR)    ;SEE IF THIS LINE IS REPLACED
  27.     LD    A,H
  28.     OR    L
  29.     JR    Z,DASM1
  30.     LD    B,(HL)
  31.     INC    HL        ;SKIP THE '*'
  32.     DEC    B
  33.     CALL    NWLN0        ;PRINT THE REPLACING LINE AS A COMMENT
  34. DASM1:
  35.     LD    HL,(PC) 
  36.     EX    DE,HL
  37.     LD    HL,(OFFSET)
  38.     ADD    HL,DE        ;HL IS NOW THE BIASED PC
  39.     LD    (BIASED),HL
  40.     EX    DE,HL        ;DE IS NOW THE BIASED PC
  41.     INC    HL
  42.     LD    (PC),HL        ;THE NEW PC (NEXT BYTE)
  43.     EX    DE,HL        ;DE IS THE BYTE AFTER THE INSTRUCTION
  44.     LD    B,(HL)
  45.     LD    HL,OPC-4
  46.     CALL    GTCD
  47.     CALL    TYPEOC
  48.     CP    02H        ;TYPES 0 and 1 ARE 1 BYTE
  49.     JR    C,OLDPC        ; .. SO DON'T CHANGE THE PC
  50.     LD    HL,(PC)
  51.     INC    HL
  52.     CP    09H        ;TYPES 02 THRU 08H ARE 2-BYTERS
  53.     JR    C,NEWPC
  54.     INC    HL        ;else must be 3 bytes
  55. NEWPC:
  56.     LD    (PC),HL
  57. OLDPC:
  58.     PUSH    DE        ;SAVE THE 'E' REGISTER (MAY BE 'X' OR 'Y')
  59.     LD    E,A
  60.     LD    D,0
  61.     LD    HL,JMPTBL
  62.     ADD    HL,DE        ;ADD 2*OPCODE TYPE TO JMPTBL TO GET
  63.     ADD    HL,DE        ;.. ROUTINE ADDRESS
  64.     LD    E,(HL)
  65.     INC    HL
  66.     LD    D,(HL)
  67.     EX    DE,HL        ;HL NOW CONTAINS THE ROUTINE ADDRESS
  68.     POP    DE
  69.     PUSH    HL
  70.     LD    HL,(BIASED)
  71.     RET            ;'RETURN' TO THE ROUTINE
  72. ;
  73. GTCD:
  74.     LD    DE,4
  75. NXTCD:
  76.     ADD    HL,DE
  77. NXTCD1:
  78.     LD    A,(HL)
  79.     OR    A        ;SEE IF WE'RE AT THE NEXT MASK YET
  80.     INC    HL
  81.     JP    P,NXTCD1    ;JUMP IF NOT
  82.     AND    B        ;MASK OUT VARIABLES IN THE INSTRUCTION
  83.     CP    (HL)        ;CHECK THE GENERIC INSTRUCTION TYPE
  84.     JR    NZ,NXTCD
  85.     INC    HL
  86.     LD    A,(HL)        ;AFTER A MATCH, GET THE OPCODE TYPE
  87.     LD    (OPCTP),A
  88.     RET    
  89. ;
  90. TOC2:
  91.     CP    20H        ;CONVERT SPACES IN THE TABLE TO TABS
  92.     JR    NZ,TOC1
  93.     LD    A,9
  94. TOC1:
  95.     CALL    COUT
  96. TYPEOC:
  97.     INC    HL        ;TYPE THE OPCODE THAT HL IS POINTING TO
  98.     LD    A,(HL)
  99.     OR    A
  100.     JR    Z,TYPEOC
  101.     JP    P,TOC2
  102.     LD    HL,(PC)
  103.     LD    A,(OPCTP)
  104.     RET    
  105. ;
  106. JMPTBL:
  107.     DEFW    T0        ;SIMPLE 1 BYTE INSTRUCTIONS
  108.     DEFW    T2A        ;UNDEFINED OPCODES    
  109.     DEFW    TB        ;8 BIT IMMEDIATE ARITH. & LOGICAL
  110.     DEFW    TF        ;RELATIVE JUMPS
  111.     defw    tdzx        ;zero, x
  112.     defw    tdx        ;ind, x
  113.     defw    tdy        ;ind, y
  114.     defw    tdzy        ;zero, y
  115.     defw    tdzp        ;zero page
  116.     DEFW    T11        ;JUMPS & CALLS
  117.     defw    twx        ;abs, x
  118.     defw    twy        ;abs, y
  119.     defw    jpind        ;jump indirect
  120. ;
  121. ;ONE BYTE INSTRUCTIONS, SIMPLE
  122. ;
  123. T0:
  124.     JP    DCRLF
  125. ;
  126. ;ARITHMETIC & LOGICAL IMMEDIATES
  127. TB:
  128.     INC    HL
  129. DTABYT:
  130.     LD    A,(HL)
  131.     CP    ' '
  132.     JR    C,NOTASC
  133.     CP    5BH
  134.     JR    NC,NOTASC
  135.     CALL    PASCII
  136.     LD    A,''''
  137.     CALL    COUT
  138.     LD    A,(XCSW)    ;WANT SYMBOL COMMENTS?
  139.     OR    A
  140.     JP    Z,DCRLF
  141.     CALL    TAB
  142.     CALL    SEMI
  143. NOTASC:
  144.     LD    A,(HL)
  145.     CP    0AH
  146.     JR    C,NTSC0
  147.     CALL    PASHEX
  148.     LD    A,'H'
  149.     CALL    COUT
  150.     JP    DCRLF
  151. NTSC0:
  152.     ADD    A,'0'
  153.     CALL    COUT
  154.     JP    DCRLF
  155. ;
  156. TDX:
  157.     CALL    LPAR
  158.     inc    hl
  159.     ld    e,(hl)
  160.     ld    d,0
  161.     call    prntde
  162.     call    c,pdertn
  163. ;    LD    A,(HL)
  164. ;    CALL    PASHEX
  165. ;    LD    A,'H'
  166. ;    CALL    COUT
  167.     CALL    COMMA
  168.     LD    A,'X'
  169.     CALL    COUT
  170.     CALL    RPAR
  171.     JP    DCRLF
  172. ;
  173. TDY:
  174.     CALL    LPAR
  175.     inc    hl
  176.     ld    e,(hl)
  177.     ld    d,0
  178.     call    prntde
  179.     call    c,pdertn
  180. ;    LD    A,(HL)
  181. ;    CALL    PASHEX
  182. ;    LD    A,'H'
  183. ;    CALL    COUT
  184.     CALL    RPAR
  185.     CALL    COMMA
  186.     LD    A,'Y'
  187.     CALL    COUT
  188.     JP    DCRLF
  189. ;
  190. TDZX:
  191.     INC    HL
  192.     LD    A,(HL)
  193.     CALL    PASHEX
  194.     LD    A,'H'
  195.     CALL    COUT
  196.     CALL    COMMA
  197.     LD    A,'X'
  198.     CALL    COUT
  199.     JP    DCRLF
  200. ;
  201. TDZY:
  202.     INC    HL
  203.     LD    A,(HL)
  204.     CALL    PASHEX
  205.     LD    A,'H'
  206.     CALL    COUT
  207.     CALL    COMMA
  208.     LD    A,'Y'
  209.     CALL    COUT
  210.     JP    DCRLF
  211. ;
  212. twy:    call    prnn
  213.     push    af
  214.     call    comma
  215.     ld    a,'Y'
  216.     call    cout
  217.     pop    af
  218.     call    c,pdertn
  219.     jp    dcrlf
  220. ;
  221. twx:    call    prnn
  222.     push    af
  223.     call    comma
  224.     ld    a,'X'
  225.     call    cout
  226.     pop    af
  227.     call    c,pdertn
  228.     jp    dcrlf
  229. ;
  230. ; zero page addresses
  231. ;
  232. tdzp:    inc    hl
  233.     ld    e,(hl)
  234.     ld    d,0
  235.     call    prntde
  236.     call    c,pdertn
  237.     jp    dcrlf
  238. ;
  239. ;OTHER RELATIVE INSTRUCTIONS
  240. TF:
  241.     INC    HL
  242.     LD    A,(HL)
  243.     LD    E,A
  244.     LD    D,0
  245.     LD    HL,(PC)
  246.     OR    A
  247.     JP    P,PSTV
  248.     DEC    D
  249. PSTV:
  250.     ADD    HL,DE
  251.     EX    DE,HL
  252.     CALL    PRNTDE
  253.     CALL    C,PDERTN
  254.     JP    DCRLF
  255. ;
  256. ;JUMPS AND CALLS
  257. T11:
  258.     CALL    PRNN
  259.     CALL    C,PDERTN
  260.     JP    DCRLF
  261. ;
  262. jpind:    call    dradr
  263.     call    c,pdertn
  264.     jp    dcrlf
  265. ;
  266. DRADR:
  267.     CALL    LPAR        ;PRINT THE VALUE FOR DE IN PARENTHESIS
  268.     CALL    PRNN
  269.     PUSH    AF
  270.     CALL    RPAR
  271.     POP    AF
  272.     RET    
  273. ;
  274. ;ALL UNDEFINED OPCODES COME HERE FOR A 'DB VALUE' TREATMENT
  275. ;
  276. T2A:
  277.     LD    HL,(BIASED)
  278.     CALL    PSTG
  279.     DEFB    'DB',9,0
  280.     JP    DTABYT
  281. ;
  282. ;  VARIOUS CHARACTERS TO PRINT
  283. ;
  284. COMMA:
  285.     LD    A,','
  286.     JP    COUT
  287. TAB:
  288.     LD    A,9
  289.     JP    COUT
  290. SEMI:
  291.     LD    A,';'
  292.     JP    COUT
  293. LPAR:
  294.     LD    A,'('
  295.     JP    COUT
  296. RPAR:
  297.     LD    A,')'
  298.     JP    COUT
  299. PCMAA:
  300.     CALL    COMMA
  301.     LD    A,'A'
  302.     JP    COUT
  303. ;
  304. ;  PRINT THE CONDITION CODE LETTERS FOR THIS INSTRUCTION.
  305. ;
  306. PRCND:
  307.     LD    A,(HL)
  308.     AND    38H        ;FOR A FULL SET OF CONDITION CODES
  309. PRC:
  310.     RRCA    
  311.     RRCA    
  312.     LD    HL,CNDTAB
  313.     CALL    SKIP
  314.     LD    A,(HL)
  315.     CALL    COUT
  316.     INC    HL
  317.     LD    A,(HL)
  318.     CP    '.'
  319.     CALL    NZ,COUT
  320.     RET    
  321. PRCND1:
  322.     LD    A,(HL)
  323.     AND    18H
  324.     JR    PRC
  325. CNDTAB:
  326.     DEFB    'NZZ.NCC.POPEP.M.'
  327. ;
  328. ;  PRINT THE SOURCE REGISTER FOR A BYTE
  329. ;
  330. PSREG:
  331.     LD    A,(HL)
  332. PREG:
  333.     LD    HL,REGTAB
  334.     AND    7
  335.     CP    6        ;MUST CATCH THE (HL) REFERENCES
  336.     JP    Z,PHLREG
  337.     CALL    SKIP
  338.     LD    A,(HL)
  339.     JP    COUT
  340. PHLREG:
  341.     CALL    LPAR
  342.     LD    A,'H'
  343.     CALL    COUT
  344.     LD    A,'L'
  345.     CALL    COUT
  346.     JP    RPAR
  347. PDREG:
  348.     LD    A,(HL)        ;PRINT THE DESTINATION REGISTER FOR A BYTE
  349.     RRA    
  350.     RRA    
  351.     RRA    
  352.     JP    PREG
  353. ;
  354. ;  ADVANCE H&L BY (A)
  355. ;
  356. SKIP:
  357.     ADD    A,L
  358.     LD    L,A
  359.     RET    NC
  360.     INC    H
  361.     RET    
  362. REGTAB:
  363.     DEFB    'BCDEHLMA'    ;'M' IS NEVER PRINTED - '(HL)' IS INSTEAD
  364. ;
  365. ;  PRINT A DOUBLE REGISTER PAIR
  366. ;
  367. PXSREG:
  368.     LD    A,(HL)
  369.     LD    HL,DREGS
  370.     JR    PXREG
  371. PXQREG:
  372.     LD    A,(HL)
  373.     LD    HL,DREGQ
  374. PXREG:
  375.     RRA    
  376.     RRA    
  377.     RRA    
  378.     AND    6
  379.     CALL    SKIP
  380.     LD    A,(HL)
  381.     CALL    COUT
  382.     INC    HL
  383.     LD    A,(HL)
  384.     JP    COUT
  385. DREGS:
  386.     DEFB    'BCDEHLSP'
  387. DREGQ:
  388.     DEFB    'BCDEHLAF'
  389. IXREGS:
  390.     DEFB    'BCDEIXSP'
  391. IYREGS:
  392.     DEFB    'BCDEIYSP'
  393. ;
  394. PBIT:
  395.     LD    A,(HL)
  396.     RRA    
  397.     RRA    
  398.     RRA    
  399.     AND    7
  400.     ADD    A,'0'
  401.     JP    COUT
  402. PRXX:
  403.     LD    A,'I'
  404.     CALL    COUT
  405.     LD    A,E
  406.     JP    COUT
  407. ;
  408. ;PRINT A LEADING QUOTE AND THEN THE ASCII
  409. ;.. (PRINT '' FOR ').
  410. ;
  411. PASCII:
  412.     PUSH    AF
  413.     LD    A,''''
  414.     CALL    COUT
  415.     POP    AF
  416.     CP    ''''
  417.     JP    NZ,COUT
  418.     PUSH    AF
  419.     CALL    COUT
  420.     POP    AF
  421.     JP    COUT
  422. ;PRINT THE VALUE IN A AS HEX
  423. ;  WITH A LEADING ZERO IF NECESSARY
  424. PASHEX:
  425.     CP    0A0H
  426.     JP    C,PHEX
  427.     PUSH    AF
  428.     LD    A,'0'
  429.     CALL    COUT
  430.     POP    AF
  431.     JP    PHEX
  432. ;PRINT THE STRING AT (HL) FOR (B) CHARACTERS.
  433. PRNT:
  434.     LD    A,(HL)
  435.     CALL    COUT
  436.     INC    HL
  437.     DEC    B
  438.     JP    NZ,PRNT
  439.     RET    
  440. ;
  441. ;PRINT A DISPLACEMENT IN THE FORM '(IX+d)'
  442. PDISP:
  443.     CALL    LPAR
  444.     CALL    PRXX
  445.     LD    A,'+'
  446.     CALL    COUT
  447.     LD    A,(HL)
  448.     CALL    PASHEX
  449.     LD    A,'H'
  450.     CALL    COUT
  451.     JP    RPAR
  452. ;
  453. ;PRINT THE NEXT 2 BYTES AS A SYMBOL (AND RETURN Cy=1) IF POSSIBLE
  454. ;
  455. PRNN:
  456.     INC    HL
  457.     LD    E,(HL)
  458.     INC    HL
  459.     LD    D,(HL)
  460. PRNTDE:
  461.     PUSH    DE
  462.     CALL    SYMSCH
  463.     JP    C,NOMTCH
  464.     CALL    PRNT        ;GOT ONE, SO PRINT IT
  465.     POP    DE
  466.     SCF            ;INDICATE THAT A SYMBOL WAS PRINTED
  467.     RET    
  468. NOMTCH:
  469.     LD    A,(BUILD)    ;DO WE BUILD A SYMBOL?
  470.     OR    A
  471.     POP    DE
  472.     JR    Z,NOBLD        ;JUST PRINT THE HEX VALUE
  473.     PUSH    DE
  474.     CALL    BLDSYM
  475.     POP    DE
  476.     JR    NOBLD
  477. PDERTN:
  478.     LD    A,(XCSW)
  479.     OR    A
  480.     RET    Z        ;DON'T PRINT THE SYMBOL AS A COMMENT
  481.     CALL    TAB        ;WE'LL PRINT A VALUE AS A COMMENT
  482.     CALL    SEMI
  483. NOBLD:
  484.     LD    A,D
  485.     OR    E
  486.     LD    A,'0'
  487.     JR    Z,NOBLD1
  488.     LD    A,D
  489.     OR    A
  490.     JR    Z,NOBLD2
  491.     CALL    PASHEX        ;PRINT THE HIGH ORDER BYTE
  492.     LD    A,E
  493.     CALL    PHEX
  494. NOBLD0:
  495.     LD    A,'H'
  496. NOBLD1:
  497.     CALL    COUT
  498.     OR    A        ;CLEAR THE CARRY
  499.     RET    
  500. NOBLD2:
  501.     LD    A,E
  502. PRST:
  503.     CP    0AH
  504.     JR    C,NOBLD3
  505.     CALL    PASHEX
  506.     JR    NOBLD0
  507. NOBLD3:
  508.     ADD    A,'0'
  509.     JR    NOBLD1
  510. ;
  511. ;  OPCODE TABLES
  512. ;
  513. OPC:
  514.     DEFB    0ffH,00ah,0,'ASL A'
  515.     DEFB    0ffH,000h,0,'BRK'
  516.     DEFB    0ffH,018h,0,'CLC'
  517.     DEFB    0ffH,0d8h,0,'CLD'
  518.     DEFB    0ffH,058h,0,'CLI'
  519.     DEFB    0ffH,0b8h,0,'CLV'
  520.     DEFB    0ffH,0cah,0,'DEX'
  521.     DEFB    0ffH,088h,0,'DEY'
  522.     DEFB    0ffH,0e8h,0,'INX'
  523.     DEFB    0ffH,0c8h,0,'INY'
  524.     DEFB    0ffH,04ah,0,'LSR A'
  525.     DEFB    0ffH,0eah,0,'NOP'
  526.     DEFB    0ffH,048h,0,'PHA'
  527.     DEFB    0ffH,008h,0,'PHP'
  528.     DEFB    0ffH,068h,0,'PLA'
  529.     DEFB    0ffH,028h,0,'PLP'
  530.     DEFB    0ffH,02ah,0,'ROL A'
  531.     DEFB    0ffH,06ah,0,'ROR A'
  532.     DEFB    0ffH,040h,0,'RTI'
  533.     DEFB    0ffH,060h,0,'RTS'
  534.     DEFB    0ffH,038h,0,'SEC'
  535.     DEFB    0ffH,0f8h,0,'SED'
  536.     DEFB    0ffH,078h,0,'SEI'
  537.     DEFB    0ffH,0aah,0,'TAX'
  538.     DEFB    0ffH,0a8h,0,'TAY'
  539.     DEFB    0ffH,098h,0,'TYA'
  540.     DEFB    0ffH,0bah,0,'TSX'
  541.     DEFB    0ffH,08ah,0,'TXA'
  542.     DEFB    0ffH,09ah,0,'TXS'
  543.     DEFB    0ffH,069h,02h,'ADC #'
  544.     DEFB    0ffH,029h,02h,'AND #'
  545.     DEFB    0ffH,0C9h,02h,'CMP #'
  546.     DEFB    0ffH,0E0h,02h,'CPX #'
  547.     DEFB    0ffH,0C0h,02h,'CPY #'
  548.     DEFB    0ffH,049h,02h,'EOR #'
  549.     DEFB    0ffH,0A9h,02h,'LDA #'
  550.     DEFB    0ffH,0A2h,02h,'LDX #'
  551.     DEFB    0ffH,0A0h,02h,'LDY #'
  552.     DEFB    0ffH,009h,02h,'ORA #'
  553.     DEFB    0ffH,0E9h,02h,'SBC #'
  554.     DEFB    0ffH,090h,03h,'BCC '
  555.     DEFB    0ffH,0B0h,03h,'BCS '
  556.     DEFB    0ffH,0F0h,03h,'BEQ '
  557.     DEFB    0ffH,030h,03h,'BMI '
  558.     DEFB    0ffH,0D0h,03h,'BNE '
  559.     DEFB    0ffH,010h,03h,'BPL '
  560.     DEFB    0ffH,050h,03h,'BVC '
  561.     DEFB    0ffH,070h,03h,'BVS '
  562.     DEFB    0ffH,06Dh,09h,'ADC '
  563.     DEFB    0ffH,02Dh,09h,'AND '
  564.     DEFB    0ffH,00Eh,09h,'ASL '
  565.     DEFB    0ffH,02Ch,09h,'BIT '
  566.     DEFB    0ffH,0CDh,09h,'CMP '
  567.     DEFB    0ffH,0ECh,09h,'CPX '
  568.     DEFB    0ffH,0CCh,09h,'CPY '
  569.     DEFB    0ffH,0CEh,09h,'DEC '
  570.     DEFB    0ffH,04Dh,09h,'EOR '
  571.     DEFB    0ffH,0EEh,09h,'INC '
  572.     DEFB    0ffH,04Ch,09h,'JMP '
  573.     DEFB    0ffH,020h,09h,'JSR '
  574.     DEFB    0ffH,0ADh,09h,'LDA '
  575.     DEFB    0ffH,0AEh,09h,'LDX '
  576.     DEFB    0ffH,0ACh,09h,'LDY '
  577.     DEFB    0ffH,04Eh,09h,'LSR '
  578.     DEFB    0ffH,00Dh,09h,'ORA '
  579.     DEFB    0ffH,02Eh,09h,'ROL '
  580.     DEFB    0ffH,06Eh,09h,'ROR '
  581.     DEFB    0ffH,0EDh,09h,'SBC '
  582.     DEFB    0ffH,08Dh,09h,'STA '
  583.     DEFB    0ffH,08Eh,09h,'STX '
  584.     DEFB    0ffH,08Ch,09h,'STY '
  585.     DEFB    0ffH,065h,08h,'ADC '
  586.     DEFB    0ffH,025h,08h,'AND '
  587.     DEFB    0ffH,006h,08h,'ASL '
  588.     DEFB    0ffH,024h,08h,'BIT '
  589.     DEFB    0ffH,0C5h,08h,'CMP '
  590.     DEFB    0ffH,0E4h,08h,'CPX '
  591.     DEFB    0ffH,0C4h,08h,'CPY '
  592.     DEFB    0ffH,0C6h,08h,'DEC '
  593.     DEFB    0ffH,045h,08h,'EOR '
  594.     DEFB    0ffH,0E6h,08h,'INC '
  595.     DEFB    0ffH,0A5h,08h,'LDA '
  596.     DEFB    0ffH,0A6h,08h,'LDX '
  597.     DEFB    0ffH,0A4h,08h,'LDY '
  598.     DEFB    0ffH,046h,08h,'LSR '
  599.     DEFB    0ffH,005h,08h,'ORA '
  600.     DEFB    0ffH,026h,08h,'ROL '
  601.     DEFB    0ffH,066h,08h,'ROR '
  602.     DEFB    0ffH,0E5h,08h,'SBC '
  603.     DEFB    0ffH,085h,08h,'STA '
  604.     DEFB    0ffH,086h,08h,'STX '
  605.     DEFB    0ffH,084h,08h,'STY '
  606.     DEFB    0ffH,075h,04h,'ADC '
  607.     DEFB    0ffH,07dh,0ah,'ADC '
  608.     DEFB    0ffH,079h,0bh,'ADC '
  609.     DEFB    0ffH,061h,05h,'ADC '
  610.     DEFB    0ffH,071h,06h,'ADC '
  611.     DEFB    0ffH,035h,04h,'AND '
  612.     DEFB    0ffH,03dh,0ah,'AND '
  613.     DEFB    0ffH,039h,0bh,'AND '
  614.     DEFB    0ffH,021h,05h,'AND '
  615.     DEFB    0ffH,031h,06h,'AND '
  616.     DEFB    0ffH,0d5h,04h,'CMP '
  617.     DEFB    0ffH,0ddh,0ah,'CMP '
  618.     DEFB    0ffH,0d9h,0bh,'CMP '
  619.     DEFB    0ffH,0c1h,05h,'CMP '
  620.     DEFB    0ffH,0d1h,06h,'CMP '
  621.     DEFB    0ffH,055h,04h,'EOR '
  622.     DEFB    0ffH,05dh,0ah,'EOR '
  623.     DEFB    0ffH,059h,0bh,'EOR '
  624.     DEFB    0ffH,041h,05h,'EOR '
  625.     DEFB    0ffH,051h,06h,'EOR '
  626.     DEFB    0ffH,0b5h,04h,'LDA '
  627.     DEFB    0ffH,0bdh,0ah,'LDA '
  628.     DEFB    0ffH,0b9h,0bh,'LDA '
  629.     DEFB    0ffH,0a1h,05h,'LDA '
  630.     DEFB    0ffH,0b1h,06h,'LDA '
  631.     DEFB    0ffH,015h,04h,'ORA '
  632.     DEFB    0ffH,01dh,0ah,'ORA '
  633.     DEFB    0ffH,019h,0bh,'ORA '
  634.     DEFB    0ffH,001h,05h,'ORA '
  635.     DEFB    0ffH,011h,06h,'ORA '
  636.     DEFB    0ffH,0f5h,04h,'SBC '
  637.     DEFB    0ffH,0fdh,0ah,'SBC '
  638.     DEFB    0ffH,0f9h,0bh,'SBC '
  639.     DEFB    0ffH,0e1h,05h,'SBC '
  640.     DEFB    0ffH,0f1h,06h,'SBC '
  641.     DEFB    0ffH,095h,04h,'STA '
  642.     DEFB    0ffH,09dh,0ah,'STA '
  643.     DEFB    0ffH,099h,0bh,'STA '
  644.     DEFB    0ffH,081h,05h,'STA '
  645.     DEFB    0ffH,091h,06h,'STA '
  646.     DEFB    0ffH,016h,04h,'ASL '
  647.     DEFB    0ffH,01eh,0ah,'ASL '
  648.     DEFB    0ffH,0d6h,04h,'DEC '
  649.     DEFB    0ffH,0deh,0ah,'DEC '
  650.     DEFB    0ffH,0f6h,04h,'INC '
  651.     DEFB    0ffH,0feh,0ah,'INC '
  652.     DEFB    0ffH,0b6h,04h,'LDX '
  653.     DEFB    0ffH,0beh,0ah,'LDX '
  654.     DEFB    0ffH,0b4h,04h,'LDY '
  655.     DEFB    0ffH,0bch,0ah,'LDY '
  656.     DEFB    0ffH,056h,04h,'LSR '
  657.     DEFB    0ffH,05eh,0ah,'LSR '
  658.     DEFB    0ffH,036h,04h,'ROL '
  659.     DEFB    0ffH,03eh,0ah,'ROL '
  660.     DEFB    0ffH,076h,04h,'ROR '
  661.     DEFB    0ffH,07eh,0ah,'ROR '
  662.     DEFB    0ffH,096h,07h,'STX '
  663.     DEFB    0ffH,094h,04h,'STY '
  664.     DEFB    0FFH,06CH,0cH,'JMP '
  665.     DEFB    080H,000h,01h,0,0
  666.     DEFB    080H,080h,01H,0,0
  667. ;
  668. ;  END OF OPCODE TABLE
  669. ;
  670.