]> cloudbase.mooo.com Git - ddt180.git/commitdiff
disas opt
authorLeo C <erbl259-lmu@yahoo.de>
Sat, 22 Feb 2020 13:04:10 +0000 (14:04 +0100)
committerLeo C <erbl259-lmu@yahoo.de>
Sat, 22 Feb 2020 14:21:57 +0000 (15:21 +0100)
ddt180.z80

index 07ca9eb82729f02e9e088621323d9d85b72df53b..3f356f2f4f29215df8092f8e0f4b597126d9d3e1 100644 (file)
@@ -2902,12 +2902,10 @@ tabe_1:
        add     a,l\r
 tabe_2:\r
        PUSH    DE                      ;save source pointer\r
-       ld      de,disasbuf             ;buffer pointer\r
-       LD      HL,t_MNEMONICS\r
+       ld      hl,disasbuf             ;buffer pointer\r
+       LD      de,t_MNEMONICS\r
        CALL    XTRACT                  ;copy mnemonic to buffer\r
-\r
-       ex      de,hl\r
-       LD      DE,disasbuf+5\r
+       LD      de,disasbuf+5\r
 da_spaces:\r
        ld      (hl),' '\r
        inc     hl\r
@@ -3337,14 +3335,16 @@ OPRND2:
        DJNZ    DAT8                    ;1?\r
 ;RELADR:\r
        CALL    FETCH\r
-       LD      C,A\r
-       RLA\r
-       SBC     A,A\r
-       LD      B,A\r
-       EX      DE,HL\r
-       PUSH    HL\r
-       ADD     HL,BC\r
-       JR      DHL\r
+       ld      c,a\r
+       rla\r
+       sbc     a,a\r
+       ld      b,a\r
+       ld      a,c\r
+       add     a,e\r
+       ld      c,a\r
+       ld      a,b\r
+       adc     a,d\r
+       jr      conv_ac\r
 \r
 CONDIT:\r
        RRA\r
@@ -3365,18 +3365,12 @@ DAT8:
 D8:\r
        CALL    FETCH\r
 DA:\r
-       EX      DE,HL\r
-       call    conv_hex\r
-       EX      DE,HL\r
-       RET\r
+       jr      conv_hex\r
 \r
 BITNUM:\r
        DJNZ    INTMOD                  ;3?\r
        AND     7\r
-       EX      DE,HL\r
-       call    conv_dgt\r
-       EX      DE,HL\r
-       RET\r
+       jr      conv_dgt\r
 \r
 DAT16:\r
        DJNZ    EXAF\r
@@ -3384,18 +3378,28 @@ D16:
        CALL    FETCH\r
        LD      C,A\r
        CALL    FETCH\r
-;DAC:\r
-       EX      DE,HL\r
-       PUSH    HL\r
-       LD      H,A\r
-       LD      L,C\r
-\r
-DHL:\r
-       CALL    conv_hl\r
-       POP     HL\r
-       EX      DE,HL\r
-       RET\r
 \r
+conv_ac:\r
+       call conv_hex\r
+       ld a,c\r
+conv_hex:\r
+       push af\r
+       rra\r
+       rra\r
+       rra\r
+       rra\r
+       call conv_dgt\r
+       pop af\r
+conv_dgt:\r
+       or      0f0h\r
+       daa\r
+       add     a,0a0h\r
+       adc     a,040h\r
+       LD      (HL),A\r
+       INC     HL\r
+       ret\r
+\r
+;-------------------------------------------------------------------------------\r
 \r
 INTMOD:\r
        DJNZ    STKTOP                  ;4?\r
@@ -3418,17 +3422,14 @@ STKTOP:
 \r
        DEC     A\r
        JR      RNX\r
-\r
 EXAF:\r
        LD      C,10\r
        DEC     B\r
        JR      Z,PS2\r
-\r
 ;EXDE:\r
        INC     C\r
        DEC     B\r
        JR      Z,PS2\r
-\r
 ;REG8S:\r
        DJNZ    ACCUM\r
 \r
@@ -3522,40 +3523,16 @@ REGX:
        LD      A,(iy+1)\r
        ADD     A,16\r
 PS4:\r
-       EX      DE,HL\r
-       PUSH    HL\r
-       LD      HL,RGSTRS\r
+       PUSH    de\r
+       LD      de,RGSTRS\r
        CALL    XTRACT\r
-       POP     HL\r
-       EX      DE,HL\r
+       POP     de\r
        RET\r
 \r
 ;-------------------------------------------------------------------------------\r
 \r
-conv_hl:\r
-       ld a,h\r
-       call conv_hex\r
-       ld a,l\r
-conv_hex:\r
-       push af\r
-       rra\r
-       rra\r
-       rra\r
-       rra\r
-       call conv_dgt\r
-       pop af\r
-conv_dgt:\r
-       or      0f0h\r
-       daa\r
-       add     a,0a0h\r
-       adc     a,040h\r
-       LD      (DE),A\r
-       INC     DE\r
-       ret\r
-\r
-;-------------------------------------------------------------------------------\r
-\r
 XTRACT:\r
+       ex      de,hl\r
        OR      A\r
        JR      Z,COPY\r
 SKIP:\r
@@ -3573,6 +3550,7 @@ COPY:
        INC     DE\r
        INC     HL\r
        JR      NC,COPY\r
+       ex      de,hl\r
        RET\r
 \r
 ;-------------------------------------------------------------------------------\r