復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します
ND80ZVとMYCPU80の上でCP/Mが走ります!
[第183回]
●ブレークプログラム(2)
前回はブレークポイントを設定して、ブレークしたときに実行されるプログラムのリストをお見せしたところで終わってしまいました。
このところ多忙でなかなか落ち着いて書いている時間がありません。
今回も中途で終わってしまうかもしれません。
ま。
できるところまでやりましょう。
前回お見せしたブレーク処理プログラムの先頭の部分です。
;;; ;;;BREAK ENTRY 1B42 F3 BROUT:DI 1B43 E3 EX (SP),HL 1B44 2B DEC HL 1B45 229BF0 LD (PCL),HL 1B48 E1 POP HL 1B49 ED7399F0 LD (SPBF),SP |
1B4D 3198F0 LD SP,IREG 1B50 DDE5 PUSH IX 1B52 FDE5 PUSH IY 1B54 F5 PUSH AF 1B55 C5 PUSH BC 1B56 D5 PUSH DE 1B57 E5 PUSH HL 1B58 08 EX AF,AF' 1B59 F5 PUSH AF 1B5A D9 EXX 1B5B C5 PUSH BC 1B5C D5 PUSH DE 1B5D E5 PUSH HL 1B5E ED57 LD A,I 1B60 3298F0 LD (IREG),A |
1B63 2100F5 LD HL,STC 1B66 1100ED LD DE,STCWK 1B69 010003 LD BC,$0300 1B6C EDB0 LDIR 1B6E 3100F8 LD SP,SPTOP 1B71 3AE6FE LD A,(EIMK) 1B74 B7 OR A 1B75 CA791B JP Z,BROUT2 1B78 FB EI 1B79 3A83F0 BROUT2:LD A,(BRKCK) 1B7C B7 OR A 1B7D CA981B JP Z,BRK2 1B80 AF XOR A 1B81 3283F0 LD (BRKCK),A 1B84 2A80F0 LD HL,(BRKAD) 1B87 7C LD A,H 1B88 FE40 CP 40 1B8A D2941B JP NC,BRK1 1B8D DB01 IN A,(01) 1B8F E67F AND 7F 1B91 3283F0 LD (BRKCK),A 1B94 3A82F0 BRK1:LD A,(BRKBF) 1B97 77 LD (HL),A 1B98 CDFD1A BRK2:CALL RGDSP 1B9B C3A118 JP ENTRY |
;;; ;;;REGISTER DISP 1AFD CD1B10 RGDSP:CALL CRLF 1B00 11B81F LD DE,RGTBL 1B03 AF XOR A 1B04 CD1810 CALL DEDSP 1B07 0608 LD B,08 1B09 1193F0 LD DE,ACC1 1B0C CD331B CALL RGDPS 1B0F 0602 LD B,02 1B11 119CF0 LD DE,PCH 1B14 CD331B CALL RGDPS 1B17 0602 LD B,02 1B19 1197F0 LD DE,IXH 1B1C CD331B CALL RGDPS 1B1F 3A98F0 LD A,(IREG) 1B22 67 LD H,A 1B23 CD4B10 CALL HXDP2 1B26 CD3910 CALL SPCDP 1B29 3A92F0 LD A,(FLG1) 1B2C CD6610 CALL BITDP 1B2F CD1B10 CALL CRLF 1B32 C9 RET ;;;REGISTER DISP(SUB) 1B33 1A RGDPS:LD A,(DE) 1B34 67 LD H,A 1B35 1B DEC DE 1B36 1A LD A,(DE) 1B37 6F LD L,A 1B38 CD4E10 CALL HXDP4 1B3B CD3910 CALL SPCDP 1B3E 1B DEC DE 1B3F 10F2 DJNZ RGDPS 1B41 C9 RET ;;; |