X-Git-Url: http://cloudbase.mooo.com/gitweb/ddt180.git/blobdiff_plain/d1d6fee5bb2d081bc54378ed610ab021fd768128..836f48abced5e144dc61515cb2bdac71c77e43f3:/ddt180.z80 diff --git a/ddt180.z80 b/ddt180.z80 index 3d4e6e7..ed3d7f2 100644 --- a/ddt180.z80 +++ b/ddt180.z80 @@ -402,10 +402,6 @@ outbl: ld a,' ' jr outchar -p_char_lparen: - ld a,'(' - jr outchar - outquote: ld a,'''' outchar: @@ -1458,24 +1454,25 @@ p_f2: jp outbl p_flags: - ld b,a - ld a,'S' - call sub_06aah - ld a,'Z' - call sub_06aah - rl b - ld a,'H' - call sub_06aah - rl b - ld a,'V' - call sub_06aah - ld a,'N' - call sub_06aah - ld a,'C' -sub_06aah: - rl b - jp c,outchar - jp outbl + push hl + ld hl,t_flag_names+7 + ld c,a + ld b,8 +fl_loop: + ld a,' ' + cp (hl) + ld a,c + rlca + ld c,a + jr z,fl_skip + ld a,(hl) + call c,outchar + call nc,outbl +fl_skip: + dec hl + djnz fl_loop + pop hl + ret p_regs: push de @@ -5277,8 +5274,7 @@ l1ce5h: sub_1ce8h: call p_char_lparen call p_arg_ww -out_rparen: - jp p_char_rparen + jr out_rparen l1cf5h: call p_A_comma @@ -5318,7 +5314,11 @@ l1d29h: sub_1d2ch: call p_char_lparen ld a,(iy+001h) - jp l1e6bh +p_arg_nn_rp: + call out_hex +out_rparen: + jr p_char_rparen + l1d37h: call sub_1d2ch jr p_char_comma_A @@ -5355,27 +5355,30 @@ p_arg_addr_a: call p_arg_addr p_char_comma_A: call p_char_comma + jr p_char_A + +p_A_comma: + call p_char_A +p_char_comma: + ld a,',' + db 021h p_char_A: ld a,'A' - jr outchar1 -p_arg_a_addr: - call p_A_comma - jp p_arg_addr + db 021h l1d85h: ld a,'0' - jr outchar1 + db 021h l1d89h: ld a,'1' - jr outchar1 + db 021h l1d8dh: ld a,'2' - jr outchar1 - -p_A_comma: - call p_char_A -p_char_comma: - ld a,',' -outchar1: + db 021h +p_char_rparen: + ld a,')' + db 021h +p_char_lparen: + ld a,'(' jp outchar l1d92h: @@ -5426,7 +5429,16 @@ p_arg_addr_ww: p_arg_ww_addr: call p_arg_ww call p_char_comma - jr p_arg_addr + +p_arg_a_addr: + call p_A_comma +p_arg_addr: + call p_char_lparen + ld l,(iy+001h) + ld h,(iy+002h) + ld a,001h + call sub_1d50h + jr p_char_rparen p_arg_bitop: ld a,(isprefix_ixiy) @@ -5459,17 +5471,6 @@ l1e0eh: l1e11h: jr p_arg_r0 -p_arg_addr: - call p_char_lparen - ld l,(iy+001h) - ld h,(iy+002h) - ld a,001h - call sub_1d50h - -p_char_rparen: - ld a,')' - jp outchar - p_arg_r: ld a,(iy+000h) rra @@ -5494,20 +5495,18 @@ p_arg_r0: l1e4dh: call pstr ld a,(iy+001h) - and a - jp m,l1e61h - call pstr_inl - dc '+' - ld a,(iy+001h) - jr l1e6bh -l1e61h: - call pstr_inl - dc '-' - ld a,(iy+001h) + push af + rlca + ld a,'+' + jr nc,l1e61h + pop af neg -l1e6bh: - call out_hex - jr p_char_rparen + push af + ld a,'-' +l1e61h: + call outchar + pop af + jp p_arg_nn_rp p_arg_r1: ld hl,t_BCDEHL_HL_A