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