summaryrefslogtreecommitdiff
path: root/z180
diff options
context:
space:
mode:
authorLeo C2015-04-30 20:34:28 +0200
committerLeo C2015-04-30 20:34:28 +0200
commitfecee2418b6aea15008ed6d3a856d202d59a5cdb (patch)
treef125e7782d2af4023a011f1611b66004ea557ab9 /z180
parent8df5b65577a04a48849387475634b3b694094dca (diff)
downloadz180-stamp-fecee2418b6aea15008ed6d3a856d202d59a5cdb.zip
Remove memory test and bank manager.
First phys. 64K block contains common and system (debugger). Banks for user progs (CP/M) can be assigned from 0x10000.
Diffstat (limited to 'z180')
-rw-r--r--z180/config.inc44
-rw-r--r--z180/ddtz.1808143
-rw-r--r--z180/init.180654
3 files changed, 4235 insertions, 4606 deletions
diff --git a/z180/config.inc b/z180/config.inc
index 390d3bc..ed98656 100644
--- a/z180/config.inc
+++ b/z180/config.inc
@@ -1,13 +1,19 @@
+
+FALSE equ 0
+TRUE equ NOT FALSE
+
;-----------------------------------------------------
; CPU and BANKING types
-CPU_Z180 equ 1 ; 0 = Z80, else Z180
-ROMSYS equ 0
+CPU_Z180 equ TRUE
+CPU_Z80 equ FALSE
+
+ROMSYS equ FALSE
AVRCLK equ 18432 ;[KHz]
- if CPU_Z180
+ if CPU_Z180
;-----------------------------------------------------
FOSC equ AVRCLK/2 ;Oscillator frequency [KHz]
@@ -26,8 +32,21 @@ PRT_TC10MS equ PHI / (PRT_PRE/10)
;-----------------------------------------------------
; MMU
-SYS$CBAR equ 0C8h
-USR$CBAR equ 0F0h
+COMMON_SIZE equ 4*1024 ;Common Area size in bytes
+ ;must be multiple of 4K
+
+if (COMMON_SIZE mod 1000h)
+ .printx COMMON_SIZE not multiple of 4K!
+ end ;stop assembly
+endif
+
+CSK equ COMMON_SIZE/1000h ;
+CA equ 10h - CSK ;common area start
+BA equ 0 ;banked area start
+
+SYS$CBR equ 0
+SYS$CBAR equ CA<<4 + CA ;CBAR in system mode
+USR$CBAR equ CA<<4 + BA ;CBAR in user mode (CP/M)
BANKS equ 18 ;max nr. of banks
@@ -37,7 +56,8 @@ BANKS equ 18 ;max nr. of banks
CREFSH equ 0 ;Refresh rate register (disable refresh)
CWAITIO equ 3 shl IWI0 ;Max I/O Wait States, 0 Memory Wait States
- else ; Z80
+ endif ;CPU_Z180
+ if CPU_Z80
PHI equ AVRCLK/5 ;CPU frequency [KHz]
BAUDCLCK equ AVRCLK/10 ;Baudrate clock [KHz]
@@ -71,16 +91,16 @@ CTC3 EQU 0f7h
; 600 3072 16 192
; 300 6144 64 92
- endif ; CPU_Z180
+ endif ; CPU_Z80
- if ROMSYS
+ if ROMSYS
c$rom equ 0a5h
ROM_EN equ 0C0h
ROM_DIS equ ROMEN+1
- if CPU_Z180
+ if CPU_Z180
CWAITROM equ 2 shl MWI0
- endif
- endif
+ endif
+ endif
DRSTNUM equ 30h ;DDTZ Restart vector (breakpoints)
@@ -100,7 +120,7 @@ AVRINT6 equ 5Fh
;PMSG equ 80h
;-----------------------------------------------------
-; Definition of (locical) top 2 memory pages
+; Definition of (logical) top 2 memory pages
sysram_start equ 0FE00h
stacksize equ 80
diff --git a/z180/ddtz.180 b/z180/ddtz.180
index 490b829..e5d48e1 100644
--- a/z180/ddtz.180
+++ b/z180/ddtz.180
@@ -113,87 +113,87 @@ ddtz:
endif
ddtz_w:
- ld hl,MSG ;073c
- call PSTR ;073f
- call ddtei ;0742
+ ld hl,MSG
+ call PSTR
+ call ddtei
; DDTZ main loop
DDTZML:
- ld sp,$stack ;0761
- ld hl,l07eah ;0764
- ld (CMD_ERR),hl ;0767
- ld hl,(REG.PC) ;076a
- ld (OFFS.pc),hl ;076d
- call sub_0e68h ;0770
- ld hl,(CMD_RPT) ;0773
- ld de,DDTZML ;0776
- call CP.HL.DE ;0779
- ld a,'>' ;077c
- call OUTCHAR ;077e
- call nz,OUTCHAR ;0781
- call z,OUTBL ;0784
- call INLINE ;0787
- call SKIPBL ;078a
- jr z,exe_hl ;078d
- ld hl,DDTZML ;078f
- ld (CMD_RPT),hl ;0792
- inc de ;0795
- sub '?' ;0796
- jr c,ERROR ;0798
- cp 'Z'+1-'?' ;079a
- jr nc,ERROR ;079c
- add a,a ;079e
- ld hl,CMDTAB ;079f
- call ADD_HL_A ;07a2
- ld a,(hl) ;07a5
- inc hl ;07a6
- ld h,(hl) ;07a7
- ld l,a ;07a8
- jr exe_hl ;07a9
+ ld sp,$stack
+ ld hl,l07eah
+ ld (CMD_ERR),hl
+ ld hl,(REG.PC)
+ ld (OFFS.pc),hl
+ call sub_0e68h
+ ld hl,(CMD_RPT)
+ ld de,DDTZML
+ call CP.HL.DE
+ ld a,'>'
+ call OUTCHAR
+ call nz,OUTCHAR
+ call z,OUTBL
+ call INLINE
+ call SKIPBL
+ jr z,exe_hl
+ ld hl,DDTZML
+ ld (CMD_RPT),hl
+ inc de
+ sub '?'
+ jr c,ERROR
+ cp 'Z'+1-'?'
+ jr nc,ERROR
+ add a,a
+ ld hl,CMDTAB
+ call ADD_HL_A
+ ld a,(hl)
+ inc hl
+ ld h,(hl)
+ ld l,a
+ jr exe_hl
ERROR:
- ld hl,(CMD_ERR) ;07ab
+ ld hl,(CMD_ERR)
exe_hl:
- call CALL.HL ;07ae
- jr DDTZML ;07b1
+ call CALL.HL
+ jr DDTZML
CALL.HL:
- jp (hl) ;07b3
+ jp (hl)
CMDTAB:
- defw CMD.?
- defw CMD.@ ;07b4
- defw CMD.A ;07b6
- defw CMD.B ;07b8
- defw CMD.C ;07ba
- defw CMD.D ;07bc
- defw ERROR ;07be
- defw ERROR ;07c0
- defw CMD.G ;07c2
- defw CMD.H ;07c4
- defw CMD.I ;07c6
- defw ERROR ;07c8
- defw ERROR ;07ca
- defw CMD.L ;07cc
- defw CMD.M ;07ce
- defw ERROR ;07d0
- defw CMD.O ;07d2
- defw ERROR ;07d4
- defw CMD.Q ;07d6
- defw CMD.R ;07d8
- defw CMD.S ;07da
- defw CMD.T ;07dc
- defw ERROR ;07de
- defw CMD.V ;07e0
- defw ERROR ;07e2
- defw CMD.X ;07e4
- defw CMD.Y ;07e6
- defw CMD.Z ;07e8
+ defw CMD.? ;Help
+ defw CMD.@ ;Offset
+ defw CMD.A ;Assemble
+ defw CMD.B ;Breakpoint
+ defw CMD.C ;Call
+ defw CMD.D ;Display
+ defw ERROR ;
+ defw ERROR ;
+ defw CMD.G ;Go
+ defw CMD.H ;Hex Math
+ defw CMD.I ;In Port
+ defw ERROR ;
+ defw ERROR ;
+ defw CMD.L ;List
+ defw CMD.M ;Move
+ defw ERROR ;
+ defw CMD.O ;Out Port
+ defw ERROR ;
+ defw CMD.Q ;Query
+ defw CMD.R ;Read Intel Hex
+ defw CMD.S ;Substitute
+ defw CMD.T ;Trace
+ defw ERROR ;
+ defw CMD.V ;Verify
+ defw ERROR ;
+ defw CMD.X ;eXamine
+ defw CMD.Y ;eXamine Y Registers
+ defw CMD.Z ;Zap (fill) memory
l07eah:
- ld a,'?' ;07ea
- call OUTCHAR ;07ec
- jp CRLF ;07ef
+ ld a,'?'
+ call OUTCHAR
+ jp CRLF
CMD.?:
call assert_eol
@@ -425,74 +425,74 @@ l0911h:
sub_0917h:
- dec b ;0917
- push de ;0918
- ld de,10 ;0919
- call DIV_HL_DE ;091c
- ld a,h ;091f
- or l ;0920
- call nz,sub_0917h ;0921
- ld a,e ;0924
- pop de ;0925
- jr out.digit ;0926
+ dec b
+ push de
+ ld de,10
+ call DIV_HL_DE
+ ld a,h
+ or l
+ call nz,sub_0917h
+ ld a,e
+ pop de
+ jr out.digit
sub_0928h:
- push hl ;0928
- call sub_08f7h ;0929
- call out.hl ;092c
- pop hl ;092f
- ret ;0930
+ push hl
+ call sub_08f7h
+ call out.hl
+ pop hl
+ ret
out.hl:
- ld a,h ;0931
- call out.hex ;0932
- ld a,l ;0935
+ ld a,h
+ call out.hex
+ ld a,l
out.hex:
- push af ;0936
- rra ;0937
- rra ;0938
- rra ;0939
- rra ;093a
- call out.digit ;093b
- pop af ;093e
+ push af
+ rra
+ rra
+ rra
+ rra
+ call out.digit
+ pop af
out.digit:
- and 00fh ;093f
- cp 10 ;0941
- jr c,l0947h ;0943
- add a,007h ;0945
+ and 00fh
+ cp 10
+ jr c,l0947h
+ add a,007h
l0947h:
- add a,'0' ;0947
- jr OUTCHAR ;0949
+ add a,'0'
+ jr OUTCHAR
l094bh:
- ld a,'-' ;094b
- call OUTCHAR ;094d
- ld a,040h ;0950
+ ld a,'-'
+ call OUTCHAR
+ ld a,040h
out.ascii:
- ex af,af' ;0952
- call outquote ;0953
- ex af,af' ;0956
- push af ;0957
- res 7,a ;0958
- cp ' ' ;095a
- jr nc,l0960h ;095c
- sub 0c0h ;095e
+ ex af,af'
+ call outquote
+ ex af,af'
+ push af
+ res 7,a
+ cp ' '
+ jr nc,l0960h
+ sub 0c0h
l0960h:
- call OUTCHAR ;0960
- push af ;0963
- cp '''' ;0964
- call z,OUTCHAR ;0966
- pop af ;0969
- ex af,af' ;096a
- call outquote ;096b
- pop af ;096e
- or a ;096f
- ld a,'.' ;0970
- call m,OUTCHAR ;0972
- ex af,af' ;0975
- jr c,l094bh ;0976
- ret ;0978
+ call OUTCHAR
+ push af
+ cp ''''
+ call z,OUTCHAR
+ pop af
+ ex af,af'
+ call outquote
+ pop af
+ or a
+ ld a,'.'
+ call m,OUTCHAR
+ ex af,af'
+ jr c,l094bh
+ ret
outquote:
- ld a,'''' ;0979
+ ld a,''''
OUTCHAR:
push hl
push de
@@ -507,7 +507,7 @@ OUTCHAR:
pop bc
pop de
pop hl
- ret ;0988
+ ret
inchar:
push hl
@@ -517,403 +517,403 @@ inchar:
and a
jr z,inch1
call ?conin
- scf ;0991
+ scf
inch1:
pop bc
pop de
pop hl
- ret ;0992
+ ret
PSTR:
- ld c,000h ;0993
+ ld c,000h
l0995h:
- ld a,(hl) ;0995
- and a ;0996
- ret z ;0997
- call OUTCHAR ;0998
- inc c ;099b
- inc hl ;099c
- and a ;099d
- ret m ;099e
- jr l0995h ;099f
+ ld a,(hl)
+ and a
+ ret z
+ call OUTCHAR
+ inc c
+ inc hl
+ and a
+ ret m
+ jr l0995h
outbl6:
- call outbl2 ;09a1
+ call outbl2
outbl4:
- call outbl2 ;09a4
+ call outbl2
outbl2:
- call OUTBL ;09a7
+ call OUTBL
OUTBL:
- ld a,' ' ;09aa
- jr OUTCHAR ;09ac
+ ld a,' '
+ jr OUTCHAR
CRLF:
- call inchar ;09ae
- ld a,CR ;09b1
- call OUTCHAR ;09b3
- ld a,LF ;09b6
- call OUTCHAR ;09b8
- ld a,000h ;09bb
- ld (CON.COL),a ;09bd
- jp c,DDTZML ;09c0
- ret ;09c3
+ call inchar
+ ld a,CR
+ call OUTCHAR
+ ld a,LF
+ call OUTCHAR
+ ld a,000h
+ ld (CON.COL),a
+ jp c,DDTZML
+ ret
ADD_HL_A:
- add a,l ;09c4
- ld l,a ;09c5
- ret nc ;09c6
- inc h ;09c7
- ret ;09c8
+ add a,l
+ ld l,a
+ ret nc
+ inc h
+ ret
SKIPBL0:
- inc de ;09c9
+ inc de
SKIPBL:
- ld a,(de) ;09ca
- cp ' ' ;09cb
- jr z,SKIPBL0 ;09cd
- cp 009h ;09cf
- jr z,SKIPBL0 ;09d1
- or a ;09d3
- ret ;09d4
+ ld a,(de)
+ cp ' '
+ jr z,SKIPBL0
+ cp 009h
+ jr z,SKIPBL0
+ or a
+ ret
skip_to_nextarg:
- call SKIPBL ;09d5
- cp ',' ;09d8
- ret nz ;09da
- inc de ;09db
- call SKIPBL ;09dc
- cp a ;09df
- ret ;09e0
+ call SKIPBL
+ cp ','
+ ret nz
+ inc de
+ call SKIPBL
+ cp a
+ ret
assert_eol:
- call SKIPBL ;09e1
- ret z ;09e4
+ call SKIPBL
+ ret z
l09e5h:
- jp ERROR ;09e5
+ jp ERROR
chk.sp:
- push hl ;09e8
- push de ;09e9
- ld hl,0 ;09ea
- add hl,sp ;09ed
- ld de,$stack-50 ;09ee
- call CP.HL.DE ;09f1
- pop de ;09f4
- pop hl ;09f5
- jr c,l09e5h ;09f6
- ret ;09f8
+ push hl
+ push de
+ ld hl,0
+ add hl,sp
+ ld de,$stack-50
+ call CP.HL.DE
+ pop de
+ pop hl
+ jr c,l09e5h
+ ret
CP.HL.DE:
- and a ;09f9
- sbc hl,de ;09fa
- add hl,de ;09fc
- ret ;09fd
+ and a
+ sbc hl,de
+ add hl,de
+ ret
lookupch:
- ld b,000h ;09fe
+ ld b,000h
l0a00h:
- ld a,(hl) ;0a00
- and a ;0a01
- ret z ;0a02
- ld a,(de) ;0a03
- cp (hl) ;0a04
- jr z,l0a0bh ;0a05
- inc hl ;0a07
- inc b ;0a08
- jr l0a00h ;0a09
+ ld a,(hl)
+ and a
+ ret z
+ ld a,(de)
+ cp (hl)
+ jr z,l0a0bh
+ inc hl
+ inc b
+ jr l0a00h
l0a0bh:
- scf ;0a0b
- inc de ;0a0c
- ret ;0a0d
+ scf
+ inc de
+ ret
sub_0a0eh:
- ld hl,b_0x132A_start ;0a0e
- ld b,07fh ;0a11
- jr l0a17h ;0a13
+ ld hl,b_0x132A_start
+ ld b,07fh
+ jr l0a17h
sub_0a15h:
- ld b,0ffh ;0a15
+ ld b,0ffh
l0a17h:
- inc b ;0a17
- ld a,(hl) ;0a18
- and a ;0a19
- ret z ;0a1a
- call l0a27 ;0a1b
- jr nc,l0a17h ;0a1e
- res 7,b ;0a20
- ret ;0a22
+ inc b
+ ld a,(hl)
+ and a
+ ret z
+ call l0a27
+ jr nc,l0a17h
+ res 7,b
+ ret
sub_0a23h:
- push bc ;0a23
- res 7,b ;0a24
+ push bc
+ res 7,b
db 3eh ;0a26 ld a,0c5h
l0a27:
- push bc ;0a27
- push de ;0a28
+ push bc
+ push de
l0a29h:
- ld a,(de) ;0a29
- xor (hl) ;0a2a
- and 07fh ;0a2b
- jr nz,l0a41h ;0a2d
- bit 7,(hl) ;0a2f
- inc hl ;0a31
- inc de ;0a32
- jr z,l0a29h ;0a33
- scf ;0a35
- bit 7,b ;0a36
- call z,sub_0d20h ;0a38
- jr nc,l0a44h ;0a3b
- pop af ;0a3d
- scf ;0a3e
- pop bc ;0a3f
- ret ;0a40
+ ld a,(de)
+ xor (hl)
+ and 07fh
+ jr nz,l0a41h
+ bit 7,(hl)
+ inc hl
+ inc de
+ jr z,l0a29h
+ scf
+ bit 7,b
+ call z,sub_0d20h
+ jr nc,l0a44h
+ pop af
+ scf
+ pop bc
+ ret
l0a41h:
- call sub_0a50h ;0a41
+ call sub_0a50h
l0a44h:
- pop de ;0a44
- and a ;0a45
- pop bc ;0a46
- ret ;0a47
+ pop de
+ and a
+ pop bc
+ ret
sub_0a48h:
- inc b ;0a48
+ inc b
l0a49h:
- dec b ;0a49
- ret z ;0a4a
- call sub_0a50h ;0a4b
- jr l0a49h ;0a4e
+ dec b
+ ret z
+ call sub_0a50h
+ jr l0a49h
sub_0a50h:
- ld a,(hl) ;0a50
- and a ;0a51
- ret z ;0a52
+ ld a,(hl)
+ and a
+ ret z
l0a53h:
- ld a,(hl) ;0a53
- inc hl ;0a54
- and a ;0a55
- ret m ;0a56
- jr l0a53h ;0a57
+ ld a,(hl)
+ inc hl
+ and a
+ ret m
+ jr l0a53h
get_arg3:
- call get_arg_range ;0a59
- push hl ;0a5c
- push bc ;0a5d
- call skip_to_nextarg ;0a5e
- call get_arg ;0a61
- ex de,hl ;0a64
- pop bc ;0a65
- pop hl ;0a66
- ret ;0a67
+ call get_arg_range
+ push hl
+ push bc
+ call skip_to_nextarg
+ call get_arg
+ ex de,hl
+ pop bc
+ pop hl
+ ret
sub_0a68h:
- call EXPR ;0a68
- jr c,error0 ;0a6b
- ret ;0a6d
+ call EXPR
+ jr c,error0
+ ret
get_arg:
- call sub_0a68h ;0a6e
+ call sub_0a68h
l0a71h:
- jp assert_eol ;0a71
+ jp assert_eol
get_lastarg_def:
- call get_arg_def ;0a74
- jr l0a71h ;0a77
+ call get_arg_def
+ jr l0a71h
get_arg_def:
- push hl ;0a79
- call EXPR ;0a7a
- jr c,l0a80h ;0a7d
- ex (sp),hl ;0a7f
+ push hl
+ call EXPR
+ jr c,l0a80h
+ ex (sp),hl
l0a80h:
- pop hl ;0a80
- ret ;0a81
+ pop hl
+ ret
sub_0a82h:
- call sub_0a87h ;0a82
- jr l0a71h ;0a85
+ call sub_0a87h
+ jr l0a71h
sub_0a87h:
db 0e6h ;0a87 and 037h (clear carry)
get_arg_range:
scf
- ex af,af' ;0a89
- push bc ;0a8a
- push hl ;0a8b
- call EXPR ;0a8c
- jr nc,l0a97h ;0a8f
- ex af,af' ;0a91
- jr c,error0 ;0a92
- ex af,af' ;0a94
- pop hl ;0a95
-
- defb 03eh ;0a96
+ ex af,af'
+ push bc
+ push hl
+ call EXPR
+ jr nc,l0a97h
+ ex af,af'
+ jr c,error0
+ ex af,af'
+ pop hl
+
+ defb 03eh
l0a97h:
- pop af ;0a97
- call sub_0aa5h ;0a98
- jr nc,l0aa3h ;0a9b
- ex af,af' ;0a9d
- pop bc ;0a9e
- ret nc ;0a9f
+ pop af
+ call sub_0aa5h
+ jr nc,l0aa3h
+ ex af,af'
+ pop bc
+ ret nc
error0:
- jp ERROR ;0aa0
+ jp ERROR
l0aa3h:
- pop af ;0aa3
- ret ;0aa4
+ pop af
+ ret
sub_0aa5h:
- call skip_to_nextarg ;0aa5
- cp 'S' ;0aa8
- jr nz,l0aadh ;0aaa
- inc de ;0aac
+ call skip_to_nextarg
+ cp 'S'
+ jr nz,l0aadh
+ inc de
l0aadh:
- push hl ;0aad
- push af ;0aae
- call EXPR ;0aaf
- jr c,l0ac3h ;0ab2
- ld b,h ;0ab4
- ld c,l ;0ab5
- pop af ;0ab6
- pop hl ;0ab7
- jr z,l0ac1h ;0ab8
- ld a,c ;0aba
- sub l ;0abb
- ld c,a ;0abc
- ld a,b ;0abd
- sbc a,h ;0abe
- ld b,a ;0abf
- inc bc ;0ac0
+ push hl
+ push af
+ call EXPR
+ jr c,l0ac3h
+ ld b,h
+ ld c,l
+ pop af
+ pop hl
+ jr z,l0ac1h
+ ld a,c
+ sub l
+ ld c,a
+ ld a,b
+ sbc a,h
+ ld b,a
+ inc bc
l0ac1h:
- and a ;0ac1
- ret ;0ac2
+ and a
+ ret
l0ac3h:
- pop af ;0ac3
- pop hl ;0ac4
- jr z,error0 ;0ac5
- scf ;0ac7
- ret ;0ac8
+ pop af
+ pop hl
+ jr z,error0
+ scf
+ ret
EXPR:
- call SKIPBL ;0ac9
+ call SKIPBL
EXPR1:
- call do_subexpr ;0acc
- ret c ;0acf
- call do_rel_op ;0ad0
- ret nc ;0ad3
- push bc ;0ad4
- push hl ;0ad5
- call do_subexpr ;0ad6
- jr c,error0 ;0ad9
- ex de,hl ;0adb
- ex (sp),hl ;0adc
- and a ;0add
- sbc hl,de ;0ade
- ld hl,0ffffh ;0ae0
- pop de ;0ae3
- ret ;0ae4
+ call do_subexpr
+ ret c
+ call do_rel_op
+ ret nc
+ push bc
+ push hl
+ call do_subexpr
+ jr c,error0
+ ex de,hl
+ ex (sp),hl
+ and a
+ sbc hl,de
+ ld hl,0ffffh
+ pop de
+ ret
do_op_eq:
- jr z,l0af8h ;0ae5
- jr l0af7h ;0ae7
+ jr z,l0af8h
+ jr l0af7h
do_op_ne:
- jr nz,l0af8h ;0ae9
- jr l0af7h ;0aeb
+ jr nz,l0af8h
+ jr l0af7h
do_op_le:
- jr z,l0af8h ;0aed
+ jr z,l0af8h
do_op_lt:
- jr c,l0af8h ;0aef
- jr l0af7h ;0af1
+ jr c,l0af8h
+ jr l0af7h
do_op_gt:
- jr z,l0af7h ;0af3
+ jr z,l0af7h
do_op_ge:
- jr nc,l0af8h ;0af5
+ jr nc,l0af8h
l0af7h:
- inc hl ;0af7
+ inc hl
l0af8h:
- and a ;0af8
- ret ;0af9
+ and a
+ ret
do_rel_op:
- push hl ;0afa
- ld hl,tab_eq_le_ge ;0afb
- call lookupch ;0afe
- jr nc,l0b28h ;0b01
- ld a,b ;0b03
- or a ;0b04
- jr z,l0b1ch ;0b05
- ld a,(de) ;0b07
- cp '=' ;0b08
- jr nz,l0b11h ;0b0a
- inc de ;0b0c
- inc b ;0b0d
- inc b ;0b0e
- jr l0b1ch ;0b0f
+ push hl
+ ld hl,tab_eq_le_ge
+ call lookupch
+ jr nc,l0b28h
+ ld a,b
+ or a
+ jr z,l0b1ch
+ ld a,(de)
+ cp '='
+ jr nz,l0b11h
+ inc de
+ inc b
+ inc b
+ jr l0b1ch
l0b11h:
- bit 0,b ;0b11
- jr z,l0b1ch ;0b13
- cp '>' ;0b15
- jr nz,l0b1ch ;0b17
- inc de ;0b19
- ld b,005h ;0b1a
+ bit 0,b
+ jr z,l0b1ch
+ cp '>'
+ jr nz,l0b1ch
+ inc de
+ ld b,005h
l0b1ch:
- ld hl,tab_func_eqlege ;0b1c
- ld a,b ;0b1f
- add a,a ;0b20
- call ADD_HL_A ;0b21
- ld c,(hl) ;0b24
- inc hl ;0b25
- ld b,(hl) ;0b26
- scf ;0b27
+ ld hl,tab_func_eqlege
+ ld a,b
+ add a,a
+ call ADD_HL_A
+ ld c,(hl)
+ inc hl
+ ld b,(hl)
+ scf
l0b28h:
- pop hl ;0b28
- ret ;0b29
+ pop hl
+ ret
tab_eq_le_ge:
db '=<>',0
tab_func_eqlege:
- defw do_op_eq ;0b2e
- defw do_op_lt ;0b30
- defw do_op_gt ;0b32
- defw do_op_le ;0b34
- defw do_op_ge ;0b36
- defw do_op_ne ;0b38
+ defw do_op_eq
+ defw do_op_lt
+ defw do_op_gt
+ defw do_op_le
+ defw do_op_ge
+ defw do_op_ne
do_subexpr:
- call do_factor ;0b3a
- ret c ;0b3d
+ call do_factor
+ ret c
l0b3eh:
- call do_binary_op ;0b3e
- push hl ;0b41
- push bc ;0b42
- call do_factor ;0b43
- pop bc ;0b46
- ex de,hl ;0b47
- ex (sp),hl ;0b48
- jr nc,l0b52h ;0b49
- pop de ;0b4b
- ld a,b ;0b4c
- or c ;0b4d
- ret z ;0b4e
- jp ERROR ;0b4f
+ call do_binary_op
+ push hl
+ push bc
+ call do_factor
+ pop bc
+ ex de,hl
+ ex (sp),hl
+ jr nc,l0b52h
+ pop de
+ ld a,b
+ or c
+ ret z
+ jp ERROR
l0b52h:
- ld a,b ;0b52
- or c ;0b53
- push bc ;0b54
- ret nz ;0b55
- pop bc ;0b56
+ ld a,b
+ or c
+ push bc
+ ret nz
+ pop bc
do_op_add:
- add hl,de ;0b57
+ add hl,de
l0b58h:
- pop de ;0b58
- jr l0b3eh ;0b59
+ pop de
+ jr l0b3eh
do_op_sub:
- and a ;0b5b
- sbc hl,de ;0b5c
- jr l0b58h ;0b5e
+ and a
+ sbc hl,de
+ jr l0b58h
do_op_mlt:
push bc
@@ -949,458 +949,458 @@ mlt_2:
jr l0b58h
do_op_div:
- call DIV_HL_DE ;0b75
- jr l0b58h ;0b78
+ call DIV_HL_DE
+ jr l0b58h
do_op_mod:
- call DIV_HL_DE ;0b7a
- ex de,hl ;0b7d
- jr l0b58h ;0b7e
+ call DIV_HL_DE
+ ex de,hl
+ jr l0b58h
DIV_HL_DE:
- push bc ;0b80
- ex de,hl ;0b81
- ld b,h ;0b82
- ld c,l ;0b83
- ld hl,0 ;0b84
- ld a,16 ;0b87
+ push bc
+ ex de,hl
+ ld b,h
+ ld c,l
+ ld hl,0
+ ld a,16
l0b89h:
- push af ;0b89
- add hl,hl ;0b8a
- ex de,hl ;0b8b
- xor a ;0b8c
- add hl,hl ;0b8d
- ex de,hl ;0b8e
- adc a,l ;0b8f
- sub c ;0b90
- ld l,a ;0b91
- ld a,h ;0b92
- sbc a,b ;0b93
- ld h,a ;0b94
- inc de ;0b95
- jr nc,l0b9ah ;0b96
- add hl,bc ;0b98
- dec de ;0b99
+ push af
+ add hl,hl
+ ex de,hl
+ xor a
+ add hl,hl
+ ex de,hl
+ adc a,l
+ sub c
+ ld l,a
+ ld a,h
+ sbc a,b
+ ld h,a
+ inc de
+ jr nc,l0b9ah
+ add hl,bc
+ dec de
l0b9ah:
- pop af ;0b9a
- dec a ;0b9b
- jr nz,l0b89h ;0b9c
- ex de,hl ;0b9e
- pop bc ;0b9f
- ret ;0ba0
+ pop af
+ dec a
+ jr nz,l0b89h
+ ex de,hl
+ pop bc
+ ret
do_op_and:
- ld a,h ;0ba1
- and d ;0ba2
- ld h,a ;0ba3
- ld a,l ;0ba4
- and e ;0ba5
- ld l,a ;0ba6
- jr l0b58h ;0ba7
+ ld a,h
+ and d
+ ld h,a
+ ld a,l
+ and e
+ ld l,a
+ jr l0b58h
do_op_or:
- ld a,h ;0ba9
- or d ;0baa
- ld h,a ;0bab
- ld a,l ;0bac
- or e ;0bad
- ld l,a ;0bae
- jr l0b58h ;0baf
+ ld a,h
+ or d
+ ld h,a
+ ld a,l
+ or e
+ ld l,a
+ jr l0b58h
do_op_xor:
- ld a,h ;0bb1
- xor d ;0bb2
- ld h,a ;0bb3
- ld a,l ;0bb4
- xor e ;0bb5
- ld l,a ;0bb6
- jr l0b58h ;0bb7
+ ld a,h
+ xor d
+ ld h,a
+ ld a,l
+ xor e
+ ld l,a
+ jr l0b58h
do_binary_op:
- push hl ;0bb9
- ld hl,tab_op_a ;0bba
- call lookupch ;0bbd
- ld a,b ;0bc0
- ld hl,tab_func_opa ;0bc1
- add a,a ;0bc4
- call ADD_HL_A ;0bc5
- ld c,(hl) ;0bc8
- inc hl ;0bc9
- ld b,(hl) ;0bca
- pop hl ;0bcb
- ret ;0bcc
+ push hl
+ ld hl,tab_op_a
+ call lookupch
+ ld a,b
+ ld hl,tab_func_opa
+ add a,a
+ call ADD_HL_A
+ ld c,(hl)
+ inc hl
+ ld b,(hl)
+ pop hl
+ ret
tab_op_a:
DB '+-*/%&!#',0
tab_func_opa:
- defw do_op_add ;0bd6
- defw do_op_sub ;0bd8
- defw do_op_mlt ;0bda
- defw do_op_div ;0bdc
- defw do_op_mod ;0bde
- defw do_op_and ;0be0
- defw do_op_or ;0be2
- defw do_op_xor ;0be4
- defw 0 ;0be6
+ defw do_op_add
+ defw do_op_sub
+ defw do_op_mlt
+ defw do_op_div
+ defw do_op_mod
+ defw do_op_and
+ defw do_op_or
+ defw do_op_xor
+ defw 0
fact_factor:
- call do_factor ;0be8
- ret nc ;0beb
- jp ERROR ;0bec
+ call do_factor
+ ret nc
+ jp ERROR
do_factor:
- call chk.sp ;0bef
- call get.number ;0bf2
- ret nc ;0bf5
- inc de ;0bf6
- ld hl,TOPRAM ;0bf7
- cp 'T' ;0bfa
- ret z ;0bfc
- ld hl,(HILOD) ;0bfd
- cp 'H' ;0c00
- ret z ;0c02
- ld hl,(MAXLOD) ;0c03
- cp 'M' ;0c06
- ret z ;0c08
- ld hl,TPA ;0c09
- cp 'L' ;0c0c
- ret z ;0c0e
- ld hl,(offs.@) ;0c0f
- cp '@' ;0c12
- ret z ;0c14
- ld hl,(OFFS.pc) ;0c15
- cp '$' ;0c18
- ret z ;0c1a
- cp '-' ;0c1b
- jr z,fact_factneg ;0c1d
- cp '~' ;0c1f
- jr z,fact_factinv ;0c21
- cp '+' ;0c23
- jr z,fact_factor ;0c25
- cp '^' ;0c27
- jr z,fact_reg.CPU ;0c29
- cp 'Y' ;0c2b
- jr z,fact_reg.Y ;0c2d
- cp '(' ;0c2f
- jr z,fact_mem ;0c31
- cp '[' ;0c33
+ call chk.sp
+ call get.number
+ ret nc
+ inc de
+ ld hl,TOPRAM
+ cp 'T'
+ ret z
+ ld hl,(HILOD)
+ cp 'H'
+ ret z
+ ld hl,(MAXLOD)
+ cp 'M'
+ ret z
+ ld hl,TPA
+ cp 'L'
+ ret z
+ ld hl,(offs.@)
+ cp '@'
+ ret z
+ ld hl,(OFFS.pc)
+ cp '$'
+ ret z
+ cp '-'
+ jr z,fact_factneg
+ cp '~'
+ jr z,fact_factinv
+ cp '+'
+ jr z,fact_factor
+ cp '^'
+ jr z,fact_reg.CPU
+ cp 'Y'
+ jr z,fact_reg.Y
+ cp '('
+ jr z,fact_mem
+ cp '['
jp z,EXPR_BRCKT ;0c35 [ expression ]
- cp '''' ;0c38
- jr z,fact_factstring ;0c3a
- dec de ;0c3c
- scf ;0c3d
- ret ;0c3e
+ cp ''''
+ jr z,fact_factstring
+ dec de
+ scf
+ ret
fact_reg.Y:
- call get.decdigit ;0c3f
- jp c,ERROR ;0c42
- inc de ;0c45
- add a,a ;0c46
- ld hl,reg.Y ;0c47
- call ADD_HL_A ;0c4a
- ld a,(hl) ;0c4d
- inc hl ;0c4e
- ld h,(hl) ;0c4f
- ld l,a ;0c50
- and a ;0c51
- ret ;0c52
+ call get.decdigit
+ jp c,ERROR
+ inc de
+ add a,a
+ ld hl,reg.Y
+ call ADD_HL_A
+ ld a,(hl)
+ inc hl
+ ld h,(hl)
+ ld l,a
+ and a
+ ret
fact_factstring:
- ld hl,0 ;0c53
+ ld hl,0
l0c56h:
- ld a,(de) ;0c56
- cp '''' ;0c57
- jr z,l0c62h ;0c59
- and a ;0c5b
- ret z ;0c5c
+ ld a,(de)
+ cp ''''
+ jr z,l0c62h
+ and a
+ ret z
l0c5dh:
- ld h,l ;0c5d
- ld l,a ;0c5e
- inc de ;0c5f
- jr l0c56h ;0c60
+ ld h,l
+ ld l,a
+ inc de
+ jr l0c56h
l0c62h:
- inc de ;0c62
- ld a,(de) ;0c63
- cp '''' ;0c64
- jr z,l0c5dh ;0c66
- sub '.' ;0c68
- or a ;0c6a
- ret nz ;0c6b
- inc de ;0c6c
- set 7,l ;0c6d
- ret ;0c6f
+ inc de
+ ld a,(de)
+ cp ''''
+ jr z,l0c5dh
+ sub '.'
+ or a
+ ret nz
+ inc de
+ set 7,l
+ ret
fact_reg.CPU:
- call sub_1315h ;0c70
- jr nc,l0cbbh ;0c73
- ld a,(hl) ;0c75
- inc hl ;0c76
- ld h,(hl) ;0c77
- ld l,a ;0c78
- and a ;0c79
- bit 0,c ;0c7a
- ret nz ;0c7c
- ld h,000h ;0c7d
- ret ;0c7f
+ call sub_1315h
+ jr nc,l0cbbh
+ ld a,(hl)
+ inc hl
+ ld h,(hl)
+ ld l,a
+ and a
+ bit 0,c
+ ret nz
+ ld h,000h
+ ret
fact_factneg:
- call fact_factor ;0c80
- dec hl ;0c83
+ call fact_factor
+ dec hl
cpl.hl:
- ld a,h ;0c84
- cpl ;0c85
- ld h,a ;0c86
- ld a,l ;0c87
- cpl ;0c88
- ld l,a ;0c89
- ret ;0c8a
+ ld a,h
+ cpl
+ ld h,a
+ ld a,l
+ cpl
+ ld l,a
+ ret
fact_factinv:
- call fact_factor ;0c8b
- jr cpl.hl ;0c8e
+ call fact_factor
+ jr cpl.hl
fact_mem:
- call EXPR1 ;0c90
- jr c,l0cbbh ;0c93
- ld a,(de) ;0c95
- cp ')' ;0c96
- jr nz,l0cbbh ;0c98
- inc de ;0c9a
+ call EXPR1
+ jr c,l0cbbh
+ ld a,(de)
+ cp ')'
+ jr nz,l0cbbh
+ inc de
comst
- ld a,(hl) ;0c9f
+ ld a,(hl)
inc hl ;
ld h,(hl) ;
comend
- ld l,a ;0ca7
- ld a,(de) ;0ca8
- inc de ;0ca9
- cp '.' ;0caa
- ret z ;0cac
- dec de ;0cad
- xor a ;0cae
- ld h,a ;0caf
- ret ;0cb0
+ ld l,a
+ ld a,(de)
+ inc de
+ cp '.'
+ ret z
+ dec de
+ xor a
+ ld h,a
+ ret
EXPR_BRCKT:
- call EXPR1 ;0cb1
- jr c,l0cbbh ;0cb4
- ld a,(de) ;0cb6
- cp ']' ;0cb7
- inc de ;0cb9
- ret z ;0cba
+ call EXPR1
+ jr c,l0cbbh
+ ld a,(de)
+ cp ']'
+ inc de
+ ret z
l0cbbh:
- jp ERROR ;0cbb
+ jp ERROR
get.number:
- call get.hexdigit ;0cbe
- ret c ;0cc1
- push de ;0cc2
+ call get.hexdigit
+ ret c
+ push de
l0cc3h:
- inc de ;0cc3
- call get.hexdigit ;0cc4
- jr nc,l0cc3h ;0cc7
- pop de ;0cc9
- cp '.' ;0cca
- jr z,l0d04h ;0ccc
- cp '"' ;0cce
- jr z,l0ce9h ;0cd0
- ld hl,0 ;0cd2
+ inc de
+ call get.hexdigit
+ jr nc,l0cc3h
+ pop de
+ cp '.'
+ jr z,l0d04h
+ cp '"'
+ jr z,l0ce9h
+ ld hl,0
l0cd5h:
- call get.hexdigit ;0cd5
- jr c,l0ce4h ;0cd8
- add hl,hl ;0cda
- add hl,hl ;0cdb
- add hl,hl ;0cdc
- add hl,hl ;0cdd
- call ADD_HL_A ;0cde
- inc de ;0ce1
- jr l0cd5h ;0ce2
+ call get.hexdigit
+ jr c,l0ce4h
+ add hl,hl
+ add hl,hl
+ add hl,hl
+ add hl,hl
+ call ADD_HL_A
+ inc de
+ jr l0cd5h
l0ce4h:
- xor 'H' ;0ce4
- ret nz ;0ce6
- inc de ;0ce7
- ret ;0ce8
+ xor 'H'
+ ret nz
+ inc de
+ ret
l0ce9h:
- ld hl,0 ;0ce9
+ ld hl,0
l0cech:
- call get.decdigit ;0cec
+ call get.decdigit
l0cefh:
- inc de ;0cef
- jr c,l0cf8h ;0cf0
- add hl,hl ;0cf2
- call ADD_HL_A ;0cf3
- jr l0cech ;0cf6
+ inc de
+ jr c,l0cf8h
+ add hl,hl
+ call ADD_HL_A
+ jr l0cech
l0cf8h:
- cp '"' ;0cf8
- jp nz,ERROR ;0cfa
- call get.decdigit ;0cfd
- jr nc,l0cefh ;0d00
- or a ;0d02
- ret ;0d03
+ cp '"'
+ jp nz,ERROR
+ call get.decdigit
+ jr nc,l0cefh
+ or a
+ ret
l0d04h:
- ld hl,0 ;0d04
+ ld hl,0
l0d07h:
- call get.decdigit ;0d07
- inc de ;0d0a
- jr c,l0d1ah ;0d0b
- push bc ;0d0d
+ call get.decdigit
+ inc de
+ jr c,l0d1ah
+ push bc
add hl,hl ;0d0e hl *= 10
- ld b,h ;0d0f
- ld c,l ;0d10
- add hl,hl ;0d11
- add hl,hl ;0d12
- add hl,bc ;0d13
- pop bc ;0d14
- call ADD_HL_A ;0d15
- jr l0d07h ;0d18
+ ld b,h
+ ld c,l
+ add hl,hl
+ add hl,hl
+ add hl,bc
+ pop bc
+ call ADD_HL_A
+ jr l0d07h
l0d1ah:
- cp '.' ;0d1a
- ret z ;0d1c
- jp ERROR ;0d1d
+ cp '.'
+ ret z
+ jp ERROR
sub_0d20h:
- ld a,(de) ;0d20
- cp 05bh ;0d21
- jr l0d28h ;0d23
+ ld a,(de)
+ cp 05bh
+ jr l0d28h
get.hexdigit:
- ld a,(de) ;0d25
+ ld a,(de)
sub_0d26h:
- cp 'F'+1 ;0d26
+ cp 'F'+1
l0d28h:
- ccf ;0d28
- ret c ;0d29
- cp 'A' ;0d2a
- jr c,l0d32h ;0d2c
- sub 'A'-10 ;0d2e
- ret ;0d30
+ ccf
+ ret c
+ cp 'A'
+ jr c,l0d32h
+ sub 'A'-10
+ ret
get.decdigit:
- ld a,(de) ;0d31
+ ld a,(de)
l0d32h:
- cp '9'+1 ;0d32
- jr l0d39h ;0d34
+ cp '9'+1
+ jr l0d39h
get.bindigit:
- ld a,(de) ;0d36
- cp '1'+1 ;0d37
+ ld a,(de)
+ cp '1'+1
l0d39h:
- ccf ;0d39
- ret c ;0d3a
- cp '0' ;0d3b
- ret c ;0d3d
- sub '0' ;0d3e
- ret ;0d40
+ ccf
+ ret c
+ cp '0'
+ ret c
+ sub '0'
+ ret
l0d41h:
- call assert_eol ;0d41
+ call assert_eol
prnt_cpustat:
- call prnt_f ;0d44
- call outbl2 ;0d47
- ld hl,b_0x0DFD_start ;0d4a
- ld de,b_0x0E1D_start ;0d4d
- ld b,006h ;0d50
+ call prnt_f
+ call outbl2
+ ld hl,b_0x0DFD_start
+ ld de,b_0x0E1D_start
+ ld b,006h
l0d52h:
- call prnt_regs ;0d52
- djnz l0d52h ;0d55
- push hl ;0d57
- push de ;0d58
- ld iy,(REG.PC) ;0d59
- call sub_1f77h ;0d5d
- exx ;0d60
- ex af,af' ;0d61
- call CRLF ;0d62
- call prnt_f2 ;0d65
- call outbl2 ;0d68
- pop de ;0d6b
- pop hl ;0d6c
- ld b,007h ;0d6d
+ call prnt_regs
+ djnz l0d52h
+ push hl
+ push de
+ ld iy,(REG.PC)
+ call sub_1f77h
+ exx
+ ex af,af'
+ call CRLF
+ call prnt_f2
+ call outbl2
+ pop de
+ pop hl
+ ld b,007h
l0d6fh:
- call prnt_regs ;0d6f
- djnz l0d6fh ;0d72
- exx ;0d74
- ex af,af' ;0d75
- and a ;0d76
- jr z,l0d7fh ;0d77
- call outbl6 ;0d79
- call sub_1f5bh ;0d7c
+ call prnt_regs
+ djnz l0d6fh
+ exx
+ ex af,af'
+ and a
+ jr z,l0d7fh
+ call outbl6
+ call sub_1f5bh
l0d7fh:
- jp crlf ;0d7f
+ jp crlf
prnt_f:
- ld a,(reg.f) ;0d82
- call prnt_flags ;0d85
- ld a,(reg.iff) ;0d88
- cp 0f3h ;0d8b
- jp z,outbl ;0d8d
- ld a,'E' ;0d90
- jp outchar ;0d92
+ ld a,(reg.f)
+ call prnt_flags
+ ld a,(reg.iff)
+ cp 0f3h
+ jp z,outbl
+ ld a,'E'
+ jp outchar
prnt_f2:
- ld a,(reg.f2) ;0d95
- call prnt_flags ;0d98
- jp outbl ;0d9b
+ ld a,(reg.f2)
+ call prnt_flags
+ jp outbl
prnt_flags:
- ld b,a ;0d9e
- ld a,'S' ;0d9f
- call sub_0dbeh ;0da1
- ld a,'Z' ;0da4
- call sub_0dbeh ;0da6
- rl b ;0da9
- ld a,'H' ;0dab
- call sub_0dbeh ;0dad
- rl b ;0db0
- ld a,'V' ;0db2
- call sub_0dbeh ;0db4
- ld a,'N' ;0db7
- call sub_0dbeh ;0db9
- ld a,'C' ;0dbc
+ ld b,a
+ ld a,'S'
+ call sub_0dbeh
+ ld a,'Z'
+ call sub_0dbeh
+ rl b
+ ld a,'H'
+ call sub_0dbeh
+ rl b
+ ld a,'V'
+ call sub_0dbeh
+ ld a,'N'
+ call sub_0dbeh
+ ld a,'C'
sub_0dbeh:
- rl b ;0dbe
- jp c,OUTCHAR ;0dc0
- jp OUTBL ;0dc3
+ rl b
+ jp c,OUTCHAR
+ jp OUTBL
prnt_regs:
- push bc ;0dc6
- push de ;0dc7
- call PSTR ;0dc8
- ld a,'=' ;0dcb
- call OUTCHAR ;0dcd
- ex (sp),hl ;0dd0
- ld e,(hl) ;0dd1
- inc hl ;0dd2
- ld d,(hl) ;0dd3
- inc hl ;0dd4
- ld a,(hl) ;0dd5
- inc hl ;0dd6
- push hl ;0dd7
- and a ;0dd8
- jr z,l0df2h ;0dd9
- push af ;0ddb
- ld a,(de) ;0ddc
- ld l,a ;0ddd
- inc de ;0dde
- ld a,(de) ;0ddf
- ld h,a ;0de0
- pop af ;0de1
- dec a ;0de2
- jr z,l0dedh ;0de3
- call out.hl.@ ;0de5
- call z,outbl6 ;0de8
- jr l0df6h ;0deb
+ push bc
+ push de
+ call PSTR
+ ld a,'='
+ call OUTCHAR
+ ex (sp),hl
+ ld e,(hl)
+ inc hl
+ ld d,(hl)
+ inc hl
+ ld a,(hl)
+ inc hl
+ push hl
+ and a
+ jr z,l0df2h
+ push af
+ ld a,(de)
+ ld l,a
+ inc de
+ ld a,(de)
+ ld h,a
+ pop af
+ dec a
+ jr z,l0dedh
+ call out.hl.@
+ call z,outbl6
+ jr l0df6h
l0dedh:
- call out.hl ;0ded
- jr l0df6h ;0df0
+ call out.hl
+ jr l0df6h
l0df2h:
- ld a,(de) ;0df2
- call out.hex ;0df3
+ ld a,(de)
+ call out.hex
l0df6h:
- call OUTBL ;0df6
- pop de ;0df9
- pop hl ;0dfa
- pop bc ;0dfb
- ret ;0dfc
+ call OUTBL
+ pop de
+ pop hl
+ pop bc
+ ret
b_0x0DFD_start:
DC 'A '
@@ -1419,235 +1419,235 @@ b_0x0DFD_start:
DB 0
b_0x0E1D_start:
- defw reg.a ;0e1d
- defb 000h ;0e1f
- defw reg.c ;0e20
- defb 001h ;0e22
- defw reg.e ;0e23
- defb 001h ;0e25
- defw reg.l ;0e26
- defb 001h ;0e28
- defw reg.sp ;0e29
- defb 001h ;0e2b
- defw reg.pc ;0e2c
- defb 002h ;0e2e
- defw reg.a2 ;0e2f
- defb 000h ;0e31
- defw reg.c2 ;0e32
- defb 001h ;0e34
- defw reg.e2 ;0e35
- defb 001h ;0e37
- defw reg.l2 ;0e38
- defb 001h ;0e3a
- defw reg.ix ;0e3b
- defb 001h ;0e3d
- defw reg.iy ;0e3e
- defb 001h ;0e40
- defw reg.i ;0e41
- dw 0 ;0e43
+ defw reg.a
+ defb 000h
+ defw reg.c
+ defb 001h
+ defw reg.e
+ defb 001h
+ defw reg.l
+ defb 001h
+ defw reg.sp
+ defb 001h
+ defw reg.pc
+ defb 002h
+ defw reg.a2
+ defb 000h
+ defw reg.c2
+ defb 001h
+ defw reg.e2
+ defb 001h
+ defw reg.l2
+ defb 001h
+ defw reg.ix
+ defb 001h
+ defw reg.iy
+ defb 001h
+ defw reg.i
+ dw 0
CMD.G:
- sub a ;0e45
- ld (TCFLG),a ;0e46
- ld (XA747),a ;0e49
- call EXPR ;0e4c
- jr c,l0e54h ;0e4f
- ld (REG.PC),hl ;0e51
+ sub a
+ ld (TCFLG),a
+ ld (XA747),a
+ call EXPR
+ jr c,l0e54h
+ ld (REG.PC),hl
l0e54h:
- call SKIPBL ;0e54
- jp z,l1183h ;0e57
- cp ';' ;0e5a
- jp nz,ERROR ;0e5c
- inc de ;0e5f
- ld a,002h ;0e60
- call sub_0f24h ;0e62
- jp l1183h ;0e65
+ call SKIPBL
+ jp z,l1183h
+ cp ';'
+ jp nz,ERROR
+ inc de
+ ld a,002h
+ call sub_0f24h
+ jp l1183h
sub_0e68h:
- ld b,BP_CNT ;0e68
- ld ix,bp_tab ;0e6a
+ ld b,BP_CNT
+ ld ix,bp_tab
l0e6eh:
- ld a,(ix+000h) ;0e6e
- and 0f1h ;0e71
- ld (ix+000h),a ;0e73
- call sub_11c5h ;0e76
- ld de,BP_SIZE ;0e79
- add ix,de ;0e7c
- djnz l0e6eh ;0e7e
- ret ;0e80
+ ld a,(ix+000h)
+ and 0f1h
+ ld (ix+000h),a
+ call sub_11c5h
+ ld de,BP_SIZE
+ add ix,de
+ djnz l0e6eh
+ ret
CMD.B:
- call SKIPBL ;0e81
- jr z,l0ecbh ;0e84
- inc de ;0e86
- cp 'X' ;0e87
- jr z,l0e91h ;0e89
- dec de ;0e8b
- ld a,001h ;0e8c
- jp sub_0f24h ;0e8e
+ call SKIPBL
+ jr z,l0ecbh
+ inc de
+ cp 'X'
+ jr z,l0e91h
+ dec de
+ ld a,001h
+ jp sub_0f24h
l0e91h:
- call SKIPBL ;0e91
- jr z,l0ea6h ;0e94
+ call SKIPBL
+ jr z,l0ea6h
l0e96h:
- call EXPR ;0e96
- jp c,assert_eol ;0e99
- push de ;0e9c
- call sub_0ea7h ;0e9d
- pop de ;0ea0
- call skip_to_nextarg ;0ea1
- jr l0e96h ;0ea4
+ call EXPR
+ jp c,assert_eol
+ push de
+ call sub_0ea7h
+ pop de
+ call skip_to_nextarg
+ jr l0e96h
l0ea6h:
- scf ;0ea6
+ scf
sub_0ea7h:
- ld b,BP_CNT ;0ea7
- ld ix,bp_tab ;0ea9
+ ld b,BP_CNT
+ ld ix,bp_tab
l0eadh:
- push af ;0ead
- jr c,l0ebbh ;0eae
- ld e,(ix+002h) ;0eb0
- ld d,(ix+003h) ;0eb3
- call CP.HL.DE ;0eb6
- jr nz,l0ec2h ;0eb9
+ push af
+ jr c,l0ebbh
+ ld e,(ix+002h)
+ ld d,(ix+003h)
+ call CP.HL.DE
+ jr nz,l0ec2h
l0ebbh:
- ld (ix+000h),000h ;0ebb
- call sub_11c5h ;0ebf
+ ld (ix+000h),000h
+ call sub_11c5h
l0ec2h:
- ld de,BP_SIZE ;0ec2
- add ix,de ;0ec5
- pop af ;0ec7
- djnz l0eadh ;0ec8
- ret ;0eca
+ ld de,BP_SIZE
+ add ix,de
+ pop af
+ djnz l0eadh
+ ret
l0ecbh:
- ld b,BP_CNT ;0ecb
- ld ix,bp_tab ;0ecd
+ ld b,BP_CNT
+ ld ix,bp_tab
l0ed1h:
- bit 0,(ix+000h) ;0ed1
- jr z,l0f1ch ;0ed5
- ld a,'R' ;0ed7
- bit 4,(ix+000h) ;0ed9
- jr nz,l0ee1h ;0edd
- ld a,' ' ;0edf
+ bit 0,(ix+000h)
+ jr z,l0f1ch
+ ld a,'R'
+ bit 4,(ix+000h)
+ jr nz,l0ee1h
+ ld a,' '
l0ee1h:
- call OUTCHAR ;0ee1
- call OUTBL ;0ee4
- ld l,(ix+002h) ;0ee7
- ld h,(ix+003h) ;0eea
- call out.hl.@ ;0eed
- call outbl2 ;0ef0
- ld a,':' ;0ef3
- call OUTCHAR ;0ef5
- ld l,(ix+004h) ;0ef8
- ld h,(ix+005h) ;0efb
- call out.hl ;0efe
- ld l,(ix+006h) ;0f01
- ld h,(ix+007h) ;0f04
- ld a,h ;0f07
- or l ;0f08
- jr z,l0f19h ;0f09
- call outbl4 ;0f0b
- ld a,'I' ;0f0e
- call OUTCHAR ;0f10
- call outbl2 ;0f13
- call PSTR ;0f16
+ call OUTCHAR
+ call OUTBL
+ ld l,(ix+002h)
+ ld h,(ix+003h)
+ call out.hl.@
+ call outbl2
+ ld a,':'
+ call OUTCHAR
+ ld l,(ix+004h)
+ ld h,(ix+005h)
+ call out.hl
+ ld l,(ix+006h)
+ ld h,(ix+007h)
+ ld a,h
+ or l
+ jr z,l0f19h
+ call outbl4
+ ld a,'I'
+ call OUTCHAR
+ call outbl2
+ call PSTR
l0f19h:
- call CRLF ;0f19
+ call CRLF
l0f1ch:
- ld de,BP_SIZE ;0f1c
- add ix,de ;0f1f
- djnz l0ed1h ;0f21
- ret ;0f23
+ ld de,BP_SIZE
+ add ix,de
+ djnz l0ed1h
+ ret
sub_0f24h:
- ld b,a ;0f24
- call SKIPBL ;0f25
- ret z ;0f28
- cp 'R' ;0f29
- jr nz,l0f30h ;0f2b
- inc de ;0f2d
- set 4,b ;0f2e
+ ld b,a
+ call SKIPBL
+ ret z
+ cp 'R'
+ jr nz,l0f30h
+ inc de
+ set 4,b
l0f30h:
- push bc ;0f30
- call EXPR ;0f31
- jp c,ERROR ;0f34
- pop bc ;0f37
- bit 0,b ;0f38
- push bc ;0f3a
- push de ;0f3b
- push hl ;0f3c
- call nz,sub_0ea7h ;0f3d
- pop hl ;0f40
- call sub_0f68h ;0f41
- pop de ;0f44
- ld (ix+002h),l ;0f45
- ld (ix+003h),h ;0f48
- call sub_0f80h ;0f4b
- ld (ix+004h),l ;0f4e
- ld (ix+005h),h ;0f51
- call sub_0f91h ;0f54
- ld (ix+006h),l ;0f57
- ld (ix+007h),h ;0f5a
- call skip_to_nextarg ;0f5d
- pop af ;0f60
- ld (ix+000h),a ;0f61
- and 00fh ;0f64
- jr sub_0f24h ;0f66
+ push bc
+ call EXPR
+ jp c,ERROR
+ pop bc
+ bit 0,b
+ push bc
+ push de
+ push hl
+ call nz,sub_0ea7h
+ pop hl
+ call sub_0f68h
+ pop de
+ ld (ix+002h),l
+ ld (ix+003h),h
+ call sub_0f80h
+ ld (ix+004h),l
+ ld (ix+005h),h
+ call sub_0f91h
+ ld (ix+006h),l
+ ld (ix+007h),h
+ call skip_to_nextarg
+ pop af
+ ld (ix+000h),a
+ and 00fh
+ jr sub_0f24h
sub_0f68h:
- ld b,BP_CNT ;0f68
- ld ix,bp_tab ;0f6a
+ ld b,BP_CNT
+ ld ix,bp_tab
l0f6eh:
- ld a,(ix+000h) ;0f6e
- and 00fh ;0f71
- ret z ;0f73
- push bc ;0f74
- ld bc,BP_SIZE ;0f75
- add ix,bc ;0f78
- pop bc ;0f7a
- djnz l0f6eh ;0f7b
- jp ERROR ;0f7d
+ ld a,(ix+000h)
+ and 00fh
+ ret z
+ push bc
+ ld bc,BP_SIZE
+ add ix,bc
+ pop bc
+ djnz l0f6eh
+ jp ERROR
sub_0f80h:
- call SKIPBL ;0f80
- ld hl,1 ;0f83
- cp 03ah ;0f86
- ret nz ;0f88
- inc de ;0f89
- call EXPR ;0f8a
- jp c,ERROR ;0f8d
- ret ;0f90
+ call SKIPBL
+ ld hl,1
+ cp 03ah
+ ret nz
+ inc de
+ call EXPR
+ jp c,ERROR
+ ret
sub_0f91h:
- call SKIPBL ;0f91
- cp 049h ;0f94
- ld hl,0 ;0f96
- ret nz ;0f99
- inc de ;0f9a
- call SKIPBL ;0f9b
- push de ;0f9e
- call EXPR ;0f9f
- jp c,ERROR ;0fa2
- ex de,hl ;0fa5
- pop de ;0fa6
- push de ;0fa7
- sbc hl,de ;0fa8
- ld b,h ;0faa
- ld c,l ;0fab
- ld hl,(sexp1) ;0fac
- push hl ;0faf
- add hl,bc ;0fb0
- ld de,sexpbufe ;0fb1
- call CP.HL.DE ;0fb4
- jp nc,ERROR ;0fb7
- pop hl ;0fba
- ld (sexp2),hl ;0fbb
- pop de ;0fbe
- ex de,hl ;0fbf
- ldir ;0fc0
- xor a ;0fc2
- ld (de),a ;0fc3
- inc de ;0fc4
- ex de,hl ;0fc5
- ld (sexp1),hl ;0fc6
- ld hl,(sexp2) ;0fc9
- ret ;0fcc
+ call SKIPBL
+ cp 049h
+ ld hl,0
+ ret nz
+ inc de
+ call SKIPBL
+ push de
+ call EXPR
+ jp c,ERROR
+ ex de,hl
+ pop de
+ push de
+ sbc hl,de
+ ld b,h
+ ld c,l
+ ld hl,(sexp1)
+ push hl
+ add hl,bc
+ ld de,sexpbufe
+ call CP.HL.DE
+ jp nc,ERROR
+ pop hl
+ ld (sexp2),hl
+ pop de
+ ex de,hl
+ ldir
+ xor a
+ ld (de),a
+ inc de
+ ex de,hl
+ ld (sexp1),hl
+ ld hl,(sexp2)
+ ret
bpddtz:
if ROMSYS
@@ -1717,7 +1717,7 @@ l1017h:
jp z,l284ah
l102eh:
call sub_0e68h
- call prnt_cpustat ;1031
+ call prnt_cpustat
jp DDTZML
if CPU_Z180
@@ -1727,202 +1727,202 @@ MSG_trap:
endif
l1051h:
- ld (XBFE8),a ;1051
- ld c,007h ;1054
- jp l119fh ;1056
+ ld (XBFE8),a
+ ld c,007h
+ jp l119fh
sub_1059h:
- ld a,080h ;1059
- ex af,af' ;105b
- sub a ;105c
- ld (XA747),a ;105d
- ld b,BP_CNT ;1060
- ld ix,bp_tab ;1062
+ ld a,080h
+ ex af,af'
+ sub a
+ ld (XA747),a
+ ld b,BP_CNT
+ ld ix,bp_tab
l1066h:
- ld a,(ix+000h) ;1066
- and 007h ;1069
- jr z,l107eh ;106b
- ld e,(ix+002h) ;106d
- ld d,(ix+003h) ;1070
- ld hl,(REG.PC) ;1073
- call CP.HL.DE ;1076
- push bc ;1079
- call z,sub_1087h ;107a
- pop bc ;107d
+ ld a,(ix+000h)
+ and 007h
+ jr z,l107eh
+ ld e,(ix+002h)
+ ld d,(ix+003h)
+ ld hl,(REG.PC)
+ call CP.HL.DE
+ push bc
+ call z,sub_1087h
+ pop bc
l107eh:
- ld de,BP_SIZE ;107e
- add ix,de ;1081
- djnz l1066h ;1083
- ex af,af' ;1085
- ret ;1086
+ ld de,BP_SIZE
+ add ix,de
+ djnz l1066h
+ ex af,af'
+ ret
sub_1087h:
- ex af,af' ;1087
- res 7,a ;1088
- ex af,af' ;108a
- ld e,(ix+006h) ;108b
- ld d,(ix+007h) ;108e
- ld a,d ;1091
- or e ;1092
- ld hl,0ffffh ;1093
- call nz,EXPR ;1096
- ld a,h ;1099
- or l ;109a
- jr z,l10aeh ;109b
- ld e,(ix+004h) ;109d
- ld d,(ix+005h) ;10a0
- dec de ;10a3
- ld a,d ;10a4
- or e ;10a5
- jr z,l10b9h ;10a6
- ld (ix+004h),e ;10a8
- ld (ix+005h),d ;10ab
+ ex af,af'
+ res 7,a
+ ex af,af'
+ ld e,(ix+006h)
+ ld d,(ix+007h)
+ ld a,d
+ or e
+ ld hl,0ffffh
+ call nz,EXPR
+ ld a,h
+ or l
+ jr z,l10aeh
+ ld e,(ix+004h)
+ ld d,(ix+005h)
+ dec de
+ ld a,d
+ or e
+ jr z,l10b9h
+ ld (ix+004h),e
+ ld (ix+005h),d
l10aeh:
- bit 4,(ix+000h) ;10ae
- ret z ;10b2
- ld a,001h ;10b3
- ld (XA747),a ;10b5
- ret ;10b8
+ bit 4,(ix+000h)
+ ret z
+ ld a,001h
+ ld (XA747),a
+ ret
l10b9h:
- ex af,af' ;10b9
- or (ix+000h) ;10ba
- ex af,af' ;10bd
+ ex af,af'
+ or (ix+000h)
+ ex af,af'
ret
bp.unset:
- ld b,BP_CNT ;10bf
- ld ix,bp_tab ;10c1
+ ld b,BP_CNT
+ ld ix,bp_tab
l10c5h:
- bit 5,(ix+000h) ;10c5
- res 5,(ix+000h) ;10c9
- jr z,l10e7h ;10cd
- ld l,(ix+002h) ;10cf
- ld h,(ix+003h) ;10d2
- ld a,(ddtrst) ;10d5
- comst ;10e2
- cp (hl) ;10dc
+ bit 5,(ix+000h)
+ res 5,(ix+000h)
+ jr z,l10e7h
+ ld l,(ix+002h)
+ ld h,(ix+003h)
+ ld a,(ddtrst)
+ comst
+ cp (hl)
comend
- jr nz,l10e7h ;10dd
- ld a,(ix+001h) ;10df
- comst ;10e2
- ld (hl),a ;10e6
+ jr nz,l10e7h
+ ld a,(ix+001h)
+ comst
+ ld (hl),a
comend
l10e7h:
- res 3,(ix+000h) ;10e7
- ld de,BP_SIZE ;10eb
- add ix,de ;10ee
- djnz l10c5h ;10f0
- ret ;10f2
+ res 3,(ix+000h)
+ ld de,BP_SIZE
+ add ix,de
+ djnz l10c5h
+ ret
sub_10f3h:
- ld b,BP_CNT ;10f3
- ld ix,bp_tab ;10f5
+ ld b,BP_CNT
+ ld ix,bp_tab
l10f9h:
- ld a,(ix+000h) ;10f9
- and 003h ;10fc
- jr z,l110dh ;10fe
- ld e,(ix+002h) ;1100
- ld d,(ix+003h) ;1103
- ld hl,(REG.PC) ;1106
- call CP.HL.DE ;1109
- ret z ;110c
+ ld a,(ix+000h)
+ and 003h
+ jr z,l110dh
+ ld e,(ix+002h)
+ ld d,(ix+003h)
+ ld hl,(REG.PC)
+ call CP.HL.DE
+ ret z
l110dh:
- ld de,BP_SIZE ;110d
- add ix,de ;1110
- djnz l10f9h ;1112
- sub a ;1114
- inc a ;1115
- ret ;1116
+ ld de,BP_SIZE
+ add ix,de
+ djnz l10f9h
+ sub a
+ inc a
+ ret
sub_1117h:
- call sub_0f68h ;1117
- ld (ix+004h),001h ;111a
- ld (ix+005h),000h ;111e
- ld (ix+002h),l ;1122
- ld (ix+003h),h ;1125
- ld (ix+006h),000h ;1128
- ld (ix+007h),000h ;112c
- ld a,(XBFE8) ;1130
- and a ;1133
- ld a,008h ;1134
- jr nz,l113ah ;1136
- ld a,004h ;1138
+ call sub_0f68h
+ ld (ix+004h),001h
+ ld (ix+005h),000h
+ ld (ix+002h),l
+ ld (ix+003h),h
+ ld (ix+006h),000h
+ ld (ix+007h),000h
+ ld a,(XBFE8)
+ and a
+ ld a,008h
+ jr nz,l113ah
+ ld a,004h
l113ah:
- ld (ix+000h),a ;113a
- ret ;113d
+ ld (ix+000h),a
+ ret
bp.set:
- ld b,BP_CNT ;113e
- ld ix,bp_tab ;1140
+ ld b,BP_CNT
+ ld ix,bp_tab
l1144h:
- ld a,(ix+000h) ;1144
- and c ;1147
- jr z,l117bh ;1148
- set 5,(ix+000h) ;114a
- ld l,(ix+002h) ;114e
- ld h,(ix+003h) ;1151
-
-
- ld a,(ddtrst) ;115c
- comst ;115f
- ld e,(hl) ;1158
- ld (hl),a ;1163
+ ld a,(ix+000h)
+ and c
+ jr z,l117bh
+ set 5,(ix+000h)
+ ld l,(ix+002h)
+ ld h,(ix+003h)
+
+
+ ld a,(ddtrst)
+ comst
+ ld e,(hl)
+ ld (hl),a
comend
- ld (ix+001h),e ;1159
- and 038h ;1164
- ld h,0 ;1166
- ld l,a ;1168
- ld de,bpent ;116f
+ ld (ix+001h),e
+ and 038h
+ ld h,0
+ ld l,a
+ ld de,bpent
comst ;
- ld (hl),0c3h ;1169
- inc hl ;116e
- ld (hl),e ;1172
- inc hl ;1176
- ld (hl),d ;1177
+ ld (hl),0c3h
+ inc hl
+ ld (hl),e
+ inc hl
+ ld (hl),d
comend
-
+
l117bh:
- ld de,BP_SIZE ;117b
- add ix,de ;117e
- djnz l1144h ;1180
+ ld de,BP_SIZE
+ add ix,de
+ djnz l1144h
ret
- ;1182
+
l1183h:
- sub a ;1183
- ld (XBFE8),a ;1184
- ld a,(XA747) ;1187
- and a ;118a
- call nz,prnt_cpustat ;118b
- call sub_10f3h ;118e
- ld c,007h ;1191
- jr nz,l119fh ;1193
- ld a,001h ;1195
- ld (XBFE8),a ;1197
- call sub_26e7h ;119a
- ld c,008h ;119d
+ sub a
+ ld (XBFE8),a
+ ld a,(XA747)
+ and a
+ call nz,prnt_cpustat
+ call sub_10f3h
+ ld c,007h
+ jr nz,l119fh
+ ld a,001h
+ ld (XBFE8),a
+ call sub_26e7h
+ ld c,008h
l119fh:
- call bp.set ;119f
+ call bp.set
ld sp,$stack ;11a2 set/restore user cpu state
- pop hl ;11a5
- pop de ;11a6
- pop bc ;11a7
- pop af ;11a8
- exx ;11a9
- ex af,af' ;11aa
- pop af ;11ab
- ld i,a ;11ac
- pop iy ;11ae
- pop ix ;11b0
- pop de ;11b2
- pop bc ;11b3
+ pop hl
+ pop de
+ pop bc
+ pop af
+ exx
+ ex af,af'
+ pop af
+ ld i,a
+ pop iy
+ pop ix
+ pop de
+ pop bc
if ROMSYS
- pop hl ;11b4
- ld a,l ;11b5
- and M_MWI ;11b6
- ld l,a ;11b8
- di ;11b9
- in0 a,(dcntl) ;11ba
- and ~M_MWI ;11bd
- or l ;11bf
- ld l,a ;11c0
- ld a,h ;11c1
+ pop hl
+ ld a,l
+ and M_MWI
+ ld l,a
+ di
+ in0 a,(dcntl)
+ and ~M_MWI
+ or l
+ ld l,a
+ ld a,h
else
pop hl
di
@@ -1930,223 +1930,223 @@ l119fh:
jp $go ;11c2 common ram, switch banks and go to user prog
sub_11c5h:
- ld a,(ix+000h) ;11c5
- and 003h ;11c8
- ret nz ;11ca
- ld e,(ix+006h) ;11cb
- ld d,(ix+007h) ;11ce
- ld a,d ;11d1
- or e ;11d2
- ret z ;11d3
- push bc ;11d4
- ld h,d ;11d5
- ld l,e ;11d6
- sub a ;11d7
- ld (ix+006h),a ;11d8
- ld (ix+007h),a ;11db
- ld bc,0ffffh ;11de
- cpir ;11e1
+ ld a,(ix+000h)
+ and 003h
+ ret nz
+ ld e,(ix+006h)
+ ld d,(ix+007h)
+ ld a,d
+ or e
+ ret z
+ push bc
+ ld h,d
+ ld l,e
+ sub a
+ ld (ix+006h),a
+ ld (ix+007h),a
+ ld bc,0ffffh
+ cpir
l11e3h:
- push de ;11e3
- ld de,(sexp1) ;11e4
- call CP.HL.DE ;11e8
- pop de ;11eb
- jr nc,l11f9h ;11ec
- call sub_11ffh ;11ee
+ push de
+ ld de,(sexp1)
+ call CP.HL.DE
+ pop de
+ jr nc,l11f9h
+ call sub_11ffh
l11f1h:
- ld a,(hl) ;11f1
- ldi ;11f2
- and a ;11f4
- jr nz,l11f1h ;11f5
- jr l11e3h ;11f7
+ ld a,(hl)
+ ldi
+ and a
+ jr nz,l11f1h
+ jr l11e3h
l11f9h:
- ld (sexp1),de ;11f9
- pop bc ;11fd
- ret ;11fe
+ ld (sexp1),de
+ pop bc
+ ret
sub_11ffh:
- ld iy,bp_tab ;11ff
- push de ;1203
+ ld iy,bp_tab
+ push de
l1204h:
- ld e,(iy+006h) ;1204
- ld d,(iy+007h) ;1207
- call CP.HL.DE ;120a
- jr z,l1216h ;120d
- ld de,BP_SIZE ;120f
- add iy,de ;1212
- jr l1204h ;1214
+ ld e,(iy+006h)
+ ld d,(iy+007h)
+ call CP.HL.DE
+ jr z,l1216h
+ ld de,BP_SIZE
+ add iy,de
+ jr l1204h
l1216h:
- pop de ;1216
- ld (iy+006h),e ;1217
- ld (iy+007h),d ;121a
- ret ;121d
+ pop de
+ ld (iy+006h),e
+ ld (iy+007h),d
+ ret
CMD.Y:
- call get.decdigit ;121e
- jr c,l122fh ;1221
- inc de ;1223
- push af ;1224
- call assert_eol ;1225
- pop af ;1228
- call sub_1248h ;1229
- jp l127ch ;122c
+ call get.decdigit
+ jr c,l122fh
+ inc de
+ push af
+ call assert_eol
+ pop af
+ call sub_1248h
+ jp l127ch
l122fh:
- call assert_eol ;122f
- xor a ;1232
+ call assert_eol
+ xor a
l1233h:
- push af ;1233
- call sub_1248h ;1234
- call outbl4 ;1237
- pop af ;123a
- inc a ;123b
- bit 0,a ;123c
- push af ;123e
- call z,CRLF ;123f
- pop af ;1242
- cp LF ;1243
- jr c,l1233h ;1245
- ret ;1247
+ push af
+ call sub_1248h
+ call outbl4
+ pop af
+ inc a
+ bit 0,a
+ push af
+ call z,CRLF
+ pop af
+ cp LF
+ jr c,l1233h
+ ret
sub_1248h:
- ld c,a ;1248
- ld b,0 ;1249
- add a,'0'+080h ;124b
- ld de,msg.Y+1 ;124d
- ld (de),a ;1250
- dec de ;1251
- ld hl,reg.Y ;1252
- add hl,bc ;1255
- add hl,bc ;1256
- ex de,hl ;1257
- ld c,003h ;1258
- jp l129ah ;125a
+ ld c,a
+ ld b,0
+ add a,'0'+080h
+ ld de,msg.Y+1
+ ld (de),a
+ dec de
+ ld hl,reg.Y
+ add hl,bc
+ add hl,bc
+ ex de,hl
+ ld c,003h
+ jp l129ah
CMD.X:
- call SKIPBL ;125d
- call sub_1315h ;1260
- jp nc,l0d41h ;1263
- call assert_eol ;1266
- ld a,b ;1269
- cp 01fh ;126a
- jr z,l12c6h ;126c
- cp 020h ;126e
- jr z,l12b6h ;1270
- ex de,hl ;1272
- ld hl,b_0x132A_start ;1273
- call sub_0a48h ;1276
+ call SKIPBL
+ call sub_1315h
+ jp nc,l0d41h
+ call assert_eol
+ ld a,b
+ cp 01fh
+ jr z,l12c6h
+ cp 020h
+ jr z,l12b6h
+ ex de,hl
+ ld hl,b_0x132A_start
+ call sub_0a48h
l1279h:
- call l129ah ;1279
+ call l129ah
l127ch:
- call OUTBL ;127c
- push de ;127f
- push bc ;1280
- call INLINE ;1281
- call SKIPBL ;1284
- jr z,l1297h ;1287
- call get_arg ;1289
- ld b,h ;128c
- ld c,l ;128d
- pop af ;128e
- pop hl ;128f
- ld (hl),c ;1290
- bit 0,a ;1291
- ret z ;1293
- inc hl ;1294
- ld (hl),b ;1295
- ret ;1296
+ call OUTBL
+ push de
+ push bc
+ call INLINE
+ call SKIPBL
+ jr z,l1297h
+ call get_arg
+ ld b,h
+ ld c,l
+ pop af
+ pop hl
+ ld (hl),c
+ bit 0,a
+ ret z
+ inc hl
+ ld (hl),b
+ ret
l1297h:
- pop af ;1297
- pop hl ;1298
- ret ;1299
+ pop af
+ pop hl
+ ret
l129ah:
- ld b,c ;129a
- call PSTR ;129b
- ld a,'=' ;129e
- call OUTCHAR ;12a0
- ld a,(de) ;12a3
- bit 0,b ;12a4
- jp z,out.hex ;12a6
- ld l,a ;12a9
- inc de ;12aa
- ld a,(de) ;12ab
- dec de ;12ac
- ld h,a ;12ad
- bit 1,b ;12ae
- jp z,out.hl ;12b0
- jp out.hl.@ ;12b3
+ ld b,c
+ call PSTR
+ ld a,'='
+ call OUTCHAR
+ ld a,(de)
+ bit 0,b
+ jp z,out.hex
+ ld l,a
+ inc de
+ ld a,(de)
+ dec de
+ ld h,a
+ bit 1,b
+ jp z,out.hl
+ jp out.hl.@
l12b6h:
- call prnt_f ;12b6
- ld a,0f3h ;12b9
- ld (reg.iff),a ;12bb
- scf ;12be
- call sub_12d1h ;12bf
- ld (reg.f),a ;12c2
- ret ;12c5
+ call prnt_f
+ ld a,0f3h
+ ld (reg.iff),a
+ scf
+ call sub_12d1h
+ ld (reg.f),a
+ ret
l12c6h:
- call prnt_f2 ;12c6
- and a ;12c9
- call sub_12d1h ;12ca
- ld (reg.f2),a ;12cd
- ret ;12d0
+ call prnt_f2
+ and a
+ call sub_12d1h
+ ld (reg.f2),a
+ ret
sub_12d1h:
- ex af,af' ;12d1
- ld b,000h ;12d2
- call outbl ;12d4
- call assert_eol ;12d7
- call inline ;12da
+ ex af,af'
+ ld b,000h
+ call outbl
+ call assert_eol
+ call inline
l12ddh:
- call skipbl ;12dd
- ld a,b ;12e0
- ret z ;12e1
- push bc ;12e2
- ld hl,tab_pr_flags ;12e3
- call lookupch ;12e6
- jp nc,error ;12e9
- ld a,b ;12ec
- cp 008h ;12ed
- jr z,l12feh ;12ef
- inc b ;12f1
- ld a,001h ;12f2
- jr l12f7h ;12f4
+ call skipbl
+ ld a,b
+ ret z
+ push bc
+ ld hl,tab_pr_flags
+ call lookupch
+ jp nc,error
+ ld a,b
+ cp 008h
+ jr z,l12feh
+ inc b
+ ld a,001h
+ jr l12f7h
l12f6h:
- rlca ;12f6
+ rlca
l12f7h:
- djnz l12f6h ;12f7
- pop bc ;12f9
- or b ;12fa
- ld b,a ;12fb
- jr l12ddh ;12fc
+ djnz l12f6h
+ pop bc
+ or b
+ ld b,a
+ jr l12ddh
l12feh:
- ex af,af' ;12fe
- jp nc,ERROR ;12ff
- ex af,af' ;1302
- ld a,0FBh ;1303
- ld (reg.iff),a ;1305
- pop bc ;1308
- jr l12ddh ;1309
+ ex af,af'
+ jp nc,ERROR
+ ex af,af'
+ ld a,0FBh
+ ld (reg.iff),a
+ pop bc
+ jr l12ddh
tab_pr_flags:
db 'CNV H ZSE'
db 0
sub_1315h:
- call sub_0a0eh ;1315
- ret nc ;1318
- ld a,b ;1319
- add a,b ;131a
- add a,b ;131b
- ld hl,b_0x136C_start ;131c
- call ADD_HL_A ;131f
- ld c,(hl) ;1322
- inc hl ;1323
- ld a,(hl) ;1324
- inc hl ;1325
- ld h,(hl) ;1326
- ld l,a ;1327
- scf ;1328
- ret ;1329
+ call sub_0a0eh
+ ret nc
+ ld a,b
+ add a,b
+ add a,b
+ ld hl,b_0x136C_start
+ call ADD_HL_A
+ ld c,(hl)
+ inc hl
+ ld a,(hl)
+ inc hl
+ ld h,(hl)
+ ld l,a
+ scf
+ ret
b_0x132A_start:
if ROMSYS
@@ -2192,664 +2192,664 @@ b_0x132A_start:
DB 0
b_0x136C_start:
if ROMSYS
- defb 000h ;13cf
- defw uromen ;13d0
+ defb 000h
+ defw uromen
endif
if CPU_Z180
- defb 000h ;136c
- defw ucbar ;136d
- defb 000h ;136f
- defw ubbr ;1370
+ defb 000h
+ defw ucbar
+ defb 000h
+ defw ubbr
else
- defb 000h ;136f
- defw ubnk ;1370
+ defb 000h
+ defw ubnk
endif
- defb 003h ;1372
- defw reg.c2 ;1373
- defb 003h ;1375
- defw reg.e2 ;1376
- defb 003h ;1378
- defw reg.l2 ;1379
- defb 003h ;137b
- defw reg.c ;137c
- defb 003h ;137e
- defw reg.e ;137f
- defb 003h ;1381
- defw reg.l ;1382
- defb 000h ;1384
- defw reg.a2 ;1385
- defb 000h ;1387
- defw reg.b2 ;1388
- defb 000h ;138a
- defw reg.c2 ;138b
- defb 000h ;138d
- defw reg.d2 ;138e
- defb 000h ;1390
- defw reg.e2 ;1391
- defb 000h ;1393
- defw reg.h2 ;1394
- defb 000h ;1396
- defw reg.l2 ;1397
- defb 000h ;1399
- defw reg.a ;139a
- defb 000h ;139c
- defw reg.b ;139d
- defb 000h ;139f
- defw reg.c ;13a0
- defb 000h ;13a2
- defw reg.d ;13a3
- defb 000h ;13a5
- defw reg.e ;13a6
- defb 000h ;13a8
- defw reg.h ;13a9
- defb 000h ;13ab
- defw reg.l ;13ac
- defb 003h ;13ae
- defw reg.ix ;13af
- defb 003h ;13b1
- defw reg.iy ;13b2
- defb 003h ;13b4
- defw reg.sp ;13b5
- defb 003h ;13b7
- defw reg.pc ;13b8
- defb 003h ;13ba
- defw reg.ix ;13bb
- defb 003h ;13bd
- defw reg.iy ;13be
- defb 003h ;13c0
- defw reg.sp ;13c1
- defb 003h ;13c3
- defw reg.pc ;13c4
- defb 000h ;13c6
- defw reg.i ;13c7
- defb 000h ;13c9
- defw reg.f2 ;13ca
- defb 000h ;13cc
- defw reg.f ;13cd
+ defb 003h
+ defw reg.c2
+ defb 003h
+ defw reg.e2
+ defb 003h
+ defw reg.l2
+ defb 003h
+ defw reg.c
+ defb 003h
+ defw reg.e
+ defb 003h
+ defw reg.l
+ defb 000h
+ defw reg.a2
+ defb 000h
+ defw reg.b2
+ defb 000h
+ defw reg.c2
+ defb 000h
+ defw reg.d2
+ defb 000h
+ defw reg.e2
+ defb 000h
+ defw reg.h2
+ defb 000h
+ defw reg.l2
+ defb 000h
+ defw reg.a
+ defb 000h
+ defw reg.b
+ defb 000h
+ defw reg.c
+ defb 000h
+ defw reg.d
+ defb 000h
+ defw reg.e
+ defb 000h
+ defw reg.h
+ defb 000h
+ defw reg.l
+ defb 003h
+ defw reg.ix
+ defb 003h
+ defw reg.iy
+ defb 003h
+ defw reg.sp
+ defb 003h
+ defw reg.pc
+ defb 003h
+ defw reg.ix
+ defb 003h
+ defw reg.iy
+ defb 003h
+ defw reg.sp
+ defb 003h
+ defw reg.pc
+ defb 000h
+ defw reg.i
+ defb 000h
+ defw reg.f2
+ defb 000h
+ defw reg.f
CMD.S:
- ld hl,(lst.S) ;13d2
- call get_lastarg_def ;13d5
+ ld hl,(lst.S)
+ call get_lastarg_def
l13d8h:
- ld (lst.S),hl ;13d8
- call out.hl.@ ;13db
- call OUTBL ;13de
- comst ;13e1
- ld a,(hl) ;13e5
+ ld (lst.S),hl
+ call out.hl.@
+ call OUTBL
+ comst
+ ld a,(hl)
comend
- call out.hex ;13e6
- call outbl2 ;13e9
- call INLINE ;13ec
- call SKIPBL ;13ef
- inc hl ;13f2
- jr z,l13d8h ;13f3
- dec hl ;13f5
- inc de ;13f6
- cp '.' ;13f7
- jp z,assert_eol ;13f9
- cp '-' ;13fc
- jr nz,l1406h ;13fe
- ld a,(de) ;1400
- or a ;1401
- dec hl ;1402
- jr z,l13d8h ;1403
- inc hl ;1405
+ call out.hex
+ call outbl2
+ call INLINE
+ call SKIPBL
+ inc hl
+ jr z,l13d8h
+ dec hl
+ inc de
+ cp '.'
+ jp z,assert_eol
+ cp '-'
+ jr nz,l1406h
+ ld a,(de)
+ or a
+ dec hl
+ jr z,l13d8h
+ inc hl
l1406h:
- dec de ;1406
- call get_bytes_m ;1407
- jr l13d8h ;140a
+ dec de
+ call get_bytes_m
+ jr l13d8h
CMD.@:
- call assert_eol ;140c
- ld hl,MSG_at ;140f
- ld de,offs.@ ;1412
- ld c,001h ;1415
- jp l1279h ;1417
+ call assert_eol
+ ld hl,MSG_at
+ ld de,offs.@
+ ld c,001h
+ jp l1279h
MSG_at:
dc '@'
CMD.I:
- ld hl,CMD.I ;141b
- ld (CMD_RPT),hl ;141e
- ld hl,(lst.IP) ;1421
- call get_lastarg_def ;1424
- ld (lst.IP),hl ;1427
- ld b,h ;142a
- ld c,l ;142b
+ ld hl,CMD.I
+ ld (CMD_RPT),hl
+ ld hl,(lst.IP)
+ call get_lastarg_def
+ ld (lst.IP),hl
+ ld b,h
+ ld c,l
if CPU_Z180
- ld a,b ;142c
- or a ;142d
- jr nz,l1442h ;142e
- ld a,c ;1430
- ld hl,ucbar ;1431
- cp cbar ;1434
- jr z,l143fh ;1436
- ld hl,ubbr ;1438
- cp bbr ;143b
- jr nz,l1442h ;143d
+ ld a,b
+ or a
+ jr nz,l1442h
+ ld a,c
+ ld hl,ucbar
+ cp cbar
+ jr z,l143fh
+ ld hl,ubbr
+ cp bbr
+ jr nz,l1442h
l143fh:
- ld a,(hl) ;143f
- jr l1444h ;1440
+ ld a,(hl)
+ jr l1444h
l1442h:
endif
- in a,(c) ;1442
+ in a,(c)
l1444h:
- push af ;1444
- call out.hex ;1445
- call outbl4 ;1448
- pop af ;144b
- call out.bin.b ;144c
- jp CRLF ;144f
+ push af
+ call out.hex
+ call outbl4
+ pop af
+ call out.bin.b
+ jp CRLF
CMD.O:
- ld hl,CMD.O ;1452
- ld (CMD_RPT),hl ;1455
- ld hl,(lst.OD) ;1458
- call get_arg_def ;145b
- ld a,l ;145e
- ld (lst.OD),a ;145f
- push af ;1462
- call skip_to_nextarg ;1463
- ld hl,(lst.OP) ;1466
- call get_lastarg_def ;1469
- ld (lst.OP),hl ;146c
- ld b,h ;146f
- ld c,l ;1470
+ ld hl,CMD.O
+ ld (CMD_RPT),hl
+ ld hl,(lst.OD)
+ call get_arg_def
+ ld a,l
+ ld (lst.OD),a
+ push af
+ call skip_to_nextarg
+ ld hl,(lst.OP)
+ call get_lastarg_def
+ ld (lst.OP),hl
+ ld b,h
+ ld c,l
if CPU_Z180
- ld a,b ;1471
- or a ;1472
- jr nz,l1489h ;1473
- ld a,c ;1475
- ld hl,ucbar ;1476
- cp cbar ;1479
- jr z,l148dh ;147b
- ld hl,ubbr ;147d
- cp bbr ;1480
- jr z,l148dh ;1482
- cp cbr ;1484
- jp z,ERROR ;1486
+ ld a,b
+ or a
+ jr nz,l1489h
+ ld a,c
+ ld hl,ucbar
+ cp cbar
+ jr z,l148dh
+ ld hl,ubbr
+ cp bbr
+ jr z,l148dh
+ cp cbr
+ jp z,ERROR
l1489h:
endif
- pop af ;1489
- out (c),a ;148a
- ret ;148c
+ pop af
+ out (c),a
+ ret
if CPU_Z180
l148dh:
- pop af ;148d
- ld (hl),a ;148e
- ret ;148f
+ pop af
+ ld (hl),a
+ ret
endif
CMD.V:
call get_arg3 ;1490 get from, size, to
cmp_mem:
- push bc ;1493
- comst ;1494
- ld a,(de) ;1498
- ld b,(hl) ;1499
+ push bc
+ comst
+ ld a,(de)
+ ld b,(hl)
comend
- cp b ;149a
- jr z,l14bah ;149b
- ld c,a ;149d
- call out.hl.@ ;149e
- call OUTBL ;14a1
- ld a,b ;14a4
- call out.hex ;14a5
- call outbl2 ;14a8
- ld a,c ;14ab
- call out.hex ;14ac
- call OUTBL ;14af
- ex de,hl ;14b2
- call out.hl.@ ;14b3
- ex de,hl ;14b6
- call CRLF ;14b7
+ cp b
+ jr z,l14bah
+ ld c,a
+ call out.hl.@
+ call OUTBL
+ ld a,b
+ call out.hex
+ call outbl2
+ ld a,c
+ call out.hex
+ call OUTBL
+ ex de,hl
+ call out.hl.@
+ ex de,hl
+ call CRLF
l14bah:
- pop bc ;14ba
- inc hl ;14bb
- inc de ;14bc
- dec bc ;14bd
- ld a,b ;14be
- or c ;14bf
- jr nz,cmp_mem ;14c0
- ret ;14c2
+ pop bc
+ inc hl
+ inc de
+ dec bc
+ ld a,b
+ or c
+ jr nz,cmp_mem
+ ret
CMD.M:
- ld a,(de) ;14c3
- cp 'V' ;14c4
- jr nz,bm_nv ;14c6
- inc de ;14c8
+ ld a,(de)
+ cp 'V'
+ jr nz,bm_nv
+ inc de
bm_nv:
push af ;14c9 save 'V' flag
- call get_arg3 ;14ca
- push hl ;14cd
- push de ;14ce
- push bc ;14cf
- call CP.HL.DE ;14d0
- jr nc,bm_mvdown ;14d3
- add hl,bc ;14d5
- ex de,hl ;14d6
- add hl,bc ;14d7
- ex de,hl ;14d8
- dec hl ;14d9
- dec de ;14da
- comst ;14db
- lddr ;14df
+ call get_arg3
+ push hl
+ push de
+ push bc
+ call CP.HL.DE
+ jr nc,bm_mvdown
+ add hl,bc
+ ex de,hl
+ add hl,bc
+ ex de,hl
+ dec hl
+ dec de
+ comst
+ lddr
comend
- jr bm_done ;14e1
+ jr bm_done
bm_mvdown:
- comst ;14e3
- ldir ;14e7
+ comst
+ ldir
comend
bm_done:
- pop bc ;14e9
- pop de ;14ea
- pop hl ;14eb
- pop af ;14ec
+ pop bc
+ pop de
+ pop hl
+ pop af
jr z,cmp_mem ;14ed validate?
- ret ;14ef
+ ret
CMD.H:
- call EXPR ;14f0
- jp c,l173ch ;14f3
- call skip_to_nextarg ;14f6
- push hl ;14f9
- call EXPR ;14fa
- push af ;14fd
- call assert_eol ;14fe
- pop af ;1501
- ex de,hl ;1502
- pop hl ;1503
- jr c,l1511h ;1504
- push hl ;1506
- push de ;1507
- add hl,de ;1508
- call l1511h ;1509
- pop de ;150c
- pop hl ;150d
- and a ;150e
- sbc hl,de ;150f
+ call EXPR
+ jp c,l173ch
+ call skip_to_nextarg
+ push hl
+ call EXPR
+ push af
+ call assert_eol
+ pop af
+ ex de,hl
+ pop hl
+ jr c,l1511h
+ push hl
+ push de
+ add hl,de
+ call l1511h
+ pop de
+ pop hl
+ and a
+ sbc hl,de
l1511h:
call out.hl ;1511 val
- call outbl2 ;1514
+ call outbl2
call sub_0928h ;1517 -val
- call outbl4 ;151a
+ call outbl4
call out.hl.dec ;151d dec
- call outbl2 ;1520
+ call outbl2
call out.hl.decm ;1523 -dec
- call outbl4 ;1526
+ call outbl4
call out.bin.w ;1529 bin
- call outbl2 ;152c
- ld a,l ;152f
- call out.ascii ;1530
- jp CRLF ;1533
+ call outbl2
+ ld a,l
+ call out.ascii
+ jp CRLF
CMD.Q:
- ld a,(de) ;1536
- sub 'J' ;1537
- ld (lst.Qj),a ;1539
- jr nz,l153fh ;153c
- inc de ;153e
+ ld a,(de)
+ sub 'J'
+ ld (lst.Qj),a
+ jr nz,l153fh
+ inc de
l153fh:
- call get_arg_range ;153f
- push bc ;1542
- push hl ;1543
- call sub_15a7h ;1544
- pop hl ;1547
+ call get_arg_range
+ push bc
+ push hl
+ call sub_15a7h
+ pop hl
l1548h:
- call sub_1594h ;1548
- jr nz,l1562h ;154b
- push bc ;154d
- push hl ;154e
- ld a,(lst.Qj) ;154f
- or a ;1552
- jr nz,l1559h ;1553
- ld bc,-8 ;1555
- add hl,bc ;1558
+ call sub_1594h
+ jr nz,l1562h
+ push bc
+ push hl
+ ld a,(lst.Qj)
+ or a
+ jr nz,l1559h
+ ld bc,-8
+ add hl,bc
l1559h:
- ld bc,MEMDUMP_CNT ;1559
- and a ;155c
- call memdump ;155d
- pop hl ;1560
- pop bc ;1561
+ ld bc,MEMDUMP_CNT
+ and a
+ call memdump
+ pop hl
+ pop bc
l1562h:
- inc hl ;1562
- ex (sp),hl ;1563
- dec hl ;1564
- ld a,h ;1565
- or l ;1566
- ex (sp),hl ;1567
- jr nz,l1548h ;1568
- pop bc ;156a
- ret ;156b
+ inc hl
+ ex (sp),hl
+ dec hl
+ ld a,h
+ or l
+ ex (sp),hl
+ jr nz,l1548h
+ pop bc
+ ret
CMD.Z:
- call get_arg_range ;156c
- push bc ;156f
- push hl ;1570
- call sub_15a7h ;1571
- ld a,b ;1574
- pop hl ;1575
- pop bc ;1576
- push hl ;1577
- ex de,hl ;1578
+ call get_arg_range
+ push bc
+ push hl
+ call sub_15a7h
+ ld a,b
+ pop hl
+ pop bc
+ push hl
+ ex de,hl
l1579h:
- push af ;1579
- ld a,(hl) ;157a
- comst ;157b
- ld (de),a ;157f
+ push af
+ ld a,(hl)
+ comst
+ ld (de),a
comend
- pop af ;1580
- inc de ;1581
- cpi ;1582
- jp po,l1592h ;1584
- dec a ;1587
- jr nz,l1579h ;1588
- pop hl ;158a
- comst ;158b
- ldir ;158f
+ pop af
+ inc de
+ cpi
+ jp po,l1592h
+ dec a
+ jr nz,l1579h
+ pop hl
+ comst
+ ldir
comend
- ret ;1591
+ ret
l1592h:
- pop hl ;1592
- ret ;1593
+ pop hl
+ ret
sub_1594h:
- push hl ;1594
- push de ;1595
- push bc ;1596
+ push hl
+ push de
+ push bc
l1597h:
- ld a,(de) ;1597
- comst ;1598
- cp (hl) ;159c
+ ld a,(de)
+ comst
+ cp (hl)
comend
- jr nz,l15a3h ;159d
- inc de ;159f
- inc hl ;15a0
- djnz l1597h ;15a1
+ jr nz,l15a3h
+ inc de
+ inc hl
+ djnz l1597h
l15a3h:
- pop bc ;15a3
- pop de ;15a4
- pop hl ;15a5
- ret ;15a6
+ pop bc
+ pop de
+ pop hl
+ ret
sub_15a7h:
- ld hl,ci.buf+1 ;15a7
- call get_bytes ;15aa
- ld de,ci.buf+1 ;15ad
- and a ;15b0
- sbc hl,de ;15b1
- ld b,l ;15b3
- ret nz ;15b4
- jp ERROR ;15b5
+ ld hl,ci.buf+1
+ call get_bytes
+ ld de,ci.buf+1
+ and a
+ sbc hl,de
+ ld b,l
+ ret nz
+ jp ERROR
get_bytes:
db 0e6h ;15b8 and 037h (clear carry, skip next opc)
get_bytes_m:
scf
l15bah:
- push af ;15ba
- call skip_to_nextarg ;15bb
- cp 'W' ;15be
- jr nz,l15d9h ;15c0
- inc de ;15c2
- push hl ;15c3
- call sub_0a68h ;15c4
- ex de,hl ;15c7
- pop bc ;15c8
- pop af ;15c9
- push af ;15ca
- push bc ;15cb
- ex (sp),hl ;15cc
- jr nc,l15d3h ;15cd
- comst ;15cf
+ push af
+ call skip_to_nextarg
+ cp 'W'
+ jr nz,l15d9h
+ inc de
+ push hl
+ call sub_0a68h
+ ex de,hl
+ pop bc
+ pop af
+ push af
+ push bc
+ ex (sp),hl
+ jr nc,l15d3h
+ comst
l15d3h:
- ld (hl),e ;15d3
+ ld (hl),e
comend
- inc hl ;15d4
- ld c,d ;15d5
- pop de ;15d6
- jr l15e5h ;15d7
+ inc hl
+ ld c,d
+ pop de
+ jr l15e5h
l15d9h:
- cp '''' ;15d9
- jr z,l15f1h ;15db
- push hl ;15dd
- call EXPR ;15de
- ld c,l ;15e1
- pop hl ;15e2
- jr c,l1626h ;15e3
+ cp ''''
+ jr z,l15f1h
+ push hl
+ call EXPR
+ ld c,l
+ pop hl
+ jr c,l1626h
l15e5h:
- pop af ;15e5
- push af ;15e6
- jr nc,l15edh ;15e7
- comst ;15e9
+ pop af
+ push af
+ jr nc,l15edh
+ comst
l15edh:
- ld (hl),c ;15ed
+ ld (hl),c
comend
- inc hl ;15ee
- jr l161eh ;15ef
+ inc hl
+ jr l161eh
l15f1h:
- inc de ;15f1
- ld a,(de) ;15f2
- cp '''' ;15f3
- jr z,l1607h ;15f5
- or a ;15f7
- jr z,l1626h ;15f8
+ inc de
+ ld a,(de)
+ cp ''''
+ jr z,l1607h
+ or a
+ jr z,l1626h
l15fah:
- ld c,a ;15fa
- pop af ;15fb
- push af ;15fc
- jr nc,l1603h ;15fd
- comst ;15ff
+ ld c,a
+ pop af
+ push af
+ jr nc,l1603h
+ comst
l1603h:
- ld (hl),c ;1603
+ ld (hl),c
comend
- inc hl ;1604
- jr l15f1h ;1605
+ inc hl
+ jr l15f1h
l1607h:
- inc de ;1607
- ld a,(de) ;1608
- cp '''' ;1609
- jr z,l15fah ;160b
- cp '.' ;160d
- jr nz,l161eh ;160f
- inc de ;1611
- dec hl ;1612
- pop af ;1613
- push af ;1614
- jr nc,l161bh ;1615
- comst ;1617
+ inc de
+ ld a,(de)
+ cp ''''
+ jr z,l15fah
+ cp '.'
+ jr nz,l161eh
+ inc de
+ dec hl
+ pop af
+ push af
+ jr nc,l161bh
+ comst
l161bh:
- set 7,(hl) ;161b
+ set 7,(hl)
comend
- inc hl ;161d
+ inc hl
l161eh:
- pop af ;161e
- jr nc,l15bah ;161f
- ld (lst.S),hl ;1621
- jr l15bah ;1624
+ pop af
+ jr nc,l15bah
+ ld (lst.S),hl
+ jr l15bah
l1626h:
- pop af ;1626
- ret nc ;1627
- ld (lst.S),hl ;1628
- ret ;162b
+ pop af
+ ret nc
+ ld (lst.S),hl
+ ret
CMD.D:
- ld hl,CMD.D ;162c
- ld (CMD_RPT),hl ;162f
- ld hl,(lst.D) ;1632
- ld bc,00080h ;1635
- call sub_0a82h ;1638
- scf ;163b
+ ld hl,CMD.D
+ ld (CMD_RPT),hl
+ ld hl,(lst.D)
+ ld bc,00080h
+ call sub_0a82h
+ scf
memdump:
- push bc ;163c
- push de ;163d
- push hl ;163e
- ex af,af' ;163f
+ push bc
+ push de
+ push hl
+ ex af,af'
l1640h:
- call out.hl.@ ;1640
- call z,outbl2 ;1643
- call OUTBL ;1646
- ld de,0 ;1649
+ call out.hl.@
+ call z,outbl2
+ call OUTBL
+ ld de,0
l164ch:
- comst ;164c
- ld a,(hl) ;1650
+ comst
+ ld a,(hl)
comend
- inc hl ;1651
- call out.hex ;1652
- call OUTBL ;1655
- dec bc ;1658
- inc e ;1659
- ld a,e ;165a
- cp 010h ;165b
- jr z,l1668h ;165d
- and 003h ;165f
- call z,OUTBL ;1661
- ld a,b ;1664
- or c ;1665
- jr nz,l164ch ;1666
+ inc hl
+ call out.hex
+ call OUTBL
+ dec bc
+ inc e
+ ld a,e
+ cp 010h
+ jr z,l1668h
+ and 003h
+ call z,OUTBL
+ ld a,b
+ or c
+ jr nz,l164ch
l1668h:
- call OUTBL ;1668
- and a ;166b
- sbc hl,de ;166c
+ call OUTBL
+ and a
+ sbc hl,de
l166eh:
- comst ;166e
- ld a,(hl) ;1672
+ comst
+ ld a,(hl)
comend
- call sub_168fh ;1673
- call OUTCHAR ;1676
- inc hl ;1679
- dec e ;167a
- jr nz,l166eh ;167b
- ex af,af' ;167d
- jr nc,l1683h ;167e
- ld (lst.D),hl ;1680
+ call sub_168fh
+ call OUTCHAR
+ inc hl
+ dec e
+ jr nz,l166eh
+ ex af,af'
+ jr nc,l1683h
+ ld (lst.D),hl
l1683h:
- ex af,af' ;1683
- call CRLF ;1684
- ld a,b ;1687
- or c ;1688
- jr nz,l1640h ;1689
- pop hl ;168b
- pop de ;168c
- pop bc ;168d
- ret ;168e
+ ex af,af'
+ call CRLF
+ ld a,b
+ or c
+ jr nz,l1640h
+ pop hl
+ pop de
+ pop bc
+ ret
sub_168fh:
- and 07fh ;168f
- cp 07fh ;1691
- jr z,l1698h ;1693
- cp 020h ;1695
- ret nc ;1697
+ and 07fh
+ cp 07fh
+ jr z,l1698h
+ cp 020h
+ ret nc
l1698h:
- ld a,02eh ;1698
- ret ;169a
+ ld a,02eh
+ ret
; Read Intel Hex File from console.
CMD.R:
- ld hl,0 ;169b
+ ld hl,0
call get_lastarg_def ;169e get offset from command line
- push hl ;16a1
- ld hl,0 ;16a2
- ld (HILOD),hl ;16a5
+ push hl
+ ld hl,0
+ ld (HILOD),hl
w_recstart:
- call i.getchar ;16a8
- jr z,l16deh ;16ab
- cp ':' ;16ad
- jr nz,w_recstart ;16af
+ call i.getchar
+ jr z,l16deh
+ cp ':'
+ jr nz,w_recstart
ld c,0 ;16b1 init checksum
call i.gethexbyte ;16b3 record len
- ld b,a ;16b6
+ ld b,a
call i.gethexbyte ;16b7 address high
- ld h,a ;16ba
+ ld h,a
call i.gethexbyte ;16bb address low
- ld l,a ;16be
+ ld l,a
call i.gethexbyte ;16bf record type (ignored)
- ld a,b ;16c2
+ ld a,b
and a ;16c3 record len == 0?
- jr z,l16deh ;16c4
+ jr z,l16deh
l16c6h:
- call i.gethexbyte ;16c6
+ call i.gethexbyte
pop de ;16c9 offset
- push de ;16ca
- push hl ;16cb
- add hl,de ;16cc
- call i.storebyte ;16cd
- pop hl ;16d0
- inc hl ;16d1
+ push de
+ push hl
+ add hl,de
+ call i.storebyte
+ pop hl
+ inc hl
djnz l16c6h ;16d2 repeat for record len
call i.gethexbyte ;16d4 checksum
- ld a,c ;16d7
- and a ;16d8
+ ld a,c
+ and a
jp nz,ERROR ;16d9 exit if checksum error
jr w_recstart ;16dc next record
l16deh:
- pop hl ;16de
- call i.gethexbyte ;16df
- jp l173fh ;16e2
+ pop hl
+ call i.gethexbyte
+ jp l173fh
i.gethexbyte:
- call sub_16f6h ;16e5
- rlca ;16e8
- rlca ;16e9
- rlca ;16ea
- rlca ;16eb
- ld d,a ;16ec
- call sub_16f6h ;16ed
- add a,d ;16f0
- ld d,a ;16f1
- add a,c ;16f2
- ld c,a ;16f3
- ld a,d ;16f4
- ret ;16f5
+ call sub_16f6h
+ rlca
+ rlca
+ rlca
+ rlca
+ ld d,a
+ call sub_16f6h
+ add a,d
+ ld d,a
+ add a,c
+ ld c,a
+ ld a,d
+ ret
sub_16f6h:
- call i.getchar ;16f6
- jr z,l16ffh ;16f9
- call sub_0d26h ;16fb
- ret nc ;16fe
+ call i.getchar
+ jr z,l16ffh
+ call sub_0d26h
+ ret nc
l16ffh:
- jp ERROR ;16ff
+ jp ERROR
i.getchar:
- call $ci ;1702
- cp 01ah ;1705
- ret ;1707
+ call $ci
+ cp 01ah
+ ret
i.storebyte:
- push af ;1708
- push de ;1709
+ push af
+ push de
ld de,TPA ;170a lowest allowed load address
- call CP.HL.DE ;170d
- jp c,ERROR ;1710
+ call CP.HL.DE
+ jp c,ERROR
ld de,$stcka ;1713 highest allowed load address
- call CP.HL.DE ;1716
- jp nc,ERROR ;1719
- ld de,(HILOD) ;171c
- call CP.HL.DE ;1720
- jr c,l1728h ;1723
- ld (HILOD),hl ;1725
+ call CP.HL.DE
+ jp nc,ERROR
+ ld de,(HILOD)
+ call CP.HL.DE
+ jr c,l1728h
+ ld (HILOD),hl
l1728h:
- ld de,(MAXLOD) ;1728
- call CP.HL.DE ;172c
- jr c,l1734h ;172f
- ld (MAXLOD),hl ;1731
+ ld de,(MAXLOD)
+ call CP.HL.DE
+ jr c,l1734h
+ ld (MAXLOD),hl
l1734h:
- pop de ;1734
- pop af ;1735
- comst ;1736
+ pop de
+ pop af
+ comst
ld (hl),a ;173a store byte
comend
- ret ;173b
+ ret
l173ch:
- call assert_eol ;173c
+ call assert_eol
l173fh:
- ld hl,MSG_high ;173f
- call PSTR ;1742
- ld hl,(HILOD) ;1745
- call out.hl ;1748
- ld hl,MSG_max ;174b
- call PSTR ;174e
- ld hl,(MAXLOD) ;1751
- call out.hl ;1754
- jp CRLF ;1757
+ ld hl,MSG_high
+ call PSTR
+ ld hl,(HILOD)
+ call out.hl
+ ld hl,MSG_max
+ call PSTR
+ ld hl,(MAXLOD)
+ call out.hl
+ jp CRLF
MSG_high:
DC 'High = '
@@ -2857,1067 +2857,1067 @@ MSG_max:
DC ' Max = '
CMD.A:
- ld hl,(lst.A) ;1769
- call get_lastarg_def ;176c
- push hl ;176f
- pop iy ;1770
- ld hl,l17c4h ;1772
- ld (CMD_ERR),hl ;1775
- ld (XB068),sp ;1778
+ ld hl,(lst.A)
+ call get_lastarg_def
+ push hl
+ pop iy
+ ld hl,l17c4h
+ ld (CMD_ERR),hl
+ ld (XB068),sp
l177ch:
- push iy ;177c
- pop hl ;177e
- ld (lst.A),hl ;177f
- ld (OFFS.pc),hl ;1782
- push hl ;1785
- call sub_1f3fh ;1786
- pop iy ;1789
- ld c,b ;178b
- ld de,(offs.@) ;178c
- ld a,d ;1790
- or e ;1791
- ld b,011h ;1792
- jr z,l1798h ;1794
- ld b,019h ;1796
+ push iy
+ pop hl
+ ld (lst.A),hl
+ ld (OFFS.pc),hl
+ push hl
+ call sub_1f3fh
+ pop iy
+ ld c,b
+ ld de,(offs.@)
+ ld a,d
+ or e
+ ld b,011h
+ jr z,l1798h
+ ld b,019h
l1798h:
- call OUTBL ;1798
- ld a,(CON.COL) ;179b
- cp b ;179e
- jr c,l1798h ;179f
- push bc ;17a1
- call INLINE ;17a2
- pop bc ;17a5
- call SKIPBL ;17a6
- cp '.' ;17a9
- ret z ;17ab
- cp '-' ;17ac
- jr nz,l17b6h ;17ae
- ld iy,(XB06C) ;17b0
- jr l177ch ;17b4
+ call OUTBL
+ ld a,(CON.COL)
+ cp b
+ jr c,l1798h
+ push bc
+ call INLINE
+ pop bc
+ call SKIPBL
+ cp '.'
+ ret z
+ cp '-'
+ jr nz,l17b6h
+ ld iy,(XB06C)
+ jr l177ch
l17b6h:
- and a ;17b6
- call nz,sub_17cdh ;17b7
- ld (XB06C),iy ;17ba
- ld b,0 ;17be
- add iy,bc ;17c0
- jr l177ch ;17c2
+ and a
+ call nz,sub_17cdh
+ ld (XB06C),iy
+ ld b,0
+ add iy,bc
+ jr l177ch
l17c4h:
- call l07eah ;17c4
- ld sp,(XB068) ;17c7
- jr l177ch ;17cb
+ call l07eah
+ ld sp,(XB068)
+ jr l177ch
sub_17cdh:
- call SKIPBL ;17cd
- ld hl,t_MNEMONICS ;17d0
- call sub_0a15h ;17d3
- jp nc,ERROR ;17d6
- call SKIPBL ;17d9
- push de ;17dc
- ld a,b ;17dd
- add a,b ;17de
- add a,b ;17df
- ld hl,b_0x17EE_start ;17e0
- call ADD_HL_A ;17e3
- ld e,(hl) ;17e6
- inc hl ;17e7
- ld d,(hl) ;17e8
- inc hl ;17e9
- ld b,(hl) ;17ea
- ex de,hl ;17eb
- pop de ;17ec
- jp (hl) ;17ed
+ call SKIPBL
+ ld hl,t_MNEMONICS
+ call sub_0a15h
+ jp nc,ERROR
+ call SKIPBL
+ push de
+ ld a,b
+ add a,b
+ add a,b
+ ld hl,b_0x17EE_start
+ call ADD_HL_A
+ ld e,(hl)
+ inc hl
+ ld d,(hl)
+ inc hl
+ ld b,(hl)
+ ex de,hl
+ pop de
+ jp (hl)
b_0x17EE_start:
- defw l1b54h ;17ee
+ defw l1b54h
b_0x17F0_start:
- defb 088h ;17f0
+ defb 088h
b_0x17F1_start:
- defw l1b74h ;17f1
+ defw l1b74h
b_0x17F3_start:
- defb 080h ;17f3
+ defb 080h
b_0x17F4_start:
- defw l1babh ;17f4
+ defw l1babh
b_0x17F6_start:
- defb 0a0h ;17f6
+ defb 0a0h
b_0x17F7_start:
- defw l1c14h ;17f7
+ defw l1c14h
b_0x17F9_start:
- defb 040h ;17f9
+ defb 040h
b_0x17FA_start:
- defw l1c38h ;17fa
+ defw l1c38h
b_0x17FC_start:
- defb 0c4h ;17fc
+ defb 0c4h
b_0x17FD_start:
- defw l1b36h ;17fd
+ defw l1b36h
b_0x17FF_start:
- defb 03fh ;17ff
+ defb 03fh
b_0x1800_start:
- defw l1babh ;1800
+ defw l1babh
b_0x1802_start:
- defb 0b8h ;1802
+ defb 0b8h
b_0x1803_start:
- defw gen.opc.ED2 ;1803
+ defw gen.opc.ED2
b_0x1805_start:
- defb 0a9h ;1805
+ defb 0a9h
b_0x1806_start:
- defw gen.opc.ED2 ;1806
+ defw gen.opc.ED2
b_0x1808_start:
- defb 0b9h ;1808
+ defb 0b9h
b_0x1809_start:
- defw gen.opc.ED2 ;1809
+ defw gen.opc.ED2
b_0x180B_start:
- defb 0a1h ;180b
+ defb 0a1h
b_0x180C_start:
- defw gen.opc.ED2 ;180c
+ defw gen.opc.ED2
b_0x180E_start:
- defb 0b1h ;180e
+ defb 0b1h
b_0x180F_start:
- defw l1b36h ;180f
+ defw l1b36h
b_0x1811_start:
- defb 02fh ;1811
+ defb 02fh
b_0x1812_start:
- defw l1b36h ;1812
+ defw l1b36h
b_0x1814_start:
- defb 027h ;1814
+ defb 027h
b_0x1815_start:
- defw l1dabh ;1815
+ defw l1dabh
b_0x1817_start:
- defb 005h ;1817
+ defb 005h
b_0x1818_start:
- defw l1b36h ;1818
+ defw l1b36h
b_0x181A_start:
- defb 0f3h ;181a
+ defb 0f3h
b_0x181B_start:
- defw l1ca4h ;181b
+ defw l1ca4h
b_0x181D_start:
- defb 010h ;181d
+ defb 010h
b_0x181E_start:
- defw l1b36h ;181e
+ defw l1b36h
b_0x1820_start:
- defb 0fbh ;1820
+ defb 0fbh
b_0x1821_start:
- defw l1d54h ;1821
+ defw l1d54h
b_0x1823_start:
- defb 0e3h ;1823
+ defb 0e3h
b_0x1824_start:
- defw l1b36h ;1824
+ defw l1b36h
b_0x1826_start:
- defb 0d9h ;1826
+ defb 0d9h
b_0x1827_start:
- defw l1b36h ;1827
+ defw l1b36h
b_0x1829_start:
- defb 076h ;1829
+ defb 076h
b_0x182A_start:
- defw l1cbfh ;182a
+ defw l1cbfh
b_0x182C_start:
- defb 046h ;182c
+ defb 046h
b_0x182D_start:
- defw l1cf8h ;182d
+ defw l1cf8h
b_0x182F_start:
- defb 040h ;182f
+ defb 040h
b_0x1830_start:
- defw l1dabh ;1830
+ defw l1dabh
b_0x1832_start:
- defb 004h ;1832
+ defb 004h
b_0x1833_start:
- defw gen.opc.ED2 ;1833
+ defw gen.opc.ED2
b_0x1835_start:
- defb 0aah ;1835
+ defb 0aah
b_0x1836_start:
- defw gen.opc.ED2 ;1836
+ defw gen.opc.ED2
b_0x1838_start:
- defb 0bah ;1838
+ defb 0bah
b_0x1839_start:
- defw gen.opc.ED2 ;1839
+ defw gen.opc.ED2
b_0x183B_start:
- defb 0a2h ;183b
+ defb 0a2h
b_0x183C_start:
- defw gen.opc.ED2 ;183c
+ defw gen.opc.ED2
b_0x183E_start:
- defb 0b2h ;183e
+ defb 0b2h
b_0x183F_start:
- defw l1c5eh ;183f
+ defw l1c5eh
b_0x1841_start:
- defb 0c2h ;1841
+ defb 0c2h
b_0x1842_start:
- defw l1cabh ;1842
+ defw l1cabh
b_0x1844_start:
- defb 020h ;1844
+ defb 020h
b_0x1845_start:
- defw l1934h ;1845
+ defw l1934h
b_0x1847_start:
- defb 040h ;1847
+ defb 040h
b_0x1848_start:
- defw gen.opc.ED2 ;1848
+ defw gen.opc.ED2
b_0x184A_start:
- defb 0a8h ;184a
+ defb 0a8h
b_0x184B_start:
- defw gen.opc.ED2 ;184b
+ defw gen.opc.ED2
b_0x184D_start:
- defb 0b8h ;184d
+ defb 0b8h
b_0x184E_start:
- defw gen.opc.ED2 ;184e
+ defw gen.opc.ED2
b_0x1850_start:
- defb 0a0h ;1850
+ defb 0a0h
b_0x1851_start:
- defw gen.opc.ED2 ;1851
+ defw gen.opc.ED2
b_0x1853_start:
- defb 0b0h ;1853
+ defb 0b0h
b_0x1854_start:
- defw gen.opc.ED2 ;1854
+ defw gen.opc.ED2
b_0x1856_start:
- defb 044h ;1856
+ defb 044h
b_0x1857_start:
- defw l1b36h ;1857
+ defw l1b36h
b_0x1859_start:
- defb 000h ;1859
+ defb 000h
b_0x185A_start:
- defw l1babh ;185a
+ defw l1babh
b_0x185C_start:
- defb 0b0h ;185c
+ defb 0b0h
b_0x185D_start:
- defw gen.opc.ED2 ;185d
+ defw gen.opc.ED2
b_0x185F_start:
- defb 0bbh ;185f
+ defb 0bbh
b_0x1860_start:
- defw gen.opc.ED2 ;1860
+ defw gen.opc.ED2
b_0x1862_start:
- defb 0b3h ;1862
+ defb 0b3h
b_0x1863_start:
- defw l1d2ch ;1863
+ defw l1d2ch
b_0x1865_start:
- defb 041h ;1865
+ defb 041h
b_0x1866_start:
- defw gen.opc.ED2 ;1866
+ defw gen.opc.ED2
b_0x1868_start:
- defb 0abh ;1868
+ defb 0abh
b_0x1869_start:
- defw gen.opc.ED2 ;1869
+ defw gen.opc.ED2
b_0x186B_start:
- defb 0a3h ;186b
+ defb 0a3h
b_0x186C_start:
- defw l1ce4h ;186c
+ defw l1ce4h
b_0x186E_start:
- defb 0c1h ;186e
+ defb 0c1h
b_0x186F_start:
- defw l1ce4h ;186f
+ defw l1ce4h
b_0x1871_start:
- defb 0c5h ;1871
+ defb 0c5h
b_0x1872_start:
- defw l1c14h ;1872
+ defw l1c14h
b_0x1874_start:
- defb 080h ;1874
+ defb 080h
b_0x1875_start:
- defw l1c50h ;1875
+ defw l1c50h
b_0x1877_start:
- defb 0c0h ;1877
+ defb 0c0h
b_0x1878_start:
- defw gen.opc.ED2 ;1878
+ defw gen.opc.ED2
b_0x187A_start:
- defb 04dh ;187a
+ defb 04dh
b_0x187B_start:
- defw gen.opc.ED2 ;187b
+ defw gen.opc.ED2
b_0x187D_start:
- defb 045h ;187d
+ defb 045h
b_0x187E_start:
- defw l1bd8h ;187e
+ defw l1bd8h
b_0x1880_start:
- defb 010h ;1880
+ defb 010h
b_0x1881_start:
- defw l1b36h ;1881
+ defw l1b36h
b_0x1883_start:
- defb 017h ;1883
+ defb 017h
b_0x1884_start:
- defw l1bd8h ;1884
+ defw l1bd8h
b_0x1886_start:
- defb 000h ;1886
+ defb 000h
b_0x1887_start:
- defw l1b36h ;1887
+ defw l1b36h
b_0x1889_start:
- defb 007h ;1889
+ defb 007h
b_0x188A_start:
- defw gen.opc.ED2 ;188a
+ defw gen.opc.ED2
b_0x188C_start:
- defb 06fh ;188c
+ defb 06fh
b_0x188D_start:
- defw l1bd8h ;188d
+ defw l1bd8h
b_0x188F_start:
- defb 018h ;188f
+ defb 018h
b_0x1890_start:
- defw l1b36h ;1890
+ defw l1b36h
b_0x1892_start:
- defb 01fh ;1892
+ defb 01fh
b_0x1893_start:
- defw l1bd8h ;1893
+ defw l1bd8h
b_0x1895_start:
- defb 008h ;1895
+ defb 008h
b_0x1896_start:
- defw l1b36h ;1896
+ defw l1b36h
b_0x1898_start:
- defb 00fh ;1898
+ defb 00fh
b_0x1899_start:
- defw gen.opc.ED2 ;1899
+ defw gen.opc.ED2
b_0x189B_start:
- defb 067h ;189b
+ defb 067h
b_0x189C_start:
- defw l1cd5h ;189c
+ defw l1cd5h
b_0x189E_start:
- defb 0c7h ;189e
+ defb 0c7h
b_0x189F_start:
- defw l1b54h ;189f
+ defw l1b54h
b_0x18A1_start:
- defb 098h ;18a1
+ defb 098h
b_0x18A2_start:
- defw l1b36h ;18a2
+ defw l1b36h
b_0x18A4_start:
- defb 037h ;18a4
+ defb 037h
b_0x18A5_start:
- defw l1c14h ;18a5
+ defw l1c14h
b_0x18A7_start:
- defb 0c0h ;18a7
+ defb 0c0h
b_0x18A8_start:
- defw l1bd8h ;18a8
+ defw l1bd8h
b_0x18AA_start:
- defb 020h ;18aa
+ defb 020h
b_0x18AB_start:
- defw l1bd8h ;18ab
+ defw l1bd8h
b_0x18AD_start:
- defb 028h ;18ad
+ defb 028h
b_0x18AE_start:
- defw l1bd8h ;18ae
+ defw l1bd8h
b_0x18B0_start:
- defb 038h ;18b0
+ defb 038h
b_0x18B1_start:
- defw l1babh ;18b1
+ defw l1babh
b_0x18B3_start:
- defb 090h ;18b3
+ defb 090h
b_0x18B4_start:
- defw l1babh ;18b4
+ defw l1babh
b_0x18B6_start:
- defb 0a8h ;18b6
+ defb 0a8h
b_0x18B7_start:
- defw A.IN0 ;18b7
+ defw A.IN0
b_0x18B9_start:
- defb 000h ;18b9
+ defb 000h
b_0x18BA_start:
- defw A.MLT ;18ba
+ defw A.MLT
b_0x18BC_start:
- defb 04ch ;18bc
- ld b,e ;18bd
- dec de ;18be
+ defb 04ch
+ ld b,e
+ dec de
b_0x18BF_start:
- defb 08bh ;18bf
+ defb 08bh
b_0x18C0_start:
- defw gen.opc.ED2 ;18c0
+ defw gen.opc.ED2
b_0x18C2_start:
- defb 09bh ;18c2
+ defb 09bh
b_0x18C3_start:
- defw gen.opc.ED2 ;18c3
+ defw gen.opc.ED2
b_0x18C5_start:
- defb 083h ;18c5
+ defb 083h
b_0x18C6_start:
- defw gen.opc.ED2 ;18c6
+ defw gen.opc.ED2
b_0x18C8_start:
- defb 093h ;18c8
+ defb 093h
b_0x18C9_start:
- defw l18fdh ;18c9
+ defw l18fdh
b_0x18CB_start:
- defb 001h ;18cb
+ defb 001h
b_0x18CC_start:
- defw gen.opc.ED2 ;18cc
+ defw gen.opc.ED2
b_0x18CE_start:
- defb 076h ;18ce
+ defb 076h
b_0x18CF_start:
- defw l191dh ;18cf
+ defw l191dh
b_0x18D1_start:
- defb 004h ;18d1
+ defb 004h
b_0x18D2_start:
- defw l192ch ;18d2
+ defw l192ch
b_0x18D4_start:
- defb 074h ;18d4
+ defb 074h
A.IN0:
- call sub_1e41h ;18d5
- jr nc,l1931h ;18d8
- cp 006h ;18da
- jr z,l1931h ;18dc
- rlca ;18de
- rlca ;18df
- rlca ;18e0
- add a,b ;18e1
- ld b,a ;18e2
- call sub_1ed1h ;18e3
- call sub_1e06h ;18e6
+ call sub_1e41h
+ jr nc,l1931h
+ cp 006h
+ jr z,l1931h
+ rlca
+ rlca
+ rlca
+ add a,b
+ ld b,a
+ call sub_1ed1h
+ call sub_1e06h
l18e9h:
- call assert_eol ;18e9
- comst ;18ec
- ld (iy+000h),0edh ;18f0
- ld (iy+001h),b ;18f4
- ld (iy+002h),l ;18f7
+ call assert_eol
+ comst
+ ld (iy+000h),0edh
+ ld (iy+001h),b
+ ld (iy+002h),l
comend
- ld c,003h ;18fa
- ret ;18fc
+ ld c,003h
+ ret
l18fdh:
- call sub_1e06h ;18fd
- call sub_1ed1h ;1900
- call sub_1e41h ;1903
- jr nc,l1931h ;1906
- cp 006h ;1908
- jr z,l1931h ;190a
- rlca ;190c
- rlca ;190d
- rlca ;190e
- add a,b ;190f
- ld b,a ;1910
- jr l18e9h ;1911
+ call sub_1e06h
+ call sub_1ed1h
+ call sub_1e41h
+ jr nc,l1931h
+ cp 006h
+ jr z,l1931h
+ rlca
+ rlca
+ rlca
+ add a,b
+ ld b,a
+ jr l18e9h
A.MLT:
- call sub_1e2eh ;1913
- jr nc,l1931h ;1916
- add a,b ;1918
- ld b,a ;1919
- jp gen.opc.ED2 ;191a
+ call sub_1e2eh
+ jr nc,l1931h
+ add a,b
+ ld b,a
+ jp gen.opc.ED2
l191dh:
- call sub_1e41h ;191d
- jr nc,l192ah ;1920
- rlca ;1922
- rlca ;1923
- rlca ;1924
- add a,b ;1925
- ld b,a ;1926
- jp gen.opc.ED2 ;1927
+ call sub_1e41h
+ jr nc,l192ah
+ rlca
+ rlca
+ rlca
+ add a,b
+ ld b,a
+ jp gen.opc.ED2
l192ah:
- ld b,064h ;192a
+ ld b,064h
l192ch:
- call sub_1e12h ;192c
- jr l18e9h ;192f
+ call sub_1e12h
+ jr l18e9h
l1931h:
- jp ERROR ;1931
+ jp ERROR
l1934h:
- call sub_1e41h ;1934
- jp c,l19bfh ;1937
- call sub_1e68h ;193a
- jp c,l1a64h ;193d
- call sub_1e2eh ;1940
- jp c,l1a93h ;1943
- call sub_1e50h ;1946
- jp c,l1af0h ;1949
- ld a,(de) ;194c
- cp 049h ;194d
- jp z,l1b0ch ;194f
- cp 052h ;1952
- jp z,l1b14h ;1954
- cp 028h ;1957
- jp nz,ERROR ;1959
- inc de ;195c
- call sub_1e2eh ;195d
- jp c,l1b23h ;1960
- call tst_EXPR ;1963
- call sub_1ed8h ;1966
- call sub_1ed1h ;1969
- call sub_1e2eh ;196c
- jr c,l19adh ;196f
- call sub_1e50h ;1971
- jr nc,l1991h ;1974
- ld b,022h ;1976
+ call sub_1e41h
+ jp c,l19bfh
+ call sub_1e68h
+ jp c,l1a64h
+ call sub_1e2eh
+ jp c,l1a93h
+ call sub_1e50h
+ jp c,l1af0h
+ ld a,(de)
+ cp 049h
+ jp z,l1b0ch
+ cp 052h
+ jp z,l1b14h
+ cp 028h
+ jp nz,ERROR
+ inc de
+ call sub_1e2eh
+ jp c,l1b23h
+ call tst_EXPR
+ call sub_1ed8h
+ call sub_1ed1h
+ call sub_1e2eh
+ jr c,l19adh
+ call sub_1e50h
+ jr nc,l1991h
+ ld b,022h
l1978h:
- call assert_eol ;1978
- ld a,(pfx.IXY) ;197b
+ call assert_eol
+ ld a,(pfx.IXY)
l197eh:
- comst ;197e
- ld (iy+000h),a ;1982
- ld (iy+001h),b ;1985
- ld (iy+002h),l ;1988
- ld (iy+003h),h ;198b
+ comst
+ ld (iy+000h),a
+ ld (iy+001h),b
+ ld (iy+002h),l
+ ld (iy+003h),h
comend
- ld c,004h ;198e
- ret ;1990
+ ld c,004h
+ ret
l1991h:
- ld a,(de) ;1991
- cp 041h ;1992
- jp nz,ERROR ;1994
- inc de ;1997
- ld b,032h ;1998
+ ld a,(de)
+ cp 041h
+ jp nz,ERROR
+ inc de
+ ld b,032h
l199ah:
- call assert_eol ;199a
- comst ;199d
- ld (iy+000h),b ;19a1
- ld (iy+001h),l ;19a4
- ld (iy+002h),h ;19a7
+ call assert_eol
+ comst
+ ld (iy+000h),b
+ ld (iy+001h),l
+ ld (iy+002h),h
comend
- ld c,003h ;19aa
- ret ;19ac
+ ld c,003h
+ ret
l19adh:
- cp 020h ;19ad
- jr z,l19bbh ;19af
- add a,043h ;19b1
- ld b,a ;19b3
+ cp 020h
+ jr z,l19bbh
+ add a,043h
+ ld b,a
l19b4h:
- call assert_eol ;19b4
- ld a,0edh ;19b7
- jr l197eh ;19b9
+ call assert_eol
+ ld a,0edh
+ jr l197eh
l19bbh:
- ld b,022h ;19bb
- jr l199ah ;19bd
+ ld b,022h
+ jr l199ah
l19bfh:
- ld b,a ;19bf
- call sub_1ed1h ;19c0
- call sub_1e41h ;19c3
- jr nc,l19dbh ;19c6
- push af ;19c8
- ld a,b ;19c9
- rlca ;19ca
- rlca ;19cb
- rlca ;19cc
- ld b,a ;19cd
- pop af ;19ce
- add a,b ;19cf
- add a,040h ;19d0
- cp 076h ;19d2
- jp z,ERROR ;19d4
+ ld b,a
+ call sub_1ed1h
+ call sub_1e41h
+ jr nc,l19dbh
+ push af
+ ld a,b
+ rlca
+ rlca
+ rlca
+ ld b,a
+ pop af
+ add a,b
+ add a,040h
+ cp 076h
+ jp z,ERROR
l19d7h:
- ld b,a ;19d7
- jp l1b36h ;19d8
+ ld b,a
+ jp l1b36h
l19dbh:
- call sub_1e68h ;19db
- jr nc,l1a02h ;19de
- ld a,b ;19e0
- rlca ;19e1
- rlca ;19e2
- rlca ;19e3
- add a,046h ;19e4
- cp 076h ;19e6
- jp z,ERROR ;19e8
+ call sub_1e68h
+ jr nc,l1a02h
+ ld a,b
+ rlca
+ rlca
+ rlca
+ add a,046h
+ cp 076h
+ jp z,ERROR
l19ebh:
- ld b,a ;19eb
- call assert_eol ;19ec
- ld a,(pfx.IXY) ;19ef
- comst ;19f2
- ld (iy+000h),a ;19f6
- ld (iy+001h),b ;19f9
- ld (iy+002h),c ;19fc
+ ld b,a
+ call assert_eol
+ ld a,(pfx.IXY)
+ comst
+ ld (iy+000h),a
+ ld (iy+001h),b
+ ld (iy+002h),c
comend
- ld c,003h ;19ff
- ret ;1a01
+ ld c,003h
+ ret
l1a02h:
- ld a,(de) ;1a02
- cp 'I' ;1a03
- jr z,l1a15h ;1a05
- cp 'R' ;1a07
- jr nz,l1a21h ;1a09
- ld a,b ;1a0b
- cp 007h ;1a0c
- jp nz,ERROR ;1a0e
- ld b,05fh ;1a11
- jr l1a1dh ;1a13
+ ld a,(de)
+ cp 'I'
+ jr z,l1a15h
+ cp 'R'
+ jr nz,l1a21h
+ ld a,b
+ cp 007h
+ jp nz,ERROR
+ ld b,05fh
+ jr l1a1dh
l1a15h:
- ld a,b ;1a15
- cp 007h ;1a16
- jp nz,ERROR ;1a18
- ld b,057h ;1a1b
+ ld a,b
+ cp 007h
+ jp nz,ERROR
+ ld b,057h
l1a1dh:
- inc de ;1a1d
- jp gen.opc.ED2 ;1a1e
+ inc de
+ jp gen.opc.ED2
l1a21h:
- cp '(' ;1a21
- jr z,l1a3fh ;1a23
- call sub_1e12h ;1a25
+ cp '('
+ jr z,l1a3fh
+ call sub_1e12h
ld a,b ;1a28 ld r,nn
- rlca ;1a29
- rlca ;1a2a
- rlca ;1a2b
- add a,006h ;1a2c
+ rlca
+ rlca
+ rlca
+ add a,006h
l1a2eh:
- ld b,a ;1a2e
+ ld b,a
l1a2fh:
- call assert_eol ;1a2f
- comst ;1a32
- ld (iy+000h),b ;1a36
- ld (iy+001h),l ;1a39
+ call assert_eol
+ comst
+ ld (iy+000h),b
+ ld (iy+001h),l
comend
- ld c,002h ;1a3c
- ret ;1a3e
+ ld c,002h
+ ret
l1a3fh:
- inc de ;1a3f
- ld a,b ;1a40
- cp 007h ;1a41
- jp nz,ERROR ;1a43
- call sub_1e2eh ;1a46
- jr nc,l1a59h ;1a49
- cp 030h ;1a4b
- jp nc,ERROR ;1a4d
- add a,00ah ;1a50
- ld b,a ;1a52
- call sub_1ed8h ;1a53
- jp l1b36h ;1a56
+ inc de
+ ld a,b
+ cp 007h
+ jp nz,ERROR
+ call sub_1e2eh
+ jr nc,l1a59h
+ cp 030h
+ jp nc,ERROR
+ add a,00ah
+ ld b,a
+ call sub_1ed8h
+ jp l1b36h
l1a59h:
- call tst_EXPR ;1a59
- call sub_1ed8h ;1a5c
- ld b,03ah ;1a5f
- jp l199ah ;1a61
+ call tst_EXPR
+ call sub_1ed8h
+ ld b,03ah
+ jp l199ah
l1a64h:
- call sub_1ed1h ;1a64
- call sub_1e41h ;1a67
- jr nc,l1a76h ;1a6a
- cp 006h ;1a6c
- jp z,ERROR ;1a6e
- add a,070h ;1a71
- jp l19ebh ;1a73
+ call sub_1ed1h
+ call sub_1e41h
+ jr nc,l1a76h
+ cp 006h
+ jp z,ERROR
+ add a,070h
+ jp l19ebh
l1a76h:
- call sub_1e12h ;1a76
- call assert_eol ;1a79
- ld a,(pfx.IXY) ;1a7c
- comst ;1a7f
+ call sub_1e12h
+ call assert_eol
+ ld a,(pfx.IXY)
+ comst
ld (iy+000h),a ;1a83 dd/fd
- ld (iy+001h),036h ;1a86
+ ld (iy+001h),036h
ld (iy+002h),c ;1a8a displacement
ld (iy+003h),l ;1a8d nn
comend
- ld c,4 ;1a90
- ret ;1a92
+ ld c,4
+ ret
l1a93h:
- ld b,a ;1a93
- call sub_1ed1h ;1a94
- ld hl,t_HL.AF ;1a97
- call sub_0a23h ;1a9a
- jr c,l1abeh ;1a9d
- call sub_1e50h ;1a9f
- jr nc,l1ac7h ;1aa2
- ld a,b ;1aa4
- cp 030h ;1aa5
- jr nz,l1b20h ;1aa7
- ld b,0f9h ;1aa9
+ ld b,a
+ call sub_1ed1h
+ ld hl,t_HL.AF
+ call sub_0a23h
+ jr c,l1abeh
+ call sub_1e50h
+ jr nc,l1ac7h
+ ld a,b
+ cp 030h
+ jr nz,l1b20h
+ ld b,0f9h
l1aabh:
- call assert_eol ;1aab
- ld a,(pfx.IXY) ;1aae
- comst ;1ab1
- ld (iy+000h),a ;1ab5
- ld (iy+001h),b ;1ab8
+ call assert_eol
+ ld a,(pfx.IXY)
+ comst
+ ld (iy+000h),a
+ ld (iy+001h),b
comend
- ld c,002h ;1abb
- ret ;1abd
+ ld c,002h
+ ret
l1abeh:
- ld a,b ;1abe
- cp 030h ;1abf
- jr nz,l1b20h ;1ac1
- ld b,0f9h ;1ac3
- jr l1b36h ;1ac5
+ ld a,b
+ cp 030h
+ jr nz,l1b20h
+ ld b,0f9h
+ jr l1b36h
l1ac7h:
- ld a,(de) ;1ac7
- cp 028h ;1ac8
- jr nz,l1ae3h ;1aca
- inc de ;1acc
- call tst_EXPR ;1acd
- call sub_1ed8h ;1ad0
- ld a,b ;1ad3
- cp 020h ;1ad4
- jr z,l1adeh ;1ad6
- add a,04bh ;1ad8
- ld b,a ;1ada
- jp l19b4h ;1adb
+ ld a,(de)
+ cp 028h
+ jr nz,l1ae3h
+ inc de
+ call tst_EXPR
+ call sub_1ed8h
+ ld a,b
+ cp 020h
+ jr z,l1adeh
+ add a,04bh
+ ld b,a
+ jp l19b4h
l1adeh:
- ld b,02ah ;1ade
- jp l199ah ;1ae0
+ ld b,02ah
+ jp l199ah
l1ae3h:
- call tst_EXPR ;1ae3
- call assert_eol ;1ae6
- ld a,001h ;1ae9
- add a,b ;1aeb
- ld b,a ;1aec
- jp l199ah ;1aed
+ call tst_EXPR
+ call assert_eol
+ ld a,001h
+ add a,b
+ ld b,a
+ jp l199ah
l1af0h:
- call sub_1ed1h ;1af0
- ld a,(de) ;1af3
- cp 028h ;1af4
- jr nz,l1b04h ;1af6
- inc de ;1af8
- call tst_EXPR ;1af9
- call sub_1ed8h ;1afc
- ld b,02ah ;1aff
- jp l1978h ;1b01
+ call sub_1ed1h
+ ld a,(de)
+ cp 028h
+ jr nz,l1b04h
+ inc de
+ call tst_EXPR
+ call sub_1ed8h
+ ld b,02ah
+ jp l1978h
l1b04h:
- call tst_EXPR ;1b04
- ld b,021h ;1b07
- jp l1978h ;1b09
+ call tst_EXPR
+ ld b,021h
+ jp l1978h
l1b0ch:
- inc de ;1b0c
- call sub_1ed1h ;1b0d
- ld b,047h ;1b10
- jr l1b1ah ;1b12
+ inc de
+ call sub_1ed1h
+ ld b,047h
+ jr l1b1ah
l1b14h:
- inc de ;1b14
- call sub_1ed1h ;1b15
- ld b,04fh ;1b18
+ inc de
+ call sub_1ed1h
+ ld b,04fh
l1b1ah:
- ld a,(de) ;1b1a
- inc de ;1b1b
- cp 041h ;1b1c
- jr z,gen.opc.ED2 ;1b1e
+ ld a,(de)
+ inc de
+ cp 041h
+ jr z,gen.opc.ED2
l1b20h:
- jp ERROR ;1b20
+ jp ERROR
l1b23h:
- cp 020h ;1b23
- jr nc,l1b20h ;1b25
- add a,002h ;1b27
- ld b,a ;1b29
- call sub_1ed8h ;1b2a
- call sub_1ed1h ;1b2d
- ld a,(de) ;1b30
- cp 041h ;1b31
- jr nz,l1b20h ;1b33
- inc de ;1b35
+ cp 020h
+ jr nc,l1b20h
+ add a,002h
+ ld b,a
+ call sub_1ed8h
+ call sub_1ed1h
+ ld a,(de)
+ cp 041h
+ jr nz,l1b20h
+ inc de
l1b36h:
- call assert_eol ;1b36
- comst ;1b39
- ld (iy+000h),b ;1b3d
+ call assert_eol
+ comst
+ ld (iy+000h),b
comend
- ld c,001h ;1b40
- ret ;1b42
+ ld c,001h
+ ret
gen.opc.ED2:
- call assert_eol ;1b43
- comst ;1b46
- ld (iy+000h),0edh ;1b4a
- ld (iy+001h),b ;1b4e
+ call assert_eol
+ comst
+ ld (iy+000h),0edh
+ ld (iy+001h),b
comend
- ld c,002h ;1b51
- ret ;1b53
+ ld c,002h
+ ret
l1b54h:
- ld hl,t_HL.AF ;1b54
- call sub_0a23h ;1b57
- jr nc,l1babh ;1b5a
- call sub_1ed1h ;1b5c
- call sub_1e2eh ;1b5f
- jp nc,ERROR ;1b62
- push af ;1b65
- ld a,b ;1b66
- cp 088h ;1b67
- ld b,04ah ;1b69
- jr z,l1b6fh ;1b6b
- ld b,042h ;1b6d
+ ld hl,t_HL.AF
+ call sub_0a23h
+ jr nc,l1babh
+ call sub_1ed1h
+ call sub_1e2eh
+ jp nc,ERROR
+ push af
+ ld a,b
+ cp 088h
+ ld b,04ah
+ jr z,l1b6fh
+ ld b,042h
l1b6fh:
- pop af ;1b6f
- add a,b ;1b70
+ pop af
+ add a,b
l1b71h:
- ld b,a ;1b71
- jr gen.opc.ED2 ;1b72
+ ld b,a
+ jr gen.opc.ED2
l1b74h:
- ld hl,t_HL.AF ;1b74
- call sub_0a23h ;1b77
- jr c,l1b9dh ;1b7a
- call sub_1e50h ;1b7c
- jr nc,l1babh ;1b7f
- call sub_1ed1h ;1b81
- ld hl,t_BC.DE.IX.SP ;1b84
- ld a,(pfx.IXY) ;1b87
- cp 0fdh ;1b8a
- jr nz,l1b91h ;1b8c
- ld hl,t_BC.DE.IY.SP ;1b8e
+ ld hl,t_HL.AF
+ call sub_0a23h
+ jr c,l1b9dh
+ call sub_1e50h
+ jr nc,l1babh
+ call sub_1ed1h
+ ld hl,t_BC.DE.IX.SP
+ ld a,(pfx.IXY)
+ cp 0fdh
+ jr nz,l1b91h
+ ld hl,t_BC.DE.IY.SP
l1b91h:
- call sub_1e2bh ;1b91
- jp nc,ERROR ;1b94
- add a,009h ;1b97
+ call sub_1e2bh
+ jp nc,ERROR
+ add a,009h
l1b99h:
- ld b,a ;1b99
- jp l1aabh ;1b9a
+ ld b,a
+ jp l1aabh
l1b9dh:
- call sub_1ed1h ;1b9d
- call sub_1e2eh ;1ba0
- jp nc,ERROR ;1ba3
- add a,009h ;1ba6
- jp l19d7h ;1ba8
+ call sub_1ed1h
+ call sub_1e2eh
+ jp nc,ERROR
+ add a,009h
+ jp l19d7h
l1babh:
- ld a,(de) ;1bab
- cp 041h ;1bac
- jr nz,l1bbbh ;1bae
- push de ;1bb0
- inc de ;1bb1
- call skip_to_nextarg ;1bb2
- jr z,l1bbah ;1bb5
- pop de ;1bb7
- jr l1bbbh ;1bb8
+ ld a,(de)
+ cp 041h
+ jr nz,l1bbbh
+ push de
+ inc de
+ call skip_to_nextarg
+ jr z,l1bbah
+ pop de
+ jr l1bbbh
l1bbah:
- pop af ;1bba
+ pop af
l1bbbh:
- call sub_1e41h ;1bbb
- jr c,l1bceh ;1bbe
- call sub_1e68h ;1bc0
- jr c,l1bd2h ;1bc3
- call sub_1e12h ;1bc5
- ld a,b ;1bc8
- add a,046h ;1bc9
- jp l1a2eh ;1bcb
+ call sub_1e41h
+ jr c,l1bceh
+ call sub_1e68h
+ jr c,l1bd2h
+ call sub_1e12h
+ ld a,b
+ add a,046h
+ jp l1a2eh
l1bceh:
- add a,b ;1bce
- jp l19d7h ;1bcf
+ add a,b
+ jp l19d7h
l1bd2h:
- ld a,b ;1bd2
- add a,006h ;1bd3
- jp l19ebh ;1bd5
+ ld a,b
+ add a,006h
+ jp l19ebh
l1bd8h:
- call sub_1e41h ;1bd8
- jr c,l1c01h ;1bdb
- call sub_1e68h ;1bdd
- jp nc,ERROR ;1be0
- ld a,b ;1be3
- add a,006h ;1be4
- ld b,a ;1be6
+ call sub_1e41h
+ jr c,l1c01h
+ call sub_1e68h
+ jp nc,ERROR
+ ld a,b
+ add a,006h
+ ld b,a
l1be7h:
- call assert_eol ;1be7
- ld a,(pfx.IXY) ;1bea
- comst ;1bed
- ld (iy+000h),a ;1bf1
- ld (iy+001h),0cbh ;1bf4
- ld (iy+002h),c ;1bf8
- ld (iy+003h),b ;1bfb
+ call assert_eol
+ ld a,(pfx.IXY)
+ comst
+ ld (iy+000h),a
+ ld (iy+001h),0cbh
+ ld (iy+002h),c
+ ld (iy+003h),b
comend
- ld c,004h ;1bfe
- ret ;1c00
+ ld c,004h
+ ret
l1c01h:
- add a,b ;1c01
+ add a,b
l1c02h:
- ld b,a ;1c02
- call assert_eol ;1c03
- comst ;1c06
- ld (iy+000h),0cbh ;1c0a
- ld (iy+001h),b ;1c0e
+ ld b,a
+ call assert_eol
+ comst
+ ld (iy+000h),0cbh
+ ld (iy+001h),b
comend
- ld c,002h ;1c11
- ret ;1c13
+ ld c,002h
+ ret
l1c14h:
- call sub_1de6h ;1c14
- call sub_1ed1h ;1c17
- call sub_1e41h ;1c1a
- jr c,l1c2fh ;1c1d
- call sub_1e68h ;1c1f
- jp nc,ERROR ;1c22
- ld a,l ;1c25
- rlca ;1c26
- rlca ;1c27
- rlca ;1c28
- add a,006h ;1c29
- add a,b ;1c2b
- ld b,a ;1c2c
- jr l1be7h ;1c2d
+ call sub_1de6h
+ call sub_1ed1h
+ call sub_1e41h
+ jr c,l1c2fh
+ call sub_1e68h
+ jp nc,ERROR
+ ld a,l
+ rlca
+ rlca
+ rlca
+ add a,006h
+ add a,b
+ ld b,a
+ jr l1be7h
l1c2fh:
- add a,b ;1c2f
- ld b,a ;1c30
- ld a,l ;1c31
- rlca ;1c32
- rlca ;1c33
- rlca ;1c34
- add a,b ;1c35
- jr l1c02h ;1c36
+ add a,b
+ ld b,a
+ ld a,l
+ rlca
+ rlca
+ rlca
+ add a,b
+ jr l1c02h
l1c38h:
- push de ;1c38
- call sub_1eb8h ;1c39
- jr nc,l1c47h ;1c3c
- add a,b ;1c3e
- ld b,a ;1c3f
- call skip_to_nextarg ;1c40
- jr z,l1c49h ;1c43
- pop de ;1c45
- push de ;1c46
+ push de
+ call sub_1eb8h
+ jr nc,l1c47h
+ add a,b
+ ld b,a
+ call skip_to_nextarg
+ jr z,l1c49h
+ pop de
+ push de
l1c47h:
- ld b,0cdh ;1c47
+ ld b,0cdh
l1c49h:
- pop af ;1c49
- call tst_EXPR ;1c4a
- jp l199ah ;1c4d
+ pop af
+ call tst_EXPR
+ jp l199ah
l1c50h:
- call sub_1eb8h ;1c50
- jr nc,l1c59h ;1c53
- add a,b ;1c55
- ld b,a ;1c56
- jr l1c5bh ;1c57
+ call sub_1eb8h
+ jr nc,l1c59h
+ add a,b
+ ld b,a
+ jr l1c5bh
l1c59h:
- ld b,0c9h ;1c59
+ ld b,0c9h
l1c5bh:
- jp l1b36h ;1c5b
+ jp l1b36h
l1c5eh:
- push de ;1c5e
- call sub_1eb8h ;1c5f
- jr c,l1c71h ;1c62
+ push de
+ call sub_1eb8h
+ jr c,l1c71h
l1c64h:
- pop de ;1c64
- ld hl,b_0x1C97_start ;1c65
- call sub_0a15h ;1c68
- jr c,l1c7fh ;1c6b
- ld b,0c3h ;1c6d
- jr l1c79h ;1c6f
+ pop de
+ ld hl,b_0x1C97_start
+ call sub_0a15h
+ jr c,l1c7fh
+ ld b,0c3h
+ jr l1c79h
l1c71h:
- add a,b ;1c71
- ld b,a ;1c72
- call skip_to_nextarg ;1c73
- jr nz,l1c64h ;1c76
- pop af ;1c78
+ add a,b
+ ld b,a
+ call skip_to_nextarg
+ jr nz,l1c64h
+ pop af
l1c79h:
- call tst_EXPR ;1c79
- jp l199ah ;1c7c
+ call tst_EXPR
+ jp l199ah
l1c7fh:
- call assert_eol ;1c7f
- ld a,b ;1c82
- and a ;1c83
- jr nz,l1c8bh ;1c84
- ld b,0e9h ;1c86
- jp l1b36h ;1c88
+ call assert_eol
+ ld a,b
+ and a
+ jr nz,l1c8bh
+ ld b,0e9h
+ jp l1b36h
l1c8bh:
- ld b,0ddh ;1c8b
- dec a ;1c8d
- jr z,l1c92h ;1c8e
- ld b,0fdh ;1c90
+ ld b,0ddh
+ dec a
+ jr z,l1c92h
+ ld b,0fdh
l1c92h:
- ld l,0e9h ;1c92
- jp l1a2fh ;1c94
+ ld l,0e9h
+ jp l1a2fh
b_0x1C97_start:
DC '(HL)'
@@ -3926,128 +3926,128 @@ b_0x1C97_start:
DB 0
l1ca4h:
- call skip_to_nextarg ;1ca4
- ld b,010h ;1ca7
- jr l1cb9h ;1ca9
+ call skip_to_nextarg
+ ld b,010h
+ jr l1cb9h
l1cabh:
- call sub_1ebfh ;1cab
- jr c,l1cb4h ;1cae
- ld b,018h ;1cb0
- jr l1cb9h ;1cb2
+ call sub_1ebfh
+ jr c,l1cb4h
+ ld b,018h
+ jr l1cb9h
l1cb4h:
- add a,b ;1cb4
- ld b,a ;1cb5
- call sub_1ed1h ;1cb6
+ add a,b
+ ld b,a
+ call sub_1ed1h
l1cb9h:
- call sub_1defh ;1cb9
- jp l1a2fh ;1cbc
+ call sub_1defh
+ jp l1a2fh
l1cbfh:
- call sub_1e12h ;1cbf
- ld a,l ;1cc2
- cp 003h ;1cc3
- jr nc,l1d23h ;1cc5
- and a ;1cc7
- jr z,l1cd2h ;1cc8
- ld b,056h ;1cca
- cp 001h ;1ccc
- jr z,l1cd2h ;1cce
- ld b,05eh ;1cd0
+ call sub_1e12h
+ ld a,l
+ cp 003h
+ jr nc,l1d23h
+ and a
+ jr z,l1cd2h
+ ld b,056h
+ cp 001h
+ jr z,l1cd2h
+ ld b,05eh
l1cd2h:
- jp gen.opc.ED2 ;1cd2
+ jp gen.opc.ED2
l1cd5h:
- call sub_1e12h ;1cd5
- ld a,l ;1cd8
- push af ;1cd9
- add a,b ;1cda
- ld b,a ;1cdb
- pop af ;1cdc
- and 0c7h ;1cdd
- jr nz,l1d23h ;1cdf
- jp l1b36h ;1ce1
+ call sub_1e12h
+ ld a,l
+ push af
+ add a,b
+ ld b,a
+ pop af
+ and 0c7h
+ jr nz,l1d23h
+ jp l1b36h
l1ce4h:
- call sub_1e50h ;1ce4
- jr c,l1cf2h ;1ce7
- call sub_1e25h ;1ce9
- jr nc,l1d23h ;1cec
- add a,b ;1cee
- jp l19d7h ;1cef
+ call sub_1e50h
+ jr c,l1cf2h
+ call sub_1e25h
+ jr nc,l1d23h
+ add a,b
+ jp l19d7h
l1cf2h:
- ld a,b ;1cf2
- add a,020h ;1cf3
- jp l1b99h ;1cf5
+ ld a,b
+ add a,020h
+ jp l1b99h
l1cf8h:
- call sub_1e41h ;1cf8
- jr nc,l1d23h ;1cfb
- cp 006h ;1cfd
- jr z,l1d23h ;1cff
- rlca ;1d01
- rlca ;1d02
- rlca ;1d03
- add a,b ;1d04
- ld b,a ;1d05
- cp 078h ;1d06
- jr nz,l1d1ah ;1d08
- call sub_1ed1h ;1d0a
- call sub_1d26h ;1d0d
- jr c,l1d20h ;1d10
- call sub_1e06h ;1d12
- ld b,0dbh ;1d15
- jp l1a2fh ;1d17
+ call sub_1e41h
+ jr nc,l1d23h
+ cp 006h
+ jr z,l1d23h
+ rlca
+ rlca
+ rlca
+ add a,b
+ ld b,a
+ cp 078h
+ jr nz,l1d1ah
+ call sub_1ed1h
+ call sub_1d26h
+ jr c,l1d20h
+ call sub_1e06h
+ ld b,0dbh
+ jp l1a2fh
l1d1ah:
- call sub_1ed1h ;1d1a
- call sub_1d26h ;1d1d
+ call sub_1ed1h
+ call sub_1d26h
l1d20h:
- jp c,gen.opc.ED2 ;1d20
+ jp c,gen.opc.ED2
l1d23h:
- jp ERROR ;1d23
+ jp ERROR
sub_1d26h:
- ld hl,t__C_ ;1d26
- jp sub_0a23h ;1d29
+ ld hl,t__C_
+ jp sub_0a23h
l1d2ch:
- call sub_1d26h ;1d2c
- jr nc,l1d44h ;1d2f
- call sub_1ed1h ;1d31
- call sub_1e41h ;1d34
- jr nc,l1d23h ;1d37
- cp 006h ;1d39
- jr z,l1d23h ;1d3b
- rlca ;1d3d
- rlca ;1d3e
- rlca ;1d3f
- add a,b ;1d40
- jp l1b71h ;1d41
+ call sub_1d26h
+ jr nc,l1d44h
+ call sub_1ed1h
+ call sub_1e41h
+ jr nc,l1d23h
+ cp 006h
+ jr z,l1d23h
+ rlca
+ rlca
+ rlca
+ add a,b
+ jp l1b71h
l1d44h:
- call sub_1e06h ;1d44
- call sub_1ed1h ;1d47
- cp 041h ;1d4a
- jr nz,l1d23h ;1d4c
- inc de ;1d4e
- ld b,0d3h ;1d4f
- jp l1a2fh ;1d51
+ call sub_1e06h
+ call sub_1ed1h
+ cp 041h
+ jr nz,l1d23h
+ inc de
+ ld b,0d3h
+ jp l1a2fh
l1d54h:
- ld hl,b_0x1D80_start ;1d54
- call sub_0a15h ;1d57
- jp nc,ERROR ;1d5a
- ld c,b ;1d5d
- call assert_eol ;1d5e
- ld b,000h ;1d61
- ld hl,b_0x1DA1_start ;1d63
- add hl,bc ;1d66
- add hl,bc ;1d67
- ld a,(hl) ;1d68
- comst ;1d69
- ld (iy+000h),a ;1d6d
+ ld hl,b_0x1D80_start
+ call sub_0a15h
+ jp nc,ERROR
+ ld c,b
+ call assert_eol
+ ld b,000h
+ ld hl,b_0x1DA1_start
+ add hl,bc
+ add hl,bc
+ ld a,(hl)
+ comst
+ ld (iy+000h),a
comend
- ld c,001h ;1d70
- inc hl ;1d72
- ld a,(hl) ;1d73
- and a ;1d74
- ret z ;1d75
- comst ;1d76
- ld (iy+001h),a ;1d7a
+ ld c,001h
+ inc hl
+ ld a,(hl)
+ and a
+ ret z
+ comst
+ ld (iy+001h),a
comend
- ld c,002h ;1d7d
- ret ;1d7f
+ ld c,002h
+ ret
b_0x1D80_start:
DC 'AF,AF'''
@@ -4056,1359 +4056,1359 @@ l1d86h:
DC '(SP),HL'
DC '(SP),IX'
DC '(SP),IY'
- db 000h ;1da0
+ db 000h
b_0x1DA1_start:
- db 008h ;1da1
- db 000h ;1da2
- db 0ebh ;1da3
- db 000h ;1da4
- db 0e3h ;1da5
- db 000h ;1da6
- db 0ddh ;1da7
- db 0e3h ;1da8
- db 0fdh ;1da9
- db 0e3h ;1daa
+ db 008h
+ db 000h
+ db 0ebh
+ db 000h
+ db 0e3h
+ db 000h
+ db 0ddh
+ db 0e3h
+ db 0fdh
+ db 0e3h
l1dabh:
- call sub_1e50h ;1dab
- jr c,l1dc6h ;1dae
- call sub_1e2eh ;1db0
- jr c,l1dd2h ;1db3
- call sub_1e41h ;1db5
- jr c,l1ddfh ;1db8
- call sub_1e68h ;1dba
- jp nc,ERROR ;1dbd
- ld a,b ;1dc0
- add a,030h ;1dc1
- jp l19ebh ;1dc3
+ call sub_1e50h
+ jr c,l1dc6h
+ call sub_1e2eh
+ jr c,l1dd2h
+ call sub_1e41h
+ jr c,l1ddfh
+ call sub_1e68h
+ jp nc,ERROR
+ ld a,b
+ add a,030h
+ jp l19ebh
l1dc6h:
- ld a,b ;1dc6
- ld b,023h ;1dc7
- cp 004h ;1dc9
- jr z,l1dcfh ;1dcb
- ld b,02bh ;1dcd
+ ld a,b
+ ld b,023h
+ cp 004h
+ jr z,l1dcfh
+ ld b,02bh
l1dcfh:
- jp l1aabh ;1dcf
+ jp l1aabh
l1dd2h:
- push af ;1dd2
- ld a,b ;1dd3
- ld b,003h ;1dd4
- cp 004h ;1dd6
- jr z,l1ddch ;1dd8
- ld b,00bh ;1dda
+ push af
+ ld a,b
+ ld b,003h
+ cp 004h
+ jr z,l1ddch
+ ld b,00bh
l1ddch:
- pop af ;1ddc
- jr l1de2h ;1ddd
+ pop af
+ jr l1de2h
l1ddfh:
- rlca ;1ddf
- rlca ;1de0
- rlca ;1de1
+ rlca
+ rlca
+ rlca
l1de2h:
- add a,b ;1de2
- jp l19d7h ;1de3
+ add a,b
+ jp l19d7h
sub_1de6h:
- call sub_1e12h ;1de6
- ld a,l ;1de9
- cp 008h ;1dea
- jr nc,error1 ;1dec
- ret ;1dee
+ call sub_1e12h
+ ld a,l
+ cp 008h
+ jr nc,error1
+ ret
sub_1defh:
- call tst_EXPR ;1def
- push bc ;1df2
- push iy ;1df3
- pop bc ;1df5
- and a ;1df6
- sbc hl,bc ;1df7
- dec hl ;1df9
- dec hl ;1dfa
- pop bc ;1dfb
- call sub_1e15h ;1dfc
- ld a,h ;1dff
- xor l ;1e00
- bit 7,a ;1e01
- jr nz,error1 ;1e03
- ret ;1e05
+ call tst_EXPR
+ push bc
+ push iy
+ pop bc
+ and a
+ sbc hl,bc
+ dec hl
+ dec hl
+ pop bc
+ call sub_1e15h
+ ld a,h
+ xor l
+ bit 7,a
+ jr nz,error1
+ ret
sub_1e06h:
- ld a,(de) ;1e06
- cp 028h ;1e07
- jr nz,sub_1e12h ;1e09
- inc de ;1e0b
- call sub_1e12h ;1e0c
- jp sub_1ed8h ;1e0f
+ ld a,(de)
+ cp 028h
+ jr nz,sub_1e12h
+ inc de
+ call sub_1e12h
+ jp sub_1ed8h
sub_1e12h:
- call tst_EXPR ;1e12
+ call tst_EXPR
sub_1e15h:
- ld a,h ;1e15
- and a ;1e16
- ret z ;1e17
- inc a ;1e18
- ret z ;1e19
- jr error1 ;1e1a
+ ld a,h
+ and a
+ ret z
+ inc a
+ ret z
+ jr error1
tst_EXPR:
- push bc ;1e1c
- call EXPR ;1e1d
- pop bc ;1e20
- ret nc ;1e21
+ push bc
+ call EXPR
+ pop bc
+ ret nc
error1:
- jp ERROR ;1e22
+ jp ERROR
sub_1e25h:
- push hl ;1e25
- ld hl,t_BC.DE.HL.AF ;1e26
- jr l1e32h ;1e29
+ push hl
+ ld hl,t_BC.DE.HL.AF
+ jr l1e32h
sub_1e2bh:
- push hl ;1e2b
- jr l1e32h ;1e2c
+ push hl
+ jr l1e32h
sub_1e2eh:
- push hl ;1e2e
- ld hl,t_BC.DE.HL.SP ;1e2f
+ push hl
+ ld hl,t_BC.DE.HL.SP
l1e32h:
- push bc ;1e32
- call sub_0a15h ;1e33
- jr nc,l1e3eh ;1e36
- ld a,b ;1e38
- rlca ;1e39
- rlca ;1e3a
- rlca ;1e3b
- rlca ;1e3c
- scf ;1e3d
+ push bc
+ call sub_0a15h
+ jr nc,l1e3eh
+ ld a,b
+ rlca
+ rlca
+ rlca
+ rlca
+ scf
l1e3eh:
- pop bc ;1e3e
- pop hl ;1e3f
- ret ;1e40
+ pop bc
+ pop hl
+ ret
sub_1e41h:
- call SKIPBL ;1e41
- push bc ;1e44
- push hl ;1e45
- ld hl,t_BCDEHL_HL_A ;1e46
- call sub_0a15h ;1e49
- ld a,b ;1e4c
- pop hl ;1e4d
- pop bc ;1e4e
- ret ;1e4f
+ call SKIPBL
+ push bc
+ push hl
+ ld hl,t_BCDEHL_HL_A
+ call sub_0a15h
+ ld a,b
+ pop hl
+ pop bc
+ ret
sub_1e50h:
- push hl ;1e50
- push bc ;1e51
- ld hl,t_IX.IY ;1e52
- call sub_0a15h ;1e55
- jr nc,l1e65h ;1e58
- ld a,0ddh ;1e5a
- dec b ;1e5c
- jr nz,l1e61h ;1e5d
- ld a,0fdh ;1e5f
+ push hl
+ push bc
+ ld hl,t_IX.IY
+ call sub_0a15h
+ jr nc,l1e65h
+ ld a,0ddh
+ dec b
+ jr nz,l1e61h
+ ld a,0fdh
l1e61h:
- ld (pfx.IXY),a ;1e61
- scf ;1e64
+ ld (pfx.IXY),a
+ scf
l1e65h:
- pop bc ;1e65
- pop hl ;1e66
- ret ;1e67
+ pop bc
+ pop hl
+ ret
sub_1e68h:
- push hl ;1e68
- push bc ;1e69
- ld a,(de) ;1e6a
- cp '(' ;1e6b
- jr nz,l1eb4h ;1e6d
- push de ;1e6f
- inc de ;1e70
- ld hl,t_IX.IY ;1e71
- call sub_0a15h ;1e74
- jr nc,l1eb3h ;1e77
- pop af ;1e79
- ld a,0ddh ;1e7a
- dec b ;1e7c
- jr nz,l1e81h ;1e7d
- ld a,0fdh ;1e7f
+ push hl
+ push bc
+ ld a,(de)
+ cp '('
+ jr nz,l1eb4h
+ push de
+ inc de
+ ld hl,t_IX.IY
+ call sub_0a15h
+ jr nc,l1eb3h
+ pop af
+ ld a,0ddh
+ dec b
+ jr nz,l1e81h
+ ld a,0fdh
l1e81h:
- ld (pfx.IXY),a ;1e81
- ld a,(de) ;1e84
- cp '+' ;1e85
- jr z,l1e95h ;1e87
- cp ')' ;1e89
- ld hl,0 ;1e8b
- jr z,l1eadh ;1e8e
- cp '-' ;1e90
- jp nz,ERROR ;1e92
+ ld (pfx.IXY),a
+ ld a,(de)
+ cp '+'
+ jr z,l1e95h
+ cp ')'
+ ld hl,0
+ jr z,l1eadh
+ cp '-'
+ jp nz,ERROR
l1e95h:
- push af ;1e95
- inc de ;1e96
+ push af
+ inc de
call sub_1e12h ;1e97 get displacement
- pop af ;1e9a
- cp '+' ;1e9b
- jr z,l1ea7h ;1e9d
- ld b,h ;1e9f
- ld c,l ;1ea0
- ld hl,0 ;1ea1
- and a ;1ea4
- sbc hl,bc ;1ea5
+ pop af
+ cp '+'
+ jr z,l1ea7h
+ ld b,h
+ ld c,l
+ ld hl,0
+ and a
+ sbc hl,bc
l1ea7h:
- ld a,(de) ;1ea7
- cp ')' ;1ea8
- jp nz,ERROR ;1eaa
+ ld a,(de)
+ cp ')'
+ jp nz,ERROR
l1eadh:
- inc de ;1ead
- pop bc ;1eae
- ld c,l ;1eaf
- pop hl ;1eb0
- scf ;1eb1
- ret ;1eb2
+ inc de
+ pop bc
+ ld c,l
+ pop hl
+ scf
+ ret
l1eb3h:
- pop de ;1eb3
+ pop de
l1eb4h:
- pop bc ;1eb4
- pop hl ;1eb5
- and a ;1eb6
- ret ;1eb7
+ pop bc
+ pop hl
+ and a
+ ret
sub_1eb8h:
- ld hl,t_tstfl_ZCPS ;1eb8
- ld c,007h ;1ebb
- jr l1ec4h ;1ebd
+ ld hl,t_tstfl_ZCPS
+ ld c,007h
+ jr l1ec4h
sub_1ebfh:
- ld hl,t_tstfl_ZC ;1ebf
- ld c,003h ;1ec2
+ ld hl,t_tstfl_ZC
+ ld c,003h
l1ec4h:
- push bc ;1ec4
- call sub_0a15h ;1ec5
- ld a,b ;1ec8
- pop bc ;1ec9
- ret nc ;1eca
- and c ;1ecb
- rlca ;1ecc
- rlca ;1ecd
- rlca ;1ece
- scf ;1ecf
- ret ;1ed0
+ push bc
+ call sub_0a15h
+ ld a,b
+ pop bc
+ ret nc
+ and c
+ rlca
+ rlca
+ rlca
+ scf
+ ret
sub_1ed1h:
- call skip_to_nextarg ;1ed1
- ret z ;1ed4
+ call skip_to_nextarg
+ ret z
l1ed5h:
- jp ERROR ;1ed5
+ jp ERROR
sub_1ed8h:
- ld a,(de) ;1ed8
- cp 029h ;1ed9
- jr nz,l1ed5h ;1edb
- inc de ;1edd
- ret ;1ede
+ ld a,(de)
+ cp 029h
+ jr nz,l1ed5h
+ inc de
+ ret
CMD.L:
- ld hl,CMD.L ;1edf
- ld (CMD_RPT),hl ;1ee2
- call EXPR ;1ee5
- jr nc,l1eedh ;1ee8
- ld hl,(lst.L) ;1eea
+ ld hl,CMD.L
+ ld (CMD_RPT),hl
+ call EXPR
+ jr nc,l1eedh
+ ld hl,(lst.L)
l1eedh:
- push hl ;1eed
- pop iy ;1eee
- call skip_to_nextarg ;1ef0
- call sub_0aa5h ;1ef3
- jr nc,l1f17h ;1ef6
- call assert_eol ;1ef8
- ld b,010h ;1efb
+ push hl
+ pop iy
+ call skip_to_nextarg
+ call sub_0aa5h
+ jr nc,l1f17h
+ call assert_eol
+ ld b,010h
l1efdh:
- push bc ;1efd
- push iy ;1efe
- pop hl ;1f00
- push hl ;1f01
- call sub_1f3fh ;1f02
- call CRLF ;1f05
- pop iy ;1f08
- ld c,b ;1f0a
- ld b,000h ;1f0b
- add iy,bc ;1f0d
- ld (lst.L),iy ;1f0f
- pop bc ;1f13
- djnz l1efdh ;1f14
- ret ;1f16
+ push bc
+ push iy
+ pop hl
+ push hl
+ call sub_1f3fh
+ call CRLF
+ pop iy
+ ld c,b
+ ld b,000h
+ add iy,bc
+ ld (lst.L),iy
+ pop bc
+ djnz l1efdh
+ ret
l1f17h:
- call assert_eol ;1f17
- ld h,b ;1f1a
- ld l,c ;1f1b
- ld a,b ;1f1c
- or c ;1f1d
- jr nz,l1f21h ;1f1e
- dec hl ;1f20
+ call assert_eol
+ ld h,b
+ ld l,c
+ ld a,b
+ or c
+ jr nz,l1f21h
+ dec hl
l1f21h:
- push hl ;1f21
- push iy ;1f22
- pop hl ;1f24
- push hl ;1f25
- call sub_1f3fh ;1f26
- call CRLF ;1f29
- pop iy ;1f2c
- ld e,b ;1f2e
- ld d,000h ;1f2f
- add iy,de ;1f31
- ld (lst.L),iy ;1f33
- pop hl ;1f37
- and a ;1f38
- sbc hl,de ;1f39
- ret z ;1f3b
- ret c ;1f3c
- jr l1f21h ;1f3d
+ push hl
+ push iy
+ pop hl
+ push hl
+ call sub_1f3fh
+ call CRLF
+ pop iy
+ ld e,b
+ ld d,000h
+ add iy,de
+ ld (lst.L),iy
+ pop hl
+ and a
+ sbc hl,de
+ ret z
+ ret c
+ jr l1f21h
sub_1f3fh:
- call out.hl.@ ;1f3f
- call z,OUTBL ;1f42
- call OUTBL ;1f45
- sub a ;1f48
- ld (CON.COL),a ;1f49
- call sub_1f77h ;1f4c
- and a ;1f4f
- ret z ;1f50
+ call out.hl.@
+ call z,OUTBL
+ call OUTBL
+ sub a
+ ld (CON.COL),a
+ call sub_1f77h
+ and a
+ ret z
l1f51h:
- call OUTBL ;1f51
- ld a,(CON.COL) ;1f54
- cp 010h ;1f57
- jr c,l1f51h ;1f59
+ call OUTBL
+ ld a,(CON.COL)
+ cp 010h
+ jr c,l1f51h
sub_1f5bh:
- ld de,(offs.@) ;1f5b
- ld a,d ;1f5f
- or e ;1f60
- ret z ;1f61
- ld a,'(' ;1f62
- call OUTCHAR ;1f64
- ld a,'@' ;1f67
- call OUTCHAR ;1f69
- and a ;1f6c
- sbc hl,de ;1f6d
- call out.hl ;1f6f
- ld a,')' ;1f72
- jp OUTCHAR ;1f74
+ ld de,(offs.@)
+ ld a,d
+ or e
+ ret z
+ ld a,'('
+ call OUTCHAR
+ ld a,'@'
+ call OUTCHAR
+ and a
+ sbc hl,de
+ call out.hl
+ ld a,')'
+ jp OUTCHAR
sub_1f77h:
- sub a ;1f77
- ld (XBE03),a ;1f78
- call sub_1f9eh ;1f7b
- jr nc,l1f91h ;1f7e
- push bc ;1f80
- call sub_2581h ;1f81
- ex de,hl ;1f84
- call sub_1fdbh ;1f85
- pop bc ;1f88
- ld a,(XBE03) ;1f89
- ld hl,(XBE01) ;1f8c
- scf ;1f8f
- ret ;1f90
+ sub a
+ ld (XBE03),a
+ call sub_1f9eh
+ jr nc,l1f91h
+ push bc
+ call sub_2581h
+ ex de,hl
+ call sub_1fdbh
+ pop bc
+ ld a,(XBE03)
+ ld hl,(XBE01)
+ scf
+ ret
l1f91h:
- ld hl,b_0x1F9B_start ;1f91
- call PSTR ;1f94
- ld b,001h ;1f97
- sub a ;1f99
- ret ;1f9a
+ ld hl,b_0x1F9B_start
+ call PSTR
+ ld b,001h
+ sub a
+ ret
b_0x1F9B_start:
DC '???'
-
+
sub_1f9eh:
- sub a ;1f9e
- ld (is.pfx.IXY),a ;1f9f
- comst ;1fa2
- ld a,(iy+000h) ;1fa6
+ sub a
+ ld (is.pfx.IXY),a
+ comst
+ ld a,(iy+000h)
comend
- cp 0edh ;1fa9
- jp z,disas_pfx.ED ;1fab
- cp 0ddh ;1fae
- jr z,l1fc5h ;1fb0
- cp 0fdh ;1fb2
- jr z,l1fc9h ;1fb4
+ cp 0edh
+ jp z,disas_pfx.ED
+ cp 0ddh
+ jr z,l1fc5h
+ cp 0fdh
+ jr z,l1fc9h
sub_1fb6h:
- comst ;1fb6
- ld a,(iy+000h) ;1fba
+ comst
+ ld a,(iy+000h)
comend
- cp 0cbh ;1fbd
- jp z,l2061h ;1fbf
- jp l2078h ;1fc2
+ cp 0cbh
+ jp z,l2061h
+ jp l2078h
l1fc5h:
- ld a,001h ;1fc5
- jr l1fcbh ;1fc7
+ ld a,001h
+ jr l1fcbh
l1fc9h:
- ld a,002h ;1fc9
+ ld a,002h
l1fcbh:
- ld (is.pfx.IXY),a ;1fcb
- call sub_1fdch ;1fce
- ret nc ;1fd1
- push bc ;1fd2
- call sub_1fb6h ;1fd3
- pop af ;1fd6
- add a,b ;1fd7
- ld b,a ;1fd8
- scf ;1fd9
- ret ;1fda
+ ld (is.pfx.IXY),a
+ call sub_1fdch
+ ret nc
+ push bc
+ call sub_1fb6h
+ pop af
+ add a,b
+ ld b,a
+ scf
+ ret
sub_1fdbh:
- jp (hl) ;1fdb
+ jp (hl)
sub_1fdch:
- inc iy ;1fdc
- ld hl,b_0x2011_start ;1fde
- call sub_20bbh ;1fe1
- ld b,002h ;1fe4
- ret c ;1fe6
- ld hl,l202ch ;1fe7
- call sub_20bbh ;1fea
- ld b,001h ;1fed
- ret c ;1fef
- comst ;1ff0
- ld a,(iy+000h) ;1ff4
+ inc iy
+ ld hl,b_0x2011_start
+ call sub_20bbh
+ ld b,002h
+ ret c
+ ld hl,l202ch
+ call sub_20bbh
+ ld b,001h
+ ret c
+ comst
+ ld a,(iy+000h)
comend
- cp 0cbh ;1ff7
- jr nz,l200fh ;1ff9
- comst ;1ffb
- ld a,(iy+002h) ;1fff
+ cp 0cbh
+ jr nz,l200fh
+ comst
+ ld a,(iy+002h)
comend
- cp 036h ;2002
- ret z ;2004
- and 007h ;2005
- cp 006h ;2007
- jr nz,l200fh ;2009
- ld b,002h ;200b
- scf ;200d
- ret ;200e
+ cp 036h
+ ret z
+ and 007h
+ cp 006h
+ jr nz,l200fh
+ ld b,002h
+ scf
+ ret
l200fh:
- and a ;200f
- ret ;2010
+ and a
+ ret
b_0x2011_start:
- db 034h ;2011
- db 035h ;2012
- db 036h ;2013
- db 046h ;2014
- db 04eh ;2015
- db 056h ;2016
- db 05eh ;2017
- db 066h ;2018
- db 06eh ;2019
- db 070h ;201a
- db 071h ;201b
- db 072h ;201c
- db 073h ;201d
- db 074h ;201e
- db 075h ;201f
- db 076h ;2020
- db 077h ;2021
- db 07eh ;2022
- db 086h ;2023
- db 08eh ;2024
- db 096h ;2025
- db 09eh ;2026
- db 0a6h ;2027
- db 0aeh ;2028
- db 0b6h ;2029
- db 0beh ;202a
- db 000h ;202b
+ db 034h
+ db 035h
+ db 036h
+ db 046h
+ db 04eh
+ db 056h
+ db 05eh
+ db 066h
+ db 06eh
+ db 070h
+ db 071h
+ db 072h
+ db 073h
+ db 074h
+ db 075h
+ db 076h
+ db 077h
+ db 07eh
+ db 086h
+ db 08eh
+ db 096h
+ db 09eh
+ db 0a6h
+ db 0aeh
+ db 0b6h
+ db 0beh
+ db 000h
l202ch:
- db 009h ;202c
- db 019h ;202d
- db 021h ;202e
- db 022h ;202f
- db 023h ;2030
- db 029h ;2031
- db 02ah ;2032
- db 02bh ;2033
- db 039h ;2034
- db 0e1h ;2035
- db 0e3h ;2036
- db 0e5h ;2037
- db 0e9h ;2038
- db 0f9h ;2039
- db 000h ;203a
+ db 009h
+ db 019h
+ db 021h
+ db 022h
+ db 023h
+ db 029h
+ db 02ah
+ db 02bh
+ db 039h
+ db 0e1h
+ db 0e3h
+ db 0e5h
+ db 0e9h
+ db 0f9h
+ db 000h
disas_pfx.ED:
- inc iy ;203b
- ld hl,b_0x2200_start ;203d
- call sub_209dh ;2040
- ld b,002h ;2043
- ret c ;2045
- ld hl,l2235h ;2046
- call lookup_opc ;2049
- ld b,002h ;204c
- ret c ;204e
- ld hl,l228bh ;204f
- call lookup_opc ;2052
- ld b,003h ;2055
- ret c ;2057
- ld hl,l22b4h ;2058
- call lookup_opc ;205b
- ld b,004h ;205e
- ret ;2060
+ inc iy
+ ld hl,b_0x2200_start
+ call sub_209dh
+ ld b,002h
+ ret c
+ ld hl,l2235h
+ call lookup_opc
+ ld b,002h
+ ret c
+ ld hl,l228bh
+ call lookup_opc
+ ld b,003h
+ ret c
+ ld hl,l22b4h
+ call lookup_opc
+ ld b,004h
+ ret
l2061h:
- push iy ;2061
- inc iy ;2063
- ld a,(is.pfx.IXY) ;2065
- and a ;2068
- jr z,l206dh ;2069
- inc iy ;206b
+ push iy
+ inc iy
+ ld a,(is.pfx.IXY)
+ and a
+ jr z,l206dh
+ inc iy
l206dh:
- ld hl,l22c9h ;206d
- call lookup_opc ;2070
- pop iy ;2073
- ld b,002h ;2075
- ret ;2077
+ ld hl,l22c9h
+ call lookup_opc
+ pop iy
+ ld b,002h
+ ret
l2078h:
- ld hl,b_0x218B_start ;2078
- call lookup_opc ;207b
- ld b,002h ;207e
- ret c ;2080
- ld hl,b_0x20ED_start ;2081
- call sub_209dh ;2084
- ld b,001h ;2087
- ret c ;2089
- ld hl,b_0x2108_start ;208a
- call lookup_opc ;208d
- ld b,001h ;2090
- ret c ;2092
- ld hl,b_0x21D2_start ;2093
- call lookup_opc ;2096
- ret nc ;2099
- ld b,003h ;209a
- ret ;209c
+ ld hl,b_0x218B_start
+ call lookup_opc
+ ld b,002h
+ ret c
+ ld hl,b_0x20ED_start
+ call sub_209dh
+ ld b,001h
+ ret c
+ ld hl,b_0x2108_start
+ call lookup_opc
+ ld b,001h
+ ret c
+ ld hl,b_0x21D2_start
+ call lookup_opc
+ ret nc
+ ld b,003h
+ ret
sub_209dh:
- ld a,(hl) ;209d
- cp 0ffh ;209e
- ret z ;20a0
- comst ;20a1
- cp (iy+000h) ;20a5
+ ld a,(hl)
+ cp 0ffh
+ ret z
+ comst
+ cp (iy+000h)
comend
- jr z,l20aeh ;20a8
- inc hl ;20aa
- inc hl ;20ab
- jr sub_209dh ;20ac
+ jr z,l20aeh
+ inc hl
+ inc hl
+ jr sub_209dh
l20aeh:
- inc hl ;20ae
- ld c,(hl) ;20af
- ld hl,t_MNEMONICS ;20b0
- ld b,000h ;20b3
- add hl,bc ;20b5
- ld de,l230bh ;20b6
- scf ;20b9
- ret ;20ba
+ inc hl
+ ld c,(hl)
+ ld hl,t_MNEMONICS
+ ld b,000h
+ add hl,bc
+ ld de,l230bh
+ scf
+ ret
sub_20bbh:
- ld a,(hl) ;20bb
- and a ;20bc
- ret z ;20bd
- inc hl ;20be
- comst ;20bf
- cp (iy+000h) ;20c3
+ ld a,(hl)
+ and a
+ ret z
+ inc hl
+ comst
+ cp (iy+000h)
comend
- jr nz,sub_20bbh ;20c6
- scf ;20c8
- ret ;20c9
+ jr nz,sub_20bbh
+ scf
+ ret
lookup_opc:
- comst ;20ca
- ld a,(iy+000h) ;20ce
+ comst
+ ld a,(iy+000h)
comend
- and (hl) ;20d1
- inc hl ;20d2
- cp (hl) ;20d3
- jr z,l20dfh ;20d4
- inc hl ;20d6
- inc hl ;20d7
- inc hl ;20d8
- inc hl ;20d9
- ld a,(hl) ;20da
- and a ;20db
- jr nz,lookup_opc ;20dc
- ret ;20de
+ and (hl)
+ inc hl
+ cp (hl)
+ jr z,l20dfh
+ inc hl
+ inc hl
+ inc hl
+ inc hl
+ ld a,(hl)
+ and a
+ jr nz,lookup_opc
+ ret
l20dfh:
- inc hl ;20df
- ld c,(hl) ;20e0
- inc hl ;20e1
- ld e,(hl) ;20e2
- inc hl ;20e3
- ld d,(hl) ;20e4
- ld hl,t_MNEMONICS ;20e5
- ld b,000h ;20e8
- add hl,bc ;20ea
- scf ;20eb
- ret ;20ec
+ inc hl
+ ld c,(hl)
+ inc hl
+ ld e,(hl)
+ inc hl
+ ld d,(hl)
+ ld hl,t_MNEMONICS
+ ld b,000h
+ add hl,bc
+ scf
+ ret
b_0x20ED_start: ; 1 byte opcodes (no parameters)
db 076h ;20ed halt
- db 039h ;20ee
+ db 039h ;20ee
db 0d9h ;20ef exx
- db 036h ;20f0
+ db 036h
db 0f3h ;20f1 di
- db 02ch ;20f2
+ db 02ch
db 0fbh ;20f3 ei
- db 032h ;20f4
+ db 032h
db 000h ;20f5 nop
- db 069h ;20f6
+ db 069h
db 007h ;20f7 rlca
- db 09eh ;20f8
+ db 09eh
db 00fh ;20f9 rrca
- db 0adh ;20fa
+ db 0adh
db 017h ;20fb rla
- db 098h ;20fc
+ db 098h
db 01fh ;20fd rra
- db 0a7h ;20fe
+ db 0a7h
db 027h ;20ff daa
- db 026h ;2100
+ db 026h
db 02fh ;2101 cpl
- db 023h ;2102
+ db 023h
db 037h ;2103 scf
- db 0bah ;2104
+ db 0bah
db 03fh ;2105 ccf
- db 010h ;2106
+ db 010h
db 0ffh ;2107 EOT
b_0x2108_start: ; 1 byte opcodes
defb 0c0h ;2108 ld r,r
- defb 040h ;2109
- defb 056h ;210a
- defw l22fch ;210b
+ defb 040h
+ defb 056h
+ defw l22fch
defb 0f8h ;210d add a,r
- defb 080h ;210e
- defb 003h ;210f
- defw l2305h ;2110
+ defb 080h
+ defb 003h
+ defw l2305h
defb 0f8h ;2112 adc a,r
- defb 088h ;2113
- defb 000h ;2114
- defw l2305h ;2115
-
- defb 0f8h ;2117
- defb 090h ;2118
- defb 0c9h ;2119
- defw l24ebh ;211a
-
- defb 0f8h ;211c
- defb 098h ;211d
- defb 0b7h ;211e
- defw l2305h ;211f
-
- defb 0f8h ;2121
- defb 0a0h ;2122
- defb 006h ;2123
- defw l24ebh ;2124
-
- defb 0f8h ;2126
- defb 0a8h ;2127
- defb 0cch ;2128
- defw l24ebh ;2129
-
- defb 0f8h ;212b
- defb 0b0h ;212c
- defb 06ch ;212d
- defw l24ebh ;212e
-
- defb 0f8h ;2130
- defb 0b8h ;2131
- defb 013h ;2132
- defw l24ebh ;2133
-
- defb 0c7h ;2135
+ defb 088h
+ defb 000h
+ defw l2305h
+
+ defb 0f8h
+ defb 090h
+ defb 0c9h
+ defw l24ebh
+
+ defb 0f8h
+ defb 098h
+ defb 0b7h
+ defw l2305h
+
+ defb 0f8h
+ defb 0a0h
+ defb 006h
+ defw l24ebh
+
+ defb 0f8h
+ defb 0a8h
+ defb 0cch
+ defw l24ebh
+
+ defb 0f8h
+ defb 0b0h
+ defb 06ch
+ defw l24ebh
+
+ defb 0f8h
+ defb 0b8h
+ defb 013h
+ defw l24ebh
+
+ defb 0c7h
defb 0c0h ;2136 ret cc
- defb 08bh ;2137
- defw l2561h ;2138
+ defb 08bh
+ defw l2561h
defb 0c7h ;213a rst
- defb 0c7h ;213b
- defb 0b4h ;213c
- defw l231eh ;213d
+ defb 0c7h
+ defb 0b4h
+ defw l231eh
defb 0ffh ;213f ret
- defb 0c9h ;2140
- defb 08bh ;2141
- defw l230bh ;2142
+ defb 0c9h
+ defb 08bh
+ defw l230bh
defb 0cfh ;2144 pop rr
- defb 0c1h ;2145
- defb 081h ;2146
- defw l2546h ;2147
+ defb 0c1h
+ defb 081h
+ defw l2546h
defb 0cfh ;2149 push rr
- defb 0c5h ;214a
- defb 084h ;214b
- defw l2546h ;214c
+ defb 0c5h
+ defb 084h
+ defw l2546h
defb 0ffh ;214e ex (sp),hl
- defb 0e3h ;214f
- defb 034h ;2150
- defw l232ah ;2151
+ defb 0e3h
+ defb 034h
+ defw l232ah
defb 0ffh ;2153 jp (hl)
- defb 0e9h ;2154
- defb 052h ;2155
- defw l2338h ;2156
+ defb 0e9h
+ defb 052h
+ defw l2338h
defb 0ffh ;2158 ex de,hl
- defb 0ebh ;2159
- defb 034h ;215a
- defw l2345h ;215b
+ defb 0ebh
+ defb 034h
+ defw l2345h
defb 0ffh ;215d ld sp,hl
- defb 0f9h ;215e
- defb 056h ;215f
- defw l234bh ;2160
+ defb 0f9h
+ defb 056h
+ defw l234bh
defb 0cfh ;2162 inc rr
- defb 003h ;2163
- defb 041h ;2164
- defw l254bh ;2165
+ defb 003h
+ defb 041h
+ defw l254bh
defb 0cfh ;2167 dec rr
- defb 00bh ;2168
- defb 029h ;2169
- defw l254bh ;216a
+ defb 00bh
+ defb 029h
+ defw l254bh
defb 0c7h ;216c inc r
- defb 004h ;216d
- defb 041h ;216e
- defw l24dfh ;216f
+ defb 004h
+ defb 041h
+ defw l24dfh
defb 0c7h ;2171 dec r
- defb 005h ;2172
- defb 029h ;2173
- defw l24dfh ;2174
+ defb 005h
+ defb 029h
+ defw l24dfh
defb 0ffh ;2176 ex af,af'
- defb 008h ;2177
- defb 034h ;2178
- defw l2357h ;2179
+ defb 008h
+ defb 034h
+ defw l2357h
defb 0cfh ;217b add hl,rr
- defb 009h ;217c
- defb 003h ;217d
- defw l235dh ;217e
+ defb 009h
+ defb 003h
+ defw l235dh
defb 0efh ;2180 ld (rr),a ;rr=bc,de
- defb 002h ;2181
- defb 056h ;2182
- defw l2366h ;2183
+ defb 002h
+ defb 056h
+ defw l2366h
defb 0efh ;2185 ld a,(rr) ;rr=bc,de
- defb 00ah ;2186
- defb 056h ;2187
- defw l236fh ;2188
+ defb 00ah
+ defb 056h
+ defw l236fh
defb 000h ;218a EOT
b_0x218B_start: ; 2 byte opdodes
defb 0c7h ;218b ld r,nn
- defb 006h ;218c
- defb 056h ;218d
- defw l2384h ;218e
+ defb 006h
+ defb 056h
+ defw l2384h
defb 0ffh ;2190 add a,nn
- defb 0c6h ;2191
- defb 003h ;2192
- defw l237fh ;2193
+ defb 0c6h
+ defb 003h
+ defw l237fh
defb 0ffh ;2195 adc a,nn
- defb 0ceh ;2196
- defb 000h ;2197
- defw l237fh ;2198
+ defb 0ceh
+ defb 000h
+ defw l237fh
defb 0ffh ;219a sub a,nn
- defb 0d6h ;219b
- defb 0c9h ;219c
- defw l2397h ;219d
+ defb 0d6h
+ defb 0c9h
+ defw l2397h
- defb 0ffh ;219f
- defb 0deh ;21a0
- defb 0b7h ;21a1
- defw l237fh ;21a2
+ defb 0ffh
+ defb 0deh
+ defb 0b7h
+ defw l237fh
defb 0ffh ;21a4 and a,nn
- defb 0e6h ;21a5
- defb 006h ;21a6
- defw l2397h ;21a7
+ defb 0e6h
+ defb 006h
+ defw l2397h
- defb 0ffh ;21a9
- defb 0eeh ;21aa
- defb 0cch ;21ab
- defw l2397h ;21ac
+ defb 0ffh
+ defb 0eeh
+ defb 0cch
+ defw l2397h
- defb 0ffh ;21ae
- defb 0f6h ;21af
- defb 06ch ;21b0
- defw l2397h ;21b1
+ defb 0ffh
+ defb 0f6h
+ defb 06ch
+ defw l2397h
defb 0ffh ;21b3 cp a,nn
- defb 0feh ;21b4
- defb 013h ;21b5
- defw l2397h ;21b6
+ defb 0feh
+ defb 013h
+ defw l2397h
defb 0ffh ;21b8 djnz
- defb 010h ;21b9
- defb 02eh ;21ba
- defw l23b0h ;21bb
+ defb 010h
+ defb 02eh
+ defw l23b0h
defb 0ffh ;21bd jr
- defb 018h ;21be
- defb 054h ;21bf
- defw l23b0h ;21c0
+ defb 018h
+ defb 054h
+ defw l23b0h
defb 0e7h ;21c2 jr,cc
- defb 020h ;21c3
- defb 054h ;21c4
- defw l23a1h ;21c5
+ defb 020h
+ defb 054h
+ defw l23a1h
- defb 0ffh ;21c7
+ defb 0ffh
defb 0d3h ;21c8 out (nn),a
- defb 076h ;21c9
- defw l23d5h ;21ca
+ defb 076h
+ defw l23d5h
defb 0ffh ;21cc in a,(nn)
- defb 0dbh ;21cd
- defb 03fh ;21ce
- defw l23c3h ;21cf
+ defb 0dbh
+ defb 03fh
+ defw l23c3h
defb 000h ;21d1 EOT
b_0x21D2_start: ; 3 byte opcodes
- defb 0c7h ;21d2
- defb 0c2h ;21d3
- defb 052h ;21d4
- defw l23e0h ;21d5
-
- defb 0c7h ;21d7
- defb 0c4h ;21d8
- defb 00ch ;21d9
- defw l23e0h ;21da
-
- defb 0cfh ;21dc
- defb 001h ;21dd
- defb 056h ;21de
- defw l23fch ;21df
-
- defb 0ffh ;21e1
- defb 0c3h ;21e2
- defb 052h ;21e3
- defw l23e6h ;21e4
-
- defb 0ffh ;21e6
- defb 0cdh ;21e7
- defb 00ch ;21e8
- defw l23e6h ;21e9
-
- defb 0ffh ;21eb
- defb 022h ;21ec
- defb 056h ;21ed
- defw l2404h ;21ee
-
- defb 0ffh ;21f0
- defb 02ah ;21f1
- defb 056h ;21f2
- defw l240dh ;21f3
-
- defb 0ffh ;21f5
- defb 032h ;21f6
- defb 056h ;21f7
- defw l2416h ;21f8
-
- defb 0ffh ;21fa
- defb 03ah ;21fb
- defb 056h ;21fc
- defw l2421h ;21fd
-
- defb 000h ;21ff
+ defb 0c7h
+ defb 0c2h
+ defb 052h
+ defw l23e0h
+
+ defb 0c7h
+ defb 0c4h
+ defb 00ch
+ defw l23e0h
+
+ defb 0cfh
+ defb 001h
+ defb 056h
+ defw l23fch
+
+ defb 0ffh
+ defb 0c3h
+ defb 052h
+ defw l23e6h
+
+ defb 0ffh
+ defb 0cdh
+ defb 00ch
+ defw l23e6h
+
+ defb 0ffh
+ defb 022h
+ defb 056h
+ defw l2404h
+
+ defb 0ffh
+ defb 02ah
+ defb 056h
+ defw l240dh
+
+ defb 0ffh
+ defb 032h
+ defb 056h
+ defw l2416h
+
+ defb 0ffh
+ defb 03ah
+ defb 056h
+ defw l2421h
+
+ defb 000h
b_0x2200_start: ; prefix ED + 1 byte opcode
defb 044h ;2200 neg
- defb 066h ;2201
+ defb 066h
defb 045h ;2202 retn
- defb 092h ;2203
+ defb 092h
defb 04dh ;2204 reti
- defb 08eh ;2205
+ defb 08eh
defb 067h ;2206 rrd
- defb 0b1h ;2207
+ defb 0b1h
defb 06fh ;2208 rld
- defb 0a2h ;2209
+ defb 0a2h
defb 0a0h ;220a ldi
- defb 05fh ;220b
- defb 0a1h ;220c
- defb 01ch ;220d
- defb 0a2h ;220e
- defb 04bh ;220f
- defb 0a3h ;2210
- defb 07dh ;2211
+ defb 05fh
+ defb 0a1h
+ defb 01ch
+ defb 0a2h
+ defb 04bh
+ defb 0a3h
+ defb 07dh
defb 0a8h ;2212 ldd
- defb 058h ;2213
- defb 0a9h ;2214
- defb 015h ;2215
- defb 0aah ;2216
- defb 044h ;2217
- defb 0abh ;2218
- defb 079h ;2219
+ defb 058h
+ defb 0a9h
+ defb 015h
+ defb 0aah
+ defb 044h
+ defb 0abh
+ defb 079h
defb 0b0h ;221a ldir
- defb 062h ;221b
- defb 0b1h ;221c
- defb 01fh ;221d
- defb 0b2h ;221e
- defb 04eh ;221f
- defb 0b3h ;2220
- defb 072h ;2221
+ defb 062h
+ defb 0b1h
+ defb 01fh
+ defb 0b2h
+ defb 04eh
+ defb 0b3h
+ defb 072h
defb 0b8h ;2222 lddr
- defb 05bh ;2223
- defb 0b9h ;2224
- defb 018h ;2225
- defb 0bah ;2226
- defb 047h ;2227
- defb 0bbh ;2228
- defb 06eh ;2229
+ defb 05bh
+ defb 0b9h
+ defb 018h
+ defb 0bah
+ defb 047h
+ defb 0bbh
+ defb 06eh
defb 08bh ;222a otdm
- defb 0d5h ;222b
+ defb 0d5h
defb 09bh ;222c otdmr
- defb 0d9h ;222d
+ defb 0d9h
defb 083h ;222e otim
- defb 0deh ;222f
+ defb 0deh
defb 093h ;2230 otimr
- defb 0e2h ;2231
+ defb 0e2h
defb 076h ;2232 slp
- defb 0ebh ;2233
+ defb 0ebh
defb 0ffh ;2234 EOT
-
+
l2235h:
defb 0e7h ;2235 in r,(c) ;r=bcde
- defb 040h ;2236
- defb 03fh ;2237
- defw l2455h ;2238
+ defb 040h
+ defb 03fh
+ defw l2455h
defb 0f7h ;223a in r,(c) ;r=hl
- defb 060h ;223b
- defb 03fh ;223c
- defw l2455h ;223d
+ defb 060h
+ defb 03fh
+ defw l2455h
defb 0ffh ;223f in r,(c) ;r=a
- defb 078h ;2240
- defb 03fh ;2241
- defw l2455h ;2242
+ defb 078h
+ defb 03fh
+ defw l2455h
- defb 0e7h ;2244
- defb 041h ;2245
- defb 076h ;2246
- defw l2461h ;2247
+ defb 0e7h
+ defb 041h
+ defb 076h
+ defw l2461h
- defb 0f7h ;2249
- defb 061h ;224a
- defb 076h ;224b
- defw l2461h ;224c
+ defb 0f7h
+ defb 061h
+ defb 076h
+ defw l2461h
defb 0ffh ;224e out (c),r ;r=a
- defb 079h ;224f
- defb 076h ;2250
- defw l2461h ;2251
+ defb 079h
+ defb 076h
+ defw l2461h
defb 0cfh ;2253 sbc hl,rr
- defb 042h ;2254
- defb 0b7h ;2255
- defw l246dh ;2256
+ defb 042h
+ defb 0b7h
+ defw l246dh
defb 0cfh ;2258 adc hl,rr
- defb 04ah ;2259
- defb 000h ;225a
- defw l246dh ;225b
+ defb 04ah
+ defb 000h
+ defw l246dh
defb 0ffh ;225d im 0
- defb 046h ;225e
- defb 03dh ;225f
- defw l2427h ;2260
+ defb 046h
+ defb 03dh
+ defw l2427h
defb 0ffh ;2262 im 1
- defb 056h ;2263
- defb 03dh ;2264
- defw l242bh ;2265
+ defb 056h
+ defb 03dh
+ defw l242bh
defb 0ffh ;2267 im 2
- defb 05eh ;2268
- defb 03dh ;2269
- defw l242fh ;226a
+ defb 05eh
+ defb 03dh
+ defw l242fh
defb 0ffh ;226c ld i,a
- defb 047h ;226d
- defb 056h ;226e
- defw l2434h ;226f
+ defb 047h
+ defb 056h
+ defw l2434h
- defb 0ffh ;2271
- defb 057h ;2272
- defb 056h ;2273
- defw l2439h ;2274
+ defb 0ffh
+ defb 057h
+ defb 056h
+ defw l2439h
- defb 0ffh ;2276
- defb 04fh ;2277
- defb 056h ;2278
- defw l243eh ;2279
+ defb 0ffh
+ defb 04fh
+ defb 056h
+ defw l243eh
- defb 0ffh ;227b
- defb 05fh ;227c
- defb 056h ;227d
- defw l2443h ;227e
+ defb 0ffh
+ defb 05fh
+ defb 056h
+ defw l2443h
defb 0cfh ;2280 mlt rr
- defb 04ch ;2281
- defb 0d2h ;2282
- defw l254bh ;2283
+ defb 04ch
+ defb 0d2h
+ defw l254bh
defb 0c7h ;2285 tst r
- defb 004h ;2286
- defb 0eeh ;2287
- defw l24dfh ;2288
+ defb 004h
+ defb 0eeh
+ defw l24dfh
- defb 000h ;228a
+ defb 000h
l228bh:
- defb 0e7h ;228b
- defb 000h ;228c
- defb 0cfh ;228d
+ defb 0e7h
+ defb 000h
+ defb 0cfh
b_0x228E_start:
- defw l230ch ;228e
+ defw l230ch
b_0x2290_start:
- defb 0f7h ;2290
- defb 020h ;2291
- defb 0cfh ;2292
+ defb 0f7h
+ defb 020h
+ defb 0cfh
b_0x2293_start:
- defw l230ch ;2293
+ defw l230ch
b_0x2295_start:
- defb 0ffh ;2295
- defb 038h ;2296
- defb 0cfh ;2297
+ defb 0ffh
+ defb 038h
+ defb 0cfh
b_0x2298_start:
- defw l230ch ;2298
+ defw l230ch
b_0x229A_start:
- defb 0e7h ;229a
- defb 001h ;229b
- defb 0e7h ;229c
+ defb 0e7h
+ defb 001h
+ defb 0e7h
b_0x229D_start:
- defw l2315h ;229d
+ defw l2315h
b_0x229F_start:
- defb 0f7h ;229f
- defb 021h ;22a0
- defb 0e7h ;22a1
+ defb 0f7h
+ defb 021h
+ defb 0e7h
b_0x22A2_start:
- defw l2315h ;22a2
+ defw l2315h
b_0x22A4_start:
- defb 0ffh ;22a4
- defb 039h ;22a5
- defb 0e7h ;22a6
+ defb 0ffh
+ defb 039h
+ defb 0e7h
b_0x22A7_start:
- defw l2315h ;22a7
+ defw l2315h
b_0x22A9_start:
- defb 0ffh ;22a9
- defb 064h ;22aa
- defb 0eeh ;22ab
+ defb 0ffh
+ defb 064h
+ defb 0eeh
b_0x22AC_start:
- defw l2397h ;22ac
+ defw l2397h
b_0x22AE_start:
- defb 0ffh ;22ae
- defb 074h ;22af
- defb 0f1h ;22b0
+ defb 0ffh
+ defb 074h
+ defb 0f1h
b_0x22B1_start:
- defw l2397h ;22b1
+ defw l2397h
b_0x22B3_start:
- defb 000h ;22b3
+ defb 000h
l22b4h:
- defb 0efh ;22b4
- defb 043h ;22b5
- defb 056h ;22b6
+ defb 0efh
+ defb 043h
+ defb 056h
b_0x22B7_start:
- defw l2476h ;22b7
+ defw l2476h
b_0x22B9_start:
- defb 0ffh ;22b9
- defb 073h ;22ba
- defb 056h ;22bb
+ defb 0ffh
+ defb 073h
+ defb 056h
b_0x22BC_start:
- defw l2476h ;22bc
+ defw l2476h
b_0x22BE_start:
- defb 0efh ;22be
- defb 04bh ;22bf
- defb 056h ;22c0
+ defb 0efh
+ defb 04bh
+ defb 056h
b_0x22C1_start:
- defw l247fh ;22c1
+ defw l247fh
b_0x22C3_start:
- defb 0ffh ;22c3
- defb 07bh ;22c4
- defb 056h ;22c5
+ defb 0ffh
+ defb 07bh
+ defb 056h
b_0x22C6_start:
- defw l247fh ;22c6
+ defw l247fh
b_0x22C8_start:
- defb 000h ;22c8
+ defb 000h
l22c9h:
- defb 0f8h ;22c9
- defb 000h ;22ca
- defb 09bh ;22cb
+ defb 0f8h
+ defb 000h
+ defb 09bh
b_0x22CC_start:
- defw l24aeh ;22cc
+ defw l24aeh
b_0x22CE_start:
- defb 0f8h ;22ce
- defb 008h ;22cf
- defb 0aah ;22d0
+ defb 0f8h
+ defb 008h
+ defb 0aah
b_0x22D1_start:
- defw l24aeh ;22d1
+ defw l24aeh
b_0x22D3_start:
- defb 0f8h ;22d3
- defb 010h ;22d4
- defb 096h ;22d5
+ defb 0f8h
+ defb 010h
+ defb 096h
b_0x22D6_start:
- defw l24aeh ;22d6
+ defw l24aeh
b_0x22D8_start:
- defb 0f8h ;22d8
- defb 018h ;22d9
- defb 0a5h ;22da
+ defb 0f8h
+ defb 018h
+ defb 0a5h
b_0x22DB_start:
- defw l24aeh ;22db
+ defw l24aeh
b_0x22DD_start:
- defb 0f8h ;22dd
- defb 020h ;22de
- defb 0c0h ;22df
+ defb 0f8h
+ defb 020h
+ defb 0c0h
b_0x22E0_start:
- defw l24aeh ;22e0
+ defw l24aeh
b_0x22E2_start:
- defb 0f8h ;22e2
- defb 028h ;22e3
- defb 0c3h ;22e4
+ defb 0f8h
+ defb 028h
+ defb 0c3h
b_0x22E5_start:
- defw l24aeh ;22e5
+ defw l24aeh
b_0x22E7_start:
- defb 0f8h ;22e7
- defb 038h ;22e8
- defb 0c6h ;22e9
+ defb 0f8h
+ defb 038h
+ defb 0c6h
b_0x22EA_start:
- defw l24aeh ;22ea
+ defw l24aeh
b_0x22EC_start:
- defb 0c0h ;22ec
- defb 040h ;22ed
- defb 009h ;22ee
+ defb 0c0h
+ defb 040h
+ defb 009h
b_0x22EF_start:
- defw l2487h ;22ef
+ defw l2487h
b_0x22F1_start:
- defb 0c0h ;22f1
- defb 080h ;22f2
- defb 088h ;22f3
+ defb 0c0h
+ defb 080h
+ defb 088h
b_0x22F4_start:
- defw l2487h ;22f4
+ defw l2487h
b_0x22F6_start:
- defb 0c0h ;22f6
- defb 0c0h ;22f7
- defb 0bdh ;22f8
+ defb 0c0h
+ defb 0c0h
+ defb 0bdh
b_0x22F9_start:
- defw l2487h ;22f9
+ defw l2487h
b_0x22FB_start:
- defb 000h ;22fb
+ defb 000h
l22fch:
- call l24dfh ;22fc
- call sub_257ch ;22ff
- jp l24ebh ;2302
+ call l24dfh
+ call sub_257ch
+ jp l24ebh
l2305h:
- call sub_2579h ;2305
- jp l24ebh ;2308
+ call sub_2579h
+ jp l24ebh
l230bh:
- ret ;230b
+ ret
l230ch:
- call l24dfh ;230c
- call sub_257ch ;230f
- jp l23c6h ;2312
+ call l24dfh
+ call sub_257ch
+ jp l23c6h
l2315h:
- call l23c6h ;2315
- call sub_257ch ;2318
- jp l24dfh ;231b
+ call l23c6h
+ call sub_257ch
+ jp l24dfh
l231eh:
- comst ;231e
- ld a,(iy+000h) ;2322
+ comst
+ ld a,(iy+000h)
comend
- and 038h ;2325
- jp out.hex ;2327
+ and 038h
+ jp out.hex
l232ah:
- ld hl,b_0x2333_start ;232a
- call PSTR ;232d
- jp l253eh ;2330
+ ld hl,b_0x2333_start
+ call PSTR
+ jp l253eh
b_0x2333_start:
DC '(SP),'
l2338h:
- ld a,'(' ;2338
- call OUTCHAR ;233a
- call l253eh ;233d
- ld a,')' ;2340
- jp OUTCHAR ;2342
+ ld a,'('
+ call OUTCHAR
+ call l253eh
+ ld a,')'
+ jp OUTCHAR
l2345h:
- ld hl,l1d86h ;2345
- jp PSTR ;2348
+ ld hl,l1d86h
+ jp PSTR
l234bh:
- ld hl,b_0x2354_start ;234b
- call PSTR ;234e
- jp l253eh ;2351
+ ld hl,b_0x2354_start
+ call PSTR
+ jp l253eh
b_0x2354_start:
DC 'SP,'
l2357h:
- ld hl,b_0x1D80_start ;2357
- jp PSTR ;235a
+ ld hl,b_0x1D80_start
+ jp PSTR
l235dh:
- call l253eh ;235d
- call sub_257ch ;2360
- jp l254bh ;2363
+ call l253eh
+ call sub_257ch
+ jp l254bh
l2366h:
- call sub_2372h ;2366
- call sub_257ch ;2369
- jp l23dbh ;236c
+ call sub_2372h
+ call sub_257ch
+ jp l23dbh
l236fh:
- call sub_2579h ;236f
+ call sub_2579h
sub_2372h:
- ld a,'(' ;2372
- call OUTCHAR ;2374
- call l254bh ;2377
- ld a,')' ;237a
- jp OUTCHAR ;237c
+ ld a,'('
+ call OUTCHAR
+ call l254bh
+ ld a,')'
+ jp OUTCHAR
l237fh:
- call sub_2579h ;237f
- jr l2397h ;2382
+ call sub_2579h
+ jr l2397h
l2384h:
- call l24dfh ;2384
- call sub_257ch ;2387
- ld a,(is.pfx.IXY) ;238a
- and a ;238d
- comst ;238e
- ld a,(iy+002h) ;2392
+ call l24dfh
+ call sub_257ch
+ ld a,(is.pfx.IXY)
+ and a
+ comst
+ ld a,(iy+002h)
comend
- jr nz,l239eh ;2395
+ jr nz,l239eh
l2397h:
- comst ;2397
- ld a,(iy+001h) ;239b
+ comst
+ ld a,(iy+001h)
comend
l239eh:
- jp out.hex ;239e
+ jp out.hex
l23a1h:
- comst ;23a1
- ld a,(iy+000h) ;23a5
+ comst
+ ld a,(iy+000h)
comend
- and 018h ;23a8
- call sub_2568h ;23aa
- call sub_257ch ;23ad
+ and 018h
+ call sub_2568h
+ call sub_257ch
l23b0h:
- comst ;23b0
- ld c,(iy+001h) ;23b4
+ comst
+ ld c,(iy+001h)
comend
- ld a,c ;23b7
- rla ;23b8
- sbc a,a ;23b9
- ld b,a ;23ba
- push iy ;23bb
- pop hl ;23bd
- add hl,bc ;23be
- inc hl ;23bf
- inc hl ;23c0
- jr l23f0h ;23c1
+ ld a,c
+ rla
+ sbc a,a
+ ld b,a
+ push iy
+ pop hl
+ add hl,bc
+ inc hl
+ inc hl
+ jr l23f0h
l23c3h:
- call sub_2579h ;23c3
+ call sub_2579h
l23c6h:
- ld a,028h ;23c6
- call OUTCHAR ;23c8
- comst ;23cb
- ld a,(iy+001h) ;23cf
+ ld a,028h
+ call OUTCHAR
+ comst
+ ld a,(iy+001h)
comend
- jp l252bh ;23d2
+ jp l252bh
l23d5h:
- call l23c6h ;23d5
- call sub_257ch ;23d8
+ call l23c6h
+ call sub_257ch
l23dbh:
- ld a,041h ;23db
- jp OUTCHAR ;23dd
+ ld a,041h
+ jp OUTCHAR
l23e0h:
- call l2561h ;23e0
- call sub_257ch ;23e3
+ call l2561h
+ call sub_257ch
l23e6h:
- comst ;23e6
- ld l,(iy+001h) ;23ea
- ld h,(iy+002h) ;23ed
+ comst
+ ld l,(iy+001h)
+ ld h,(iy+002h)
comend
l23f0h:
- ld a,002h ;23f0
+ ld a,002h
sub_23f2h:
- ld (XBE03),a ;23f2
- ld (XBE01),hl ;23f5
- call out.hl ;23f8
- ret ;23fb
+ ld (XBE03),a
+ ld (XBE01),hl
+ call out.hl
+ ret
l23fch:
- call l254bh ;23fc
- call sub_257ch ;23ff
- jr l23e6h ;2402
+ call l254bh
+ call sub_257ch
+ jr l23e6h
l2404h:
- call sub_24c6h ;2404
- call sub_257ch ;2407
- jp l253eh ;240a
+ call sub_24c6h
+ call sub_257ch
+ jp l253eh
l240dh:
- call l253eh ;240d
- call sub_257ch ;2410
- jp sub_24c6h ;2413
+ call l253eh
+ call sub_257ch
+ jp sub_24c6h
l2416h:
- call sub_24c6h ;2416
- call sub_257ch ;2419
- ld a,041h ;241c
- jp OUTCHAR ;241e
+ call sub_24c6h
+ call sub_257ch
+ ld a,041h
+ jp OUTCHAR
l2421h:
- call sub_2579h ;2421
- jp sub_24c6h ;2424
+ call sub_2579h
+ jp sub_24c6h
l2427h:
- ld a,030h ;2427
- jr l2431h ;2429
+ ld a,030h
+ jr l2431h
l242bh:
- ld a,031h ;242b
- jr l2431h ;242d
+ ld a,031h
+ jr l2431h
l242fh:
- ld a,032h ;242f
+ ld a,032h
l2431h:
- jp OUTCHAR ;2431
+ jp OUTCHAR
l2434h:
- ld hl,b_0x2449_start ;2434
- jr l2446h ;2437
+ ld hl,b_0x2449_start
+ jr l2446h
l2439h:
- ld hl,l244ch ;2439
- jr l2446h ;243c
+ ld hl,l244ch
+ jr l2446h
l243eh:
- ld hl,l244fh ;243e
- jr l2446h ;2441
+ ld hl,l244fh
+ jr l2446h
l2443h:
- ld hl,l2452h ;2443
+ ld hl,l2452h
l2446h:
- jp PSTR ;2446
+ jp PSTR
b_0x2449_start:
DC 'I,A'
@@ -5420,124 +5420,124 @@ l2452h:
DC 'A,R'
l2455h:
- call l24dfh ;2455
- call sub_257ch ;2458
- ld hl,t__C_ ;245b
- jp PSTR ;245e
+ call l24dfh
+ call sub_257ch
+ ld hl,t__C_
+ jp PSTR
l2461h:
- ld hl,t__C_ ;2461
- call PSTR ;2464
- call sub_257ch ;2467
- jp l24dfh ;246a
+ ld hl,t__C_
+ call PSTR
+ call sub_257ch
+ jp l24dfh
l246dh:
- call l253eh ;246d
- call sub_257ch ;2470
- jp l254bh ;2473
+ call l253eh
+ call sub_257ch
+ jp l254bh
l2476h:
- call sub_24c6h ;2476
- call sub_257ch ;2479
- jp l254bh ;247c
+ call sub_24c6h
+ call sub_257ch
+ jp l254bh
l247fh:
- call l254bh ;247f
- call sub_257ch ;2482
- jr sub_24c6h ;2485
+ call l254bh
+ call sub_257ch
+ jr sub_24c6h
l2487h:
- ld a,(is.pfx.IXY) ;2487
- and a ;248a
- jr nz,l2496h ;248b
- comst ;248d
- ld a,(iy+001h) ;2491
+ ld a,(is.pfx.IXY)
+ and a
+ jr nz,l2496h
+ comst
+ ld a,(iy+001h)
comend
- jr l249dh ;2494
+ jr l249dh
l2496h:
- comst ;2496
- ld a,(iy+002h) ;249a
+ comst
+ ld a,(iy+002h)
comend
l249dh:
- push af ;249d
- rra ;249e
- rra ;249f
- rra ;24a0
- and 007h ;24a1
- add a,'0' ;24a3
- call OUTCHAR ;24a5
- call sub_257ch ;24a8
- pop af ;24ab
- jr l24f2h ;24ac
+ push af
+ rra
+ rra
+ rra
+ and 007h
+ add a,'0'
+ call OUTCHAR
+ call sub_257ch
+ pop af
+ jr l24f2h
l24aeh:
- ld a,(is.pfx.IXY) ;24ae
- and a ;24b1
- jr nz,l24bdh ;24b2
- comst ;24b4
- ld a,(iy+001h) ;24b8
+ ld a,(is.pfx.IXY)
+ and a
+ jr nz,l24bdh
+ comst
+ ld a,(iy+001h)
comend
- jr l24c4h ;24bb
+ jr l24c4h
l24bdh:
- comst ;24bd
- ld a,(iy+002h) ;24c1
+ comst
+ ld a,(iy+002h)
comend
l24c4h:
- jr l24f2h ;24c4
+ jr l24f2h
sub_24c6h:
- ld a,'(' ;24c6
- call OUTCHAR ;24c8
- comst ;24cb
- ld l,(iy+001h) ;24cf
- ld h,(iy+002h) ;24d2
+ ld a,'('
+ call OUTCHAR
+ comst
+ ld l,(iy+001h)
+ ld h,(iy+002h)
comend
- ld a,001h ;24d5
- call sub_23f2h ;24d7
- ld a,')' ;24da
- jp OUTCHAR ;24dc
+ ld a,001h
+ call sub_23f2h
+ ld a,')'
+ jp OUTCHAR
l24dfh:
- comst ;24df
- ld a,(iy+000h) ;24e3
+ comst
+ ld a,(iy+000h)
comend
- rra ;24e6
- rra ;24e7
- rra ;24e8
- jr l24f2h ;24e9
+ rra
+ rra
+ rra
+ jr l24f2h
l24ebh:
- comst ;24eb
- ld a,(iy+000h) ;24ef
+ comst
+ ld a,(iy+000h)
comend
l24f2h:
- and 007h ;24f2
- cp 006h ;24f4
- jr nz,l2533h ;24f6
- ld a,(is.pfx.IXY) ;24f8
- and a ;24fb
- ld a,006h ;24fc
- jr z,l2533h ;24fe
- ld hl,b_0x2538_start ;2500
- ld a,(is.pfx.IXY) ;2503
- dec a ;2506
- jr z,l250ch ;2507
- ld hl,b_0x253B_start ;2509
+ and 007h
+ cp 006h
+ jr nz,l2533h
+ ld a,(is.pfx.IXY)
+ and a
+ ld a,006h
+ jr z,l2533h
+ ld hl,b_0x2538_start
+ ld a,(is.pfx.IXY)
+ dec a
+ jr z,l250ch
+ ld hl,b_0x253B_start
l250ch:
- call PSTR ;250c
- comst ;250f
- ld a,(iy+001h) ;2513
+ call PSTR
+ comst
+ ld a,(iy+001h)
comend
- and a ;2516
- push af ;2517
- jp m,l2523h ;2518
- ld a,'+' ;251b
- call OUTCHAR ;251d
- pop af ;2520
- jr l252bh ;2521
+ and a
+ push af
+ jp m,l2523h
+ ld a,'+'
+ call OUTCHAR
+ pop af
+ jr l252bh
l2523h:
- ld a,'-' ;2523
- call OUTCHAR ;2525
- pop af ;2528
- neg ;2529
+ ld a,'-'
+ call OUTCHAR
+ pop af
+ neg
l252bh:
- call out.hex ;252b
- ld a,')' ;252e
- jp OUTCHAR ;2530
+ call out.hex
+ ld a,')'
+ jp OUTCHAR
l2533h:
- ld hl,t_BCDEHL_HL_A ;2533
- jr l2572h ;2536
+ ld hl,t_BCDEHL_HL_A
+ jr l2572h
b_0x2538_start:
DC '(IX'
@@ -5545,55 +5545,55 @@ b_0x253B_start:
DC '(IY'
l253eh:
- ld a,(is.pfx.IXY) ;253e
- ld hl,t_HL.IX.IY ;2541
- jr l2572h ;2544
+ ld a,(is.pfx.IXY)
+ ld hl,t_HL.IX.IY
+ jr l2572h
l2546h:
- ld hl,t_BC.DE.HL.AF ;2546
- jr l254eh ;2549
+ ld hl,t_BC.DE.HL.AF
+ jr l254eh
l254bh:
- ld hl,t_BC.DE.HL.SP ;254b
+ ld hl,t_BC.DE.HL.SP
l254eh:
- comst ;254e
- ld a,(iy+000h) ;2552
+ comst
+ ld a,(iy+000h)
comend
- rra ;2555
- rra ;2556
- rra ;2557
- rra ;2558
- and 003h ;2559
- cp 002h ;255b
- jr z,l253eh ;255d
- jr l2572h ;255f
+ rra
+ rra
+ rra
+ rra
+ and 003h
+ cp 002h
+ jr z,l253eh
+ jr l2572h
l2561h:
- comst ;2561
- ld a,(iy+000h) ;2565
+ comst
+ ld a,(iy+000h)
comend
sub_2568h:
- rra ;2568
- rra ;2569
- rra ;256a
- and 007h ;256b
- ld hl,t_tstfl_ZCPS ;256d
- jr l2572h ;2570
+ rra
+ rra
+ rra
+ and 007h
+ ld hl,t_tstfl_ZCPS
+ jr l2572h
l2572h:
- ld b,a ;2572
- call sub_0a48h ;2573
- jp PSTR ;2576
+ ld b,a
+ call sub_0a48h
+ jp PSTR
sub_2579h:
- call l23dbh ;2579
+ call l23dbh
sub_257ch:
- ld a,',' ;257c
- jp OUTCHAR ;257e
+ ld a,','
+ jp OUTCHAR
sub_2581h:
- call PSTR ;2581
+ call PSTR
l2584h:
- call OUTBL ;2584
- inc c ;2587
- ld a,c ;2588
- cp 006h ;2589
- jr nz,l2584h ;258b
- ret ;258d
+ call OUTBL
+ inc c
+ ld a,c
+ cp 006h
+ jr nz,l2584h
+ ret
t_MNEMONICS:
DC 'ADC'
@@ -5674,7 +5674,7 @@ t_MNEMONICS:
DC 'TST'
DC 'TSTIO'
DB 0
-
+
t_BCDEHL_HL_A:
DC 'B'
DC 'C'
@@ -5747,384 +5747,384 @@ t__C_:
DB 0
sub_26e7h:
- ld hl,(REG.PC) ;26e7
- ld a,h ;26ea
- or l ;26eb
- jr z,l2715h ;26ec
- ld iy,(REG.PC) ;26ee
- call sub_1f9eh ;26f2
- jp nc,ERROR ;26f5
- ld c,b ;26f8
- ld b,000h ;26f9
- ld hl,(REG.PC) ;26fb
- add hl,bc ;26fe
- call sub_1117h ;26ff
- ld iy,(REG.PC) ;2702
- ld hl,b_0x2717_start ;2706
- call lookup_opc ;2709
- ccf ;270c
- ret c ;270d
- ex de,hl ;270e
- call CALL.HL ;270f
- call c,sub_1117h ;2712
+ ld hl,(REG.PC)
+ ld a,h
+ or l
+ jr z,l2715h
+ ld iy,(REG.PC)
+ call sub_1f9eh
+ jp nc,ERROR
+ ld c,b
+ ld b,000h
+ ld hl,(REG.PC)
+ add hl,bc
+ call sub_1117h
+ ld iy,(REG.PC)
+ ld hl,b_0x2717_start
+ call lookup_opc
+ ccf
+ ret c
+ ex de,hl
+ call CALL.HL
+ call c,sub_1117h
l2715h:
- scf ;2715
- ret ;2716
+ scf
+ ret
b_0x2717_start:
- db 0ffh ;2717
- db 0ddh ;2718
- db 000h ;2719
+ db 0ffh
+ db 0ddh
+ db 000h
dw x278d
- db 0ffh ;271c
- db 0fdh ;271d
- db 000h ;271e
+ db 0ffh
+ db 0fdh
+ db 000h
dw x2792
- db 0ffh ;2721
- db 0edh ;2722
- db 000h ;2723
+ db 0ffh
+ db 0edh
+ db 000h
dw x27a2
l2726h:
- db 0ffh ;2726
- db 0cdh ;2727
- db 000h ;2728
+ db 0ffh
+ db 0cdh
+ db 000h
dw x275e
- db 0ffh ;272b
- db 0c3h ;272c
- db 000h ;272d
+ db 0ffh
+ db 0c3h
+ db 000h
dw x2769
- db 0ffh ;2730
- db 0e9h ;2731
- db 000h ;2732
+ db 0ffh
+ db 0e9h
+ db 000h
dw x2788
- db 0ffh ;2735
- db 0c9h ;2736
- db 000h ;2737
+ db 0ffh
+ db 0c9h
+ db 000h
dw x27c9
- db 0ffh ;273a
- db 0cfh ;273b
- db 000h ;273c
+ db 0ffh
+ db 0cfh
+ db 000h
dw x280e
- db 0c7h ;273f
- db 0c7h ;2740
- db 000h ;2741
+ db 0c7h
+ db 0c7h
+ db 000h
dw x27ea
- db 0c7h ;2744
- db 0c4h ;2745
- db 000h ;2746
+ db 0c7h
+ db 0c4h
+ db 000h
dw x275e
- db 0f7h ;2749
- db 010h ;274a
- db 000h ;274b
+ db 0f7h
+ db 010h
+ db 000h
dw x2775
- db 0e7h ;274e
- db 020h ;274f
- db 000h ;2750
+ db 0e7h
+ db 020h
+ db 000h
dw x2775
- db 0c7h ;2753
- db 0c2h ;2754
- db 000h ;2755
+ db 0c7h
+ db 0c2h
+ db 000h
dw x2769
- db 0c7h ;2758
- db 0c0h ;2759
- db 000h ;275a
+ db 0c7h
+ db 0c0h
+ db 000h
dw x27b3
- db 000h ;275d
+ db 000h
x275e:
- ld a,(XBFE8) ;275e
- and a ;2761
- jr nz,x2769 ;2762
- ld a,(TCFLG) ;2764
- and a ;2767
- ret nz ;2768
+ ld a,(XBFE8)
+ and a
+ jr nz,x2769
+ ld a,(TCFLG)
+ and a
+ ret nz
x2769:
- comst ;2769
- ld l,(iy+001h) ;276d
- ld h,(iy+002h) ;2770
+ comst
+ ld l,(iy+001h)
+ ld h,(iy+002h)
comend
- scf ;2773
- ret ;2774
+ scf
+ ret
x2775:
- comst ;2775
- ld c,(iy+001h) ;2779
+ comst
+ ld c,(iy+001h)
comend
- ld a,c ;277c
- rla ;277d
- sbc a,a ;277e
- ld b,a ;277f
- ld hl,(REG.PC) ;2780
- add hl,bc ;2783
- inc hl ;2784
- inc hl ;2785
- scf ;2786
- ret ;2787
+ ld a,c
+ rla
+ sbc a,a
+ ld b,a
+ ld hl,(REG.PC)
+ add hl,bc
+ inc hl
+ inc hl
+ scf
+ ret
x2788:
- ld hl,(REG.L) ;2788
- scf ;278b
- ret ;278c
+ ld hl,(REG.L)
+ scf
+ ret
x278d:
- ld hl,(reg.ix) ;278d
- jr l2795h ;2790
+ ld hl,(reg.ix)
+ jr l2795h
x2792:
- ld hl,(reg.iy) ;2792
+ ld hl,(reg.iy)
l2795h:
- comst ;2795
- ld a,(iy+001h) ;2799
+ comst
+ ld a,(iy+001h)
comend
- cp 0e9h ;279c
- scf ;279e
- ret z ;279f
- and a ;27a0
- ret ;27a1
+ cp 0e9h
+ scf
+ ret z
+ and a
+ ret
x27a2:
- comst ;27a2
- ld a,(iy+001h) ;27a6
+ comst
+ ld a,(iy+001h)
comend
- cp 04dh ;27a9
- jr z,x27c9 ;27ab
- cp 045h ;27ad
- jr z,x27c9 ;27af
- and a ;27b1
- ret ;27b2
+ cp 04dh
+ jr z,x27c9
+ cp 045h
+ jr z,x27c9
+ and a
+ ret
x27b3:
- comst ;27b3
- ld a,(iy+000h) ;27b7
+ comst
+ ld a,(iy+000h)
comend
- ld (XBEDD),a ;27ba
- ld hl,(REG.F) ;27bd
- push hl ;27c0
- pop af ;27c1
- call XBEDD ;27c2
- scf ;27c5
- jr c,x27c9 ;27c6
- ret ;27c8
+ ld (XBEDD),a
+ ld hl,(REG.F)
+ push hl
+ pop af
+ call XBEDD
+ scf
+ jr c,x27c9
+ ret
x27c9:
- ld a,(XBFE8) ;27c9
- and a ;27cc
- jr nz,l27dah ;27cd
- ld a,(TCFLG) ;27cf
- and a ;27d2
- jr z,l27dah ;27d3
- call l27dah ;27d5
- pop hl ;27d8
- ret ;27d9
+ ld a,(XBFE8)
+ and a
+ jr nz,l27dah
+ ld a,(TCFLG)
+ and a
+ jr z,l27dah
+ call l27dah
+ pop hl
+ ret
l27dah:
- ld hl,(REG.SP) ;27da
- comst ;27dd
- ld e,(hl) ;27e1
- inc hl ;27e2
- ld d,(hl) ;27e3
+ ld hl,(REG.SP)
+ comst
+ ld e,(hl)
+ inc hl
+ ld d,(hl)
comend
- ex de,hl ;27e4
- call sub_1117h ;27e5
- and a ;27e8
- ret ;27e9
+ ex de,hl
+ call sub_1117h
+ and a
+ ret
x27ea:
- ld a,(ddtrst) ;27ea
- comst ;27ed
- cp (iy+000h) ;27f1
+ ld a,(ddtrst)
+ comst
+ cp (iy+000h)
comend
- ret z ;27f4
- comst ;27f5
- ld a,(iy+000h) ;27f9
+ ret z
+ comst
+ ld a,(iy+000h)
comend
- and 038h ;27fc
- ld l,a ;27fe
- ld h,000h ;27ff
- ld a,(XBFE8) ;2801
- and a ;2804
- jr nz,l280ch ;2805
- ld a,(TCFLG) ;2807
- and a ;280a
- ret nz ;280b
+ and 038h
+ ld l,a
+ ld h,000h
+ ld a,(XBFE8)
+ and a
+ jr nz,l280ch
+ ld a,(TCFLG)
+ and a
+ ret nz
l280ch:
- scf ;280c
- ret ;280d
+ scf
+ ret
x280e:
- and a ;280e
- ret ;280f
+ and a
+ ret
CMD.C:
- ld hl,CMD.C ;2810
- ld a,001h ;2813
- jr l281bh ;2815
+ ld hl,CMD.C
+ ld a,001h
+ jr l281bh
CMD.T:
- xor a ;2817
- ld hl,CMD.T ;2818
+ xor a
+ ld hl,CMD.T
l281bh:
- ld (CMD_RPT),hl ;281b
- ld (TCFLG),a ;281e
- ld a,(de) ;2821
- sub 'N' ;2822
- jr nz,l2827h ;2824
- inc de ;2826
+ ld (CMD_RPT),hl
+ ld (TCFLG),a
+ ld a,(de)
+ sub 'N'
+ jr nz,l2827h
+ inc de
l2827h:
- ld (TCNFLG),a ;2827
- ld a,(de) ;282a
- sub 'J' ;282b
- jr nz,l2830h ;282d
- inc de ;282f
+ ld (TCNFLG),a
+ ld a,(de)
+ sub 'J'
+ jr nz,l2830h
+ inc de
l2830h:
- ld (TRJFLG),a ;2830
- call sub_289fh ;2833
- jr z,l283eh ;2836
- ld hl,1 ;2838
- call get_lastarg_def ;283b
+ ld (TRJFLG),a
+ call sub_289fh
+ jr z,l283eh
+ ld hl,1
+ call get_lastarg_def
l283eh:
- ld (TCCSTR),hl ;283e
- sub a ;2841
- ld (XA747),a ;2842
+ ld (TCCSTR),hl
+ sub a
+ ld (XA747),a
l2845h:
- call sub_26e7h ;2845
- jr l289ch ;2848
+ call sub_26e7h
+ jr l289ch
l284ah:
- call sub_0e68h ;284a
- ld a,(TRJFLG) ;284d
- and a ;2850
- jr nz,l2864h ;2851
- ld iy,(REG.PC) ;2853
- call sub_28c1h ;2857
- jr z,l2864h ;285a
- ld hl,l2726h ;285c
- call lookup_opc ;285f
- jr nc,l2845h ;2862
+ call sub_0e68h
+ ld a,(TRJFLG)
+ and a
+ jr nz,l2864h
+ ld iy,(REG.PC)
+ call sub_28c1h
+ jr z,l2864h
+ ld hl,l2726h
+ call lookup_opc
+ jr nc,l2845h
l2864h:
- ld a,(XBFEA) ;2864
- and a ;2867
- jr z,l2881h ;2868
- ld de,(TCCSTR) ;286a
- call EXPR ;286e
- ld a,h ;2871
- or l ;2872
- add a,0ffh ;2873
- sbc a,a ;2875
- ld hl,XBFEA ;2876
- xor (hl) ;2879
- bit 1,a ;287a
- jr z,l288ch ;287c
+ ld a,(XBFEA)
+ and a
+ jr z,l2881h
+ ld de,(TCCSTR)
+ call EXPR
+ ld a,h
+ or l
+ add a,0ffh
+ sbc a,a
+ ld hl,XBFEA
+ xor (hl)
+ bit 1,a
+ jr z,l288ch
l287eh:
- jp l102eh ;287e
+ jp l102eh
l2881h:
- ld hl,(TCCSTR) ;2881
- dec hl ;2884
- ld (TCCSTR),hl ;2885
- ld a,h ;2888
- or l ;2889
- jr z,l287eh ;288a
+ ld hl,(TCCSTR)
+ dec hl
+ ld (TCCSTR),hl
+ ld a,h
+ or l
+ jr z,l287eh
l288ch:
- call sub_26e7h ;288c
- jr nc,l287eh ;288f
- ld a,(TCNFLG) ;2891
- ld b,a ;2894
- ld a,(XA747) ;2895
- or b ;2898
- ld (XA747),a ;2899
+ call sub_26e7h
+ jr nc,l287eh
+ ld a,(TCNFLG)
+ ld b,a
+ ld a,(XA747)
+ or b
+ ld (XA747),a
l289ch:
- jp l1183h ;289c
+ jp l1183h
sub_289fh:
- call SKIPBL ;289f
- xor a ;28a2
- ld (XBFEA),a ;28a3
- ld a,(de) ;28a6
- cp 'U' ;28a7
- jr z,l28aeh ;28a9
- cp 'W' ;28ab
- ret nz ;28ad
+ call SKIPBL
+ xor a
+ ld (XBFEA),a
+ ld a,(de)
+ cp 'U'
+ jr z,l28aeh
+ cp 'W'
+ ret nz
l28aeh:
- inc de ;28ae
- push af ;28af
- push de ;28b0
- call EXPR ;28b1
- jp c,ERROR ;28b4
- call assert_eol ;28b7
- pop hl ;28ba
- pop af ;28bb
- ld (XBFEA),a ;28bc
- sub a ;28bf
- ret ;28c0
+ inc de
+ push af
+ push de
+ call EXPR
+ jp c,ERROR
+ call assert_eol
+ pop hl
+ pop af
+ ld (XBFEA),a
+ sub a
+ ret
sub_28c1h:
- comst
- ld a,(iy+000h)
+ comst
+ ld a,(iy+000h)
ld b,(iy+0001)
comend
- cp 0edh
- jr z,l28dbh
- and 0dfh
- cp 0ddh
- ret nz
+ cp 0edh
+ jr z,l28dbh
+ and 0dfh
+ cp 0ddh
+ ret nz
ld a,b
- cp 0e9h
- ret
+ cp 0e9h
+ ret
l28dbh:
ld a,b
- and 0f7h
- cp 045h
- ret
+ and 0f7h
+ cp 045h
+ ret
?excom:
- ex (sp),hl ;28e7
- push af ;28e8
- push bc ;28e9
- push de ;28ea
- ld c,(hl) ;28eb
- ld b,000h ;28ec
- inc hl ;28ee
+ ex (sp),hl
+ push af
+ push bc
+ push de
+ ld c,(hl)
+ ld b,000h
+ inc hl
ld a,?lcmax
sub c
- ld de,?exeit ;28ef
+ ld de,?exeit
ldir
ex de,hl
ld (hl),018h
inc hl
ld (hl),a
ex de,hl
- pop de ;28f7
- pop bc ;28f8
- pop af ;28f9
- ex (sp),hl ;28fa
+ pop de
+ pop bc
+ pop af
+ ex (sp),hl
if CPU_Z180
- push hl ;28fb
- ld hl,(ubbr) ;2900
+ push hl
+ ld hl,(ubbr)
else
- push af ;28fb
- ld a,(ubnk) ;2900
+ push af
+ ld a,(ubnk)
endif
if ROMSYS
- push af ;28fc
- ld a,(uromen) ;28fd
+ push af
+ ld a,(uromen)
endif
- jp ?comcod ;2903
-
+ jp ?comcod
+
;------------------------------------------
; ddtram
;------------------------------------------
@@ -6132,7 +6132,7 @@ l28dbh:
vartab:
; dseg
cseg
-ddtram:
+ddtram:
;todo:
; The following 2 params are changeable by user.
; Should these moved to top ram?
@@ -6141,94 +6141,94 @@ ddtrst: rst DRSTNUM ;rst used by ddtz
ddtei: ei ;ints enabled/disabled while ddtz is running
ret ;
offs.pc:
- dw TPA
+ dw TPA
offs.@:
- dw 0
+ dw 0
CMD_ERR:
- dw 0
+ dw 0
CMD_RPT:
- dw DDTZML
+ dw DDTZML
ci.buf:
- db 80
+ db 80
rept 83
db 0
endm
CON.COL:
- db 0
+ db 0
XA747:
- db 0
+ db 0
bp_tab:
- rept BP_CNT
+ rept BP_CNT
db 0,0
dw 0,0,0
endm
BP_SIZE equ 8
sexp1:
- dw sexpbuf
+ dw sexpbuf
sexp2:
- dw sexpbuf
+ dw sexpbuf
sexpbuf:
- rept 128
+ rept 128
db 0
endm
sexpbufe:
msg.Y:
- dc 'Y0'
+ dc 'Y0'
reg.Y:
- rept 10
+ rept 10
dw 0
endm
lst.S:
- dw 0
+ dw 0
lst.IP:
- dw 0
+ dw 0
lst.OP:
- dw 0
+ dw 0
lst.OD:
db 0
lst.Qj:
db 0
lst.D:
- dw 0
+ dw 0
HILOD:
- dw 0
+ dw 0
MAXLOD:
- dw 0
+ dw 0
XB068:
- dw 0
+ dw 0
lst.A:
- dw 0
+ dw 0
XB06C:
- dw 0
+ dw 0
pfx.IXY:
- db 000h
+ db 000h
is.pfx.IXY:
- db 000h
+ db 000h
lst.L:
- dw 0
+ dw 0
XBE01:
- dw 0
+ dw 0
XBE03:
- db 000h
+ db 000h
XBEDD:
ret ;ret cc
- and a
- pop hl
- inc hl
- jp (hl)
+ and a
+ pop hl
+ inc hl
+ jp (hl)
XBFE8:
- db 0
+ db 0
TCFLG:
- db 0
+ db 0
XBFEA:
- db 0
+ db 0
TCCSTR:
- dw 0
+ dw 0
TCNFLG:
- db 0
+ db 0
TRJFLG:
- db 0
+ db 0
wstrtflg:
db 1
@@ -6283,39 +6283,39 @@ reg.sp: dw TOPRAM ; 0fe6ah
$go:
if ROMSYS
out (000h),a ;064c fe6c
- out0 (dcntl),l ;064e
+ out0 (dcntl),l
pop hl
endif
if CPU_Z180
- out0 (cbar),h ;0652
- out0 (bbr),l ;0655
+ out0 (cbar),h
+ out0 (bbr),l
else
ld a,h
call selbnk
endif
- pop af ;0658
- pop hl ;0659
- ld sp,(reg.sp) ;065a
+ pop af
+ pop hl
+ ld sp,(reg.sp)
reg.iff:
- ei ;065e
+ ei
db 0C3h ;jp TPA ;065f feff ($+1): reg.pc
reg.pc:
dw TPA
-
+
bpent:
ld (reg.l),hl ;0662 fe82: bpent:
- pop hl ;0665
- dec hl ;0666
- ld (reg.pc),hl ;0667
- ld (reg.sp),sp ;066a
- ld sp,reg.l ;066e
- push af ;0671
+ pop hl
+ dec hl
+ ld (reg.pc),hl
+ ld (reg.sp),sp
+ ld sp,reg.l
+ push af
if CPU_Z180
- in0 h,(cbar) ;0672
- in0 l,(bbr) ;0675
- ld a,SYS$CBAR ;0679
- out0 (cbar),a ;067b
-;;; TODO: bbr?
+;;; TODO: cbar on trap?
+ in0 h,(cbar)
+ in0 l,(bbr)
+ ld a,SYS$CBAR
+ out0 (cbar),a
else
ld a,(@cbnk)
ld h,a
@@ -6323,40 +6323,40 @@ bpent:
ld l,a
call selbnk
endif
- push hl ;0678
+ push hl
if ROMSYS
- in0 l,(dcntl) ;067e
- ld a,CWAITROM+CWAITIO ;0681
- out0 (dcntl),a ;0683
- ld a,($crom) ;0686
- cp c$rom ;0689
- ld a,ROM_EN ;068b
- out (000h),a ;068d
+ in0 l,(dcntl)
+ ld a,CWAITROM+CWAITIO
+ out0 (dcntl),a
+ ld a,($crom)
+ cp c$rom
+ ld a,ROM_EN
+ out (000h),a
endif
- jp bpddtz ;068f
+ jp bpddtz
?comcod:
if ROMSYS
out (000h),a ;0692 feb2
- pop af ;069a
+ pop af
endif
if CPU_Z180
- out0 (cbar),h ;0694
- out0 (bbr),l ;0697
- pop hl ;069b
+ out0 (cbar),h
+ out0 (bbr),l
+ pop hl
else
call selbnk
pop af
endif
?exeit:
ds ?lcmax+2
- push af ;069f
+ push af
if CPU_Z180
- ld a,SYS$CBAR ;06a0
- out0 (cbar),a ;06a2
+ ld a,SYS$CBAR
+ out0 (cbar),a
;;; TODO: bbr?
else
@@ -6364,12 +6364,12 @@ bpent:
call selbnk
endif
if ROMSYS
- ld a,ROM_EN ;06a5
- out (000h),a ;06a7
+ ld a,ROM_EN
+ out (000h),a
endif
-
- pop af ;06a9
- ret ;06aa
+
+ pop af
+ ret
topcodend:
curph defl $
@@ -6377,4 +6377,3 @@ curph defl $
sysrame:
end
-
diff --git a/z180/init.180 b/z180/init.180
index 16ca852..0bd37c1 100644
--- a/z180/init.180
+++ b/z180/init.180
@@ -12,10 +12,10 @@
global isv_sw
include config.inc
- if CPU_Z180
- include z180reg.inc
- include z180.lib
- endif
+ if CPU_Z180
+ include z180reg.inc
+ include z180.lib
+ endif
@@ -34,39 +34,30 @@ iobyte: db 0
rsti defl 1
rept 7
org 8*rsti + romstart
- jp bpent
-rsti defl rsti+1
+ jp bpent
+rsti defl rsti+1
endm
;----------------------------------------------------------------------
-
+; Config space
+;
+
org romstart+40h
dw 0
db 0
- if ROMSYS
-$crom: defb c$rom ;
- else
- db 0 ;
- endif
+ if ROMSYS
+$crom: defb c$rom ;
+ else
+ db 0 ;
+ endif
INIWAITS defl CWAITIO
- if ROMSYS
+ if ROMSYS
INIWAITS defl INIWAITS+CWAITROM
- endif
-
-hwini0:
- if CPU_Z180
-
- db 3 ;count
- db rcr,CREFSH ;configure DRAM refresh
- db dcntl,INIWAITS ;wait states
- db cbar,SYS$CBAR
- else
- db 0
- endif
+ endif
;----------------------------------------------------------------------
@@ -82,6 +73,18 @@ start:
;----------------------------------------------------------------------
+hwini0:
+ if CPU_Z180
+
+ db 3 ;count
+ db rcr,CREFSH ;configure DRAM refresh
+ db dcntl,INIWAITS ;wait states
+ db cbar,SYS$CBAR
+ else
+ db 0
+ endif
+
+ if CPU_Z180
dmclrt: ;clear ram per dma
db dmct_e-dmclrt-2 ;
db sar0l ;first port
@@ -92,24 +95,26 @@ nullbyte:
db 00h ;dst
dw 0-romend ;count (64k)
dmct_e:
+ endif
+
cstart:
- if CPU_Z180
+ if CPU_Z180
push af
in0 a,(itc) ;Illegal opcode trap?
jp m,??st01
ld a,i ;I register == 0 ?
- jr z,??st02 ; yes, harware reset
+ jr z,hw_reset ; yes, harware reset
??st01:
-; TODO: SYS$CBR
+ ; TODO: SYS$CBR
ld a,(syscbr)
out0 (cbr),a
pop af ;restore registers
jp bpent ;
-??st02:
+hw_reset:
di ;0058
ld a,CREFSH
out0 (rcr),a ; configure DRAM refresh
@@ -120,42 +125,14 @@ cstart:
out0 (ccr),a
; ld a,M_X2CM ;X2 Clock Multiplier
; out0 (cmr),a
- else
+ else
di
xor a
ld (@cbnk),a
- endif
+ endif
-; search warm start mark
+; check warm start mark
- if CPU_Z180
-
- ld ix,mark_55AA ;00b8 ; top of common area
- ld a,SYS$CBAR ;
- out0 (cbar),a ;
- ld a,071h ;00bc
- ex af,af' ;00be ;for cbr = 0x70 downto 0x40
-swsm_l:
- ex af,af' ;00bf
- dec a ;00c0
- cp 03fh ;00c1
- jr z,kstart ;00c3 ; break (mark not found)
- out0 (cbr),a ;00c5
- ex af,af' ;00c8
- ld a,0aah ;00c9
- cp (ix+000h) ;00cb
- jr nz,swsm_l ;00ce
- cp (ix+002h) ;00d0
- jr nz,swsm_l ;00d3
- cpl ;00d5
- cp (ix+001h) ;00d6
- jr nz,swsm_l ;00d9
- cp (ix+003h) ;00db
- jr nz,swsm_l ;00de
- ld sp,$stack ;00e0 mark found, check
- call checkcrc_alv ;00e3
- jp z,wstart ;00e6 check ok,
- else
ld ix,mark_55AA ; top of common area
ld a,0aah ;
cp (ix+000h) ;
@@ -169,92 +146,23 @@ swsm_l:
jr nz,kstart ;
ld sp,$stack ; mark found, check
jp z,wstart ; check ok,
- endif
-;
+
; ram not ok, initialize -- kstart --
kstart:
- if CPU_Z180
-
- if 0
-
- ld a,088h ;00e9 0000-7fff: common 0
- out0 (cbar),a ;00eb 8000-ffff: common 1
- ld ix,08000h ;00f3
- ld a,0 ;00f1 start at 008000 (2. phys. 32k block)
-??f_0:
- out0 (cbr),a ;00f9
-
- ld (ix+0),a ;0103
- cpl
- ld (ix+1),a ;0103
- cpl
- add a,8 ;010a next 'bank'
- cp 078h ;010c stop at 078000
- jr nz,??f_0 ;010e
-
- ld de,8000h ;0114 first block not tested, but mark as ok
- ld a,0 ;00f1 start at 008000 (2. phys. 32k block)
-??cp_0:
- out0 (cbr),a ;011c
- ld c,a
- xor (ix+0)
- ld b,a
- ld a,c
- cpl
- xor (ix+1)
- or b
- jr nz,??cp_1
- scf
-??cp_1:
- rr d
- rr e
- ld a,c
- add a,8
- cp 078h ; stop at 078000
- jr nz,??cp_0
-
- else
-
- ld de,0ffffh
- ld a,070h
+ if CPU_Z180
+ ld a,SYS$CBAR
+ out0 (cbar),a
+ ld a,SYS$CBR
out0 (cbr),a
-
- endif
-
-;
-; ram test found 1 or more error free blocks (32k)
-;
+ endif
-ramok:
- ld a,SYS$CBAR ;01c8
- out0 (cbar),a ;01ca
- ld h,d
- ld l,e
- ld c,070h ;01ce highest block
- ld b,15 ;01d0
-??sr_1:
- add hl,hl
- jr c,alloc ;01d4 highest "error free" block
- ld a,c ;01d6
- sub 008h ;01d7
- ld c,a ;01d9
- djnz ??sr_1 ;01da
-
- slp ;01dc should never be reached
-
-alloc:
- out0 (cbr),c ;01de
- ld a,c
- ld (syscbr),a
- endif
ld sp,$stack ;01e1
; Clear RAM using DMA0
- if CPU_Z180
-
- if 0
+ if CPU_Z180
+ if 0
ld hl,dmclrt ;load DMA registers
call io.ini.m
@@ -267,94 +175,29 @@ alloc:
out0 (dstat),a ;01f9 clear (up to) 64k
djnz ??cl_1 ; end of RAM?
- endif
-
-; Init bank manager
-
- ld hl,banktabsys ;020f
- ld (hl),c ; Common area
- inc hl ;0213
- ld (hl),c ; System work area
- inc hl ;0215 Point to bank 0 entry
- ld b,BANKS ;0216
-l0218h:
- ld (hl),0ffh ;0218 Mark all banks as unassigned
- inc hl ;021a
- djnz l0218h ;021b
-
- ld hl,memalv ;
- ld b,8 ; 8*4k ie. first 32k
-??a_0:
- ld (hl),0e0h ; mark as sys ("rom"/monitor)
- inc hl
- djnz ??a_0
-
- rr d ; shift out bit for block 0
- rr e ;
- ld c,15 ;022c 15*32k remaining blocks
-l022eh:
- ld a,0feh ; 0xfe == block with error(s)
- rr d ;
- rr e
- adc a,0 ; ==> 0xff : block ok
- ld b,32/4 ; 32k == 8 * 4k
-l0236h:
- ld (hl),a ;
- inc hl ;
- djnz l0236h ;
- dec c ;
- jr nz,l022eh ;next 32k block
-
- ld hl,memalv+0ch ;memalv+0ch
- ld a,(banktabsys) ;
- call add_hl_a
- ld b,3 ;
-l024ah:
- ld (hl),0ech ;alloc system ram
- inc hl ;
- djnz l024ah ;
- ld (hl),0efh ;alloc common
- call gencrc_alv
-
- ld hl,0000h ;bank #
- ld bc,0f0fh ; size (?) (4k blocks)
- xor a ;
- call sub_0420h ;alloc mem for bank 0
- ld c,l ;
- or a ;
- call z,sub_04b5h ;
-
- ld hl,0101h ;
- ld bc,0f0fh ;
- xor a ;
- call sub_0420h ;
- ld c,l ;
- or a ;
- call z,sub_04b5h ;
- endif
+ endif
+ endif
ld hl,055AAh ;set warm start mark
- ld (mark_55AA),hl ;
- ld (mark_55AA+2),hl;
+ ld (mark_55AA),hl
+ ld (mark_55AA+2),hl
+
+; -- wstart --
-;
-; (crc ok) -- wstart --
-;
wstart:
call sysram_init ;027f
call ivtab_init
- if CPU_Z180
- call prt0_init
- endif
+ if CPU_Z180
+ call prt0_init
+ endif
call charini
call bufferinit
- iff CPU_Z180
- ld a,0
- call selbnk
- endif
-
+ if CPU_Z80
+ ld a,0
+ call selbnk
+ endif
im 2 ;?030e
ei ;0282
@@ -364,19 +207,18 @@ wstart:
or a ;028a
call nz,?conin ;028d
- if CPU_Z180
- ld a,(banktab) ;
- ld e,a ;
- else
+ if CPU_Z180
+ ld e,0 ;Sys$Bank
+ else
; TODO:
- endif
+ endif
jp ddtz ;0290
- if CPU_Z180
+ if CPU_Z180
; TODO: SYS$CBR
syscbr: db 1
- endif
+ endif
;
;----------------------------------------------------------------------
@@ -436,8 +278,8 @@ bufdat:
inimsg_e:
endif
+
;----------------------------------------------------------------------
-;
extrn msginit,msg.sout
extrn mtx.fifo,mrx.fifo
@@ -445,8 +287,8 @@ endif
bufferinit:
- if CPU_Z180
- call msginit
+ if CPU_Z180
+ call msginit
ld hl,buffers
ld b,buftablen
@@ -462,14 +304,12 @@ bfi_1:
or a
jr nz,bfi_2
-; in0 a,(cbr)
call hw_log2phys
ld (40h+0),hl
ld (40h+2),a
out0 (AVRINT5),a
jr bfi_3
bfi_2:
-; in0 a,(cbr)
call hw_log2phys
ld (bufdat+1),hl
ld (bufdat+3),a
@@ -479,8 +319,10 @@ bfi_3:
pop hl
djnz bfi_1
ret
- else
- call msginit
+
+ else
+
+ call msginit
ld hl,buffers
ld b,buftablen
@@ -517,7 +359,7 @@ bfi_3:
ex de,hl
djnz bfi_1
ret
- endif
+ endif
buffers:
db 0
@@ -560,9 +402,9 @@ ivtab_init:
ld hl,ivtab ;
ld a,h ;
ld i,a ;
- if CPU_Z180
+ if CPU_Z180
out0 (il),l ;
- endif
+ endif
; Let all vectors point to spurious int routines.
@@ -580,7 +422,7 @@ ivt_i1:
;----------------------------------------------------------------------
- if CPU_Z180
+ if CPU_Z180
prt0_init:
ld a,i
ld h,a
@@ -602,7 +444,7 @@ prt0itab:
dw PRT_TC10MS
db M_TIE0+M_TDE0 ;enable timer 0 interrupt and down count.
prt0it_e:
- endif
+ endif
;
@@ -611,7 +453,7 @@ prt0it_e:
io.ini:
push bc
- if CPU_Z180
+ if CPU_Z180
ld b,0 ;high byte port adress
ld a,(hl) ;count
@@ -625,8 +467,8 @@ ioi_1:
inc b ;outi decrements b
dec a
jr nz,ioi_1
-
- else
+ioi_e:
+ else
jr ioi_nxt
ioi_l:
ld c,(hl) ;port address
@@ -637,12 +479,11 @@ ioi_nxt:
inc hl
inc b
djnz ioi_l
- endif
-ioi_e:
+ endif
pop bc
ret
- if CPU_Z180
+ if CPU_Z180
io.ini.m:
push bc
ld b,(hl)
@@ -652,254 +493,30 @@ io.ini.m:
otimr
pop bc
ret
- endif
+ endif
io.ini.l:
;
-;
-;----------------------------------------------------------------------
-;
- if CPU_Z180
-
-; compute crc
-; hl: start adr
-; bc: len
-; bc returns crc val
-
-do_crc16:
- ld de,0FFFFh
-crc1:
- ld a,(hl)
- xor e
- ld e,a
- rrca
- rrca
- rrca
- rrca
- and 0Fh
- xor e
- ld e,a
- rrca
- rrca
- rrca
- push af
- and 1Fh
- xor d
- ld d,a
- pop af
- push af
- rrca
- and 0F0h
- xor d
- ld d,a
- pop af
- and 0E0h
- xor e
- ld e,d
- ld d,a
- cpi
- jp pe,crc1
- or e ;z-flag
- ret
-
-
-gencrc_alv:
- push hl ;03f6
- push de ;03f7
- push bc
- push af ;03f8
- ld hl,banktabsys ;03f9
- ld bc,crc_len ;03fc
- call do_crc16 ;03ff
- ld (hl),e
- inc hl
- ld (hl),d
- pop af ;0406
- pop bc
- pop de ;0407
- pop hl ;0408
- ret ;0409
-
-checkcrc_alv:
- push hl ;040a
- push de
- push bc ;040b
- ld hl,banktabsys ;040d
- ld bc,crc_len+2 ;0410
- call do_crc16 ;0413
- pop bc ;041d
- pop de
- pop hl ;041e
- ret ;041f
;----------------------------------------------------------------------
-
-;
-; alloc
-;
-; h: max bank #
-; l: min bank #
-; b: max size
-; c: min size
-;
-; ret:
-; a: 0 == ok
-; 1 ==
-; 2 == no bank # in requested range
-; ff == crc error
;
+ if CPU_Z180
-sub_0420h:
- call checkcrc_alv ;0420
- jr nz,l049ch ;0424 crc error, tables corrupt
-
- call sub_049dh ;0427 bank # in req. range available?
- jr c,l0499h ;042a
- push ix ;042c
- push iy ;042e
- push de ;0430
- push hl ;0431
- push bc ;0432
- ld c,b ;0433
- ld b,alv_len+1 ;0434
- ld d,0 ;0436
- ld hl,memalv-1 ;0438
- jr l0441h ;043b
-
-; find free blocks
-
-l043dh:
- ld a,(hl) ;043d
- inc a ;043e free blocks are marked 0ffh
- jr z,l0446h ;043f
-l0441h:
- inc hl ;0441
- djnz l043dh ;0442
- jr l0464h ;0444
-l0446h:
- push hl ;0446
- pop ix ;0447 free blocks start here
- ld e,000h ;0449
- jr l0451h ;044b
-l044dh: ; count free blocks
- ld a,(hl) ;044d
- inc a ;044e
- jr nz,l0457h ;044f
-l0451h:
- inc e ;0451
- inc hl ;0452
- djnz l044dh ;0453
- jr l0464h ;0455
-
-; end of free blocks run.
-
-l0457h:
- ld a,d ;0457
- cp e ;0458 nr of blocks >= requested ?
- jr nc,l0441h ;0459
-
- ld d,e ;045b
- push ix ;045c
- pop iy ;045e
- ld a,d ;0460
- cp c ;0461
- jr c,l0441h ;0462
-l0464h:
- pop bc ;0464
- ld a,d ;0465
- cp b ;0466
- jr c,l046ch ;0467
- ld d,b ;0469
- jr l0471h ;046a
-l046ch:
- cp c ;046c
- jr nc,l0471h ;046d
- ld d,000h ;046f
-l0471h:
- ld a,d ;0471
- push iy ;0472
- pop hl ;0474
- ld de,memalv ;0475
- or a ;0478
- sbc hl,de ;0479
- ld b,l ;047b
- ld c,a ;047c
- pop hl ;047d
-l047eh:
- or a ;047e
- jr z,l0489h ;047f
- ld (iy+0),l ;0481
- inc iy ;0484
- dec a ;0486
- jr l047eh ;0487
-l0489h:
- pop de ;0489
- pop iy ;048a
- pop ix ;048c
- call gencrc_alv ;048e
- ld a,c ;0491
- or a ;0492
- ld a,000h ;0493
- ret nz ;0495
- or 001h ;0496
- ret ;0498
-
-l0499h:
- ld a,2 ;0499
-l049ch:
- or a
- ret ;049c
-
-
-; search a free bank number in range
-; h: max #
-; l: min #
-; ret:
-; l: bank number available
-; nc, if found, bank nr. in l
-; cy, if none found
-
-sub_049dh:
- push de ;049d
- push bc ;049e
- ex de,hl ;049f
- dec e ;04a0
-l04a1h:
- inc e ;04a1 test next #
- ld a,d ;04a2
- cp e ;04a3
- jr c,l04b1h ;04a4
- ld a,e ;04a6
- ld hl,memalv ;04a7
- ld bc,alv_len ;04aa
- cpir ;04ad bank# allready allocated?
- jr z,l04a1h ;04af if yes, search for next
-l04b1h:
- ex de,hl ;04b1
- pop bc ;04b2
- pop de ;04b3
- ret ;04b4
-
-
-sub_04b5h:
- ld a,l ;04b5
- cp 012h ;04b6
- ccf ;04b8
- ret c ;04b9
- push hl ;04ba
- ld hl,banktab ;04bb
- call add_hl_a
- ld (hl),b ;04c3
- call gencrc_alv ;04c4
- pop hl ;04c7
- or a ;04c8 clear carry
- ret ;04c9
+; a: Bank number
+;
+; out a: bbr value
+bnk2log:
+ push bc
+ ld b,a
+ ld c,CA
+ mlt bc
+ add a,10h
+ pop bc
+ ret
-;--------------------------------------------------------------
-;
; de: Log. Address
; a: Bank number
;
@@ -907,17 +524,13 @@ sub_04b5h:
bnk2phys:
- push hl
- ld hl,banktab
- call add_hl_a
- ld a,(hl)
- pop hl
+ call bnk2log
; fall thru
;--------------------------------------------------------------
;
; de: Log. Address
-; a: Bank (bbr)
+; a: Bank base (bbr)
;
; OP: ahl = (a<<12) + (d<<8) + e
;
@@ -928,16 +541,32 @@ log2phys:
push bc ;
ld c,a ;
ld b,16 ;
- mlt bc ;bc = a<<4
- ld l,d ;
- ld h,0 ;
- add hl,bc ;bc + d == a<<4 + d
- ld a,h ;
- ld h,l ;
- ld l,e ;
+ mlt bc ; bc = a<<4
+ ld l,d ;4
+ ld h,0 ;6
+ add hl,bc ;7 bc + d == a<<4 + d
+ ld a,h ;4
+ ld h,l ;4
+ ld l,e ;4
pop bc ;
ret ;
+ if 0
+
+log2phys:
+ push bc ;
+ ld b,a ;
+ ld c,16 ;
+ mlt bc ; bc = a<<4
+ ld a,c ;4
+ add a,h ;4
+ ld h,a ;4
+ ld a,b ;4
+ adc a,0 ;6
+ pop bc ;
+ ret ;
+
+ endif
;--------------------------------------------------------------
;
; de: Log. Address
@@ -977,7 +606,7 @@ hlp_e:
pop bc ;
ret ;
- else
+ else
;
;----------------------------------------------------------------------
@@ -992,7 +621,7 @@ b2p_1:
rr h
ret
- endif
+ endif
;--------------------------------------------------------------
;
@@ -1059,7 +688,7 @@ jphl:
; ---------------------------------------------------------
- if CPU_Z180
+ if CPU_Z180
iprt0:
push af
@@ -1082,7 +711,7 @@ iprt_1:
ei
ret
- endif
+ endif
; ---------------------------------------------------------
@@ -1111,7 +740,7 @@ sp.i.1:
; ---------------------------------------------------------
- iff CPU_Z180
+ if CPU_Z80
; Get IFF2
; This routine may not be loaded in page zero
@@ -1175,7 +804,7 @@ selbnk:
; c: bank (0..2)
- if 0
+ if 0
selbnk:
ld a,(@cbnk)
@@ -1210,11 +839,11 @@ selbnk:
ei
ret
- endif
+ endif
;----------------------------------------------------------------------
- if 0
+ if 0
ex af,af'
push af
ex af,af'
@@ -1247,7 +876,7 @@ stbk1:
ex af,af'
stbk2:
- endif
+ endif
global @cbnk
global mm_sio0, mm_sio1
@@ -1259,7 +888,7 @@ mm_sio1:
ds 1
- endif
+ endif
;----------------------------------------------------------------------
@@ -1273,25 +902,6 @@ tim_s: dw 0
;-----------------------------------------------------
- if CPU_Z180
-
- dseg
-
- ds 1
-banktabsys:
- ds 1 ;0c001h
- ds 1 ;0c002h
-banktab:
- ds BANKS ;0c003h
-memalv:
- ds 512/4 ;Number of 4k blocks
-alv_len equ $-memalv
-crc_len equ $-banktabsys
-
-crc_memalv:
- ds 2 ;
-
- endif
cseg
@@ -1299,9 +909,9 @@ crc_memalv:
;ivtab equ 0ffc0h ; 0ffc0h ;int vector table
;.dephase
- ;.phase 0fffch
-mark_55AA equ 0fffch
- ;ds 4 ; 0fffch
+ ;.phase 0fffah
+mark_55AA equ 0 - 2 - 4 ;2 byte for trap stack
+ ;ds 4
;.dephase