home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 2: PC / frozenfish_august_1995.bin / bbs / d01xx / d0165.lha / CPM / Source / zekcb.a < prev    next >
Text File  |  1988-11-22  |  19KB  |  1,555 lines

  1. ;    z80 emulator subkernel
  2. ;    $cb two byte opcode instructions
  3.  
  4. zekcbver:    dc.b    'Zekcb Ver: 00027   Date: 25-Sep-88 21:13:40 ',0
  5.  
  6. ;    This source code is released into the public domain for
  7. ;    non-profit use only.
  8. ;    Copyright (C) 1988, Ulf Nordquist. All Rights Reserved !
  9. ;    Ulf Nordquist
  10. ;    Brunnehagen 36
  11. ;    417 47 Gothenburg
  12. ;    Sweden
  13.  
  14. ;    self modifying code is used
  15.  
  16. ;    history
  17. ;    880222 : first
  18. ;         bit n,r, res n,r, set n,r
  19. ;    880430 : ver 00001
  20. ;    880710 : modify code in main emu loop when debug count
  21. ;         cbinit, cbstart, cbstop
  22. ;    880819 : macros, include zekmc.i
  23. ;    880820 : use bit macro
  24. ;    880911 : bug1 chk if really count, can be set by trace
  25. ;    880917 : rl a,c,e,l
  26. ;    880924 : rr r, rl r, sla r, sra r, srl r
  27.  
  28. ;    globals from this module
  29.  
  30.         xdef    cbinit
  31.         xdef    cbstart
  32.         xdef    cbstop
  33.         xdef    z80opccb
  34.         xdef    zekcbver
  35.  
  36. ;    externals from zek
  37.  
  38.         xref    cboffs
  39.         xref    cntbuf
  40.         xref    z80emu1
  41.         xref    setflg
  42.         xref    setflgl
  43.  
  44. ;    externals from ze
  45.  
  46.         xref    z80opc2ni
  47.         xref    glflgs
  48.  
  49.         section zekcb,code
  50.  
  51. ;    macros
  52.  
  53.         include zekmc.i
  54.  
  55.         ds.w    0            ;alignment
  56.  
  57. ;    cbinit
  58. ;    initialize emulation parameters
  59. ;    start for count of opcode, bdos & bios
  60. ;    stop count of opcode, bdos & bios
  61.  
  62. cbstart:
  63. cbstop:
  64. cbinit:     move.l    #z80emusw,a6
  65.         move.w    (a6),d1                 ;get bra.s
  66.         move.w    cntinst,(a6)            ;put addq
  67.         move.w    d1,cntinst        ;save bra.s
  68.         rts
  69.  
  70. ;    entry : d0.l=fa'fa, d1.l=hl'hl, d2.l=de'de, d3.l=bc'bc
  71. ;        d4.l=iyix
  72. ;        d7.l=number of instructions to run, 0=until halt
  73. ;        a0.w=pc, a1.w=sp,
  74. ;        a2.l=ptr to scratch, a3.l=z80opctab,
  75. ;        a4.l=ptr middle of z80 pgm area
  76. ;        the program area must be configured as this:
  77. ;        relative start    0      $8000    $ffff
  78. ;                |________|________|
  79. ;        pc          $8000     0    $7fff
  80. ;        d0 flags 15 14 13 12 11 10  9  8
  81. ;              s  z    -  h  -  v  n  c
  82. ;    scratch use : d5.l, d6.l, a5.l, a6.l
  83. ;    limitations:
  84. ;    $00-$3f, rotates and shifts, is unimplemented
  85.  
  86. ;    $cd 1:st byte in special 2 byte opcodes
  87. ;    decode instruction
  88.  
  89. z80opccb:    moveq.l #0,d6
  90.         move.b    0(a4,a0.w),d6           ;2:nd opcode
  91. z80emusw:    bra.s    count            ;replaced with addq.l #1,a0
  92. z80emu3:    asl.w    #2,d6            ;4 bytes per entry
  93.         move.l    #z80opctabcb,a5
  94.         move.l    0(a5,d6.l),a5
  95.         jmp    (a5)                    ;do instruction
  96.  
  97. ;    code if debug count mode
  98.  
  99. count:        btst.b    #5,glflgs
  100.         beq.s    count1            ;if no count
  101.         move.l    cntbuf,a5
  102.         add.w    d6,a5
  103.         addq.b    #1,cboffs(a5)           ;inc cnt
  104.         bne.s    count1            ;if not max cnt
  105.         subq.b    #1,cboffs(a5)           ;restore max cnt
  106. count1:     addq.l    #1,a0
  107.         bra.s    z80emu3         ;cont emu
  108.  
  109. ;    not implemented opcode
  110.  
  111. z80emuni:    addq.l    #4,a7            ;ret addr
  112.         jmp    z80opc2ni
  113.  
  114. ;    $10 rl b
  115.  
  116. z80opc10:    hrlr    d3
  117.         jmp    z80emu1
  118.  
  119. ;    $11 rl c
  120.  
  121. z80opc11:    rlr    d3
  122.         jmp    z80emu1
  123.  
  124. ;    $12 rl d
  125.  
  126. z80opc12:    hrlr    d2
  127.         jmp    z80emu1
  128.  
  129. ;    $13 rl e
  130.  
  131. z80opc13:    rlr    d2
  132.         jmp    z80emu1
  133.  
  134. ;    $14 rl h
  135.  
  136. z80opc14:    hrlr    d1
  137.         jmp    z80emu1
  138.  
  139. ;    $15 rl l
  140.  
  141. z80opc15:    rlr    d1
  142.         jmp    z80emu1
  143.  
  144. ;    $16 rl (hl)
  145.  
  146. z80opc16:    move.b    0(a4,d1.w),d6
  147.         rlr    d6
  148.         move.b    d6,0(a4,d1.w)
  149.         jmp    z80emu1
  150.  
  151. ;    $17 rl a
  152.  
  153. z80opc17:    rlr    d0
  154.         jmp    z80emu1
  155.  
  156. ;    $18 rr b
  157.  
  158. z80opc18:    hrrr    d3
  159.         jmp    z80emu1
  160.  
  161. ;    $19 rr c
  162.  
  163. z80opc19:    rrr    d3
  164.         jmp    z80emu1
  165.  
  166. ;    $1a rr d
  167.  
  168. z80opc1a:    hrrr    d2
  169.         jmp    z80emu1
  170.  
  171. ;    $1b rr e
  172.  
  173. z80opc1b:    rrr    d2
  174.         jmp    z80emu1
  175.  
  176. ;    $1c rr h
  177.  
  178. z80opc1c:    hrrr    d1
  179.         jmp    z80emu1
  180.  
  181. ;    $1d rr l
  182.  
  183. z80opc1d:    rrr    d1
  184.         jmp    z80emu1
  185.  
  186. ;    $1e rr (hl)
  187.  
  188. z80opc1e:    move.b    0(a4,d1.w),d6
  189.         rrr    d6
  190.         move.b    d6,0(a4,d1.w)
  191.         jmp    z80emu1
  192.  
  193. ;    $1f rr a
  194.  
  195. z80opc1f:    rrr    d0
  196.         jmp    z80emu1
  197.  
  198. ;    $20 sla b
  199.  
  200. z80opc20:    hslar    d3
  201.         jmp    z80emu1
  202.  
  203. ;    $21 sla c
  204.  
  205. z80opc21:    slar    d3
  206.         jmp    z80emu1
  207.  
  208. ;    $22 sla d
  209.  
  210. z80opc22:    hslar    d2
  211.         jmp    z80emu1
  212.  
  213. ;    $23 sla e
  214.  
  215. z80opc23:    slar    d2
  216.         jmp    z80emu1
  217.  
  218. ;    $24 sla h
  219.  
  220. z80opc24:    hslar    d1
  221.         jmp    z80emu1
  222.  
  223. ;    $25 sla l
  224.  
  225. z80opc25:    slar    d1
  226.         jmp    z80emu1
  227.  
  228. ;    $26 sla (hl)
  229.  
  230. z80opc26:    move.b    0(a4,d1.w),d6
  231.         slar    d6
  232.         move.b    d6,0(a4,d1.w)
  233.         jmp    z80emu1
  234.  
  235. ;    $27 sla a
  236.  
  237. z80opc27:    slar    d0
  238.         jmp    z80emu1
  239.  
  240. ;    $28 sra b
  241.  
  242. z80opc28:    hsrar    d3
  243.         jmp    z80emu1
  244.  
  245. ;    $29 sra c
  246.  
  247. z80opc29:    srar    d3
  248.         jmp    z80emu1
  249.  
  250. ;    $2a sra d
  251.  
  252. z80opc2a:    hsrar    d2
  253.         jmp    z80emu1
  254.  
  255. ;    $2b sra e
  256.  
  257. z80opc2b:    srar    d2
  258.         jmp    z80emu1
  259.  
  260. ;    $2c sra h
  261.  
  262. z80opc2c:    hsrar    d1
  263.         jmp    z80emu1
  264.  
  265. ;    $2d sra l
  266.  
  267. z80opc2d:    srar    d1
  268.         jmp    z80emu1
  269.  
  270. ;    $2e sra (hl)
  271.  
  272. z80opc2e:    move.b    0(a4,d1.w),d6
  273.         srar    d6
  274.         move.b    d6,0(a4,d1.w)
  275.         jmp    z80emu1
  276.  
  277. ;    $2f sra a
  278.  
  279. z80opc2f:    slar    d0
  280.         jmp    z80emu1
  281.  
  282. ;    $38 srl b
  283.  
  284. z80opc38:    hsrlr    d3
  285.         jmp    z80emu1
  286.  
  287. ;    $39 srl c
  288.  
  289. z80opc39:    srlr    d3
  290.         jmp    z80emu1
  291.  
  292. ;    $3a srl d
  293.  
  294. z80opc3a:    hsrlr    d2
  295.         jmp    z80emu1
  296.  
  297. ;    $3b srl e
  298.  
  299. z80opc3b:    srlr    d2
  300.         jmp    z80emu1
  301.  
  302. ;    $3c srl h
  303.  
  304. z80opc3c:    hsrlr    d1
  305.         jmp    z80emu1
  306.  
  307. ;    $3d srl l
  308.  
  309. z80opc3d:    srlr    d1
  310.         jmp    z80emu1
  311.  
  312. ;    $3e srl (hl)
  313.  
  314. z80opc3e:    move.b    0(a4,d1.w),d6
  315.         srlr    d6
  316.         move.b    d6,0(a4,d1.w)
  317.         jmp    z80emu1
  318.  
  319. ;    $3f srl a
  320.  
  321. z80opc3f:    srlr    d0
  322.         jmp    z80emu1
  323.  
  324. ;    $40 bit 0,b
  325.  
  326. z80opc40:    bit    0,b
  327.         jmp    z80emu1
  328.  
  329. ;    $41 bit 0,c
  330.  
  331. z80opc41:    bit    0,c
  332.         jmp    z80emu1
  333.  
  334. ;    $42 bit 0,d
  335.  
  336. z80opc42:    bit    0,d
  337.         jmp    z80emu1
  338.  
  339. ;    $43 bit 0,e
  340.  
  341. z80opc43:    bit    0,e
  342.         jmp    z80emu1
  343.  
  344. ;    $44 bit 0,h
  345.  
  346. z80opc44:    bit    0,h
  347.         jmp    z80emu1
  348.  
  349. ;    $45 bit 0,l
  350.  
  351. z80opc45:    bit    0,l
  352.         jmp    z80emu1
  353.  
  354. ;    $46 bit 0,(hl)
  355.  
  356. z80opc46:    bit    0,(hl)
  357.         jmp    z80emu1
  358.  
  359. ;    $47 bit 0,a
  360.  
  361. z80opc47:    bit    0,a
  362.         jmp    z80emu1
  363.  
  364. ;    $48 bit 1,b
  365.  
  366. z80opc48:    bit    1,b
  367.         jmp    z80emu1
  368.  
  369. ;    $49 bit 1,c
  370.  
  371. z80opc49:    bit    1,c
  372.         jmp    z80emu1
  373.  
  374. ;    $4a bit 1,d
  375.  
  376. z80opc4a:    bit    1,d
  377.         jmp    z80emu1
  378.  
  379. ;    $4b bit 1,e
  380.  
  381. z80opc4b:    bit    1,e
  382.         jmp    z80emu1
  383.  
  384. ;    $4c bit 1,h
  385.  
  386. z80opc4c:    bit    1,h
  387.         jmp    z80emu1
  388.  
  389. ;    $4d bit 1,l
  390.  
  391. z80opc4d:    bit    1,l
  392.         jmp    z80emu1
  393.  
  394. ;    $4e bit 1,(hl)
  395.  
  396. z80opc4e:    bit    1,(hl)
  397.         jmp    z80emu1
  398.  
  399. ;    $4f bit 1,a
  400.  
  401. z80opc4f:    bit    1,a
  402.         jmp    z80emu1
  403.  
  404. ;    $50 bit 2,b
  405.  
  406. z80opc50:    bit    2,b
  407.         jmp    z80emu1
  408.  
  409. ;    $51 bit 2,c
  410.  
  411. z80opc51:    bit    2,c
  412.         jmp    z80emu1
  413.  
  414. ;    $52 bit 2,d
  415.  
  416. z80opc52:    bit    2,d
  417.         jmp    z80emu1
  418.  
  419. ;    $53 bit 2,e
  420.  
  421. z80opc53:    bit    2,e
  422.         jmp    z80emu1
  423.  
  424. ;    $54 bit 2,h
  425.  
  426. z80opc54:    bit    2,h
  427.         jmp    z80emu1
  428.  
  429. ;    $55 bit 2,l
  430.  
  431. z80opc55:    bit    2,l
  432.         jmp    z80emu1
  433.  
  434. ;    $56 bit 2,(hl)
  435.  
  436. z80opc56:    bit    2,(hl)
  437.         jmp    z80emu1
  438.  
  439. ;    $57 bit 2,a
  440.  
  441. z80opc57:    bit    2,a
  442.         jmp    z80emu1
  443.  
  444. ;    $58 bit 3,b
  445.  
  446. z80opc58:    bit    3,b
  447.         jmp    z80emu1
  448.  
  449. ;    $59 bit 3,c
  450.  
  451. z80opc59:    bit    3,c
  452.         jmp    z80emu1
  453.  
  454. ;    $5a bit 3,d
  455.  
  456. z80opc5a:    bit    3,d
  457.         jmp    z80emu1
  458.  
  459. ;    $5b bit 3,e
  460.  
  461. z80opc5b:    bit    3,e
  462.         jmp    z80emu1
  463.  
  464. ;    $5c bit 3,h
  465.  
  466. z80opc5c:    bit    3,h
  467.         jmp    z80emu1
  468.  
  469. ;    $5d bit 3,l
  470.  
  471. z80opc5d:    bit    3,l
  472.         jmp    z80emu1
  473.  
  474. ;    $5e bit 3,(hl)
  475.  
  476. z80opc5e:    bit    3,(hl)
  477.         jmp    z80emu1
  478.  
  479. ;    $5f bit 3,a
  480.  
  481. z80opc5f:    bit    3,a
  482.         jmp    z80emu1
  483.  
  484. ;    $60 bit 4,b
  485.  
  486. z80opc60:    bit    4,b
  487.         jmp    z80emu1
  488.  
  489. ;    $61 bit 4,c
  490.  
  491. z80opc61:    bit    4,c
  492.         jmp    z80emu1
  493.  
  494. ;    $62 bit 4,d
  495.  
  496. z80opc62:    bit    4,d
  497.         jmp    z80emu1
  498.  
  499. ;    $63 bit 4,e
  500.  
  501. z80opc63:    bit    4,e
  502.         jmp    z80emu1
  503.  
  504. ;    $64 bit 4,h
  505.  
  506. z80opc64:    bit    4,h
  507.         jmp    z80emu1
  508.  
  509. ;    $65 bit 4,l
  510.  
  511. z80opc65:    bit    4,l
  512.         jmp    z80emu1
  513.  
  514. ;    $66 bit 4,(hl)
  515.  
  516. z80opc66:    bit    4,(hl)
  517.         jmp    z80emu1
  518.  
  519. ;    $67 bit 4,a
  520.  
  521. z80opc67:    bit    4,a
  522.         jmp    z80emu1
  523.  
  524. ;    $68 bit 5,b
  525.  
  526. z80opc68:    bit    5,b
  527.         jmp    z80emu1
  528.  
  529. ;    $69 bit 5,c
  530.  
  531. z80opc69:    bit    5,c
  532.         jmp    z80emu1
  533.  
  534. ;    $6a bit 5,d
  535.  
  536. z80opc6a:    bit    5,d
  537.         jmp    z80emu1
  538.  
  539. ;    $6b bit 5,e
  540.  
  541. z80opc6b:    bit    5,e
  542.         jmp    z80emu1
  543.  
  544. ;    $6c bit 5,h
  545.  
  546. z80opc6c:    bit    5,h
  547.         jmp    z80emu1
  548.  
  549. ;    $6d bit 5,l
  550.  
  551. z80opc6d:    bit    5,l
  552.         jmp    z80emu1
  553.  
  554. ;    $6e bit 5,(hl)
  555.  
  556. z80opc6e:    bit    5,(hl)
  557.         jmp    z80emu1
  558.  
  559. ;    $6f bit 5,a
  560.  
  561. z80opc6f:    bit    5,a
  562.         jmp    z80emu1
  563.  
  564. ;    $70 bit 6,b
  565.  
  566. z80opc70:    bit    6,b
  567.         jmp    z80emu1
  568.  
  569. ;    $71 bit 6,c
  570.  
  571. z80opc71:    bit    6,c
  572.         jmp    z80emu1
  573.  
  574. ;    $72 bit 6,d
  575.  
  576. z80opc72:    bit    6,d
  577.         jmp    z80emu1
  578.  
  579. ;    $73 bit 6,e
  580.  
  581. z80opc73:    bit    6,e
  582.         jmp    z80emu1
  583.  
  584. ;    $74 bit 6,h
  585.  
  586. z80opc74:    bit    6,h
  587.         jmp    z80emu1
  588.  
  589. ;    $75 bit 6,l
  590.  
  591. z80opc75:    bit    6,l
  592.         jmp    z80emu1
  593.  
  594. ;    $76 bit 6,(hl)
  595.  
  596. z80opc76:    bit    6,(hl)
  597.         jmp    z80emu1
  598.  
  599. ;    $77 bit 6,a
  600.  
  601. z80opc77:    bit    6,a
  602.         jmp    z80emu1
  603.  
  604. ;    $78 bit 7,b
  605.  
  606. z80opc78:    bit    7,b
  607.         jmp    z80emu1
  608.  
  609. ;    $79 bit 7,c
  610.  
  611. z80opc79:    bit    7,c
  612.         jmp    z80emu1
  613.  
  614. ;    $7a bit 7,d
  615.  
  616. z80opc7a:    bit    7,d
  617.         jmp    z80emu1
  618.  
  619. ;    $7b bit 7,e
  620.  
  621. z80opc7b:    bit    7,e
  622.         jmp    z80emu1
  623.  
  624. ;    $7c bit 7,h
  625.  
  626. z80opc7c:    bit    7,h
  627.         jmp    z80emu1
  628.  
  629. ;    $7d bit 7,l
  630.  
  631. z80opc7d:    bit    7,l
  632.         jmp    z80emu1
  633.  
  634. ;    $7e bit 7,(hl)
  635.  
  636. z80opc7e:    bit    7,(hl)
  637.         jmp    z80emu1
  638.  
  639. ;    $7f bit 7,a
  640.  
  641. z80opc7f:    bit    7,a
  642.         jmp    z80emu1
  643.  
  644. ;    $80 res 0,b
  645.  
  646. z80opc80:    bclr.l    #8,d3
  647.         jmp    z80emu1
  648.  
  649. ;    $81 res 0,c
  650.  
  651. z80opc81:    bclr.l    #0,d3
  652.         jmp    z80emu1
  653.  
  654. ;    $82 res 0,d
  655.  
  656. z80opc82:    bclr.l    #8,d2
  657.         jmp    z80emu1
  658.  
  659. ;    $83 res 0,e
  660.  
  661. z80opc83:    bclr.l    #0,d2
  662.         jmp    z80emu1
  663.  
  664. ;    $84 res 0,h
  665.  
  666. z80opc84:    bclr.l    #8,d1
  667.         jmp    z80emu1
  668.  
  669. ;    $85 res 0,l
  670.  
  671. z80opc85:    bclr.l    #0,d1
  672.         jmp    z80emu1
  673.  
  674. ;    $86 res 0,(hl)
  675.  
  676. z80opc86:    bclr.b    #0,0(a4,d1.w)
  677.         jmp    z80emu1
  678.  
  679. ;    $87 res 0,a
  680.  
  681. z80opc87:    bclr.l    #0,d0
  682.         jmp    z80emu1
  683.  
  684. ;    $88 res 1,b
  685.  
  686. z80opc88:    bclr.l    #9,d3
  687.         jmp    z80emu1
  688.  
  689. ;    $89 res 1,c
  690.  
  691. z80opc89:    bclr.l    #1,d3
  692.         jmp    z80emu1
  693.  
  694. ;    $8a res 1,d
  695.  
  696. z80opc8a:    bclr.l    #9,d2
  697.         jmp    z80emu1
  698.  
  699. ;    $8b res 1,e
  700.  
  701. z80opc8b:    bclr.l    #1,d2
  702.         jmp    z80emu1
  703.  
  704. ;    $8c res 1,h
  705.  
  706. z80opc8c:    bclr.l    #9,d1
  707.         jmp    z80emu1
  708.  
  709. ;    $8d res 1,l
  710.  
  711. z80opc8d:    bclr.l    #1,d1
  712.         jmp    z80emu1
  713.  
  714. ;    $8e res 1,(hl)
  715.  
  716. z80opc8e:    bclr.b    #1,0(a4,d1.w)
  717.         jmp    z80emu1
  718.  
  719. ;    $8f res 1,a
  720.  
  721. z80opc8f:    bclr.l    #1,d0
  722.         jmp    z80emu1
  723.  
  724. ;    $90 res 2,b
  725.  
  726. z80opc90:    bclr.l    #10,d3
  727.         jmp    z80emu1
  728.  
  729. ;    $91 res 2,c
  730.  
  731. z80opc91:    bclr.l    #2,d3
  732.         jmp    z80emu1
  733.  
  734. ;    $92 res 2,d
  735.  
  736. z80opc92:    bclr.l    #10,d2
  737.         jmp    z80emu1
  738.  
  739. ;    $93 res 2,e
  740.  
  741. z80opc93:    bclr.l    #2,d2
  742.         jmp    z80emu1
  743.  
  744. ;    $94 res 2,h
  745.  
  746. z80opc94:    bclr.l    #10,d1
  747.         jmp    z80emu1
  748.  
  749. ;    $95 res 2,l
  750.  
  751. z80opc95:    bclr.l    #2,d1
  752.         jmp    z80emu1
  753.  
  754. ;    $96 res 2,(hl)
  755.  
  756. z80opc96:    bclr.b    #2,0(a4,d1.w)
  757.         jmp    z80emu1
  758.  
  759. ;    $97 res 2,a
  760.  
  761. z80opc97:    bclr.l    #2,d0
  762.         jmp    z80emu1
  763.  
  764. ;    $98 res 3,b
  765.  
  766. z80opc98:    bclr.l    #11,d3
  767.         jmp    z80emu1
  768.  
  769. ;    $99 res 3,c
  770.  
  771. z80opc99:    bclr.l    #3,d3
  772.         jmp    z80emu1
  773.  
  774. ;    $9a res 3,d
  775.  
  776. z80opc9a:    bclr.l    #11,d2
  777.         jmp    z80emu1
  778.  
  779. ;    $9b res 3,e
  780.  
  781. z80opc9b:    bclr.l    #3,d2
  782.         jmp    z80emu1
  783.  
  784. ;    $9c res 3,h
  785.  
  786. z80opc9c:    bclr.l    #11,d1
  787.         jmp    z80emu1
  788.  
  789. ;    $9d res 3,l
  790.  
  791. z80opc9d:    bclr.l    #3,d1
  792.         jmp    z80emu1
  793.  
  794. ;    $9e res 3,(hl)
  795.  
  796. z80opc9e:    bclr.b    #3,0(a4,d1.w)
  797.         jmp    z80emu1
  798.  
  799. ;    $9f res 3,a
  800.  
  801. z80opc9f:    bclr.l    #3,d0
  802.         jmp    z80emu1
  803.  
  804. ;    $a0 res 4,b
  805.  
  806. z80opca0:    bclr.l    #12,d3
  807.         jmp    z80emu1
  808.  
  809. ;    $a1 res 4,c
  810.  
  811. z80opca1:    bclr.l    #4,d3
  812.         jmp    z80emu1
  813.  
  814. ;    $a2 res 4,d
  815.  
  816. z80opca2:    bclr.l    #12,d2
  817.         jmp    z80emu1
  818.  
  819. ;    $a3 res 4,e
  820.  
  821. z80opca3:    bclr.l    #4,d2
  822.         jmp    z80emu1
  823.  
  824. ;    $a4 res 4,h
  825.  
  826. z80opca4:    bclr.l    #12,d1
  827.         jmp    z80emu1
  828.  
  829. ;    $a5 res 4,l
  830.  
  831. z80opca5:    bclr.l    #4,d1
  832.         jmp    z80emu1
  833.  
  834. ;    $a6 res 4,(hl)
  835.  
  836. z80opca6:    bclr.b    #4,0(a4,d1.w)
  837.         jmp    z80emu1
  838.  
  839. ;    $a7 res 4,a
  840.  
  841. z80opca7:    bclr.l    #4,d0
  842.         jmp    z80emu1
  843.  
  844. ;    $a8 res 5,b
  845.  
  846. z80opca8:    bclr.l    #13,d3
  847.         jmp    z80emu1
  848.  
  849. ;    $a9 res 5,c
  850.  
  851. z80opca9:    bclr.l    #5,d3
  852.         jmp    z80emu1
  853.  
  854. ;    $aa res 5,d
  855.  
  856. z80opcaa:    bclr.l    #13,d2
  857.         jmp    z80emu1
  858.  
  859. ;    $ab res 5,e
  860.  
  861. z80opcab:    bclr.l    #5,d2
  862.         jmp    z80emu1
  863.  
  864. ;    $ac res 5,h
  865.  
  866. z80opcac:    bclr.l    #13,d1
  867.         jmp    z80emu1
  868.  
  869. ;    $ad res 5,l
  870.  
  871. z80opcad:    bclr.l    #5,d1
  872.         jmp    z80emu1
  873.  
  874. ;    $ae res 5,(hl)
  875.  
  876. z80opcae:    bclr.b    #5,0(a4,d1.w)
  877.         jmp    z80emu1
  878.  
  879. ;    $af res 5,a
  880.  
  881. z80opcaf:    bclr.l    #5,d0
  882.         jmp    z80emu1
  883.  
  884. ;    $b0 res 6,b
  885.  
  886. z80opcb0:    bclr.l    #14,d3
  887.         jmp    z80emu1
  888.  
  889. ;    $b1 res 6,c
  890.  
  891. z80opcb1:    bclr.l    #6,d3
  892.         jmp    z80emu1
  893.  
  894. ;    $b2 res 6,d
  895.  
  896. z80opcb2:    bclr.l    #14,d2
  897.         jmp    z80emu1
  898.  
  899. ;    $b3 res 6,e
  900.  
  901. z80opcb3:    bclr.l    #6,d2
  902.         jmp    z80emu1
  903.  
  904. ;    $74 res 6,h
  905.  
  906. z80opcb4:    bclr.l    #14,d1
  907.         jmp    z80emu1
  908.  
  909. ;    $b5 res 6,l
  910.  
  911. z80opcb5:    bclr.l    #6,d1
  912.         jmp    z80emu1
  913.  
  914. ;    $b6 res 6,(hl)
  915.  
  916. z80opcb6:    bclr.b    #6,0(a4,d1.w)
  917.         jmp    z80emu1
  918.  
  919. ;    $b7 res 6,a
  920.  
  921. z80opcb7:    bclr.l    #6,d0
  922.         jmp    z80emu1
  923.  
  924. ;    $b8 res 7,b
  925.  
  926. z80opcb8:    bclr.l    #15,d3
  927.         jmp    z80emu1
  928.  
  929. ;    $b9 res 7,c
  930.  
  931. z80opcb9:    bclr.l    #7,d3
  932.         jmp    z80emu1
  933.  
  934. ;    $ba res 7,d
  935.  
  936. z80opcba:    bclr.l    #15,d2
  937.         jmp    z80emu1
  938.  
  939. ;    $bb res 7,e
  940.  
  941. z80opcbb:    bclr.l    #7,d2
  942.         jmp    z80emu1
  943.  
  944. ;    $bc res 7,h
  945.  
  946. z80opcbc:    bclr.l    #15,d1
  947.         jmp    z80emu1
  948.  
  949. ;    $bd res 7,l
  950.  
  951. z80opcbd:    bclr.l    #7,d1
  952.         jmp    z80emu1
  953.  
  954. ;    $be res 7,(hl)
  955.  
  956. z80opcbe:    bclr.b    #7,0(a4,d1.w)
  957.         jmp    z80emu1
  958.  
  959. ;    $bf res 7,a
  960.  
  961. z80opcbf:    bclr.l    #7,d0
  962.         jmp    z80emu1
  963.  
  964. ;    $c0 set 0,b
  965.  
  966. z80opcc0:    bset.l    #8,d3
  967.         jmp    z80emu1
  968.  
  969. ;    $c1 set 0,c
  970.  
  971. z80opcc1:    bset.l    #0,d3
  972.         jmp    z80emu1
  973.  
  974. ;    $c2 set 0,d
  975.  
  976. z80opcc2:    bset.l    #8,d2
  977.         jmp    z80emu1
  978.  
  979. ;    $c3 set 0,e
  980.  
  981. z80opcc3:    bset.l    #0,d2
  982.         jmp    z80emu1
  983.  
  984. ;    $c4 set 0,h
  985.  
  986. z80opcc4:    bset.l    #8,d1
  987.         jmp    z80emu1
  988.  
  989. ;    $c5 set 0,l
  990.  
  991. z80opcc5:    bset.l    #0,d1
  992.         jmp    z80emu1
  993.  
  994. ;    $c6 set 0,(hl)
  995.  
  996. z80opcc6:    bset.b    #0,0(a4,d1.w)
  997.         jmp    z80emu1
  998.  
  999. ;    $c7 set 0,a
  1000.  
  1001. z80opcc7:    bset.l    #0,d0
  1002.         jmp    z80emu1
  1003.  
  1004. ;    $c8 set 1,b
  1005.  
  1006. z80opcc8:    bset.l    #9,d3
  1007.         jmp    z80emu1
  1008.  
  1009. ;    $c9 set 1,c
  1010.  
  1011. z80opcc9:    bset.l    #1,d3
  1012.         jmp    z80emu1
  1013.  
  1014. ;    $ca set 1,d
  1015.  
  1016. z80opcca:    bset.l    #9,d2
  1017.         jmp    z80emu1
  1018.  
  1019. ;    $cb set 1,e
  1020.  
  1021. z80opccb1:    bset.l    #1,d2
  1022.         jmp    z80emu1
  1023.  
  1024. ;    $cc set 1,h
  1025.  
  1026. z80opccc:    bset.l    #9,d1
  1027.         jmp    z80emu1
  1028.  
  1029. ;    $cd set 1,l
  1030.  
  1031. z80opccd:    bset.l    #1,d1
  1032.         jmp    z80emu1
  1033.  
  1034. ;    $ce set 1,(hl)
  1035.  
  1036. z80opcce:    bset.b    #1,0(a4,d1.w)
  1037.         jmp    z80emu1
  1038.  
  1039. ;    $cf set 1,a
  1040.  
  1041. z80opccf:    bset.l    #1,d0
  1042.         jmp    z80emu1
  1043.  
  1044. ;    $d0 set 2,b
  1045.  
  1046. z80opcd0:    bset.l    #10,d3
  1047.         jmp    z80emu1
  1048.  
  1049. ;    $d1 set 2,c
  1050.  
  1051. z80opcd1:    bset.l    #2,d3
  1052.         jmp    z80emu1
  1053.  
  1054. ;    $d2 set 2,d
  1055.  
  1056. z80opcd2:    bset.l    #10,d2
  1057.         jmp    z80emu1
  1058.  
  1059. ;    $d3 set 2,e
  1060.  
  1061. z80opcd3:    bset.l    #2,d2
  1062.         jmp    z80emu1
  1063.  
  1064. ;    $d4 set 2,h
  1065.  
  1066. z80opcd4:    bset.l    #10,d1
  1067.         jmp    z80emu1
  1068.  
  1069. ;    $d5 set 2,l
  1070.  
  1071. z80opcd5:    bset.l    #2,d1
  1072.         jmp    z80emu1
  1073.  
  1074. ;    $d6 set 2,(hl)
  1075.  
  1076. z80opcd6:    bset.b    #2,0(a4,d1.w)
  1077.         jmp    z80emu1
  1078.  
  1079. ;    $d7 set 2,a
  1080.  
  1081. z80opcd7:    bset.l    #2,d0
  1082.         jmp    z80emu1
  1083.  
  1084. ;    $d8 set 3,b
  1085.  
  1086. z80opcd8:    bset.l    #11,d3
  1087.         jmp    z80emu1
  1088.  
  1089. ;    $d9 set 3,c
  1090.  
  1091. z80opcd9:    bset.l    #3,d3
  1092.         jmp    z80emu1
  1093.  
  1094. ;    $da set 3,d
  1095.  
  1096. z80opcda:    bset.l    #11,d2
  1097.         jmp    z80emu1
  1098.  
  1099. ;    $db set 3,e
  1100.  
  1101. z80opcdb:    bset.l    #3,d2
  1102.         jmp    z80emu1
  1103.  
  1104. ;    $dc set 3,h
  1105.  
  1106. z80opcdc:    bset.l    #11,d1
  1107.         jmp    z80emu1
  1108.  
  1109. ;    $dd set 3,l
  1110.  
  1111. z80opcdd:    bset.l    #3,d1
  1112.         jmp    z80emu1
  1113.  
  1114. ;    $de set 3,(hl)
  1115.  
  1116. z80opcde:    bset.b    #3,0(a4,d1.w)
  1117.         jmp    z80emu1
  1118.  
  1119. ;    $df set 3,a
  1120.  
  1121. z80opcdf:    bset.l    #3,d0
  1122.         jmp    z80emu1
  1123.  
  1124. ;    $e0 set 4,b
  1125.  
  1126. z80opce0:    bset.l    #12,d3
  1127.         jmp    z80emu1
  1128.  
  1129. ;    $e1 set 4,c
  1130.  
  1131. z80opce1:    bset.l    #4,d3
  1132.         jmp    z80emu1
  1133.  
  1134. ;    $e2 set 4,d
  1135.  
  1136. z80opce2:    bset.l    #12,d2
  1137.         jmp    z80emu1
  1138.  
  1139. ;    $e3 set 4,e
  1140.  
  1141. z80opce3:    bset.l    #4,d2
  1142.         jmp    z80emu1
  1143.  
  1144. ;    $e4 set 4,h
  1145.  
  1146. z80opce4:    bset.l    #12,d1
  1147.         jmp    z80emu1
  1148.  
  1149. ;    $e5 set 4,l
  1150.  
  1151. z80opce5:    bclr.l    #4,d1
  1152.         jmp    z80emu1
  1153.  
  1154. ;    $e6 set 4,(hl)
  1155.  
  1156. z80opce6:    bset.b    #4,0(a4,d1.w)
  1157.         jmp    z80emu1
  1158.  
  1159. ;    $e7 set 4,a
  1160.  
  1161. z80opce7:    bset.l    #4,d0
  1162.         jmp    z80emu1
  1163.  
  1164. ;    $e8 set 5,b
  1165.  
  1166. z80opce8:    bset.l    #13,d3
  1167.         jmp    z80emu1
  1168.  
  1169. ;    $e9 set 5,c
  1170.  
  1171. z80opce9:    bset.l    #5,d3
  1172.         jmp    z80emu1
  1173.  
  1174. ;    $ea set 5,d
  1175.  
  1176. z80opcea:    bset.l    #13,d2
  1177.         jmp    z80emu1
  1178.  
  1179. ;    $eb set 5,e
  1180.  
  1181. z80opceb:    bset.l    #5,d2
  1182.         jmp    z80emu1
  1183.  
  1184. ;    $ec set 5,h
  1185.  
  1186. z80opcec:    bset.l    #13,d1
  1187.         jmp    z80emu1
  1188.  
  1189. ;    $ed set 5,l
  1190.  
  1191. z80opced:    bset.l    #5,d1
  1192.         jmp    z80emu1
  1193.  
  1194. ;    $ee set 5,(hl)
  1195.  
  1196. z80opcee:    bset.b    #5,0(a4,d1.w)
  1197.         jmp    z80emu1
  1198.  
  1199. ;    $ef set 5,a
  1200.  
  1201. z80opcef:    bset.l    #5,d0
  1202.         jmp    z80emu1
  1203.  
  1204. ;    $f0 set 6,b
  1205.  
  1206. z80opcf0:    bset.l    #14,d3
  1207.         jmp    z80emu1
  1208.  
  1209. ;    $f1 set 6,c
  1210.  
  1211. z80opcf1:    bset.l    #6,d3
  1212.         jmp    z80emu1
  1213.  
  1214. ;    $f2 set 6,d
  1215.  
  1216. z80opcf2:    bset.l    #14,d2
  1217.         jmp    z80emu1
  1218.  
  1219. ;    $f3 set 6,e
  1220.  
  1221. z80opcf3:    bset.l    #6,d2
  1222.         jmp    z80emu1
  1223.  
  1224. ;    $f4 set 6,h
  1225.  
  1226. z80opcf4:    bset.l    #14,d1
  1227.         jmp    z80emu1
  1228.  
  1229. ;    $f5 set 6,l
  1230.  
  1231. z80opcf5:    bset.l    #6,d1
  1232.         jmp    z80emu1
  1233.  
  1234. ;    $f6 set 6,(hl)
  1235.  
  1236. z80opcf6:    bset.b    #6,0(a4,d1.w)
  1237.         jmp    z80emu1
  1238.  
  1239. ;    $f7 set 6,a
  1240.  
  1241. z80opcf7:    bset.l    #6,d0
  1242.         jmp    z80emu1
  1243.  
  1244. ;    $f8 set 7,b
  1245.  
  1246. z80opcf8:    bset.l    #15,d3
  1247.         jmp    z80emu1
  1248.  
  1249. ;    $f9 set 7,c
  1250.  
  1251. z80opcf9:    bset.l    #7,d3
  1252.         jmp    z80emu1
  1253.  
  1254. ;    $fa set 7,d
  1255.  
  1256. z80opcfa:    bset.l    #15,d2
  1257.         jmp    z80emu1
  1258.  
  1259. ;    $fb set 7,e
  1260.  
  1261. z80opcfb:    bset.l    #7,d2
  1262.         jmp    z80emu1
  1263.  
  1264. ;    $fc set 7,h
  1265.  
  1266. z80opcfc:    bset.l    #15,d1
  1267.         jmp    z80emu1
  1268.  
  1269. ;    $fd set 7,l
  1270.  
  1271. z80opcfd:    bset.l    #7,d1
  1272.         jmp    z80emu1
  1273.  
  1274. ;    $fe set 7,(hl)
  1275.  
  1276. z80opcfe:    bset.b    #7,0(a4,d1.w)
  1277.         jmp    z80emu1
  1278.  
  1279. ;    $ff set 7,a
  1280.  
  1281. z80opcff:    bset.l    #7,d0
  1282.         jmp    z80emu1
  1283.  
  1284. ;    data area
  1285. ;    initialized data area
  1286.  
  1287. ;    address table for z80 second opcode $cb
  1288.  
  1289. z80opctabcb:    dc.l  z80emuni
  1290.         dc.l  z80emuni
  1291.         dc.l  z80emuni
  1292.         dc.l  z80emuni
  1293.         dc.l  z80emuni
  1294.         dc.l  z80emuni
  1295.         dc.l  z80emuni
  1296.         dc.l  z80emuni
  1297.         dc.l  z80emuni
  1298.         dc.l  z80emuni
  1299.         dc.l  z80emuni
  1300.         dc.l  z80emuni
  1301.         dc.l  z80emuni
  1302.         dc.l  z80emuni
  1303.         dc.l  z80emuni
  1304.         dc.l  z80emuni
  1305.         dc.l  z80opc10            ;$10
  1306.         dc.l  z80opc11
  1307.         dc.l  z80opc12
  1308.         dc.l  z80opc13
  1309.         dc.l  z80opc14
  1310.         dc.l  z80opc15
  1311.         dc.l  z80opc16
  1312.         dc.l  z80opc17
  1313.         dc.l  z80opc18
  1314.         dc.l  z80opc19
  1315.         dc.l  z80opc1a
  1316.         dc.l  z80opc1b
  1317.         dc.l  z80opc1c
  1318.         dc.l  z80opc1d
  1319.         dc.l  z80opc1e
  1320.         dc.l  z80opc1f
  1321.         dc.l  z80opc20            ;$20
  1322.         dc.l  z80opc21
  1323.         dc.l  z80opc22
  1324.         dc.l  z80opc23
  1325.         dc.l  z80opc24
  1326.         dc.l  z80opc25
  1327.         dc.l  z80opc26
  1328.         dc.l  z80opc27
  1329.         dc.l  z80opc28
  1330.         dc.l  z80opc29
  1331.         dc.l  z80opc2a
  1332.         dc.l  z80opc2b
  1333.         dc.l  z80opc2c
  1334.         dc.l  z80opc2d
  1335.         dc.l  z80opc2e
  1336.         dc.l  z80opc2f
  1337.         dc.l  z80emuni            ;$30
  1338.         dc.l  z80emuni
  1339.         dc.l  z80emuni
  1340.         dc.l  z80emuni
  1341.         dc.l  z80emuni
  1342.         dc.l  z80emuni
  1343.         dc.l  z80emuni
  1344.         dc.l  z80emuni
  1345.         dc.l  z80opc38
  1346.         dc.l  z80opc39
  1347.         dc.l  z80opc3a
  1348.         dc.l  z80opc3b
  1349.         dc.l  z80opc3c
  1350.         dc.l  z80opc3d
  1351.         dc.l  z80opc3e
  1352.         dc.l  z80opc3f
  1353.         dc.l  z80opc40            ;$40
  1354.         dc.l  z80opc41
  1355.         dc.l  z80opc42
  1356.         dc.l  z80opc43
  1357.         dc.l  z80opc44
  1358.         dc.l  z80opc45
  1359.         dc.l  z80opc46
  1360.         dc.l  z80opc47
  1361.         dc.l  z80opc48
  1362.         dc.l  z80opc49
  1363.         dc.l  z80opc4a
  1364.         dc.l  z80opc4b
  1365.         dc.l  z80opc4c
  1366.         dc.l  z80opc4d
  1367.         dc.l  z80opc4e
  1368.         dc.l  z80opc4f
  1369.         dc.l  z80opc50            ;$50
  1370.         dc.l  z80opc51
  1371.         dc.l  z80opc52
  1372.         dc.l  z80opc53
  1373.         dc.l  z80opc54
  1374.         dc.l  z80opc55
  1375.         dc.l  z80opc56
  1376.         dc.l  z80opc57
  1377.         dc.l  z80opc58
  1378.         dc.l  z80opc59
  1379.         dc.l  z80opc5a
  1380.         dc.l  z80opc5b
  1381.         dc.l  z80opc5c
  1382.         dc.l  z80opc5d
  1383.         dc.l  z80opc5e
  1384.         dc.l  z80opc5f
  1385.         dc.l  z80opc60            ;$60
  1386.         dc.l  z80opc61
  1387.         dc.l  z80opc62
  1388.         dc.l  z80opc63
  1389.         dc.l  z80opc64
  1390.         dc.l  z80opc65
  1391.         dc.l  z80opc66
  1392.         dc.l  z80opc67
  1393.         dc.l  z80opc68
  1394.         dc.l  z80opc69
  1395.         dc.l  z80opc6a
  1396.         dc.l  z80opc6b
  1397.         dc.l  z80opc6c
  1398.         dc.l  z80opc6d
  1399.         dc.l  z80opc6e
  1400.         dc.l  z80opc6f
  1401.         dc.l  z80opc70            ;$70
  1402.         dc.l  z80opc71
  1403.         dc.l  z80opc72
  1404.         dc.l  z80opc73
  1405.         dc.l  z80opc74
  1406.         dc.l  z80opc75
  1407.         dc.l  z80opc76
  1408.         dc.l  z80opc77
  1409.         dc.l  z80opc78
  1410.         dc.l  z80opc79
  1411.         dc.l  z80opc7a
  1412.         dc.l  z80opc7b
  1413.         dc.l  z80opc7c
  1414.         dc.l  z80opc7d
  1415.         dc.l  z80opc7e
  1416.         dc.l  z80opc7f
  1417.         dc.l  z80opc80            ;$80
  1418.         dc.l  z80opc81
  1419.         dc.l  z80opc82
  1420.         dc.l  z80opc83
  1421.         dc.l  z80opc84
  1422.         dc.l  z80opc85
  1423.         dc.l  z80opc86
  1424.         dc.l  z80opc87
  1425.         dc.l  z80opc88
  1426.         dc.l  z80opc89
  1427.         dc.l  z80opc8a
  1428.         dc.l  z80opc8b
  1429.         dc.l  z80opc8c
  1430.         dc.l  z80opc8d
  1431.         dc.l  z80opc8e
  1432.         dc.l  z80opc8f
  1433.         dc.l  z80opc90            ;$90
  1434.         dc.l  z80opc91
  1435.         dc.l  z80opc92
  1436.         dc.l  z80opc93
  1437.         dc.l  z80opc94
  1438.         dc.l  z80opc95
  1439.         dc.l  z80opc96
  1440.         dc.l  z80opc97
  1441.         dc.l  z80opc98
  1442.         dc.l  z80opc99
  1443.         dc.l  z80opc9a
  1444.         dc.l  z80opc9b
  1445.         dc.l  z80opc9c
  1446.         dc.l  z80opc9d
  1447.         dc.l  z80opc9e
  1448.         dc.l  z80opc9f
  1449.         dc.l  z80opca0            ;$a0
  1450.         dc.l  z80opca1
  1451.         dc.l  z80opca2
  1452.         dc.l  z80opca3
  1453.         dc.l  z80opca4
  1454.         dc.l  z80opca5
  1455.         dc.l  z80opca6
  1456.         dc.l  z80opca7
  1457.         dc.l  z80opca8
  1458.         dc.l  z80opca9
  1459.         dc.l  z80opcaa
  1460.         dc.l  z80opcab
  1461.         dc.l  z80opcac
  1462.         dc.l  z80opcad
  1463.         dc.l  z80opcae
  1464.         dc.l  z80opcaf
  1465.         dc.l  z80opcb0            ;$b0
  1466.         dc.l  z80opcb1
  1467.         dc.l  z80opcb2
  1468.         dc.l  z80opcb3
  1469.         dc.l  z80opcb4
  1470.         dc.l  z80opcb5
  1471.         dc.l  z80opcb6
  1472.         dc.l  z80opcb7
  1473.         dc.l  z80opcb8
  1474.         dc.l  z80opcb9
  1475.         dc.l  z80opcba
  1476.         dc.l  z80opcbb
  1477.         dc.l  z80opcbc
  1478.         dc.l  z80opcbd
  1479.         dc.l  z80opcbe
  1480.         dc.l  z80opcbf
  1481.         dc.l  z80opcc0            ;$c0
  1482.         dc.l  z80opcc1
  1483.         dc.l  z80opcc2
  1484.         dc.l  z80opcc3
  1485.         dc.l  z80opcc4
  1486.         dc.l  z80opcc5
  1487.         dc.l  z80opcc6
  1488.         dc.l  z80opcc7
  1489.         dc.l  z80opcc8
  1490.         dc.l  z80opcc9
  1491.         dc.l  z80opcca
  1492.         dc.l  z80opccb1         ;opcode $cb already used
  1493.         dc.l  z80opccc
  1494.         dc.l  z80opccd
  1495.         dc.l  z80opcce
  1496.         dc.l  z80opccf
  1497.         dc.l  z80opcd0            ;$d0
  1498.         dc.l  z80opcd1
  1499.         dc.l  z80opcd2
  1500.         dc.l  z80opcd3
  1501.         dc.l  z80opcd4
  1502.         dc.l  z80opcd5
  1503.         dc.l  z80opcd6
  1504.         dc.l  z80opcd7
  1505.         dc.l  z80opcd8
  1506.         dc.l  z80opcd9
  1507.         dc.l  z80opcda
  1508.         dc.l  z80opcdb
  1509.         dc.l  z80opcdc
  1510.         dc.l  z80opcdd
  1511.         dc.l  z80opcde
  1512.         dc.l  z80opcdf
  1513.         dc.l  z80opce0            ;$e0
  1514.         dc.l  z80opce1
  1515.         dc.l  z80opce2
  1516.         dc.l  z80opce3
  1517.         dc.l  z80opce4
  1518.         dc.l  z80opce5
  1519.         dc.l  z80opce6
  1520.         dc.l  z80opce7
  1521.         dc.l  z80opce8
  1522.         dc.l  z80opce9
  1523.         dc.l  z80opcea
  1524.         dc.l  z80opceb
  1525.         dc.l  z80opcec
  1526.         dc.l  z80opced
  1527.         dc.l  z80opcee
  1528.         dc.l  z80opcef
  1529.         dc.l  z80opcf0            ;$f0
  1530.         dc.l  z80opcf1
  1531.         dc.l  z80opcf2
  1532.         dc.l  z80opcf3
  1533.         dc.l  z80opcf4
  1534.         dc.l  z80opcf5
  1535.         dc.l  z80opcf6
  1536.         dc.l  z80opcf7
  1537.         dc.l  z80opcf8
  1538.         dc.l  z80opcf9
  1539.         dc.l  z80opcfa
  1540.         dc.l  z80opcfb
  1541.         dc.l  z80opcfc
  1542.         dc.l  z80opcfd
  1543.         dc.l  z80opcfe
  1544.         dc.l  z80opcff
  1545.  
  1546. ;    debug count instruction
  1547.  
  1548. cntinst:    addq.l    #1,a0
  1549.  
  1550.         end
  1551.  
  1552.  
  1553.  
  1554.  
  1555.