]> cloudbase.mooo.com Git - ddt180.git/blobdiff - ddtz.z80
Edit, remove 'jr $+0', rmove 2x 'jp (hl)'
[ddt180.git] / ddtz.z80
index f964dc3ac9cad8c07c67523f414c5427ab0f8ba4..b92164ae5aa298534b7e120c9d09158892384d95 100644 (file)
--- a/ddtz.z80
+++ b/ddtz.z80
@@ -247,8 +247,6 @@ ERROR:
 exe_hl:\r
        call CALL_HL            ;010a   cd 0f 01        . . .\r
        jr mainloop             ;010d   18 ae   . .\r
-CALL_HL:\r
-       jp (hl)                 ;010f   e9      .\r
 \r
 CMDTAB:\r
        defw cmd_@              ;0110   92 0d   . .\r
@@ -292,7 +290,7 @@ get_line:
        ld de,conbuf+1          ;015a   11 6b 00        . k .\r
        ld a,(de)               ;015d   1a      .\r
        ld b,a                  ;015e   47      G\r
-       ld c,000h               ;015f   0e 00   . .\r
+       ld c,0                  ;015f   0e 00   . .\r
        inc b                   ;0161   04      .\r
 l0162h:\r
        inc de                  ;0162   13      .\r
@@ -471,6 +469,7 @@ l0242h:
        ex af,af'               ;0257   08      .\r
        jr c,l022dh             ;0258   38 d3   8 .\r
        ret                     ;025a   c9      .\r
+\r
 outquote:\r
        ld a,''''               ;025b   3e 27   > '\r
 outchar:\r
@@ -508,7 +507,7 @@ l0284h:
        pop hl                  ;0286   e1      .\r
        ret                     ;0287   c9      .\r
 pstr:\r
-       ld c,000h               ;0288   0e 00   . .\r
+       ld c,0                  ;0288   0e 00   . .\r
 l028ah:\r
        ld a,(hl)               ;028a   7e      ~\r
        and a                   ;028b   a7      .\r
@@ -655,13 +654,15 @@ l0339h:
        and a                   ;033a   a7      .\r
        pop bc                  ;033b   c1      .\r
        ret                     ;033c   c9      .\r
-sub_033dh:\r
+\r
+sel_dc_string:\r
        inc b                   ;033d   04      .\r
 l033eh:\r
        dec b                   ;033e   05      .\r
        ret z                   ;033f   c8      .\r
        call sub_0345h          ;0340   cd 45 03        . E .\r
        jr l033eh               ;0343   18 f9   . .\r
+\r
 sub_0345h:\r
        ld a,(hl)               ;0345   7e      ~\r
        and a                   ;0346   a7      .\r
@@ -672,6 +673,7 @@ l0348h:
        and a                   ;034a   a7      .\r
        ret m                   ;034b   f8      .\r
        jr l0348h               ;034c   18 fa   . .\r
+\r
 sub_034eh:\r
        call get_arg_range      ;034e   cd 7d 03        . } .\r
        push hl                 ;0351   e5      .\r
@@ -863,8 +865,8 @@ l0433h:
        push bc                 ;0437   c5      .\r
        call do_factor          ;0438   cd e4 04        . . .\r
        pop bc                  ;043b   c1      .\r
-       ex de,hl                        ;043c   eb      .\r
-       ex (sp),hl                      ;043d   e3      .\r
+       ex de,hl                ;043c   eb      .\r
+       ex (sp),hl              ;043d   e3      .\r
        jr nc,l0447h            ;043e   30 07   0 .\r
        pop de                  ;0440   d1      .\r
        ld a,b                  ;0441   78      x\r
@@ -1992,7 +1994,7 @@ cmd_X:
        jp z,ERROR              ;0c08   ca 07 01        . . .\r
        ex de,hl                ;0c0b   eb      .\r
        ld hl,b_0cc3_start      ;0c0c   21 c3 0c        ! . .\r
-       call sub_033dh          ;0c0f   cd 3d 03        . = .\r
+       call sel_dc_string      ;0c0f   cd 3d 03        . = .\r
 l0c12h:\r
        call l0c33h             ;0c12   cd 33 0c        . 3 .\r
 l0c15h:\r
@@ -3070,6 +3072,8 @@ sub_1268h:
        ld b,(hl)               ;1285   46      F\r
        ex de,hl                ;1286   eb      .\r
        pop de                  ;1287   d1      .\r
+\r
+CALL_HL:\r
        jp (hl)                 ;1288   e9      .\r
 \r
 b_1289_start:\r
@@ -4289,9 +4293,6 @@ l19b1h:
        scf                     ;19bf   37      7\r
        ret                     ;19c0   c9      .\r
 \r
-; TODO:\r
-       nop  ;jp (hl)           ;19c1   e9      .\r
-\r
 disas_pfx.DDFD:\r
        inc iy                  ;19c2   fd 23   . #\r
        ld hl,b_19ef_start      ;19c4   21 ef 19        ! . .\r
@@ -4516,15 +4517,15 @@ b_1ad1_start:
        db 0f8h,0b8h,013h       ;\r
        dw l1e30h\r
        db 0c7h,0c0h,08bh       ;ret cc\r
-       dw l1e9dh\r
+       dw prnt_arg_cc\r
        db 0c7h,0c7h,0b4h       ;rst\r
        dw l1c98h\r
        db 0ffh,0c9h,08bh       ;ret\r
        dw l1c97h\r
        db 0cfh,0c1h,081h       ;pop rr\r
-       dw l1e86h\r
+       dw prnt_arg_zz\r
        db 0cfh,0c5h,084h       ;push rr\r
-       dw l1e86h\r
+       dw prnt_arg_zz\r
        db 0ffh,0e3h,034h       ;ex (sp),hl\r
        dw l1ca0h\r
        db 0ffh,0e9h,052h       ;jp (hl)\r
@@ -4534,9 +4535,9 @@ b_1ad1_start:
        db 0ffh,0f9h,056h       ;ld sp,hl\r
        dw l1cc1h\r
        db 0cfh,003h,041h       ;inc rr\r
-       dw l1e8bh\r
+       dw prnt_arg_ww\r
        db 0cfh,00bh,029h       ;dec rr\r
-       dw l1e8bh\r
+       dw prnt_arg_ww\r
        db 0c7h,004h,041h       ;inc r\r
        dw l1e28h\r
        db 0c7h,005h,029h       ;dec r\r
@@ -4637,15 +4638,15 @@ b_1bc9_start:
        db 0ffh                 ;<end mark>\r
 \r
 b_1bf4_start:\r
-       db 0e7h,040h,03fh       ;in r,(c) ;r=bcde\r
+       db 0e7h,040h,03fh       ;in r,(c) ;r=b,c,d,e\r
        dw l1db3h               ;\r
-       db 0f7h,060h,03fh       ;in r,(c) ;r=hl\r
+       db 0f7h,060h,03fh       ;in r,(c) ;r=h,l\r
        dw l1db3h               ;\r
        db 0ffh,078h,03fh       ;in r,(c) ;r=a\r
        dw l1db3h               ;\r
-       db 0e7h,041h,076h       ;out (c),r ;r=bcde\r
+       db 0e7h,041h,076h       ;out (c),r ;r=b,c,d,e\r
        dw l1dbfh               ;\r
-       db 0f7h,061h,076h       ;out (c),r ;r=hl\r
+       db 0f7h,061h,076h       ;out (c),r ;r=h,l\r
        dw l1dbfh               ;\r
        db 0ffh,079h,076h       ;out (c),r ;r=a\r
        dw l1dbfh               ;\r
@@ -4668,21 +4669,21 @@ b_1bf4_start:
        db 0ffh,05fh,056h       ;ld a,r\r
        dw l1da1h\r
        db 0cfh,04ch,0d2h       ;mlt rr\r
-       dw l1e8bh\r
+       dw prnt_arg_ww\r
        db 0c7h,004h,0eeh       ;tst r\r
        dw l1e28h\r
        db 0\r
 \r
 l228bh:\r
-       db 0e7h,000h,0cfh       ;\r
+       db 0e7h,000h,0cfh       ;in0 r,(m) ;r=b,c,d,e\r
        dw l230ch\r
-       db 0f7h,020h,0cfh       ;\r
+       db 0f7h,020h,0cfh       ;in0 r,(m) ;r=h,l\r
        dw l230ch\r
        db 0ffh,038h,0cfh       ;in0 a,(m)\r
        dw l230ch\r
-       db 0e7h,001h,0e7h       ;\r
+       db 0e7h,001h,0e7h       ;out0 (m),r ;r=b,c,d,e\r
        dw l2315h\r
-       db 0f7h,021h,0e7h       ;\r
+       db 0f7h,021h,0e7h       ;out0 (m),r ;r=h,l\r
        dw l2315h\r
        db 0ffh,039h,0e7h       ;out0 (m),a\r
        dw l2315h\r
@@ -4755,14 +4756,14 @@ l1c98h:
 l1ca0h:\r
        ld hl,b_1ca9_start      ;1ca0   21 a9 1c        ! . .\r
        call pstr               ;1ca3   cd 88 02        . . .\r
-       jp l1e7eh               ;1ca6   c3 7e 1e        . ~ .\r
+       jp prnt_arg_hlixiy      ;1ca6   c3 7e 1e        . ~ .\r
 \r
 b_1ca9_start:\r
        DC      '(SP),'\r
 l1caeh:\r
        ld a,'('                ;1cae   3e 28   > (\r
        call outchar            ;1cb0   cd 5d 02        . ] .\r
-       call l1e7eh             ;1cb3   cd 7e 1e        . ~ .\r
+       call prnt_arg_hlixiy    ;1cb3   cd 7e 1e        . ~ .\r
        ld a,')'                ;1cb6   3e 29   > )\r
        jp outchar              ;1cb8   c3 5d 02        . ] .\r
 l1cbbh:\r
@@ -4771,7 +4772,7 @@ l1cbbh:
 l1cc1h:\r
        ld hl,b_1cca_start      ;1cc1   21 ca 1c        ! . .\r
        call pstr               ;1cc4   cd 88 02        . . .\r
-       jp l1e7eh               ;1cc7   c3 7e 1e        . ~ .\r
+       jp prnt_arg_hlixiy      ;1cc7   c3 7e 1e        . ~ .\r
 \r
 b_1cca_start:\r
        DC      'SP,'\r
@@ -4779,9 +4780,9 @@ l1ccdh:
        ld hl,b_176d_start      ;1ccd   21 6d 17        ! m .\r
        jp pstr                 ;1cd0   c3 88 02        . . .\r
 l1cd3h:\r
-       call l1e7eh             ;1cd3   cd 7e 1e        . ~ .\r
+       call prnt_arg_hlixiy    ;1cd3   cd 7e 1e        . ~ .\r
        call prnt_char_comma    ;1cd6   cd b4 1e        . . .\r
-       jp l1e8bh               ;1cd9   c3 8b 1e        . . .\r
+       jp prnt_arg_ww          ;1cd9   c3 8b 1e        . . .\r
 l1cdch:\r
        call sub_1ce8h          ;1cdc   cd e8 1c        . . .\r
        call prnt_char_comma    ;1cdf   cd b4 1e        . . .\r
@@ -4792,7 +4793,7 @@ l1ce5h:
 sub_1ce8h:\r
        ld a,'('                ;1ce8   3e 28   > (\r
        call outchar            ;1cea   cd 5d 02        . ] .\r
-       call l1e8bh             ;1ced   cd 8b 1e        . . .\r
+       call prnt_arg_ww        ;1ced   cd 8b 1e        . . .\r
        ld a,')'                ;1cf0   3e 29   > )\r
        jp outchar              ;1cf2   c3 5d 02        . ] .\r
 l1cf5h:\r
@@ -4813,7 +4814,7 @@ l1d0ch:
 l1d0fh:\r
        ld a,(iy+000h)          ;1d0f   fd 7e 00        . ~ .\r
        and 018h                ;1d12   e6 18   . .\r
-       call sub_1ea0h          ;1d14   cd a0 1e        . . .\r
+       call prnt_arg_cc0       ;1d14   cd a0 1e        . . .\r
        call prnt_char_comma    ;1d17   cd b4 1e        . . .\r
 l1d1ah:\r
        ld c,(iy+001h)          ;1d1a   fd 4e 01        . N .\r
@@ -4842,7 +4843,7 @@ prnt_char_A:
        jp outchar              ;1d3f   c3 5d 02        . ] .\r
 \r
 l1d42h:\r
-       call l1e9dh             ;1d42   cd 9d 1e        . . .\r
+       call prnt_arg_cc        ;1d42   cd 9d 1e        . . .\r
        call prnt_char_comma    ;1d45   cd b4 1e        . . .\r
 l1d48h:\r
        ld l,(iy+001h)          ;1d48   fd 6e 01        . n .\r
@@ -4855,15 +4856,15 @@ sub_1d50h:
        call out_hl             ;1d56   cd 13 02        . . .\r
        ret                     ;1d59   c9      .\r
 l1d5ah:\r
-       call l1e8bh             ;1d5a   cd 8b 1e        . . .\r
+       call prnt_arg_ww        ;1d5a   cd 8b 1e        . . .\r
        call prnt_char_comma    ;1d5d   cd b4 1e        . . .\r
        jr l1d48h               ;1d60   18 e6   . .\r
 l1d62h:\r
        call sub_1e13h          ;1d62   cd 13 1e        . . .\r
        call prnt_char_comma    ;1d65   cd b4 1e        . . .\r
-       jp l1e7eh               ;1d68   c3 7e 1e        . ~ .\r
+       jp prnt_arg_hlixiy      ;1d68   c3 7e 1e        . ~ .\r
 l1d6bh:\r
-       call l1e7eh             ;1d6b   cd 7e 1e        . ~ .\r
+       call prnt_arg_hlixiy    ;1d6b   cd 7e 1e        . ~ .\r
        call prnt_char_comma    ;1d6e   cd b4 1e        . . .\r
        jp sub_1e13h            ;1d71   c3 13 1e        . . .\r
 l1d74h:\r
@@ -4918,15 +4919,15 @@ l1dbfh:
        call prnt_char_comma    ;1dc5   cd b4 1e        . . .\r
        jr l1e28h               ;1dc8   18 5e   . ^\r
 l1dcah:\r
-       call l1e7eh             ;1dca   cd 7e 1e        . ~ .\r
+       call prnt_arg_hlixiy    ;1dca   cd 7e 1e        . ~ .\r
        call prnt_char_comma    ;1dcd   cd b4 1e        . . .\r
-       jp l1e8bh               ;1dd0   c3 8b 1e        . . .\r
+       jp prnt_arg_ww          ;1dd0   c3 8b 1e        . . .\r
 l1dd3h:\r
        call sub_1e13h          ;1dd3   cd 13 1e        . . .\r
        call prnt_char_comma    ;1dd6   cd b4 1e        . . .\r
-       jp l1e8bh               ;1dd9   c3 8b 1e        . . .\r
+       jp prnt_arg_ww          ;1dd9   c3 8b 1e        . . .\r
 l1ddch:\r
-       call l1e8bh             ;1ddc   cd 8b 1e        . . .\r
+       call prnt_arg_ww        ;1ddc   cd 8b 1e        . . .\r
        call prnt_char_comma    ;1ddf   cd b4 1e        . . .\r
        jr sub_1e13h            ;1de2   18 2f   . /\r
 l1de4h:\r
@@ -4978,11 +4979,11 @@ l1e30h:
 l1e33h:\r
        and 007h                ;1e33   e6 07   . .\r
        cp 006h                 ;1e35   fe 06   . .\r
-       jr nz,l1e73h            ;1e37   20 3a     :\r
+       jr nz,prnt_arg_r        ;1e37   20 3a     :\r
        ld a,(isprefix_ixiy)    ;1e39   3a f8 1f        : . .\r
        and a                   ;1e3c   a7      .\r
        ld a,006h               ;1e3d   3e 06   > .\r
-       jr z,l1e73h             ;1e3f   28 32   ( 2\r
+       jr z,prnt_arg_r         ;1e3f   28 32   ( 2\r
        ld hl,b_1e78_start      ;1e41   21 78 1e        ! x .\r
        ld a,(isprefix_ixiy)    ;1e44   3a f8 1f        : . .\r
        dec a                   ;1e47   3d      =\r
@@ -5006,22 +5007,24 @@ l1e6bh:
        call out_hex            ;1e6b   cd 18 02        . . .\r
        ld a,')'                ;1e6e   3e 29   > )\r
        jp outchar              ;1e70   c3 5d 02        . ] .\r
-l1e73h:\r
+\r
+prnt_arg_r:\r
        ld hl,t_BCDEHL_HL_A     ;1e73   21 96 1f        ! . .\r
-       jr l1eaah               ;1e76   18 32   . 2\r
+       jr prnt_arg             ;1e76   18 32   . 2\r
 \r
 b_1e78_start:\r
        DC      '(IX'\r
 l1e7bh:\r
        DC      '(IY'\r
-l1e7eh:\r
+\r
+prnt_arg_hlixiy:\r
        ld a,(isprefix_ixiy)    ;1e7e   3a f8 1f        : . .\r
        ld hl,t_HL.IX.IY        ;1e81   21 c6 1f        ! . .\r
-       jr l1eaah               ;1e84   18 24   . $\r
-l1e86h:\r
+       jr prnt_arg             ;1e84   18 24   . $\r
+prnt_arg_zz:\r
        ld hl,t_BC.DE.HL.AF     ;1e86   21 ab 1f        ! . .\r
        jr l1e8eh               ;1e89   18 03   . .\r
-l1e8bh:\r
+prnt_arg_ww:\r
        ld hl,t_BC.DE.HL.SP     ;1e8b   21 a2 1f        ! . .\r
 l1e8eh:\r
        ld a,(iy+000h)          ;1e8e   fd 7e 00        . ~ .\r
@@ -5031,20 +5034,20 @@ l1e8eh:
        rra                     ;1e94   1f      .\r
        and 003h                ;1e95   e6 03   . .\r
        cp 002h                 ;1e97   fe 02   . .\r
-       jr z,l1e7eh             ;1e99   28 e3   ( .\r
-       jr l1eaah               ;1e9b   18 0d   . .\r
-l1e9dh:\r
+       jr z,prnt_arg_hlixiy            ;1e99   28 e3   ( .\r
+       jr prnt_arg             ;1e9b   18 0d   . .\r
+\r
+prnt_arg_cc:\r
        ld a,(iy+000h)          ;1e9d   fd 7e 00        . ~ .\r
-sub_1ea0h:\r
+prnt_arg_cc0:\r
        rra                     ;1ea0   1f      .\r
        rra                     ;1ea1   1f      .\r
        rra                     ;1ea2   1f      .\r
        and 007h                ;1ea3   e6 07   . .\r
        ld hl,t_tstfl_ZCPS      ;1ea5   21 dc 1f        ! . .\r
-       jr l1eaah               ;1ea8   18 00   . .\r
-l1eaah:\r
+prnt_arg:\r
        ld b,a                  ;1eaa   47      G\r
-       call sub_033dh          ;1eab   cd 3d 03        . = .\r
+       call sel_dc_string      ;1eab   cd 3d 03        . = .\r
        jp pstr                 ;1eae   c3 88 02        . . .\r
 \r
 prnt_A_comma:\r
@@ -5255,35 +5258,35 @@ l2037h:
        ret                     ;2038   c9      .\r
 \r
 b_2039_start:\r
-       db 0ffh,0ddh,000h\r
+       db 0ffh,0ddh,000h       ;Prefix DD\r
        dw l20a7h\r
-       db 0ffh,0fdh,000h\r
+       db 0ffh,0fdh,000h       ;Prefix FD\r
        dw l20ach\r
-       db 0ffh,0edh,000h\r
+       db 0ffh,0edh,000h       ;Prefix ED\r
        dw l20b8h\r
 \r
 b_2048_start:\r
-       db 0ffh,0cdh,000h\r
+       db 0ffh,0cdh,000h       ;call mn\r
        dw l2080h\r
-       db 0ffh,0c3h,000h\r
+       db 0ffh,0c3h,000h       ;jp mn\r
        dw l208bh\r
-       db 0ffh,0e9h,000h\r
+       db 0ffh,0e9h,000h       ;jp ()\r
        dw l20a2h\r
-       db 0ffh,0c9h,000h\r
+       db 0ffh,0c9h,000h       ;ret\r
        dw l20dch\r
-       db 0ffh,0cfh,000h\r
+       db 0ffh,0cfh,000h       ;rst 8\r
        dw l2115h\r
-       db 0c7h,0c7h,000h\r
+       db 0c7h,0c7h,000h       ;\r
        dw l20f9h\r
-       db 0c7h,0c4h,000h\r
+       db 0c7h,0c4h,000h       ;\r
        dw l2080h\r
-       db 0f7h,010h,000h\r
+       db 0f7h,010h,000h       ;\r
        dw l2093h\r
-       db 0e7h,020h,000h\r
+       db 0e7h,020h,000h       ;\r
        dw l2093h\r
-       db 0c7h,0c2h,000h\r
+       db 0c7h,0c2h,000h       ;\r
        dw l208bh\r
-       db 0c7h,0c0h,000h\r
+       db 0c7h,0c0h,000h       ;\r
        dw l20c5h\r
        db 0\r
 \r