From 379f2271051d5a95d21875be496e24cea22f65fd Mon Sep 17 00:00:00 2001 From: Kris Sekula Date: Mon, 5 Dec 2022 02:02:17 -0800 Subject: [PATCH] Files used with EPROM Emulator --- WithEMU/check | Bin 0 -> 8316 bytes WithEMU/check.c | 52 + WithEMU/check.exe | Bin 0 -> 114688 bytes WithEMU/compile.sh | 6 + WithEMU/nabu_4k.asm | 3115 +++++++++++++++++++++++++++++++++++ WithEMU/nabu_4k_new.bin | Bin 0 -> 4096 bytes WithEMU/nabu_4k_new.lst | 3118 ++++++++++++++++++++++++++++++++++++ WithEMU/original_rom4k.bin | Bin 0 -> 4096 bytes 8 files changed, 6291 insertions(+) create mode 100644 WithEMU/check create mode 100644 WithEMU/check.c create mode 100644 WithEMU/check.exe create mode 100644 WithEMU/compile.sh create mode 100644 WithEMU/nabu_4k.asm create mode 100644 WithEMU/nabu_4k_new.bin create mode 100644 WithEMU/nabu_4k_new.lst create mode 100644 WithEMU/original_rom4k.bin diff --git a/WithEMU/check b/WithEMU/check new file mode 100644 index 0000000000000000000000000000000000000000..ca88956fc06b4942e8d33e6a4f2515ac0dfc0b38 GIT binary patch literal 8316 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 +#include +#include + +int main(int argc, char *argv[]) { + if( argc == 2 ) { + printf("Patching file %s\n", argv[1]); + } + else { + printf("Filename expected...\n"); + exit(1); + } + + FILE *fp; + uint16_t check=0; + uint16_t index=0; + uint8_t c=0; + uint16_t sz; + + fp=fopen(argv[1],"rb+"); + fseek(fp, 0L, SEEK_END); + sz = ftell(fp); + rewind(fp); + + if(sz < 4097) { + sz = 4096; + } + else { + sz = 8192; + } + + printf("Filesize is %u \n\r",sz); + + if(fp!=NULL) { + printf("starting\n\r"); + for(index=0;index<(sz-2);index++){ + fread(&c, 1,1, fp); + check+=c; + } + printf("Checksum value: %04x\n\r",check); + printf("Index value: %04x\n\r",index); + } + fseek(fp, ftell(fp), SEEK_SET); + c=check&0x00ff; + fwrite(&c, 1, 1, fp); + c=(check>>8); + fwrite(&c, 1, 1, fp); + fclose(fp); + printf("File %s patched\n", argv[1]); +} diff --git a/WithEMU/check.exe b/WithEMU/check.exe new file mode 100644 index 0000000000000000000000000000000000000000..024801e2038ae32001070c546007ad6bfe045c0e GIT binary patch literal 114688 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 literal 0 HcmV?d00001 diff --git a/WithEMU/compile.sh b/WithEMU/compile.sh new file mode 100644 index 0000000..9dba56f --- /dev/null +++ b/WithEMU/compile.sh @@ -0,0 +1,6 @@ +printf "Compiling...." +z80asm --list=nabu_4k_new.lst nabu_4k.asm -o nabu_4k_new.bin +read -p "Press enter to patch checksum" +./check nabu_4k_new.bin +read -p "Press enter to upload" +python3 EPROM_NG_v2.0rc3.py -mem 2732 -spi y -auto n -map y nabu_4k_new.bin /dev/ttyUSB0 diff --git a/WithEMU/nabu_4k.asm b/WithEMU/nabu_4k.asm new file mode 100644 index 0000000..9488e1e --- /dev/null +++ b/WithEMU/nabu_4k.asm @@ -0,0 +1,3115 @@ +; z80dasm 1.1.5 +; command line: z80dasm -l -g 0x0000 -o nabu_4k.asm rom4k.bin + + org 00000h + +l0000h: + ld a,002h + ld (0ffeeh),a + out (000h),a + ld sp,0ffeeh + ld hl,l06c9h + ld b,008h +l000fh: + ld c,0a1h +l0011h: + outi +l0013h: + ld a,b + or 080h + out (0a1h),a + and 07fh + jr nz,l0011h + ld hl,0ffefh + ld de,0fff0h + ld bc,00009h + xor a + ld (hl),a + ldir + call sub_0521h + xor a + call sub_052ah + call sub_052ah + call sub_052ah + call sub_052ah + call sub_052ah + ld a,040h + call sub_052ah + ld a,04eh + call sub_052ah + ld a,004h + call sub_052ah + call 004e3h + call sub_0532h + jp z,l01cah + ld a,03ah + out (000h),a + ld h,00ah + ld c,020h + ld de,0e000h + ld b,001h +l0061h: + call sub_0363h + jr z,l006ah + djnz l006ah + jr l008ch +l006ah: + call sub_064dh + jr z,l0061h + in a,(090h) + cp 031h + jr z,l0082h + cp 03dh + jr nz,l0061h + bit 0,h + jr z,l0061h +l007dh: + dec h + jr z,l0088h + jr l0061h +l0082h: + bit 0,h + jr nz,l0061h + jr l007dh +l0088h: + ld hl,0ffefh + inc (hl) +l008ch: + ld a,(0fff6h) + bit 0,a + jr nz,l0098h + call sub_04d1h + out (000h),a +l0098h: + xor a + ld (0ffffh),a + ld ix,l0ffch+1 + ld de,0ffffh + xor a + ld h,a + ld l,a + ld b,a +l00a7h: + ld c,(ix+000h) + add hl,bc + add ix,de + jr c,l00a7h + ld a,(l0ffeh) + cp l + jr nz,l00bbh + ld a,(l0fffh) + sub h + jr z,l00beh +l00bbh: + call sub_04a6h +l00beh: + call sub_046ah + xor a + out (0a1h),a + ld a,040h + out (0a1h),a + xor a + ld de,l0000h+1 + ld ix,0c000h +l00d0h: + out (0a0h),a + inc a + add ix,de + jr nc,l00d0h + ld ix,0c000h + xor a + ld c,a + ld b,a + ld h,a + ld l,a +l00e0h: + ld a,l + out (0a1h),a + ld a,h + out (0a1h),a + in a,(0a0h) + cp c + jr nz,l0103h + ld a,l + out (0a1h),a + ld a,h + or 040h + out (0a1h),a + ld a,c + cpl + out (0a0h),a + ld a,l + out (0a1h),a + ld a,h + out (0a1h),a + in a,(0a0h) + cpl + cp c + jr z,l0106h +l0103h: + call sub_04a6h +l0106h: + inc c + inc hl + ld de,l0000h+1 + add ix,de + jr nc,l00e0h + call 004e3h + call sub_053eh + call sub_046ah + xor a + ld ix,02000h + ld hl,02100h + ld de,l0000h+1 +l0123h: + ld (ix+000h),a + inc a + inc ix + add hl,de + jr nc,l0123h + xor a + ld c,a + ld hl,02100h + ld ix,02000h + ld b,a +l0136h: + ld a,(ix+000h) + cp c + jr nz,l0147h + cpl + ld (ix+000h),a + ld a,(ix+000h) + cpl + cp c + jr z,l014ah +l0147h: + call sub_04a6h +l014ah: + inc ix + inc c + add hl,de + jr nc,l0136h + call sub_046ah + ld b,010h + ld c,000h +l0157h: + ld a,b + dec a + out (041h),a + ld a,c + out (040h),a + djnz l0157h + ld c,000h +l0162h: + ld b,0ffh +l0164h: + ld a,c + out (041h),a + ld a,b + out (040h),a + in a,(040h) + call sub_017eh + call nz,sub_04a6h + srl b + jr c,l0164h + inc c + ld a,00eh + cp c + jr nz,l0162h + jr l0199h +sub_017eh: + ld hl,l018bh + ld e,c + ld d,000h + add hl,de + and (hl) + ld e,a + ld a,b + and (hl) + cp e + ret +l018bh: + rst 38h + rrca + rst 38h + rrca + rst 38h + rrca + rra + rst 38h + rra + rra + rra + rst 38h + rst 38h + rrca +l0199h: + call sub_046ah + call sub_0521h + ld de,l0000h + ld b,005h +l01a4h: + ld c,020h + call sub_064dh + jr z,l01c1h + in a,(090h) + cp 095h + jr nc,l01c1h + cp 091h + jr c,l01c1h + cp 094h + jr z,l01bch +l01b9h: + call sub_04a6h +l01bch: + call sub_046ah + jr l01cah +l01c1h: + dec de + ld a,d + or e + jr nz,l01a4h + djnz l01a4h + jr l01b9h +l01cah: + in a,(080h) + call sub_0386h + jr z,l01e3h + call sub_04a6h + jr l0206h +l01d6h: + ld a,005h + ld (0fff7h),a + ld (0fffeh),a + call sub_04a6h + jr l01cah +l01e3h: + ld c,082h + call sub_0379h + jr nz,l01d6h + ld a,001h + out (080h),a + call sub_067ah + in a,(080h) + jr nz,l01d6h + ld (0fff8h),a + ld c,010h + call sub_036ch + jr nz,l01d6h + ld c,0e1h + call sub_036ch + jr nz,l01d6h +l0206h: + call sub_0532h + call nz,sub_046ah + ld a,(0ffefh) + or a + jp nz,l008ch + ld a,(0fff6h) + bit 0,a + jr nz,l0221h + ld a,002h + ld (0ffeeh),a + out (000h),a +l0221h: + ld hl,0fff8h + bit 7,(hl) + jr z,l029fh + ld hl,l06d1h + call sub_056bh +l022eh: + ld hl,0fff9h + ld de,002c7h + call sub_057ch + ld hl,0fff9h + xor a + ld c,a + ld b,004h +l023eh: + ld a,(hl) + bit 0,b + jr z,l024ch + sla a + bit 4,a + jr z,l024ch + res 4,a + inc a +l024ch: + add a,c + ld c,a + inc hl + djnz l023eh + and 00fh + cp (hl) + jr z,l0266h + ld hl,007ach + call sub_056bh + ld c,090h + ld de,0e000h + call sub_06a2h + jr l022eh +l0266h: + ld hl,0fff9h + ld b,004h + ld de,l0000h +l026eh: + ld a,(hl) + sla e + rl d + sla e + rl d + sla e + rl d + sla e + rl d + add a,e + ld e,a + inc hl + djnz l026eh + push de + ld c,085h + call sub_0379h + jp nz,l01d6h + pop de + ld a,d + out (080h),a + ld c,040h + call sub_064dh + ld a,e + out (080h),a + call sub_05eeh + jp nz,l01d6h +l029fh: + ld c,081h + call sub_0379h + jp nz,l01d6h + ld a,08fh + out (080h),a +l02abh: + ld c,040h + call sub_064dh + ld a,005h + out (080h),a + call sub_05eeh + jp nz,l01d6h + ld a,005h + ld (0fff8h),a + ld hl,l0000h + ld de,l0000h + ld bc,01000h + ldir + ld a,(0ffeeh) + set 0,a + out (000h),a + ld hl,l072ch + call sub_056bh +l02d7h: + xor a + ld (01000h),a + ld (01001h),a + ld (01003h),a + inc a + ld (01002h),a + ld bc,0100bh + ld (01004h),bc + ld bc,0140dh + ld (01008h),bc + xor a + ld (0140bh),a + ld (0140ch),a + xor a + out (041h),a + out (040h),a + call sub_068ah +l0302h: + call sub_03b0h + jp nz,l01d6h + xor a + out (041h),a + ld a,(01003h) + sla a + sla a + cpl + out (040h),a + ld hl,(01004h) + ld bc,0000bh + add hl,bc + ld a,(hl) + ld (0100ah),a + ld hl,(01006h) + ld bc,0ffeeh + add hl,bc + push hl + pop bc + ld hl,(0140bh) +l032ch: + add hl,bc + ld (0140bh),hl + ld hl,(01004h) + ld de,l000fh+1 + add hl,de + ld de,(01008h) + ldir + ld (01008h),de + ld a,(0100ah) + bit 4,a + jr nz,l034eh + ld hl,01003h + inc (hl) + jr l0302h +l034eh: + ld a,0a5h + ld (0fffeh),a + ld a,05ah + ld (0ffffh),a + ld a,007h + out (041h),a + ld a,07fh + out (040h),a + jp 0140fh +sub_0363h: + dec de + ld a,d + or e + jr z,l036ah + xor a + dec a +l036ah: + inc a + ret +sub_036ch: + push bc + call sub_067ah + pop bc + ret nz + in a,(080h) + sub c + ret z + ld a,002h + ret +sub_0379h: + ld a,c + out (080h),a + ld c,010h + call sub_036ch + ret nz + ld c,006h + jr sub_036ch +sub_0386h: + ld b,004h +l0388h: + ld a,083h + push af + out (080h),a +l038dh: + pop af + ld c,010h + ld hl,l03a4h +l0393h: + push hl + call sub_036ch + cp 002h + jr z,l038dh + cp 000h + ret z + pop af + djnz l0388h + xor a + inc a + ret +l03a4h: + ld c,006h + ld hl,l03abh + jr l0393h +l03abh: + ld c,0e4h + pop hl + jr l0393h +sub_03b0h: + exx + xor a + dec a + ld d,a + ld e,a + exx + ld c,084h + call sub_0379h + ret nz + ld b,004h + ld hl,01003h +l03c1h: + ld c,040h + call sub_064dh + jr z,l03c1h + ld a,(hl) + out (080h),a + dec l + djnz l03c1h + ld c,0e4h + call sub_036ch + ret nz + ld b,018h + ld de,l0000h+1 + ld hl,l0000h +l03dch: + add hl,de + jr nc,l03ebh + djnz l03ebh + ld hl,l06f5h + call sub_056bh + pop bc + jp l02d7h +l03ebh: + ld c,080h + call sub_064dh + jr z,l03dch + in a,(080h) + sub 091h + ret nz + ld a,010h + out (080h),a +l03fbh: + ld c,040h + call sub_064dh + jr z,l03fbh + ld c,080h + call sub_064dh + ld hl,(01004h) + ld bc,l0000h + res 0,e + ld a,006h + out (080h),a +l0413h: + push de + ld de,0ffffh +l0417h: + ld a,00fh + out (041h),a + in a,(040h) + bit 0,a + jr nz,l0428h + call sub_0363h + jr nz,l0465h + jr l0417h +l0428h: + pop de + in a,(080h) + cp 010h + jr nz,l0441h + bit 0,e + jr z,l043dh + res 0,e + ld (hl),a + call sub_065dh + inc hl + inc bc + jr l0413h +l043dh: + set 0,e + jr l0413h +l0441h: + bit 0,e + jr nz,l044dh + ld (hl),a + call sub_065dh + inc hl + inc bc + jr l0413h +l044dh: + ld (01006h),bc + cp 0e1h + jp nz,sub_03b0h + exx + ld a,e + cp 00fh + jp nz,sub_03b0h + ld a,d + cp 01dh + jp nz,sub_03b0h + xor a + ret +l0465h: + pop de + pop de + jp l01d6h +sub_046ah: + ld c,050h + ld hl,0fff6h + bit 1,(hl) + jr z,l0475h + ld c,090h +l0475h: + ld de,0cc00h + call sub_06a2h + res 1,(hl) + ld hl,08000h + ld de,l0000h+1 +l0483h: + add hl,de + jr nc,l0483h + ld a,(0fff7h) + ld c,a + sub 005h + jr z,l0490h + add a,006h +l0490h: + ld (0fff7h),a + ld a,(0fff6h) + bit 0,a + jp nz,l05f3h + call sub_04d1h + out (000h),a + ld (0ffeeh),a + jp l05f3h +sub_04a6h: + push af + push de + push hl + ld a,(0fff6h) + bit 0,a + jr nz,l04bah + call sub_04d1h + or 010h + out (000h),a + ld (0ffeeh),a +l04bah: + ld a,003h + ld (0fff6h),a + ld hl,0fff0h + ld d,000h + ld a,(0fff7h) + ld e,a + add hl,de + inc (hl) + jr nz,l04cdh + dec (hl) +l04cdh: + pop hl + pop de + pop af + ret +sub_04d1h: + ld hl,l04ddh + ld a,(0fff7h) + ld e,a + ld d,000h + add hl,de + ld a,(hl) + ret +l04ddh: + ld hl,(02a0ah) + ld a,(bc) + ld (0af02h),hl + out (0a1h),a + ld a,041h + out (0a1h),a + ld c,0a0h + ld d,004h + ld hl,l083ch +l04f1h: + ld b,0ffh + otir + dec d + jr nz,l04f1h + xor a + out (0a1h),a + ld a,048h + out (0a1h),a + ld a,020h + ld hl,0fc40h + ld de,l0000h+1 +l0507h: + out (0a0h),a + add hl,de + jr nc,l0507h + ld b,007h + ld hl,l07d3h + ld de,l000fh +l0514h: + push bc + push hl + push de + call sub_056bh + pop de + pop hl + pop bc + add hl,de + djnz l0514h + ret +sub_0521h: + ld a,007h + out (041h),a + ld a,07fh + out (040h),a + ret +sub_052ah: + out (091h),a + nop + nop + nop + nop + nop + ret +sub_0532h: + ld hl,0fffeh + ld a,(hl) + sub 0a5h + ret nz + inc hl + ld a,(hl) + sub 05ah + ret +sub_053eh: + ld c,005h + push bc +l0541h: + call l05f3h + pop bc + dec c + jp m,l054ch + push bc + jr l0541h +l054ch: + ld a,(0ffefh) + or a + ret z + ld hl,(007d0h) + ld (0fff9h),hl + ld a,(l07d2h) + ld (0fffbh),a + ld de,(l0ffch) + ld (0fffch),de + ld hl,0fff9h + jp sub_056bh +sub_056bh: + ld b,(hl) + inc hl + ld a,(hl) + out (0a1h),a + inc hl + ld a,(hl) + add a,048h + out (0a1h),a + inc hl + ld c,0a0h + otir + ret +sub_057ch: + ld b,005h +l057eh: + in a,(091h) + bit 1,a + jr z,l057eh + in a,(090h) + push af + sub 030h + jr c,l05c2h + cp 00ah + jr c,l05a3h + sub 007h + cp 00ah + jr c,l05c2h + cp 010h + jr c,l05a3h + sub 020h + cp 00ah + jr c,l05c2h + cp 010h + jr nc,l05c2h +l05a3h: + ld c,a + ld a,b + or a + jr nz,l05abh + pop af + jr l057eh +l05abh: + ld a,e + out (0a1h),a + ld a,d + or 048h + out (0a1h),a + pop af + cp 05bh + jr c,l05bah + sub 020h +l05bah: + out (0a0h),a + ld (hl),c + inc hl + inc de + dec b + jr l057eh +l05c2h: + pop af + cp 00dh + jr z,l05cbh + cp 0e7h + jr nz,l05d0h +l05cbh: + ld a,b + or a + jr nz,l057eh + ret +l05d0h: + cp 07fh + jr z,l05d8h + cp 0e1h + jr nz,l057eh +l05d8h: + ld a,b + cp 005h + jr z,l057eh + dec de + dec hl + inc b + ld a,e + out (0a1h),a + ld a,d + or 048h + out (0a1h),a + ld a,020h + out (0a0h),a + jr l057eh +sub_05eeh: + ld c,0e4h + jp sub_036ch +l05f3h: + ld a,(0ffefh) + or a + jr z,l061ch + ld a,002h + ld (0fff9h),a + ld de,00028h + ld b,c + inc b + ld hl,0012bh +l0606h: + add hl,de + djnz l0606h + ld (0fffah),hl + ld hl,0fff0h + add hl,bc + ld de,0fffch + call sub_0633h + ld hl,0fff9h + jp sub_056bh +l061ch: + ld hl,0fff0h + ld b,000h + add hl,bc + ld a,(hl) + or a + ret z + ld hl,l073ah + ld de,l0013h + inc c +l062ch: + dec c + jp z,sub_056bh + add hl,de + jr l062ch +sub_0633h: + ld a,(hl) + srl a + srl a + srl a + srl a + call sub_0643h + inc de + ld a,(hl) + and 00fh +sub_0643h: + add a,030h + cp 03ah + jr c,l064bh + add a,007h +l064bh: + ld (de),a + ret +sub_064dh: + ld a,00eh + out (041h),a + ld a,c + out (040h),a + ld a,00fh + out (041h),a + in a,(040h) + bit 0,a + ret +sub_065dh: + push af + exx + xor d + ld c,a + ld b,000h + sla c + rl b + ld d,e + ld iy,l0b74h + add iy,bc + ld a,(iy+000h) + ld e,a + ld a,(iy+001h) + xor d + ld d,a + exx + pop af + ret +sub_067ah: + ld de,0ffffh +l067dh: + call sub_0363h + ret nz + ld c,080h + call sub_064dh + jr z,l067dh + xor a + ret +sub_068ah: + ld a,007h + out (041h),a + ld a,07eh + out (040h),a + ld a,008h + out (041h),a + ld a,006h + out (040h),a + ld a,001h + out (041h),a + dec a + out (040h),a + ret +sub_06a2h: + push af + push hl + push bc + push de + call sub_068ah + xor a + out (041h),a + ld a,c + out (040h),a + ld hl,l0000h+1 + ld b,004h + ex de,hl +l06b5h: + add hl,de + jr nc,l06b5h + pop hl + push hl + djnz l06b5h + ld a,007h + out (041h),a + ld a,07fh + out (040h),a + pop de + pop bc + pop hl + pop af + ret +l06c9h: + push af + nop + nop + nop + nop + ld (bc),a + ret nc + nop +l06d1h: + ld hl,l02abh + ld d,b + ld c,h + ld b,l + ld b,c + ld d,e + ld b,l + jr nz,l0730h + ld e,c + ld d,b + ld b,l + jr nz,l072ah + ld c,(hl) + jr nz,$+69 + ld c,b + ld b,c + ld c,(hl) + ld c,(hl) + ld b,l + ld c,h + jr nz,$+69 + ld c,a + ld b,h + ld b,l + jr nz,l0711h + jr nz,l0713h + jr nz,$+34 +l06f5h: + inc (hl) + ld hl,05303h + ld b,l + ld b,l + jr nz,$+36 + ld c,c + ld b,(hl) + jr nz,l0754h + ld c,a + ld c,l + ld b,l + ld d,h + ld c,b + ld c,c + ld c,(hl) + ld b,a + jr nz,l0752h + ld c,a + ld b,l + ld d,e + jr nz,$+89 + ld d,d +l0711h: + ld c,a + ld c,(hl) +l0713h: + ld b,a + ld (04920h),hl + ld c,(hl) + jr nz,l073ah + jr nz,l073ch + jr nz,$+34 + jr nz,l0740h + ld c,a + ld d,a + ld c,(hl) + ld b,l + ld d,d + ld d,e + jr nz,$+73 + ld d,l + ld c,c +l072ah: + ld b,h + ld b,l +l072ch: + dec bc + ld hl,05003h +l0730h: + ld c,h + ld b,l + ld b,c + ld d,e + ld b,l + jr nz,l078eh + ld b,c + ld c,c + ld d,h +l073ah: + djnz l0785h +l073ch: + ld bc,04f52h + ld c,l +l0740h: + jr nz,l0788h + ld b,c + ld c,c + ld c,h + ld d,l + ld d,d + ld b,l + jr nz,l076ah + jr nz,l076ch + jr nz,$+18 + ld (hl),c + ld bc,04956h +l0752h: + ld b,h + ld b,l +l0754h: + ld c,a + jr nz,l079dh + ld b,c + ld c,c + ld c,h + ld d,l + ld d,d + ld b,l + jr nz,l077fh + jr nz,$+18 + sbc a,c + ld bc,04152h + ld c,l + jr nz,l07aeh + ld b,c + ld c,c +l076ah: + ld c,h + ld d,l +l076ch: + ld d,d + ld b,l + jr nz,l0790h + jr nz,$+34 + jr nz,$+18 + pop bc + ld bc,04f53h + ld d,l + ld c,(hl) + ld b,h + jr nz,l07c3h + ld b,c + ld c,c +l077fh: + ld c,h + ld d,l + ld d,d + ld b,l + jr nz,l07a5h +l0785h: + jr nz,l0797h + jp (hl) +l0788h: + ld bc,0454bh + ld e,c + ld b,d + ld c,a +l078eh: + ld b,c + ld d,d +l0790h: + ld b,h + jr nz,l07d9h + ld b,c + ld c,c + ld c,h + ld d,l +l0797h: + ld d,d + ld b,l + djnz $+19 + ld (bc),a + ld b,c +l079dh: + ld b,h + ld b,c + ld d,b + ld d,h + ld c,a + ld d,d + jr nz,l07ebh +l07a5h: + ld b,c + ld c,c + ld c,h + ld d,l + ld d,d + ld b,l + jr nz,$+35 + xor e +l07aeh: + ld (bc),a + ld d,d + ld b,l + dec l + ld d,h + ld e,c + ld d,b + ld b,l + jr nz,l07fbh + ld c,b + ld b,c + ld c,(hl) + ld c,(hl) + ld b,l + ld c,h + jr nz,l0803h + ld c,a + ld b,h + ld b,l +l07c3h: + jr nz,l07e5h + jr nz,l07e7h + jr nz,l07e9h + jr nz,l07ebh + jr nz,l07edh + jr nz,l07efh + jr nz,l07d3h + ld e,d +l07d2h: + inc bc +l07d3h: + inc c + dec c + nop + ld e,e + ld e,h + ld e,h +l07d9h: + ld e,h + ld e,h + ld e,h + ld e,h + ld e,h + ld e,h + ld e,h + ld e,h + ld e,l + inc c + dec (hl) + nop +l07e5h: + ld e,(hl) + ld e,(hl) +l07e7h: + ld e,(hl) + ld e,(hl) +l07e9h: + ld e,(hl) + ld e,(hl) +l07ebh: + ld e,(hl) + ld e,(hl) +l07edh: + ld e,(hl) + ld e,(hl) +l07efh: + ld e,(hl) + ld e,(hl) + inc c + ld e,l + nop + ld e,a + ld h,b + ld h,c + ld h,d + ld h,e + ld h,h + ld h,l +l07fbh: + ld h,(hl) + ld h,a + ld l,b + ld l,c + ld l,d + inc c + add a,l + nop +l0803h: + ld l,e + ld l,h + ld l,l + ld l,(hl) + ld l,a + ld (hl),b + ld (hl),c + ld (hl),d + ld (hl),e + ld (hl),h + ld (hl),l + halt + inc c + xor l + nop + ld (hl),a + ld a,b + ld a,c + ld a,d + ld a,e + ld a,h + ld a,l + ld a,(hl) + ld a,a + add a,b + add a,c + add a,d + inc c + push de + nop + add a,e + add a,e + add a,e + add a,e + add a,e + add a,e + add a,e + add a,e + add a,e + add a,e + add a,e + add a,e + inc c + defb 0fdh,000h,084h ;illegal sequence + add a,l + add a,l + add a,l + add a,l + add a,l + add a,l + add a,l + add a,l + add a,l + add a,l + add a,(hl) +l083ch: + nop + nop + nop + nop + nop + nop + nop + nop + djnz l0856h + djnz $+18 + djnz l084ah +l084ah: + djnz l084ch +l084ch: + jr z,l0876h + nop + nop + nop + nop + nop + nop + jr z,l087eh +l0856h: + ld a,h + jr z,$+126 + jr z,l0883h + nop + jr c,$+86 + ld d,b + jr c,$+22 + ld d,h + jr c,l0864h +l0864h: + ld h,b + ld h,h + ex af,af' + djnz l0889h + ld l,h + inc c + nop + djnz l0896h + jr z,l08a0h + ld d,b + ld c,h + ld a,h + nop + jr nc,l08a6h +l0876h: + djnz $+98 + nop + nop + nop + nop + djnz l089eh +l087eh: + ld b,b + ld b,b + ld b,b + jr nz,$+18 +l0883h: + nop + ld b,b + jr nz,$+18 + djnz l0899h +l0889h: + jr nz,$+66 + nop + nop + ld d,h + jr c,l090ch + jr c,l08e6h + djnz l0894h +l0894h: + nop + nop +l0896h: + djnz l08a8h + ld a,h +l0899h: + djnz l08abh + nop + nop + nop +l089eh: + nop + nop +l08a0h: + jr nc,$+50 + djnz l0904h + nop + nop +l08a6h: + nop + nop +l08a8h: + jr c,l08aah +l08aah: + nop +l08abh: + nop + nop + nop + nop + nop + nop + jr $+26 + nop + inc b + inc b + ex af,af' + jr l08e9h + jr nz,l08fbh + nop + jr c,l0902h + ld c,h + ld d,h + ld h,h + ld b,h + jr c,l08c4h +l08c4h: + djnz l08f6h + djnz $+18 + djnz l08dah + jr c,l08cch +l08cch: + jr nc,l0916h + ld c,b + jr l0901h + jr nz,l094bh + nop + jr nc,$+74 + ex af,af' + djnz l08e1h + ld c,b +l08dah: + jr nc,l08dch +l08dch: + djnz l090eh + jr nc,l0930h + ld d,b +l08e1h: + ld a,b + djnz l08e4h +l08e4h: + ld a,b + ld b,b +l08e6h: + ld d,b + ld l,b + ex af,af' +l08e9h: + ld c,b + jr nc,l08ech +l08ech: + jr nc,l0916h + ld b,b + ld (hl),b + ld l,b + ld c,b + jr nc,l08f4h +l08f4h: + ld a,b + ld c,b +l08f6h: + ex af,af' + djnz l0929h + jr nz,l091bh +l08fbh: + nop + jr nc,l0946h + ld c,b + jr nc,l0949h +l0901h: + ld c,b +l0902h: + jr nc,l0904h +l0904h: + jr nc,l094eh + ld c,b + jr c,l0911h + ld d,b + jr nc,l090ch +l090ch: + nop + nop +l090eh: + jr nc,$+50 + nop +l0911h: + jr nc,l0943h + nop + nop + nop +l0916h: + jr nc,l0948h + nop + jr nc,l092bh +l091bh: + ld b,b + ex af,af' + djnz l093fh + ld b,b + jr nz,l0932h + ex af,af' + nop + nop + nop + nop + ld a,b + nop +l0929h: + ld a,b + nop +l092bh: + nop + ld b,b + jr nz,l093fh + ex af,af' +l0930h: + djnz l0952h +l0932h: + ld b,b + nop + jr nc,l097eh + ld c,b + djnz l0959h + jr nz,l093bh +l093bh: + jr nz,l097dh + jr c,l0943h +l093fh: + jr c,l0949h + jr c,$+74 +l0943h: + inc (hl) + djnz l096eh +l0946h: + ld b,h + ld b,h +l0948h: + ld a,h +l0949h: + ld b,h + ld b,h +l094bh: + nop + ld a,b + ld b,h +l094eh: + ld b,h + ld a,b + ld b,h + ld b,h +l0952h: + ld a,b + nop + jr c,l099ah + ld b,b + ld b,b + ld b,b +l0959h: + ld b,h + jr c,l095ch +l095ch: + ld (hl),b + ld c,b + ld b,h + ld b,h + ld b,h + ld c,b + ld (hl),b + nop + ld a,h + ld b,b + ld b,b + ld (hl),b + ld b,b + ld b,b + ld a,h + nop + ld a,h + ld b,b +l096eh: + ld b,b + ld (hl),b + ld b,b + ld b,b + ld b,b + nop + jr c,l09bah + ld b,h + ld b,b + ld e,h + ld b,h + inc a + nop + ld b,h +l097dh: + ld b,h +l097eh: + ld b,h + ld a,h + ld b,h + ld b,h + ld b,h + nop + jr c,l0996h + djnz l0998h + djnz l099ah + jr c,l098ch +l098ch: + inc e + ex af,af' + ex af,af' + ex af,af' + ld c,b + ld c,b + jr nc,l0994h +l0994h: + ld c,b + ld c,b +l0996h: + ld d,b + ld (hl),b +l0998h: + ld d,b + ld c,b +l099ah: + ld c,h + nop + ld b,b + ld b,b + ld b,b + ld b,b + ld b,b + ld b,b + ld a,h + nop + ld l,h + ld d,h + ld d,h + ld b,h + ld b,h + ld b,h + ld b,h + nop + ld b,h + ld h,h + ld h,h + ld d,h + ld d,h + ld c,h + ld c,h + nop + jr c,l09fah + ld b,h + ld b,h + ld b,h + ld b,h +l09bah: + jr c,l09bch +l09bch: + ld a,b + ld b,h + ld b,h + ld a,b + ld b,b + ld b,b + ld b,b + nop + jr c,$+70 + ld b,h + ld b,h + ld d,h + ld c,b + inc (hl) + nop + ld a,b + ld c,b + ld c,b + ld a,b + ld d,b + ld c,b + ld c,h + nop + jr c,l0a1ah + ld b,b + jr c,l09ddh + ld b,h + jr c,l09dch +l09dch: + ld a,h +l09ddh: + djnz l09efh + djnz l09f1h + djnz l09f3h + nop + ld b,h + ld b,h + ld b,h + ld b,h + ld b,h + ld b,h + jr c,l09ech +l09ech: + ld b,h + ld b,h + ld b,h +l09efh: + jr z,l0a19h +l09f1h: + jr z,l0a03h +l09f3h: + nop + ld b,h + ld b,h + ld b,h + ld b,h + ld d,h + ld d,h +l09fah: + jr z,l09fch +l09fch: + ld b,h + ld b,h + jr z,l0a10h + jr z,$+70 + ld b,h +l0a03h: + nop + ld b,h + ld b,h + ld b,h + jr c,l0a19h + djnz l0a1bh + nop + ld a,h + inc c + jr $+18 +l0a10h: + jr nz,l0a72h + ld a,h + nop + nop + nop + nop + inc a + ld a,h +l0a19h: + nop +l0a1ah: + nop +l0a1bh: + call m,000fch + nop + call m,000fch + nop + call m,l0000h + nop + ret p + ret m + nop + nop + call m,0fcfch + nop + call m,0fcfch + call m,0fc00h + call m,0f0f0h + ret p + ret p + ret p + ret p + call m,sub_0cfch + inc c + inc c + inc b + inc b + inc b + call m,0e0fch + ret po + ret po + ret po + ret po + ret po + call m,07cfch + ld a,h + ld a,h + ld a,h + ld a,h + ld a,h + call m,080fch + add a,b + add a,b +l0a59h: + jr l0a73h + jr l0a59h + call m,07c7ch + ld a,h + inc a + inc a + inc a + call m,080fch + add a,b + add a,b + add a,b + add a,b + add a,b + call m,000fch + nop + nop + ld h,b +l0a72h: + ld (hl),b +l0a73h: + ld (hl),b + call m,078fch + jr c,l0a91h + ex af,af' + ex af,af' + ex af,af' + call m,004fch + inc b + inc b + inc b + inc b + inc b + call m,0c0fch + ret nz + ret nz + ret nz + ret nz + ret nz + call m,03cfch + inc a + inc a +l0a91h: + inc a + inc a + inc a + ret p + ret p + ret p + ret p + ret p + ret p + ret p + ret p + nop + nop + jr nz,l0ad0h + jr nc,$+58 + jr c,l0ae0h + ret po + ret po + ret po + ld h,b + ld h,b + ld h,b + jr nz,l0acch + ld a,b + ld a,b + ld a,b + ld (hl),b + ld (hl),b + ld (hl),b + ld h,b + ld h,b + jr l0af2h + inc a + inc a + inc a + nop + nop + nop + inc e + inc e + inc e + inc c + inc c + inc c + inc b + inc b + add a,b + add a,b + add a,b + add a,b + add a,b + add a,b + add a,b + add a,b +l0acch: + ld h,b + ld h,b + nop + inc b +l0ad0h: + nop + ld h,b + ld h,b + ld (hl),b + jr l0b0eh + ld a,b + ret m + ld a,b + jr c,l0af3h + ex af,af' + inc b + inc b + inc b + inc b +l0ae0h: + inc b + inc b + inc b + inc b + ret nz + ret nz + ret nz + ret nz + ret nz + ret nz + ret nz + ret nz + inc a + inc a + inc a + inc a + inc a + inc a +l0af2h: + inc a +l0af3h: + inc a + ret p + ret p + ret p + ret p + ret p + call m,000fch + inc a + inc a + inc a + inc a + inc a +l0b01h: + call m,000fch + nop + nop + add a,b + add a,b + add a,b + call m,000fch + ld h,b + ld b,b +l0b0eh: + ld b,b + ld b,b + ld b,b + call m,000fch + nop + jr l0b2fh + inc a + inc a + call m,000fch + inc b + nop + nop + nop + nop + call m,000fch + add a,b + add a,b + add a,b + add a,b + add a,b + call m,000fch + ld (hl),b + ld h,b + nop +l0b2fh: + nop + nop + call m,000fch + ex af,af' + ex af,af' + inc e + inc a + ld a,h + call m,000fch + inc b + nop + nop + add a,b + ret nz + call m,000fch + ret nz + add a,b + nop + nop + inc b + call m,000fch + inc a + inc a + ld a,h +l0b4fh: + call m,0fcfch + call m,0fc00h + call m,0fcfch + nop + call m,0fcfch + nop + nop + ld a,h + inc a + nop + nop + nop + nop + nop + nop + call m,000fch + nop + call m,l0000h + nop + ret m + ret p + nop + nop + nop +l0b73h: + nop +l0b74h: + nop + nop + ld hl,04210h + jr nz,l0bdeh + jr nc,l0b01h + ld b,b + and l + ld d,b + add a,060h + rst 20h + ld (hl),b + ex af,af' + add a,c + add hl,hl + sub c + ld c,d + and c + ld l,e + or c + adc a,h + pop bc + xor l + pop de + adc a,0e1h + rst 28h + pop af + ld sp,01012h + ld (bc),a + ld (hl),e + ld (02252h),a + or l + ld d,d + sub h + ld b,d + rst 30h + ld (hl),d + sub 062h + add hl,sp + sub e + jr $-123 + ld a,e + or e + ld e,d + and e + cp l + out (09ch),a + jp 0f3ffh + sbc a,0e3h + ld h,d + inc h + ld b,e + inc (hl) + jr nz,l0bbeh + ld bc,0e614h + ld h,h +l0bbeh: + rst 0 + ld (hl),h + and h + ld b,h + add a,l + ld d,h + ld l,d + and l + ld c,e + or l + jr z,l0b4fh + add hl,bc + sub l + xor 0e5h + rst 8 + push af + xor h +l0bd1h: + push bc + adc a,l + push de + ld d,e + ld (hl),072h + ld h,011h + ld d,030h + ld b,0d7h + halt +l0bdeh: + or 066h + sub l + ld d,(hl) + or h + ld b,(hl) + ld e,e + or a + ld a,d + and a + add hl,de + sub a + jr c,l0b73h + rst 18h + rst 30h + cp 0e7h + sbc a,l + rst 10h + cp h + rst 0 + call nz,0e548h + ld e,b + add a,(hl) + ld l,b + and a + ld a,b + ld b,b + ex af,af' + ld h,c + jr l0c03h + jr z,$+37 +l0c03h: + jr c,l0bd1h + ret + defb 0edh;next byte illegal after ed + exx + adc a,(hl) + jp (hl) + xor a + ld sp,hl + ld c,b + adc a,c + ld l,c + sbc a,c + ld a,(bc) + xor c + dec hl + cp c + push af + ld e,d + call nc,0b74ah + ld a,d + sub (hl) + ld l,d + ld (hl),c + ld a,(de) + ld d,b + ld a,(bc) + inc sp + ld a,(02a12h) + defb 0fdh,0dbh,0dch ;illegal sequence + res 7,a + ei + sbc a,(hl) + ex de,hl + ld a,c + sbc a,e + ld e,b + adc a,e + dec sp + cp e + ld a,(de) + xor e + and (hl) + ld l,h + add a,a + ld a,h + call po,0c54ch + ld e,h + ld (l032ch),hl + inc a + ld h,b + inc c + ld b,c + inc e + xor (hl) + defb 0edh;next byte illegal after ed + adc a,a + defb 0fdh,0ech,0cdh ;illegal sequence + call 02addh + xor l + dec bc + cp l + ld l,b + adc a,l + ld c,c + sbc a,l + sub a + ld a,(hl) + or (hl) + ld l,(hl) + push de + ld e,(hl) + call p,0134eh + ld a,032h + ld l,051h + ld e,070h + ld c,09fh + rst 38h + cp (hl) + rst 28h + defb 0ddh,0dfh,0fch ;illegal sequence + rst 8 + dec de + cp a + ld a,(059afh) + sbc a,a + ld a,b + adc a,a + adc a,b + sub c + xor c + add a,c + jp z,0ebb1h + and c + inc c + pop de + dec l + pop bc + ld c,(hl) + pop af + ld l,a + pop hl + add a,b + djnz $-93 + nop + jp nz,0e330h + jr nz,l0c91h + ld d,b + dec h + ld b,b + ld b,(hl) +l0c91h: + ld (hl),b + ld h,a + ld h,b + cp c + add a,e + sbc a,b + sub e + ei + and e + jp c,03db3h + jp 0d31ch + ld a,a + ex (sp),hl + ld e,(hl) + di + or c + ld (bc),a + sub b + ld (de),a + di + ld (032d2h),hl + dec (hl) + ld b,d + inc d + ld d,d + ld (hl),a + ld h,d + ld d,(hl) + ld (hl),d + jp pe,0cbb5h + and l + xor b + sub l + adc a,c + add a,l + ld l,(hl) + push af + ld c,a + push hl + inc l + push de + dec c + push bc + jp po,0c334h + inc h + and b + inc d + add a,c + inc b + ld h,(hl) + ld (hl),h + ld b,a + ld h,h + inc h + ld d,h + dec b + ld b,h + in a,(0a7h) + jp m,099b7h + add a,a + cp b + sub a + ld e,a + rst 20h + ld a,(hl) + rst 30h + dec e + rst 0 + inc a + rst 10h + out (026h),a + jp p,09136h + ld b,0b0h + ld d,057h + ld h,(hl) + halt + halt +l0cf0h: + dec d + ld b,(hl) + inc (hl) + ld d,(hl) + ld c,h + exx + ld l,l + ret + ld c,0f9h + cpl + jp (hl) +sub_0cfch: + ret z + sbc a,c + jp (hl) + adc a,c + adc a,d + cp c + xor e + xor c + ld b,h + ld e,b + ld h,l + ld c,b + ld b,078h + daa + ld l,b + ret nz + jr l0cf0h + ex af,af' + add a,d + jr c,$-91 + jr z,l0d92h + bit 3,h + in a,(03fh) + ex de,hl + ld e,0fbh + ld sp,hl + adc a,e + ret c + sbc a,e + cp e + xor e + sbc a,d + cp e + ld (hl),l + ld c,d + ld d,h + ld e,d + scf + ld l,d + ld d,07ah + pop af + ld a,(bc) + ret nc + ld a,(de) + or e + ld hl,(03a92h) + ld l,0fdh + rrca + defb 0edh;next byte illegal after ed + ld l,h + defb 0ddh,04dh ;ld c,ixl + call 0bdaah + adc a,e + xor l + ret pe + sbc a,l + ret + adc a,l + ld h,07ch + rlca + ld l,h + ld h,h + ld e,h + ld b,l + ld c,h + and d + inc a + add a,e + inc l + ret po + inc e + pop bc + inc c + rra + rst 28h + ld a,0ffh + ld e,l + rst 8 + ld a,h + rst 18h + sbc a,e + xor a + cp d + cp a + exx + adc a,a + ret m + sbc a,a + rla + ld l,(hl) + ld (hl),07eh + ld d,l + ld c,(hl) + ld (hl),h + ld e,(hl) + sub e + ld l,0b2h + ld a,0d1h + ld c,0f0h + ld e,000h + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop +l0d92h: + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + ld a,c + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + ld a,c + nop + + seek 00ffah + org 00ffah + + defb 0bh,14h +l0ffch: + defb 30h,36h +l0ffeh: + defb 0cfh +l0fffh: + defb 03bh diff --git a/WithEMU/nabu_4k_new.bin b/WithEMU/nabu_4k_new.bin new file mode 100644 index 0000000000000000000000000000000000000000..12422acfb48f8d2ac35ba190a94f67df20b80fc4 GIT binary patch literal 4096 zcmeGceS8z;`Au@Urfo>yLS+}Ja@Q!{DoBhKZ&`>5O=+s3>DmDD9kBvJg@6cYi6L0g zDJpcz9COZA1g6M>L&q4REww<1nbcd$x>&J;f`|bs7FtPjd)}nw$8Vee>~EjDd!Kv0 zKi=nk&2qzeNkn&^m$(p3t27OctOG1!WHA*K8_X85A($;gog8Wu>rI_neLwjPI*S)BdqQmRi4D>EeJn$MFN13Jc(Hzn zJ$_%(k6K5}wfa_4gIP)3f(MpE9O17~T#OLC0X!>|8p=jrg*ZJPCv;lXxUYmFGtSfJQ7km`9Q za5U>u67$AEiCH-$f*SiI4k2(WLpZkEcwP!077;g=gbo@IHps9+flUTEmSy5tA%$hb za$5{I>~oqz9h~nnD_y+o@o_ z(wypIPId$*PM_DIc?#OnNK+6s*)P7|F9ycpOPW)}BhA3nLT9vkHO}CA$;LG`AD3$a zWQ@L!2HNWy&3Le%e1DQnDn=+=Yo^6O8=N_FmS~My;54Se`DO2AF0@7i3Cs=;7xEe5 z+SQRcv`)dahntzt!iB7AkUkVEq;aC_;BH07nnV_$n#4`821Bi_&9Iea9Gve`UQWj1 z6Bvu|iyR6-rds`g@rvYZSMu^hG|X*s{tjMB-2-qtHD6NpwsohbG6OD$%UDFfHY*I5 zCGMg$5`pzRZ2>F0yQ{S)#C1}HhEwGajP4iN}(3CZ8Stx@N1pBd69TOyZ~ zO~bx-C|j6ba(<5FA4|*YmyDmK8LmpPS@En`MO=dMZ(gFDtn-TvI{zUEtJBoS_Jn9< zv@Y!AzmIO}ZPyF;Br=4Y_B2?>C9sgu&cdHAf%T)E-o31%hY{C^4K)&ag^Q3x*PFf#_nldlO2&Vbtx^kdYbmnN6Bg%~cALCa;6z4TqUW zR*Jh_ro{t!-;-vhXUC<;U34m8plLV-dyjC&wCoW`J?!WbrIzXUhwn{2kwSWe|8&+N zeZnZn52XzcnKj8-f6N#kh`@#7SRX)66;i5+ttJk9?RgW%R=2^btv6YXn zQtv{mz11~qd{6k-2G%{PZbP-#fqDQvwf-7BO*&2h6F?a8e2V6IA3Qt~TxCLzOF-^Q z6=ti{2=lzY%;7_NJ$5JUSc}ENVgw(?tOX&L;1gUJL>T+PBY`1ZAxXi)Fo>d5j2`p_ zo5NLU6A;#u1O%kF+kx)|time09{BpQGA~A6OW7hq>v@Z35nwOK^(;&D$xE=HD$^&U zLBK(bEs!;&rXrEO@Q^$Si|Au8XDtFHs04cf=502g&4#=-8+jows0;G)*ljkO-Gh7< zi^pQ|4PuhF%`)3&LLdb*8xlzRkbka9r6T#*?PZ=ay90q203WJyxj@Z^Y?YNRm%~Bq z0fb~cP)O1)djZsC_YymZFHj(d9ugpNlKQalJfEUnE*|(iNu9_^3dpBsFzfb_dQGs# zu3z(Wf{K9VK?FcG|{4{9R7;YsX6`ll@0$_}~DcvS0tT6bT=l6RkP z+SU5Et_wYP4#)Dx4CQ(6m%lve%8K^+KYNL(U9)HA)&t`2nx#u$oSc74VF63Ya!yws zUiqeNy=(Ed``_o+r*A&r{b}zzEibfHOjt1{d!(K|zUuOV&C}kSJZo>w4(%(#GbgSj z&b)T~gTo)&yB~OZ(GIUg^&lhXb;2j1SjUTJgZ=hrAK8-e*6sUxXa4=Zy*0mHy!^(p zjJu4(^9Q1zhd;Xd`*YQ=KCt2E`)}O2z3Lg?DM!ofys-+CTW!t#V{GHVH<3tZ{;tde zi(V*s?G^u@m$uFQu5^UiaK|rh_Gn(0KD^L*BL3;9kBq??uX{KCvhJ;QN8dfypl%)4 zRNAwwD}Wo&LH$XVD!bJ(*|X5Sul6@DUETW6JrkRA#kD8rUV2x)Y51kQ&kT1@$|+wx zf7*(#-w$v5!{%q#FYR@9k8K;)@~?vCTk3PxQ43ZUSKi`M+M+wY-@E0Rzq~TXBRo%Fx8IzGPg-R`hr=S^QrH|tHHm1)UmPe^`9)A;GbH$a_&oa{K?#^ gxp;GG27X+B?7;umf$ASJ`$56~GRVx)Pslg@8_D@R+yDRo literal 0 HcmV?d00001 diff --git a/WithEMU/nabu_4k_new.lst b/WithEMU/nabu_4k_new.lst new file mode 100644 index 0000000..3681ebd --- /dev/null +++ b/WithEMU/nabu_4k_new.lst @@ -0,0 +1,3118 @@ +# File nabu_4k.asm +0000 ; z80dasm 1.1.5 +0000 ; command line: z80dasm -l -g 0x0000 -o nabu_4k.asm rom4k.bin +0000 +0000 org 00000h +0000 +0000 l0000h: +0000 3e 02 ld a,002h +0002 32 ee ff ld (0ffeeh),a +0005 d3 00 out (000h),a +0007 31 ee ff ld sp,0ffeeh +000a 21 c9 06 ld hl,l06c9h +000d 06 08 ld b,008h +000f l000fh: +000f 0e a1 ld c,0a1h +0011 l0011h: +0011 ed a3 outi +0013 l0013h: +0013 78 ld a,b +0014 f6 80 or 080h +0016 d3 a1 out (0a1h),a +0018 e6 7f and 07fh +001a 20 f5 jr nz,l0011h +001c 21 ef ff ld hl,0ffefh +001f 11 f0 ff ld de,0fff0h +0022 01 09 00 ld bc,00009h +0025 af xor a +0026 77 ld (hl),a +0027 ed b0 ldir +0029 cd 21 05 call sub_0521h +002c af xor a +002d cd 2a 05 call sub_052ah +0030 cd 2a 05 call sub_052ah +0033 cd 2a 05 call sub_052ah +0036 cd 2a 05 call sub_052ah +0039 cd 2a 05 call sub_052ah +003c 3e 40 ld a,040h +003e cd 2a 05 call sub_052ah +0041 3e 4e ld a,04eh +0043 cd 2a 05 call sub_052ah +0046 3e 04 ld a,004h +0048 cd 2a 05 call sub_052ah +004b cd e3 04 call 004e3h +004e cd 32 05 call sub_0532h +0051 ca ca 01 jp z,l01cah +0054 3e 3a ld a,03ah +0056 d3 00 out (000h),a +0058 26 0a ld h,00ah +005a 0e 20 ld c,020h +005c 11 00 e0 ld de,0e000h +005f 06 01 ld b,001h +0061 l0061h: +0061 cd 63 03 call sub_0363h +0064 28 04 jr z,l006ah +0066 10 02 djnz l006ah +0068 18 22 jr l008ch +006a l006ah: +006a cd 4d 06 call sub_064dh +006d 28 f2 jr z,l0061h +006f db 90 in a,(090h) +0071 fe 31 cp 031h +0073 28 0d jr z,l0082h +0075 fe 3d cp 03dh +0077 20 e8 jr nz,l0061h +0079 cb 44 bit 0,h +007b 28 e4 jr z,l0061h +007d l007dh: +007d 25 dec h +007e 28 08 jr z,l0088h +0080 18 df jr l0061h +0082 l0082h: +0082 cb 44 bit 0,h +0084 20 db jr nz,l0061h +0086 18 f5 jr l007dh +0088 l0088h: +0088 21 ef ff ld hl,0ffefh +008b 34 inc (hl) +008c l008ch: +008c 3a f6 ff ld a,(0fff6h) +008f cb 47 bit 0,a +0091 20 05 jr nz,l0098h +0093 cd d1 04 call sub_04d1h +0096 d3 00 out (000h),a +0098 l0098h: +0098 af xor a +0099 32 ff ff ld (0ffffh),a +009c dd 21 fd 0f ld ix,l0ffch+1 +00a0 11 ff ff ld de,0ffffh +00a3 af xor a +00a4 67 ld h,a +00a5 6f ld l,a +00a6 47 ld b,a +00a7 l00a7h: +00a7 dd 4e 00 ld c,(ix+000h) +00aa 09 add hl,bc +00ab dd 19 add ix,de +00ad 38 f8 jr c,l00a7h +00af 3a fe 0f ld a,(l0ffeh) +00b2 bd cp l +00b3 20 06 jr nz,l00bbh +00b5 3a ff 0f ld a,(l0fffh) +00b8 94 sub h +00b9 28 03 jr z,l00beh +00bb l00bbh: +00bb cd a6 04 call sub_04a6h +00be l00beh: +00be cd 6a 04 call sub_046ah +00c1 af xor a +00c2 d3 a1 out (0a1h),a +00c4 3e 40 ld a,040h +00c6 d3 a1 out (0a1h),a +00c8 af xor a +00c9 11 01 00 ld de,l0000h+1 +00cc dd 21 00 c0 ld ix,0c000h +00d0 l00d0h: +00d0 d3 a0 out (0a0h),a +00d2 3c inc a +00d3 dd 19 add ix,de +00d5 30 f9 jr nc,l00d0h +00d7 dd 21 00 c0 ld ix,0c000h +00db af xor a +00dc 4f ld c,a +00dd 47 ld b,a +00de 67 ld h,a +00df 6f ld l,a +00e0 l00e0h: +00e0 7d ld a,l +00e1 d3 a1 out (0a1h),a +00e3 7c ld a,h +00e4 d3 a1 out (0a1h),a +00e6 db a0 in a,(0a0h) +00e8 b9 cp c +00e9 20 18 jr nz,l0103h +00eb 7d ld a,l +00ec d3 a1 out (0a1h),a +00ee 7c ld a,h +00ef f6 40 or 040h +00f1 d3 a1 out (0a1h),a +00f3 79 ld a,c +00f4 2f cpl +00f5 d3 a0 out (0a0h),a +00f7 7d ld a,l +00f8 d3 a1 out (0a1h),a +00fa 7c ld a,h +00fb d3 a1 out (0a1h),a +00fd db a0 in a,(0a0h) +00ff 2f cpl +0100 b9 cp c +0101 28 03 jr z,l0106h +0103 l0103h: +0103 cd a6 04 call sub_04a6h +0106 l0106h: +0106 0c inc c +0107 23 inc hl +0108 11 01 00 ld de,l0000h+1 +010b dd 19 add ix,de +010d 30 d1 jr nc,l00e0h +010f cd e3 04 call 004e3h +0112 cd 3e 05 call sub_053eh +0115 cd 6a 04 call sub_046ah +0118 af xor a +0119 dd 21 00 20 ld ix,02000h +011d 21 00 21 ld hl,02100h +0120 11 01 00 ld de,l0000h+1 +0123 l0123h: +0123 dd 77 00 ld (ix+000h),a +0126 3c inc a +0127 dd 23 inc ix +0129 19 add hl,de +012a 30 f7 jr nc,l0123h +012c af xor a +012d 4f ld c,a +012e 21 00 21 ld hl,02100h +0131 dd 21 00 20 ld ix,02000h +0135 47 ld b,a +0136 l0136h: +0136 dd 7e 00 ld a,(ix+000h) +0139 b9 cp c +013a 20 0b jr nz,l0147h +013c 2f cpl +013d dd 77 00 ld (ix+000h),a +0140 dd 7e 00 ld a,(ix+000h) +0143 2f cpl +0144 b9 cp c +0145 28 03 jr z,l014ah +0147 l0147h: +0147 cd a6 04 call sub_04a6h +014a l014ah: +014a dd 23 inc ix +014c 0c inc c +014d 19 add hl,de +014e 30 e6 jr nc,l0136h +0150 cd 6a 04 call sub_046ah +0153 06 10 ld b,010h +0155 0e 00 ld c,000h +0157 l0157h: +0157 78 ld a,b +0158 3d dec a +0159 d3 41 out (041h),a +015b 79 ld a,c +015c d3 40 out (040h),a +015e 10 f7 djnz l0157h +0160 0e 00 ld c,000h +0162 l0162h: +0162 06 ff ld b,0ffh +0164 l0164h: +0164 79 ld a,c +0165 d3 41 out (041h),a +0167 78 ld a,b +0168 d3 40 out (040h),a +016a db 40 in a,(040h) +016c cd 7e 01 call sub_017eh +016f c4 a6 04 call nz,sub_04a6h +0172 cb 38 srl b +0174 38 ee jr c,l0164h +0176 0c inc c +0177 3e 0e ld a,00eh +0179 b9 cp c +017a 20 e6 jr nz,l0162h +017c 18 1b jr l0199h +017e sub_017eh: +017e 21 8b 01 ld hl,l018bh +0181 59 ld e,c +0182 16 00 ld d,000h +0184 19 add hl,de +0185 a6 and (hl) +0186 5f ld e,a +0187 78 ld a,b +0188 a6 and (hl) +0189 bb cp e +018a c9 ret +018b l018bh: +018b ff rst 38h +018c 0f rrca +018d ff rst 38h +018e 0f rrca +018f ff rst 38h +0190 0f rrca +0191 1f rra +0192 ff rst 38h +0193 1f rra +0194 1f rra +0195 1f rra +0196 ff rst 38h +0197 ff rst 38h +0198 0f rrca +0199 l0199h: +0199 cd 6a 04 call sub_046ah +019c cd 21 05 call sub_0521h +019f 11 00 00 ld de,l0000h +01a2 06 05 ld b,005h +01a4 l01a4h: +01a4 0e 20 ld c,020h +01a6 cd 4d 06 call sub_064dh +01a9 28 16 jr z,l01c1h +01ab db 90 in a,(090h) +01ad fe 95 cp 095h +01af 30 10 jr nc,l01c1h +01b1 fe 91 cp 091h +01b3 38 0c jr c,l01c1h +01b5 fe 94 cp 094h +01b7 28 03 jr z,l01bch +01b9 l01b9h: +01b9 cd a6 04 call sub_04a6h +01bc l01bch: +01bc cd 6a 04 call sub_046ah +01bf 18 09 jr l01cah +01c1 l01c1h: +01c1 1b dec de +01c2 7a ld a,d +01c3 b3 or e +01c4 20 de jr nz,l01a4h +01c6 10 dc djnz l01a4h +01c8 18 ef jr l01b9h +01ca l01cah: +01ca db 80 in a,(080h) +01cc cd 86 03 call sub_0386h +01cf 28 12 jr z,l01e3h +01d1 cd a6 04 call sub_04a6h +01d4 18 30 jr l0206h +01d6 l01d6h: +01d6 3e 05 ld a,005h +01d8 32 f7 ff ld (0fff7h),a +01db 32 fe ff ld (0fffeh),a +01de cd a6 04 call sub_04a6h +01e1 18 e7 jr l01cah +01e3 l01e3h: +01e3 0e 82 ld c,082h +01e5 cd 79 03 call sub_0379h +01e8 20 ec jr nz,l01d6h +01ea 3e 01 ld a,001h +01ec d3 80 out (080h),a +01ee cd 7a 06 call sub_067ah +01f1 db 80 in a,(080h) +01f3 20 e1 jr nz,l01d6h +01f5 32 f8 ff ld (0fff8h),a +01f8 0e 10 ld c,010h +01fa cd 6c 03 call sub_036ch +01fd 20 d7 jr nz,l01d6h +01ff 0e e1 ld c,0e1h +0201 cd 6c 03 call sub_036ch +0204 20 d0 jr nz,l01d6h +0206 l0206h: +0206 cd 32 05 call sub_0532h +0209 c4 6a 04 call nz,sub_046ah +020c 3a ef ff ld a,(0ffefh) +020f b7 or a +0210 c2 8c 00 jp nz,l008ch +0213 3a f6 ff ld a,(0fff6h) +0216 cb 47 bit 0,a +0218 20 07 jr nz,l0221h +021a 3e 02 ld a,002h +021c 32 ee ff ld (0ffeeh),a +021f d3 00 out (000h),a +0221 l0221h: +0221 21 f8 ff ld hl,0fff8h +0224 cb 7e bit 7,(hl) +0226 28 77 jr z,l029fh +0228 21 d1 06 ld hl,l06d1h +022b cd 6b 05 call sub_056bh +022e l022eh: +022e 21 f9 ff ld hl,0fff9h +0231 11 c7 02 ld de,002c7h +0234 cd 7c 05 call sub_057ch +0237 21 f9 ff ld hl,0fff9h +023a af xor a +023b 4f ld c,a +023c 06 04 ld b,004h +023e l023eh: +023e 7e ld a,(hl) +023f cb 40 bit 0,b +0241 28 09 jr z,l024ch +0243 cb 27 sla a +0245 cb 67 bit 4,a +0247 28 03 jr z,l024ch +0249 cb a7 res 4,a +024b 3c inc a +024c l024ch: +024c 81 add a,c +024d 4f ld c,a +024e 23 inc hl +024f 10 ed djnz l023eh +0251 e6 0f and 00fh +0253 be cp (hl) +0254 28 10 jr z,l0266h +0256 21 ac 07 ld hl,007ach +0259 cd 6b 05 call sub_056bh +025c 0e 90 ld c,090h +025e 11 00 e0 ld de,0e000h +0261 cd a2 06 call sub_06a2h +0264 18 c8 jr l022eh +0266 l0266h: +0266 21 f9 ff ld hl,0fff9h +0269 06 04 ld b,004h +026b 11 00 00 ld de,l0000h +026e l026eh: +026e 7e ld a,(hl) +026f cb 23 sla e +0271 cb 12 rl d +0273 cb 23 sla e +0275 cb 12 rl d +0277 cb 23 sla e +0279 cb 12 rl d +027b cb 23 sla e +027d cb 12 rl d +027f 83 add a,e +0280 5f ld e,a +0281 23 inc hl +0282 10 ea djnz l026eh +0284 d5 push de +0285 0e 85 ld c,085h +0287 cd 79 03 call sub_0379h +028a c2 d6 01 jp nz,l01d6h +028d d1 pop de +028e 7a ld a,d +028f d3 80 out (080h),a +0291 0e 40 ld c,040h +0293 cd 4d 06 call sub_064dh +0296 7b ld a,e +0297 d3 80 out (080h),a +0299 cd ee 05 call sub_05eeh +029c c2 d6 01 jp nz,l01d6h +029f l029fh: +029f 0e 81 ld c,081h +02a1 cd 79 03 call sub_0379h +02a4 c2 d6 01 jp nz,l01d6h +02a7 3e 8f ld a,08fh +02a9 d3 80 out (080h),a +02ab l02abh: +02ab 0e 40 ld c,040h +02ad cd 4d 06 call sub_064dh +02b0 3e 05 ld a,005h +02b2 d3 80 out (080h),a +02b4 cd ee 05 call sub_05eeh +02b7 c2 d6 01 jp nz,l01d6h +02ba 3e 05 ld a,005h +02bc 32 f8 ff ld (0fff8h),a +02bf 21 00 00 ld hl,l0000h +02c2 11 00 00 ld de,l0000h +02c5 01 00 10 ld bc,01000h +02c8 ed b0 ldir +02ca 3a ee ff ld a,(0ffeeh) +02cd cb c7 set 0,a +02cf d3 00 out (000h),a +02d1 21 2c 07 ld hl,l072ch +02d4 cd 6b 05 call sub_056bh +02d7 l02d7h: +02d7 af xor a +02d8 32 00 10 ld (01000h),a +02db 32 01 10 ld (01001h),a +02de 32 03 10 ld (01003h),a +02e1 3c inc a +02e2 32 02 10 ld (01002h),a +02e5 01 0b 10 ld bc,0100bh +02e8 ed 43 04 10 ld (01004h),bc +02ec 01 0d 14 ld bc,0140dh +02ef ed 43 08 10 ld (01008h),bc +02f3 af xor a +02f4 32 0b 14 ld (0140bh),a +02f7 32 0c 14 ld (0140ch),a +02fa af xor a +02fb d3 41 out (041h),a +02fd d3 40 out (040h),a +02ff cd 8a 06 call sub_068ah +0302 l0302h: +0302 cd b0 03 call sub_03b0h +0305 c2 d6 01 jp nz,l01d6h +0308 af xor a +0309 d3 41 out (041h),a +030b 3a 03 10 ld a,(01003h) +030e cb 27 sla a +0310 cb 27 sla a +0312 2f cpl +0313 d3 40 out (040h),a +0315 2a 04 10 ld hl,(01004h) +0318 01 0b 00 ld bc,0000bh +031b 09 add hl,bc +031c 7e ld a,(hl) +031d 32 0a 10 ld (0100ah),a +0320 2a 06 10 ld hl,(01006h) +0323 01 ee ff ld bc,0ffeeh +0326 09 add hl,bc +0327 e5 push hl +0328 c1 pop bc +0329 2a 0b 14 ld hl,(0140bh) +032c l032ch: +032c 09 add hl,bc +032d 22 0b 14 ld (0140bh),hl +0330 2a 04 10 ld hl,(01004h) +0333 11 10 00 ld de,l000fh+1 +0336 19 add hl,de +0337 ed 5b 08 10 ld de,(01008h) +033b ed b0 ldir +033d ed 53 08 10 ld (01008h),de +0341 3a 0a 10 ld a,(0100ah) +0344 cb 67 bit 4,a +0346 20 06 jr nz,l034eh +0348 21 03 10 ld hl,01003h +034b 34 inc (hl) +034c 18 b4 jr l0302h +034e l034eh: +034e 3e a5 ld a,0a5h +0350 32 fe ff ld (0fffeh),a +0353 3e 5a ld a,05ah +0355 32 ff ff ld (0ffffh),a +0358 3e 07 ld a,007h +035a d3 41 out (041h),a +035c 3e 7f ld a,07fh +035e d3 40 out (040h),a +0360 c3 0f 14 jp 0140fh +0363 sub_0363h: +0363 1b dec de +0364 7a ld a,d +0365 b3 or e +0366 28 02 jr z,l036ah +0368 af xor a +0369 3d dec a +036a l036ah: +036a 3c inc a +036b c9 ret +036c sub_036ch: +036c c5 push bc +036d cd 7a 06 call sub_067ah +0370 c1 pop bc +0371 c0 ret nz +0372 db 80 in a,(080h) +0374 91 sub c +0375 c8 ret z +0376 3e 02 ld a,002h +0378 c9 ret +0379 sub_0379h: +0379 79 ld a,c +037a d3 80 out (080h),a +037c 0e 10 ld c,010h +037e cd 6c 03 call sub_036ch +0381 c0 ret nz +0382 0e 06 ld c,006h +0384 18 e6 jr sub_036ch +0386 sub_0386h: +0386 06 04 ld b,004h +0388 l0388h: +0388 3e 83 ld a,083h +038a f5 push af +038b d3 80 out (080h),a +038d l038dh: +038d f1 pop af +038e 0e 10 ld c,010h +0390 21 a4 03 ld hl,l03a4h +0393 l0393h: +0393 e5 push hl +0394 cd 6c 03 call sub_036ch +0397 fe 02 cp 002h +0399 28 f2 jr z,l038dh +039b fe 00 cp 000h +039d c8 ret z +039e f1 pop af +039f 10 e7 djnz l0388h +03a1 af xor a +03a2 3c inc a +03a3 c9 ret +03a4 l03a4h: +03a4 0e 06 ld c,006h +03a6 21 ab 03 ld hl,l03abh +03a9 18 e8 jr l0393h +03ab l03abh: +03ab 0e e4 ld c,0e4h +03ad e1 pop hl +03ae 18 e3 jr l0393h +03b0 sub_03b0h: +03b0 d9 exx +03b1 af xor a +03b2 3d dec a +03b3 57 ld d,a +03b4 5f ld e,a +03b5 d9 exx +03b6 0e 84 ld c,084h +03b8 cd 79 03 call sub_0379h +03bb c0 ret nz +03bc 06 04 ld b,004h +03be 21 03 10 ld hl,01003h +03c1 l03c1h: +03c1 0e 40 ld c,040h +03c3 cd 4d 06 call sub_064dh +03c6 28 f9 jr z,l03c1h +03c8 7e ld a,(hl) +03c9 d3 80 out (080h),a +03cb 2d dec l +03cc 10 f3 djnz l03c1h +03ce 0e e4 ld c,0e4h +03d0 cd 6c 03 call sub_036ch +03d3 c0 ret nz +03d4 06 18 ld b,018h +03d6 11 01 00 ld de,l0000h+1 +03d9 21 00 00 ld hl,l0000h +03dc l03dch: +03dc 19 add hl,de +03dd 30 0c jr nc,l03ebh +03df 10 0a djnz l03ebh +03e1 21 f5 06 ld hl,l06f5h +03e4 cd 6b 05 call sub_056bh +03e7 c1 pop bc +03e8 c3 d7 02 jp l02d7h +03eb l03ebh: +03eb 0e 80 ld c,080h +03ed cd 4d 06 call sub_064dh +03f0 28 ea jr z,l03dch +03f2 db 80 in a,(080h) +03f4 d6 91 sub 091h +03f6 c0 ret nz +03f7 3e 10 ld a,010h +03f9 d3 80 out (080h),a +03fb l03fbh: +03fb 0e 40 ld c,040h +03fd cd 4d 06 call sub_064dh +0400 28 f9 jr z,l03fbh +0402 0e 80 ld c,080h +0404 cd 4d 06 call sub_064dh +0407 2a 04 10 ld hl,(01004h) +040a 01 00 00 ld bc,l0000h +040d cb 83 res 0,e +040f 3e 06 ld a,006h +0411 d3 80 out (080h),a +0413 l0413h: +0413 d5 push de +0414 11 ff ff ld de,0ffffh +0417 l0417h: +0417 3e 0f ld a,00fh +0419 d3 41 out (041h),a +041b db 40 in a,(040h) +041d cb 47 bit 0,a +041f 20 07 jr nz,l0428h +0421 cd 63 03 call sub_0363h +0424 20 3f jr nz,l0465h +0426 18 ef jr l0417h +0428 l0428h: +0428 d1 pop de +0429 db 80 in a,(080h) +042b fe 10 cp 010h +042d 20 12 jr nz,l0441h +042f cb 43 bit 0,e +0431 28 0a jr z,l043dh +0433 cb 83 res 0,e +0435 77 ld (hl),a +0436 cd 5d 06 call sub_065dh +0439 23 inc hl +043a 03 inc bc +043b 18 d6 jr l0413h +043d l043dh: +043d cb c3 set 0,e +043f 18 d2 jr l0413h +0441 l0441h: +0441 cb 43 bit 0,e +0443 20 08 jr nz,l044dh +0445 77 ld (hl),a +0446 cd 5d 06 call sub_065dh +0449 23 inc hl +044a 03 inc bc +044b 18 c6 jr l0413h +044d l044dh: +044d ed 43 06 10 ld (01006h),bc +0451 fe e1 cp 0e1h +0453 c2 b0 03 jp nz,sub_03b0h +0456 d9 exx +0457 7b ld a,e +0458 fe 0f cp 00fh +045a c2 b0 03 jp nz,sub_03b0h +045d 7a ld a,d +045e fe 1d cp 01dh +0460 c2 b0 03 jp nz,sub_03b0h +0463 af xor a +0464 c9 ret +0465 l0465h: +0465 d1 pop de +0466 d1 pop de +0467 c3 d6 01 jp l01d6h +046a sub_046ah: +046a 0e 50 ld c,050h +046c 21 f6 ff ld hl,0fff6h +046f cb 4e bit 1,(hl) +0471 28 02 jr z,l0475h +0473 0e 90 ld c,090h +0475 l0475h: +0475 11 00 cc ld de,0cc00h +0478 cd a2 06 call sub_06a2h +047b cb 8e res 1,(hl) +047d 21 00 80 ld hl,08000h +0480 11 01 00 ld de,l0000h+1 +0483 l0483h: +0483 19 add hl,de +0484 30 fd jr nc,l0483h +0486 3a f7 ff ld a,(0fff7h) +0489 4f ld c,a +048a d6 05 sub 005h +048c 28 02 jr z,l0490h +048e c6 06 add a,006h +0490 l0490h: +0490 32 f7 ff ld (0fff7h),a +0493 3a f6 ff ld a,(0fff6h) +0496 cb 47 bit 0,a +0498 c2 f3 05 jp nz,l05f3h +049b cd d1 04 call sub_04d1h +049e d3 00 out (000h),a +04a0 32 ee ff ld (0ffeeh),a +04a3 c3 f3 05 jp l05f3h +04a6 sub_04a6h: +04a6 f5 push af +04a7 d5 push de +04a8 e5 push hl +04a9 3a f6 ff ld a,(0fff6h) +04ac cb 47 bit 0,a +04ae 20 0a jr nz,l04bah +04b0 cd d1 04 call sub_04d1h +04b3 f6 10 or 010h +04b5 d3 00 out (000h),a +04b7 32 ee ff ld (0ffeeh),a +04ba l04bah: +04ba 3e 03 ld a,003h +04bc 32 f6 ff ld (0fff6h),a +04bf 21 f0 ff ld hl,0fff0h +04c2 16 00 ld d,000h +04c4 3a f7 ff ld a,(0fff7h) +04c7 5f ld e,a +04c8 19 add hl,de +04c9 34 inc (hl) +04ca 20 01 jr nz,l04cdh +04cc 35 dec (hl) +04cd l04cdh: +04cd e1 pop hl +04ce d1 pop de +04cf f1 pop af +04d0 c9 ret +04d1 sub_04d1h: +04d1 21 dd 04 ld hl,l04ddh +04d4 3a f7 ff ld a,(0fff7h) +04d7 5f ld e,a +04d8 16 00 ld d,000h +04da 19 add hl,de +04db 7e ld a,(hl) +04dc c9 ret +04dd l04ddh: +04dd 2a 0a 2a ld hl,(02a0ah) +04e0 0a ld a,(bc) +04e1 22 02 af ld (0af02h),hl +04e4 d3 a1 out (0a1h),a +04e6 3e 41 ld a,041h +04e8 d3 a1 out (0a1h),a +04ea 0e a0 ld c,0a0h +04ec 16 04 ld d,004h +04ee 21 3c 08 ld hl,l083ch +04f1 l04f1h: +04f1 06 ff ld b,0ffh +04f3 ed b3 otir +04f5 15 dec d +04f6 20 f9 jr nz,l04f1h +04f8 af xor a +04f9 d3 a1 out (0a1h),a +04fb 3e 48 ld a,048h +04fd d3 a1 out (0a1h),a +04ff 3e 20 ld a,020h +0501 21 40 fc ld hl,0fc40h +0504 11 01 00 ld de,l0000h+1 +0507 l0507h: +0507 d3 a0 out (0a0h),a +0509 19 add hl,de +050a 30 fb jr nc,l0507h +050c 06 07 ld b,007h +050e 21 d3 07 ld hl,l07d3h +0511 11 0f 00 ld de,l000fh +0514 l0514h: +0514 c5 push bc +0515 e5 push hl +0516 d5 push de +0517 cd 6b 05 call sub_056bh +051a d1 pop de +051b e1 pop hl +051c c1 pop bc +051d 19 add hl,de +051e 10 f4 djnz l0514h +0520 c9 ret +0521 sub_0521h: +0521 3e 07 ld a,007h +0523 d3 41 out (041h),a +0525 3e 7f ld a,07fh +0527 d3 40 out (040h),a +0529 c9 ret +052a sub_052ah: +052a d3 91 out (091h),a +052c 00 nop +052d 00 nop +052e 00 nop +052f 00 nop +0530 00 nop +0531 c9 ret +0532 sub_0532h: +0532 21 fe ff ld hl,0fffeh +0535 7e ld a,(hl) +0536 d6 a5 sub 0a5h +0538 c0 ret nz +0539 23 inc hl +053a 7e ld a,(hl) +053b d6 5a sub 05ah +053d c9 ret +053e sub_053eh: +053e 0e 05 ld c,005h +0540 c5 push bc +0541 l0541h: +0541 cd f3 05 call l05f3h +0544 c1 pop bc +0545 0d dec c +0546 fa 4c 05 jp m,l054ch +0549 c5 push bc +054a 18 f5 jr l0541h +054c l054ch: +054c 3a ef ff ld a,(0ffefh) +054f b7 or a +0550 c8 ret z +0551 2a d0 07 ld hl,(007d0h) +0554 22 f9 ff ld (0fff9h),hl +0557 3a d2 07 ld a,(l07d2h) +055a 32 fb ff ld (0fffbh),a +055d ed 5b fc 0f ld de,(l0ffch) +0561 ed 53 fc ff ld (0fffch),de +0565 21 f9 ff ld hl,0fff9h +0568 c3 6b 05 jp sub_056bh +056b sub_056bh: +056b 46 ld b,(hl) +056c 23 inc hl +056d 7e ld a,(hl) +056e d3 a1 out (0a1h),a +0570 23 inc hl +0571 7e ld a,(hl) +0572 c6 48 add a,048h +0574 d3 a1 out (0a1h),a +0576 23 inc hl +0577 0e a0 ld c,0a0h +0579 ed b3 otir +057b c9 ret +057c sub_057ch: +057c 06 05 ld b,005h +057e l057eh: +057e db 91 in a,(091h) +0580 cb 4f bit 1,a +0582 28 fa jr z,l057eh +0584 db 90 in a,(090h) +0586 f5 push af +0587 d6 30 sub 030h +0589 38 37 jr c,l05c2h +058b fe 0a cp 00ah +058d 38 14 jr c,l05a3h +058f d6 07 sub 007h +0591 fe 0a cp 00ah +0593 38 2d jr c,l05c2h +0595 fe 10 cp 010h +0597 38 0a jr c,l05a3h +0599 d6 20 sub 020h +059b fe 0a cp 00ah +059d 38 23 jr c,l05c2h +059f fe 10 cp 010h +05a1 30 1f jr nc,l05c2h +05a3 l05a3h: +05a3 4f ld c,a +05a4 78 ld a,b +05a5 b7 or a +05a6 20 03 jr nz,l05abh +05a8 f1 pop af +05a9 18 d3 jr l057eh +05ab l05abh: +05ab 7b ld a,e +05ac d3 a1 out (0a1h),a +05ae 7a ld a,d +05af f6 48 or 048h +05b1 d3 a1 out (0a1h),a +05b3 f1 pop af +05b4 fe 5b cp 05bh +05b6 38 02 jr c,l05bah +05b8 d6 20 sub 020h +05ba l05bah: +05ba d3 a0 out (0a0h),a +05bc 71 ld (hl),c +05bd 23 inc hl +05be 13 inc de +05bf 05 dec b +05c0 18 bc jr l057eh +05c2 l05c2h: +05c2 f1 pop af +05c3 fe 0d cp 00dh +05c5 28 04 jr z,l05cbh +05c7 fe e7 cp 0e7h +05c9 20 05 jr nz,l05d0h +05cb l05cbh: +05cb 78 ld a,b +05cc b7 or a +05cd 20 af jr nz,l057eh +05cf c9 ret +05d0 l05d0h: +05d0 fe 7f cp 07fh +05d2 28 04 jr z,l05d8h +05d4 fe e1 cp 0e1h +05d6 20 a6 jr nz,l057eh +05d8 l05d8h: +05d8 78 ld a,b +05d9 fe 05 cp 005h +05db 28 a1 jr z,l057eh +05dd 1b dec de +05de 2b dec hl +05df 04 inc b +05e0 7b ld a,e +05e1 d3 a1 out (0a1h),a +05e3 7a ld a,d +05e4 f6 48 or 048h +05e6 d3 a1 out (0a1h),a +05e8 3e 20 ld a,020h +05ea d3 a0 out (0a0h),a +05ec 18 90 jr l057eh +05ee sub_05eeh: +05ee 0e e4 ld c,0e4h +05f0 c3 6c 03 jp sub_036ch +05f3 l05f3h: +05f3 3a ef ff ld a,(0ffefh) +05f6 b7 or a +05f7 28 23 jr z,l061ch +05f9 3e 02 ld a,002h +05fb 32 f9 ff ld (0fff9h),a +05fe 11 28 00 ld de,00028h +0601 41 ld b,c +0602 04 inc b +0603 21 2b 01 ld hl,0012bh +0606 l0606h: +0606 19 add hl,de +0607 10 fd djnz l0606h +0609 22 fa ff ld (0fffah),hl +060c 21 f0 ff ld hl,0fff0h +060f 09 add hl,bc +0610 11 fc ff ld de,0fffch +0613 cd 33 06 call sub_0633h +0616 21 f9 ff ld hl,0fff9h +0619 c3 6b 05 jp sub_056bh +061c l061ch: +061c 21 f0 ff ld hl,0fff0h +061f 06 00 ld b,000h +0621 09 add hl,bc +0622 7e ld a,(hl) +0623 b7 or a +0624 c8 ret z +0625 21 3a 07 ld hl,l073ah +0628 11 13 00 ld de,l0013h +062b 0c inc c +062c l062ch: +062c 0d dec c +062d ca 6b 05 jp z,sub_056bh +0630 19 add hl,de +0631 18 f9 jr l062ch +0633 sub_0633h: +0633 7e ld a,(hl) +0634 cb 3f srl a +0636 cb 3f srl a +0638 cb 3f srl a +063a cb 3f srl a +063c cd 43 06 call sub_0643h +063f 13 inc de +0640 7e ld a,(hl) +0641 e6 0f and 00fh +0643 sub_0643h: +0643 c6 30 add a,030h +0645 fe 3a cp 03ah +0647 38 02 jr c,l064bh +0649 c6 07 add a,007h +064b l064bh: +064b 12 ld (de),a +064c c9 ret +064d sub_064dh: +064d 3e 0e ld a,00eh +064f d3 41 out (041h),a +0651 79 ld a,c +0652 d3 40 out (040h),a +0654 3e 0f ld a,00fh +0656 d3 41 out (041h),a +0658 db 40 in a,(040h) +065a cb 47 bit 0,a +065c c9 ret +065d sub_065dh: +065d f5 push af +065e d9 exx +065f aa xor d +0660 4f ld c,a +0661 06 00 ld b,000h +0663 cb 21 sla c +0665 cb 10 rl b +0667 53 ld d,e +0668 fd 21 74 0b ld iy,l0b74h +066c fd 09 add iy,bc +066e fd 7e 00 ld a,(iy+000h) +0671 5f ld e,a +0672 fd 7e 01 ld a,(iy+001h) +0675 aa xor d +0676 57 ld d,a +0677 d9 exx +0678 f1 pop af +0679 c9 ret +067a sub_067ah: +067a 11 ff ff ld de,0ffffh +067d l067dh: +067d cd 63 03 call sub_0363h +0680 c0 ret nz +0681 0e 80 ld c,080h +0683 cd 4d 06 call sub_064dh +0686 28 f5 jr z,l067dh +0688 af xor a +0689 c9 ret +068a sub_068ah: +068a 3e 07 ld a,007h +068c d3 41 out (041h),a +068e 3e 7e ld a,07eh +0690 d3 40 out (040h),a +0692 3e 08 ld a,008h +0694 d3 41 out (041h),a +0696 3e 06 ld a,006h +0698 d3 40 out (040h),a +069a 3e 01 ld a,001h +069c d3 41 out (041h),a +069e 3d dec a +069f d3 40 out (040h),a +06a1 c9 ret +06a2 sub_06a2h: +06a2 f5 push af +06a3 e5 push hl +06a4 c5 push bc +06a5 d5 push de +06a6 cd 8a 06 call sub_068ah +06a9 af xor a +06aa d3 41 out (041h),a +06ac 79 ld a,c +06ad d3 40 out (040h),a +06af 21 01 00 ld hl,l0000h+1 +06b2 06 04 ld b,004h +06b4 eb ex de,hl +06b5 l06b5h: +06b5 19 add hl,de +06b6 30 fd jr nc,l06b5h +06b8 e1 pop hl +06b9 e5 push hl +06ba 10 f9 djnz l06b5h +06bc 3e 07 ld a,007h +06be d3 41 out (041h),a +06c0 3e 7f ld a,07fh +06c2 d3 40 out (040h),a +06c4 d1 pop de +06c5 c1 pop bc +06c6 e1 pop hl +06c7 f1 pop af +06c8 c9 ret +06c9 l06c9h: +06c9 f5 push af +06ca 00 nop +06cb 00 nop +06cc 00 nop +06cd 00 nop +06ce 02 ld (bc),a +06cf d0 ret nc +06d0 00 nop +06d1 l06d1h: +06d1 21 ab 02 ld hl,l02abh +06d4 50 ld d,b +06d5 4c ld c,h +06d6 45 ld b,l +06d7 41 ld b,c +06d8 53 ld d,e +06d9 45 ld b,l +06da 20 54 jr nz,l0730h +06dc 59 ld e,c +06dd 50 ld d,b +06de 45 ld b,l +06df 20 49 jr nz,l072ah +06e1 4e ld c,(hl) +06e2 20 43 jr nz,$+69 +06e4 48 ld c,b +06e5 41 ld b,c +06e6 4e ld c,(hl) +06e7 4e ld c,(hl) +06e8 45 ld b,l +06e9 4c ld c,h +06ea 20 43 jr nz,$+69 +06ec 4f ld c,a +06ed 44 ld b,h +06ee 45 ld b,l +06ef 20 20 jr nz,l0711h +06f1 20 20 jr nz,l0713h +06f3 20 20 jr nz,$+34 +06f5 l06f5h: +06f5 34 inc (hl) +06f6 21 03 53 ld hl,05303h +06f9 45 ld b,l +06fa 45 ld b,l +06fb 20 22 jr nz,$+36 +06fd 49 ld c,c +06fe 46 ld b,(hl) +06ff 20 53 jr nz,l0754h +0701 4f ld c,a +0702 4d ld c,l +0703 45 ld b,l +0704 54 ld d,h +0705 48 ld c,b +0706 49 ld c,c +0707 4e ld c,(hl) +0708 47 ld b,a +0709 20 47 jr nz,l0752h +070b 4f ld c,a +070c 45 ld b,l +070d 53 ld d,e +070e 20 57 jr nz,$+89 +0710 52 ld d,d +0711 l0711h: +0711 4f ld c,a +0712 4e ld c,(hl) +0713 l0713h: +0713 47 ld b,a +0714 22 20 49 ld (04920h),hl +0717 4e ld c,(hl) +0718 20 20 jr nz,l073ah +071a 20 20 jr nz,l073ch +071c 20 20 jr nz,$+34 +071e 20 20 jr nz,l0740h +0720 4f ld c,a +0721 57 ld d,a +0722 4e ld c,(hl) +0723 45 ld b,l +0724 52 ld d,d +0725 53 ld d,e +0726 20 47 jr nz,$+73 +0728 55 ld d,l +0729 49 ld c,c +072a l072ah: +072a 44 ld b,h +072b 45 ld b,l +072c l072ch: +072c 0b dec bc +072d 21 03 50 ld hl,05003h +0730 l0730h: +0730 4c ld c,h +0731 45 ld b,l +0732 41 ld b,c +0733 53 ld d,e +0734 45 ld b,l +0735 20 57 jr nz,l078eh +0737 41 ld b,c +0738 49 ld c,c +0739 54 ld d,h +073a l073ah: +073a 10 49 djnz l0785h +073c l073ch: +073c 01 52 4f ld bc,04f52h +073f 4d ld c,l +0740 l0740h: +0740 20 46 jr nz,l0788h +0742 41 ld b,c +0743 49 ld c,c +0744 4c ld c,h +0745 55 ld d,l +0746 52 ld d,d +0747 45 ld b,l +0748 20 20 jr nz,l076ah +074a 20 20 jr nz,l076ch +074c 20 10 jr nz,$+18 +074e 71 ld (hl),c +074f 01 56 49 ld bc,04956h +0752 l0752h: +0752 44 ld b,h +0753 45 ld b,l +0754 l0754h: +0754 4f ld c,a +0755 20 46 jr nz,l079dh +0757 41 ld b,c +0758 49 ld c,c +0759 4c ld c,h +075a 55 ld d,l +075b 52 ld d,d +075c 45 ld b,l +075d 20 20 jr nz,l077fh +075f 20 10 jr nz,$+18 +0761 99 sbc a,c +0762 01 52 41 ld bc,04152h +0765 4d ld c,l +0766 20 46 jr nz,l07aeh +0768 41 ld b,c +0769 49 ld c,c +076a l076ah: +076a 4c ld c,h +076b 55 ld d,l +076c l076ch: +076c 52 ld d,d +076d 45 ld b,l +076e 20 20 jr nz,l0790h +0770 20 20 jr nz,$+34 +0772 20 10 jr nz,$+18 +0774 c1 pop bc +0775 01 53 4f ld bc,04f53h +0778 55 ld d,l +0779 4e ld c,(hl) +077a 44 ld b,h +077b 20 46 jr nz,l07c3h +077d 41 ld b,c +077e 49 ld c,c +077f l077fh: +077f 4c ld c,h +0780 55 ld d,l +0781 52 ld d,d +0782 45 ld b,l +0783 20 20 jr nz,l07a5h +0785 l0785h: +0785 20 10 jr nz,l0797h +0787 e9 jp (hl) +0788 l0788h: +0788 01 4b 45 ld bc,0454bh +078b 59 ld e,c +078c 42 ld b,d +078d 4f ld c,a +078e l078eh: +078e 41 ld b,c +078f 52 ld d,d +0790 l0790h: +0790 44 ld b,h +0791 20 46 jr nz,l07d9h +0793 41 ld b,c +0794 49 ld c,c +0795 4c ld c,h +0796 55 ld d,l +0797 l0797h: +0797 52 ld d,d +0798 45 ld b,l +0799 10 11 djnz $+19 +079b 02 ld (bc),a +079c 41 ld b,c +079d l079dh: +079d 44 ld b,h +079e 41 ld b,c +079f 50 ld d,b +07a0 54 ld d,h +07a1 4f ld c,a +07a2 52 ld d,d +07a3 20 46 jr nz,l07ebh +07a5 l07a5h: +07a5 41 ld b,c +07a6 49 ld c,c +07a7 4c ld c,h +07a8 55 ld d,l +07a9 52 ld d,d +07aa 45 ld b,l +07ab 20 21 jr nz,$+35 +07ad ab xor e +07ae l07aeh: +07ae 02 ld (bc),a +07af 52 ld d,d +07b0 45 ld b,l +07b1 2d dec l +07b2 54 ld d,h +07b3 59 ld e,c +07b4 50 ld d,b +07b5 45 ld b,l +07b6 20 43 jr nz,l07fbh +07b8 48 ld c,b +07b9 41 ld b,c +07ba 4e ld c,(hl) +07bb 4e ld c,(hl) +07bc 45 ld b,l +07bd 4c ld c,h +07be 20 43 jr nz,l0803h +07c0 4f ld c,a +07c1 44 ld b,h +07c2 45 ld b,l +07c3 l07c3h: +07c3 20 20 jr nz,l07e5h +07c5 20 20 jr nz,l07e7h +07c7 20 20 jr nz,l07e9h +07c9 20 20 jr nz,l07ebh +07cb 20 20 jr nz,l07edh +07cd 20 20 jr nz,l07efh +07cf 20 02 jr nz,l07d3h +07d1 5a ld e,d +07d2 l07d2h: +07d2 03 inc bc +07d3 l07d3h: +07d3 0c inc c +07d4 0d dec c +07d5 00 nop +07d6 5b ld e,e +07d7 5c ld e,h +07d8 5c ld e,h +07d9 l07d9h: +07d9 5c ld e,h +07da 5c ld e,h +07db 5c ld e,h +07dc 5c ld e,h +07dd 5c ld e,h +07de 5c ld e,h +07df 5c ld e,h +07e0 5c ld e,h +07e1 5d ld e,l +07e2 0c inc c +07e3 35 dec (hl) +07e4 00 nop +07e5 l07e5h: +07e5 5e ld e,(hl) +07e6 5e ld e,(hl) +07e7 l07e7h: +07e7 5e ld e,(hl) +07e8 5e ld e,(hl) +07e9 l07e9h: +07e9 5e ld e,(hl) +07ea 5e ld e,(hl) +07eb l07ebh: +07eb 5e ld e,(hl) +07ec 5e ld e,(hl) +07ed l07edh: +07ed 5e ld e,(hl) +07ee 5e ld e,(hl) +07ef l07efh: +07ef 5e ld e,(hl) +07f0 5e ld e,(hl) +07f1 0c inc c +07f2 5d ld e,l +07f3 00 nop +07f4 5f ld e,a +07f5 60 ld h,b +07f6 61 ld h,c +07f7 62 ld h,d +07f8 63 ld h,e +07f9 64 ld h,h +07fa 65 ld h,l +07fb l07fbh: +07fb 66 ld h,(hl) +07fc 67 ld h,a +07fd 68 ld l,b +07fe 69 ld l,c +07ff 6a ld l,d +0800 0c inc c +0801 85 add a,l +0802 00 nop +0803 l0803h: +0803 6b ld l,e +0804 6c ld l,h +0805 6d ld l,l +0806 6e ld l,(hl) +0807 6f ld l,a +0808 70 ld (hl),b +0809 71 ld (hl),c +080a 72 ld (hl),d +080b 73 ld (hl),e +080c 74 ld (hl),h +080d 75 ld (hl),l +080e 76 halt +080f 0c inc c +0810 ad xor l +0811 00 nop +0812 77 ld (hl),a +0813 78 ld a,b +0814 79 ld a,c +0815 7a ld a,d +0816 7b ld a,e +0817 7c ld a,h +0818 7d ld a,l +0819 7e ld a,(hl) +081a 7f ld a,a +081b 80 add a,b +081c 81 add a,c +081d 82 add a,d +081e 0c inc c +081f d5 push de +0820 00 nop +0821 83 add a,e +0822 83 add a,e +0823 83 add a,e +0824 83 add a,e +0825 83 add a,e +0826 83 add a,e +0827 83 add a,e +0828 83 add a,e +0829 83 add a,e +082a 83 add a,e +082b 83 add a,e +082c 83 add a,e +082d 0c inc c +082e fd 00 84 defb 0fdh,000h,084h ;illegal sequence +0831 85 add a,l +0832 85 add a,l +0833 85 add a,l +0834 85 add a,l +0835 85 add a,l +0836 85 add a,l +0837 85 add a,l +0838 85 add a,l +0839 85 add a,l +083a 85 add a,l +083b 86 add a,(hl) +083c l083ch: +083c 00 nop +083d 00 nop +083e 00 nop +083f 00 nop +0840 00 nop +0841 00 nop +0842 00 nop +0843 00 nop +0844 10 10 djnz l0856h +0846 10 10 djnz $+18 +0848 10 00 djnz l084ah +084a l084ah: +084a 10 00 djnz l084ch +084c l084ch: +084c 28 28 jr z,l0876h +084e 00 nop +084f 00 nop +0850 00 nop +0851 00 nop +0852 00 nop +0853 00 nop +0854 28 28 jr z,l087eh +0856 l0856h: +0856 7c ld a,h +0857 28 7c jr z,$+126 +0859 28 28 jr z,l0883h +085b 00 nop +085c 38 54 jr c,$+86 +085e 50 ld d,b +085f 38 14 jr c,$+22 +0861 54 ld d,h +0862 38 00 jr c,l0864h +0864 l0864h: +0864 60 ld h,b +0865 64 ld h,h +0866 08 ex af,af' +0867 10 20 djnz l0889h +0869 6c ld l,h +086a 0c inc c +086b 00 nop +086c 10 28 djnz l0896h +086e 28 30 jr z,l08a0h +0870 50 ld d,b +0871 4c ld c,h +0872 7c ld a,h +0873 00 nop +0874 30 30 jr nc,l08a6h +0876 l0876h: +0876 10 60 djnz $+98 +0878 00 nop +0879 00 nop +087a 00 nop +087b 00 nop +087c 10 20 djnz l089eh +087e l087eh: +087e 40 ld b,b +087f 40 ld b,b +0880 40 ld b,b +0881 20 10 jr nz,$+18 +0883 l0883h: +0883 00 nop +0884 40 ld b,b +0885 20 10 jr nz,$+18 +0887 10 10 djnz l0899h +0889 l0889h: +0889 20 40 jr nz,$+66 +088b 00 nop +088c 00 nop +088d 54 ld d,h +088e 38 7c jr c,l090ch +0890 38 54 jr c,l08e6h +0892 10 00 djnz l0894h +0894 l0894h: +0894 00 nop +0895 00 nop +0896 l0896h: +0896 10 10 djnz l08a8h +0898 7c ld a,h +0899 l0899h: +0899 10 10 djnz l08abh +089b 00 nop +089c 00 nop +089d 00 nop +089e l089eh: +089e 00 nop +089f 00 nop +08a0 l08a0h: +08a0 30 30 jr nc,$+50 +08a2 10 60 djnz l0904h +08a4 00 nop +08a5 00 nop +08a6 l08a6h: +08a6 00 nop +08a7 00 nop +08a8 l08a8h: +08a8 38 00 jr c,l08aah +08aa l08aah: +08aa 00 nop +08ab l08abh: +08ab 00 nop +08ac 00 nop +08ad 00 nop +08ae 00 nop +08af 00 nop +08b0 00 nop +08b1 18 18 jr $+26 +08b3 00 nop +08b4 04 inc b +08b5 04 inc b +08b6 08 ex af,af' +08b7 18 30 jr l08e9h +08b9 20 40 jr nz,l08fbh +08bb 00 nop +08bc 38 44 jr c,l0902h +08be 4c ld c,h +08bf 54 ld d,h +08c0 64 ld h,h +08c1 44 ld b,h +08c2 38 00 jr c,l08c4h +08c4 l08c4h: +08c4 10 30 djnz l08f6h +08c6 10 10 djnz $+18 +08c8 10 10 djnz l08dah +08ca 38 00 jr c,l08cch +08cc l08cch: +08cc 30 48 jr nc,l0916h +08ce 48 ld c,b +08cf 18 30 jr l0901h +08d1 20 78 jr nz,l094bh +08d3 00 nop +08d4 30 48 jr nc,$+74 +08d6 08 ex af,af' +08d7 10 08 djnz l08e1h +08d9 48 ld c,b +08da l08dah: +08da 30 00 jr nc,l08dch +08dc l08dch: +08dc 10 30 djnz l090eh +08de 30 50 jr nc,l0930h +08e0 50 ld d,b +08e1 l08e1h: +08e1 78 ld a,b +08e2 10 00 djnz l08e4h +08e4 l08e4h: +08e4 78 ld a,b +08e5 40 ld b,b +08e6 l08e6h: +08e6 50 ld d,b +08e7 68 ld l,b +08e8 08 ex af,af' +08e9 l08e9h: +08e9 48 ld c,b +08ea 30 00 jr nc,l08ech +08ec l08ech: +08ec 30 28 jr nc,l0916h +08ee 40 ld b,b +08ef 70 ld (hl),b +08f0 68 ld l,b +08f1 48 ld c,b +08f2 30 00 jr nc,l08f4h +08f4 l08f4h: +08f4 78 ld a,b +08f5 48 ld c,b +08f6 l08f6h: +08f6 08 ex af,af' +08f7 10 30 djnz l0929h +08f9 20 20 jr nz,l091bh +08fb l08fbh: +08fb 00 nop +08fc 30 48 jr nc,l0946h +08fe 48 ld c,b +08ff 30 48 jr nc,l0949h +0901 l0901h: +0901 48 ld c,b +0902 l0902h: +0902 30 00 jr nc,l0904h +0904 l0904h: +0904 30 48 jr nc,l094eh +0906 48 ld c,b +0907 38 08 jr c,l0911h +0909 50 ld d,b +090a 30 00 jr nc,l090ch +090c l090ch: +090c 00 nop +090d 00 nop +090e l090eh: +090e 30 30 jr nc,$+50 +0910 00 nop +0911 l0911h: +0911 30 30 jr nc,l0943h +0913 00 nop +0914 00 nop +0915 00 nop +0916 l0916h: +0916 30 30 jr nc,l0948h +0918 00 nop +0919 30 10 jr nc,l092bh +091b l091bh: +091b 40 ld b,b +091c 08 ex af,af' +091d 10 20 djnz l093fh +091f 40 ld b,b +0920 20 10 jr nz,l0932h +0922 08 ex af,af' +0923 00 nop +0924 00 nop +0925 00 nop +0926 00 nop +0927 78 ld a,b +0928 00 nop +0929 l0929h: +0929 78 ld a,b +092a 00 nop +092b l092bh: +092b 00 nop +092c 40 ld b,b +092d 20 10 jr nz,l093fh +092f 08 ex af,af' +0930 l0930h: +0930 10 20 djnz l0952h +0932 l0932h: +0932 40 ld b,b +0933 00 nop +0934 30 48 jr nc,l097eh +0936 48 ld c,b +0937 10 20 djnz l0959h +0939 20 00 jr nz,l093bh +093b l093bh: +093b 20 40 jr nz,l097dh +093d 38 04 jr c,l0943h +093f l093fh: +093f 38 08 jr c,l0949h +0941 38 48 jr c,$+74 +0943 l0943h: +0943 34 inc (hl) +0944 10 28 djnz l096eh +0946 l0946h: +0946 44 ld b,h +0947 44 ld b,h +0948 l0948h: +0948 7c ld a,h +0949 l0949h: +0949 44 ld b,h +094a 44 ld b,h +094b l094bh: +094b 00 nop +094c 78 ld a,b +094d 44 ld b,h +094e l094eh: +094e 44 ld b,h +094f 78 ld a,b +0950 44 ld b,h +0951 44 ld b,h +0952 l0952h: +0952 78 ld a,b +0953 00 nop +0954 38 44 jr c,l099ah +0956 40 ld b,b +0957 40 ld b,b +0958 40 ld b,b +0959 l0959h: +0959 44 ld b,h +095a 38 00 jr c,l095ch +095c l095ch: +095c 70 ld (hl),b +095d 48 ld c,b +095e 44 ld b,h +095f 44 ld b,h +0960 44 ld b,h +0961 48 ld c,b +0962 70 ld (hl),b +0963 00 nop +0964 7c ld a,h +0965 40 ld b,b +0966 40 ld b,b +0967 70 ld (hl),b +0968 40 ld b,b +0969 40 ld b,b +096a 7c ld a,h +096b 00 nop +096c 7c ld a,h +096d 40 ld b,b +096e l096eh: +096e 40 ld b,b +096f 70 ld (hl),b +0970 40 ld b,b +0971 40 ld b,b +0972 40 ld b,b +0973 00 nop +0974 38 44 jr c,l09bah +0976 44 ld b,h +0977 40 ld b,b +0978 5c ld e,h +0979 44 ld b,h +097a 3c inc a +097b 00 nop +097c 44 ld b,h +097d l097dh: +097d 44 ld b,h +097e l097eh: +097e 44 ld b,h +097f 7c ld a,h +0980 44 ld b,h +0981 44 ld b,h +0982 44 ld b,h +0983 00 nop +0984 38 10 jr c,l0996h +0986 10 10 djnz l0998h +0988 10 10 djnz l099ah +098a 38 00 jr c,l098ch +098c l098ch: +098c 1c inc e +098d 08 ex af,af' +098e 08 ex af,af' +098f 08 ex af,af' +0990 48 ld c,b +0991 48 ld c,b +0992 30 00 jr nc,l0994h +0994 l0994h: +0994 48 ld c,b +0995 48 ld c,b +0996 l0996h: +0996 50 ld d,b +0997 70 ld (hl),b +0998 l0998h: +0998 50 ld d,b +0999 48 ld c,b +099a l099ah: +099a 4c ld c,h +099b 00 nop +099c 40 ld b,b +099d 40 ld b,b +099e 40 ld b,b +099f 40 ld b,b +09a0 40 ld b,b +09a1 40 ld b,b +09a2 7c ld a,h +09a3 00 nop +09a4 6c ld l,h +09a5 54 ld d,h +09a6 54 ld d,h +09a7 44 ld b,h +09a8 44 ld b,h +09a9 44 ld b,h +09aa 44 ld b,h +09ab 00 nop +09ac 44 ld b,h +09ad 64 ld h,h +09ae 64 ld h,h +09af 54 ld d,h +09b0 54 ld d,h +09b1 4c ld c,h +09b2 4c ld c,h +09b3 00 nop +09b4 38 44 jr c,l09fah +09b6 44 ld b,h +09b7 44 ld b,h +09b8 44 ld b,h +09b9 44 ld b,h +09ba l09bah: +09ba 38 00 jr c,l09bch +09bc l09bch: +09bc 78 ld a,b +09bd 44 ld b,h +09be 44 ld b,h +09bf 78 ld a,b +09c0 40 ld b,b +09c1 40 ld b,b +09c2 40 ld b,b +09c3 00 nop +09c4 38 44 jr c,$+70 +09c6 44 ld b,h +09c7 44 ld b,h +09c8 54 ld d,h +09c9 48 ld c,b +09ca 34 inc (hl) +09cb 00 nop +09cc 78 ld a,b +09cd 48 ld c,b +09ce 48 ld c,b +09cf 78 ld a,b +09d0 50 ld d,b +09d1 48 ld c,b +09d2 4c ld c,h +09d3 00 nop +09d4 38 44 jr c,l0a1ah +09d6 40 ld b,b +09d7 38 04 jr c,l09ddh +09d9 44 ld b,h +09da 38 00 jr c,l09dch +09dc l09dch: +09dc 7c ld a,h +09dd l09ddh: +09dd 10 10 djnz l09efh +09df 10 10 djnz l09f1h +09e1 10 10 djnz l09f3h +09e3 00 nop +09e4 44 ld b,h +09e5 44 ld b,h +09e6 44 ld b,h +09e7 44 ld b,h +09e8 44 ld b,h +09e9 44 ld b,h +09ea 38 00 jr c,l09ech +09ec l09ech: +09ec 44 ld b,h +09ed 44 ld b,h +09ee 44 ld b,h +09ef l09efh: +09ef 28 28 jr z,l0a19h +09f1 l09f1h: +09f1 28 10 jr z,l0a03h +09f3 l09f3h: +09f3 00 nop +09f4 44 ld b,h +09f5 44 ld b,h +09f6 44 ld b,h +09f7 44 ld b,h +09f8 54 ld d,h +09f9 54 ld d,h +09fa l09fah: +09fa 28 00 jr z,l09fch +09fc l09fch: +09fc 44 ld b,h +09fd 44 ld b,h +09fe 28 10 jr z,l0a10h +0a00 28 44 jr z,$+70 +0a02 44 ld b,h +0a03 l0a03h: +0a03 00 nop +0a04 44 ld b,h +0a05 44 ld b,h +0a06 44 ld b,h +0a07 38 10 jr c,l0a19h +0a09 10 10 djnz l0a1bh +0a0b 00 nop +0a0c 7c ld a,h +0a0d 0c inc c +0a0e 18 10 jr $+18 +0a10 l0a10h: +0a10 20 60 jr nz,l0a72h +0a12 7c ld a,h +0a13 00 nop +0a14 00 nop +0a15 00 nop +0a16 00 nop +0a17 3c inc a +0a18 7c ld a,h +0a19 l0a19h: +0a19 00 nop +0a1a l0a1ah: +0a1a 00 nop +0a1b l0a1bh: +0a1b fc fc 00 call m,000fch +0a1e 00 nop +0a1f fc fc 00 call m,000fch +0a22 00 nop +0a23 fc 00 00 call m,l0000h +0a26 00 nop +0a27 f0 ret p +0a28 f8 ret m +0a29 00 nop +0a2a 00 nop +0a2b fc fc fc call m,0fcfch +0a2e 00 nop +0a2f fc fc fc call m,0fcfch +0a32 fc 00 fc call m,0fc00h +0a35 fc f0 f0 call m,0f0f0h +0a38 f0 ret p +0a39 f0 ret p +0a3a f0 ret p +0a3b f0 ret p +0a3c fc fc 0c call m,sub_0cfch +0a3f 0c inc c +0a40 0c inc c +0a41 04 inc b +0a42 04 inc b +0a43 04 inc b +0a44 fc fc e0 call m,0e0fch +0a47 e0 ret po +0a48 e0 ret po +0a49 e0 ret po +0a4a e0 ret po +0a4b e0 ret po +0a4c fc fc 7c call m,07cfch +0a4f 7c ld a,h +0a50 7c ld a,h +0a51 7c ld a,h +0a52 7c ld a,h +0a53 7c ld a,h +0a54 fc fc 80 call m,080fch +0a57 80 add a,b +0a58 80 add a,b +0a59 l0a59h: +0a59 18 18 jr l0a73h +0a5b 18 fc jr l0a59h +0a5d fc 7c 7c call m,07c7ch +0a60 7c ld a,h +0a61 3c inc a +0a62 3c inc a +0a63 3c inc a +0a64 fc fc 80 call m,080fch +0a67 80 add a,b +0a68 80 add a,b +0a69 80 add a,b +0a6a 80 add a,b +0a6b 80 add a,b +0a6c fc fc 00 call m,000fch +0a6f 00 nop +0a70 00 nop +0a71 60 ld h,b +0a72 l0a72h: +0a72 70 ld (hl),b +0a73 l0a73h: +0a73 70 ld (hl),b +0a74 fc fc 78 call m,078fch +0a77 38 18 jr c,l0a91h +0a79 08 ex af,af' +0a7a 08 ex af,af' +0a7b 08 ex af,af' +0a7c fc fc 04 call m,004fch +0a7f 04 inc b +0a80 04 inc b +0a81 04 inc b +0a82 04 inc b +0a83 04 inc b +0a84 fc fc c0 call m,0c0fch +0a87 c0 ret nz +0a88 c0 ret nz +0a89 c0 ret nz +0a8a c0 ret nz +0a8b c0 ret nz +0a8c fc fc 3c call m,03cfch +0a8f 3c inc a +0a90 3c inc a +0a91 l0a91h: +0a91 3c inc a +0a92 3c inc a +0a93 3c inc a +0a94 f0 ret p +0a95 f0 ret p +0a96 f0 ret p +0a97 f0 ret p +0a98 f0 ret p +0a99 f0 ret p +0a9a f0 ret p +0a9b f0 ret p +0a9c 00 nop +0a9d 00 nop +0a9e 20 30 jr nz,l0ad0h +0aa0 30 38 jr nc,$+58 +0aa2 38 3c jr c,l0ae0h +0aa4 e0 ret po +0aa5 e0 ret po +0aa6 e0 ret po +0aa7 60 ld h,b +0aa8 60 ld h,b +0aa9 60 ld h,b +0aaa 20 20 jr nz,l0acch +0aac 78 ld a,b +0aad 78 ld a,b +0aae 78 ld a,b +0aaf 70 ld (hl),b +0ab0 70 ld (hl),b +0ab1 70 ld (hl),b +0ab2 60 ld h,b +0ab3 60 ld h,b +0ab4 18 3c jr l0af2h +0ab6 3c inc a +0ab7 3c inc a +0ab8 3c inc a +0ab9 00 nop +0aba 00 nop +0abb 00 nop +0abc 1c inc e +0abd 1c inc e +0abe 1c inc e +0abf 0c inc c +0ac0 0c inc c +0ac1 0c inc c +0ac2 04 inc b +0ac3 04 inc b +0ac4 80 add a,b +0ac5 80 add a,b +0ac6 80 add a,b +0ac7 80 add a,b +0ac8 80 add a,b +0ac9 80 add a,b +0aca 80 add a,b +0acb 80 add a,b +0acc l0acch: +0acc 60 ld h,b +0acd 60 ld h,b +0ace 00 nop +0acf 04 inc b +0ad0 l0ad0h: +0ad0 00 nop +0ad1 60 ld h,b +0ad2 60 ld h,b +0ad3 70 ld (hl),b +0ad4 18 38 jr l0b0eh +0ad6 78 ld a,b +0ad7 f8 ret m +0ad8 78 ld a,b +0ad9 38 18 jr c,l0af3h +0adb 08 ex af,af' +0adc 04 inc b +0add 04 inc b +0ade 04 inc b +0adf 04 inc b +0ae0 l0ae0h: +0ae0 04 inc b +0ae1 04 inc b +0ae2 04 inc b +0ae3 04 inc b +0ae4 c0 ret nz +0ae5 c0 ret nz +0ae6 c0 ret nz +0ae7 c0 ret nz +0ae8 c0 ret nz +0ae9 c0 ret nz +0aea c0 ret nz +0aeb c0 ret nz +0aec 3c inc a +0aed 3c inc a +0aee 3c inc a +0aef 3c inc a +0af0 3c inc a +0af1 3c inc a +0af2 l0af2h: +0af2 3c inc a +0af3 l0af3h: +0af3 3c inc a +0af4 f0 ret p +0af5 f0 ret p +0af6 f0 ret p +0af7 f0 ret p +0af8 f0 ret p +0af9 fc fc 00 call m,000fch +0afc 3c inc a +0afd 3c inc a +0afe 3c inc a +0aff 3c inc a +0b00 3c inc a +0b01 l0b01h: +0b01 fc fc 00 call m,000fch +0b04 00 nop +0b05 00 nop +0b06 80 add a,b +0b07 80 add a,b +0b08 80 add a,b +0b09 fc fc 00 call m,000fch +0b0c 60 ld h,b +0b0d 40 ld b,b +0b0e l0b0eh: +0b0e 40 ld b,b +0b0f 40 ld b,b +0b10 40 ld b,b +0b11 fc fc 00 call m,000fch +0b14 00 nop +0b15 18 18 jr l0b2fh +0b17 3c inc a +0b18 3c inc a +0b19 fc fc 00 call m,000fch +0b1c 04 inc b +0b1d 00 nop +0b1e 00 nop +0b1f 00 nop +0b20 00 nop +0b21 fc fc 00 call m,000fch +0b24 80 add a,b +0b25 80 add a,b +0b26 80 add a,b +0b27 80 add a,b +0b28 80 add a,b +0b29 fc fc 00 call m,000fch +0b2c 70 ld (hl),b +0b2d 60 ld h,b +0b2e 00 nop +0b2f l0b2fh: +0b2f 00 nop +0b30 00 nop +0b31 fc fc 00 call m,000fch +0b34 08 ex af,af' +0b35 08 ex af,af' +0b36 1c inc e +0b37 3c inc a +0b38 7c ld a,h +0b39 fc fc 00 call m,000fch +0b3c 04 inc b +0b3d 00 nop +0b3e 00 nop +0b3f 80 add a,b +0b40 c0 ret nz +0b41 fc fc 00 call m,000fch +0b44 c0 ret nz +0b45 80 add a,b +0b46 00 nop +0b47 00 nop +0b48 04 inc b +0b49 fc fc 00 call m,000fch +0b4c 3c inc a +0b4d 3c inc a +0b4e 7c ld a,h +0b4f l0b4fh: +0b4f fc fc fc call m,0fcfch +0b52 fc 00 fc call m,0fc00h +0b55 fc fc fc call m,0fcfch +0b58 00 nop +0b59 fc fc fc call m,0fcfch +0b5c 00 nop +0b5d 00 nop +0b5e 7c ld a,h +0b5f 3c inc a +0b60 00 nop +0b61 00 nop +0b62 00 nop +0b63 00 nop +0b64 00 nop +0b65 00 nop +0b66 fc fc 00 call m,000fch +0b69 00 nop +0b6a fc 00 00 call m,l0000h +0b6d 00 nop +0b6e f8 ret m +0b6f f0 ret p +0b70 00 nop +0b71 00 nop +0b72 00 nop +0b73 l0b73h: +0b73 00 nop +0b74 l0b74h: +0b74 00 nop +0b75 00 nop +0b76 21 10 42 ld hl,04210h +0b79 20 63 jr nz,l0bdeh +0b7b 30 84 jr nc,l0b01h +0b7d 40 ld b,b +0b7e a5 and l +0b7f 50 ld d,b +0b80 c6 60 add a,060h +0b82 e7 rst 20h +0b83 70 ld (hl),b +0b84 08 ex af,af' +0b85 81 add a,c +0b86 29 add hl,hl +0b87 91 sub c +0b88 4a ld c,d +0b89 a1 and c +0b8a 6b ld l,e +0b8b b1 or c +0b8c 8c adc a,h +0b8d c1 pop bc +0b8e ad xor l +0b8f d1 pop de +0b90 ce e1 adc a,0e1h +0b92 ef rst 28h +0b93 f1 pop af +0b94 31 12 10 ld sp,01012h +0b97 02 ld (bc),a +0b98 73 ld (hl),e +0b99 32 52 22 ld (02252h),a +0b9c b5 or l +0b9d 52 ld d,d +0b9e 94 sub h +0b9f 42 ld b,d +0ba0 f7 rst 30h +0ba1 72 ld (hl),d +0ba2 d6 62 sub 062h +0ba4 39 add hl,sp +0ba5 93 sub e +0ba6 18 83 jr $-123 +0ba8 7b ld a,e +0ba9 b3 or e +0baa 5a ld e,d +0bab a3 and e +0bac bd cp l +0bad d3 9c out (09ch),a +0baf c3 ff f3 jp 0f3ffh +0bb2 de e3 sbc a,0e3h +0bb4 62 ld h,d +0bb5 24 inc h +0bb6 43 ld b,e +0bb7 34 inc (hl) +0bb8 20 04 jr nz,l0bbeh +0bba 01 14 e6 ld bc,0e614h +0bbd 64 ld h,h +0bbe l0bbeh: +0bbe c7 rst 0 +0bbf 74 ld (hl),h +0bc0 a4 and h +0bc1 44 ld b,h +0bc2 85 add a,l +0bc3 54 ld d,h +0bc4 6a ld l,d +0bc5 a5 and l +0bc6 4b ld c,e +0bc7 b5 or l +0bc8 28 85 jr z,l0b4fh +0bca 09 add hl,bc +0bcb 95 sub l +0bcc ee e5 xor 0e5h +0bce cf rst 8 +0bcf f5 push af +0bd0 ac xor h +0bd1 l0bd1h: +0bd1 c5 push bc +0bd2 8d adc a,l +0bd3 d5 push de +0bd4 53 ld d,e +0bd5 36 72 ld (hl),072h +0bd7 26 11 ld h,011h +0bd9 16 30 ld d,030h +0bdb 06 d7 ld b,0d7h +0bdd 76 halt +0bde l0bdeh: +0bde f6 66 or 066h +0be0 95 sub l +0be1 56 ld d,(hl) +0be2 b4 or h +0be3 46 ld b,(hl) +0be4 5b ld e,e +0be5 b7 or a +0be6 7a ld a,d +0be7 a7 and a +0be8 19 add hl,de +0be9 97 sub a +0bea 38 87 jr c,l0b73h +0bec df rst 18h +0bed f7 rst 30h +0bee fe e7 cp 0e7h +0bf0 9d sbc a,l +0bf1 d7 rst 10h +0bf2 bc cp h +0bf3 c7 rst 0 +0bf4 c4 48 e5 call nz,0e548h +0bf7 58 ld e,b +0bf8 86 add a,(hl) +0bf9 68 ld l,b +0bfa a7 and a +0bfb 78 ld a,b +0bfc 40 ld b,b +0bfd 08 ex af,af' +0bfe 61 ld h,c +0bff 18 02 jr l0c03h +0c01 28 23 jr z,$+37 +0c03 l0c03h: +0c03 38 cc jr c,l0bd1h +0c05 c9 ret +0c06 ed defb 0edh;next byte illegal after ed +0c07 d9 exx +0c08 8e adc a,(hl) +0c09 e9 jp (hl) +0c0a af xor a +0c0b f9 ld sp,hl +0c0c 48 ld c,b +0c0d 89 adc a,c +0c0e 69 ld l,c +0c0f 99 sbc a,c +0c10 0a ld a,(bc) +0c11 a9 xor c +0c12 2b dec hl +0c13 b9 cp c +0c14 f5 push af +0c15 5a ld e,d +0c16 d4 4a b7 call nc,0b74ah +0c19 7a ld a,d +0c1a 96 sub (hl) +0c1b 6a ld l,d +0c1c 71 ld (hl),c +0c1d 1a ld a,(de) +0c1e 50 ld d,b +0c1f 0a ld a,(bc) +0c20 33 inc sp +0c21 3a 12 2a ld a,(02a12h) +0c24 fd db dc defb 0fdh,0dbh,0dch ;illegal sequence +0c27 cb bf res 7,a +0c29 fb ei +0c2a 9e sbc a,(hl) +0c2b eb ex de,hl +0c2c 79 ld a,c +0c2d 9b sbc a,e +0c2e 58 ld e,b +0c2f 8b adc a,e +0c30 3b dec sp +0c31 bb cp e +0c32 1a ld a,(de) +0c33 ab xor e +0c34 a6 and (hl) +0c35 6c ld l,h +0c36 87 add a,a +0c37 7c ld a,h +0c38 e4 4c c5 call po,0c54ch +0c3b 5c ld e,h +0c3c 22 2c 03 ld (l032ch),hl +0c3f 3c inc a +0c40 60 ld h,b +0c41 0c inc c +0c42 41 ld b,c +0c43 1c inc e +0c44 ae xor (hl) +0c45 ed defb 0edh;next byte illegal after ed +0c46 8f adc a,a +0c47 fd ec cd defb 0fdh,0ech,0cdh ;illegal sequence +0c4a cd dd 2a call 02addh +0c4d ad xor l +0c4e 0b dec bc +0c4f bd cp l +0c50 68 ld l,b +0c51 8d adc a,l +0c52 49 ld c,c +0c53 9d sbc a,l +0c54 97 sub a +0c55 7e ld a,(hl) +0c56 b6 or (hl) +0c57 6e ld l,(hl) +0c58 d5 push de +0c59 5e ld e,(hl) +0c5a f4 4e 13 call p,0134eh +0c5d 3e 32 ld a,032h +0c5f 2e 51 ld l,051h +0c61 1e 70 ld e,070h +0c63 0e 9f ld c,09fh +0c65 ff rst 38h +0c66 be cp (hl) +0c67 ef rst 28h +0c68 dd df fc defb 0ddh,0dfh,0fch ;illegal sequence +0c6b cf rst 8 +0c6c 1b dec de +0c6d bf cp a +0c6e 3a af 59 ld a,(059afh) +0c71 9f sbc a,a +0c72 78 ld a,b +0c73 8f adc a,a +0c74 88 adc a,b +0c75 91 sub c +0c76 a9 xor c +0c77 81 add a,c +0c78 ca b1 eb jp z,0ebb1h +0c7b a1 and c +0c7c 0c inc c +0c7d d1 pop de +0c7e 2d dec l +0c7f c1 pop bc +0c80 4e ld c,(hl) +0c81 f1 pop af +0c82 6f ld l,a +0c83 e1 pop hl +0c84 80 add a,b +0c85 10 a1 djnz $-93 +0c87 00 nop +0c88 c2 30 e3 jp nz,0e330h +0c8b 20 04 jr nz,l0c91h +0c8d 50 ld d,b +0c8e 25 dec h +0c8f 40 ld b,b +0c90 46 ld b,(hl) +0c91 l0c91h: +0c91 70 ld (hl),b +0c92 67 ld h,a +0c93 60 ld h,b +0c94 b9 cp c +0c95 83 add a,e +0c96 98 sbc a,b +0c97 93 sub e +0c98 fb ei +0c99 a3 and e +0c9a da b3 3d jp c,03db3h +0c9d c3 1c d3 jp 0d31ch +0ca0 7f ld a,a +0ca1 e3 ex (sp),hl +0ca2 5e ld e,(hl) +0ca3 f3 di +0ca4 b1 or c +0ca5 02 ld (bc),a +0ca6 90 sub b +0ca7 12 ld (de),a +0ca8 f3 di +0ca9 22 d2 32 ld (032d2h),hl +0cac 35 dec (hl) +0cad 42 ld b,d +0cae 14 inc d +0caf 52 ld d,d +0cb0 77 ld (hl),a +0cb1 62 ld h,d +0cb2 56 ld d,(hl) +0cb3 72 ld (hl),d +0cb4 ea b5 cb jp pe,0cbb5h +0cb7 a5 and l +0cb8 a8 xor b +0cb9 95 sub l +0cba 89 adc a,c +0cbb 85 add a,l +0cbc 6e ld l,(hl) +0cbd f5 push af +0cbe 4f ld c,a +0cbf e5 push hl +0cc0 2c inc l +0cc1 d5 push de +0cc2 0d dec c +0cc3 c5 push bc +0cc4 e2 34 c3 jp po,0c334h +0cc7 24 inc h +0cc8 a0 and b +0cc9 14 inc d +0cca 81 add a,c +0ccb 04 inc b +0ccc 66 ld h,(hl) +0ccd 74 ld (hl),h +0cce 47 ld b,a +0ccf 64 ld h,h +0cd0 24 inc h +0cd1 54 ld d,h +0cd2 05 dec b +0cd3 44 ld b,h +0cd4 db a7 in a,(0a7h) +0cd6 fa b7 99 jp m,099b7h +0cd9 87 add a,a +0cda b8 cp b +0cdb 97 sub a +0cdc 5f ld e,a +0cdd e7 rst 20h +0cde 7e ld a,(hl) +0cdf f7 rst 30h +0ce0 1d dec e +0ce1 c7 rst 0 +0ce2 3c inc a +0ce3 d7 rst 10h +0ce4 d3 26 out (026h),a +0ce6 f2 36 91 jp p,09136h +0ce9 06 b0 ld b,0b0h +0ceb 16 57 ld d,057h +0ced 66 ld h,(hl) +0cee 76 halt +0cef 76 halt +0cf0 l0cf0h: +0cf0 15 dec d +0cf1 46 ld b,(hl) +0cf2 34 inc (hl) +0cf3 56 ld d,(hl) +0cf4 4c ld c,h +0cf5 d9 exx +0cf6 6d ld l,l +0cf7 c9 ret +0cf8 0e f9 ld c,0f9h +0cfa 2f cpl +0cfb e9 jp (hl) +0cfc sub_0cfch: +0cfc c8 ret z +0cfd 99 sbc a,c +0cfe e9 jp (hl) +0cff 89 adc a,c +0d00 8a adc a,d +0d01 b9 cp c +0d02 ab xor e +0d03 a9 xor c +0d04 44 ld b,h +0d05 58 ld e,b +0d06 65 ld h,l +0d07 48 ld c,b +0d08 06 78 ld b,078h +0d0a 27 daa +0d0b 68 ld l,b +0d0c c0 ret nz +0d0d 18 e1 jr l0cf0h +0d0f 08 ex af,af' +0d10 82 add a,d +0d11 38 a3 jr c,$-91 +0d13 28 7d jr z,l0d92h +0d15 cb 5c bit 3,h +0d17 db 3f in a,(03fh) +0d19 eb ex de,hl +0d1a 1e fb ld e,0fbh +0d1c f9 ld sp,hl +0d1d 8b adc a,e +0d1e d8 ret c +0d1f 9b sbc a,e +0d20 bb cp e +0d21 ab xor e +0d22 9a sbc a,d +0d23 bb cp e +0d24 75 ld (hl),l +0d25 4a ld c,d +0d26 54 ld d,h +0d27 5a ld e,d +0d28 37 scf +0d29 6a ld l,d +0d2a 16 7a ld d,07ah +0d2c f1 pop af +0d2d 0a ld a,(bc) +0d2e d0 ret nc +0d2f 1a ld a,(de) +0d30 b3 or e +0d31 2a 92 3a ld hl,(03a92h) +0d34 2e fd ld l,0fdh +0d36 0f rrca +0d37 ed defb 0edh;next byte illegal after ed +0d38 6c ld l,h +0d39 dd 4d defb 0ddh,04dh ;ld c,ixl +0d3b cd aa bd call 0bdaah +0d3e 8b adc a,e +0d3f ad xor l +0d40 e8 ret pe +0d41 9d sbc a,l +0d42 c9 ret +0d43 8d adc a,l +0d44 26 7c ld h,07ch +0d46 07 rlca +0d47 6c ld l,h +0d48 64 ld h,h +0d49 5c ld e,h +0d4a 45 ld b,l +0d4b 4c ld c,h +0d4c a2 and d +0d4d 3c inc a +0d4e 83 add a,e +0d4f 2c inc l +0d50 e0 ret po +0d51 1c inc e +0d52 c1 pop bc +0d53 0c inc c +0d54 1f rra +0d55 ef rst 28h +0d56 3e ff ld a,0ffh +0d58 5d ld e,l +0d59 cf rst 8 +0d5a 7c ld a,h +0d5b df rst 18h +0d5c 9b sbc a,e +0d5d af xor a +0d5e ba cp d +0d5f bf cp a +0d60 d9 exx +0d61 8f adc a,a +0d62 f8 ret m +0d63 9f sbc a,a +0d64 17 rla +0d65 6e ld l,(hl) +0d66 36 7e ld (hl),07eh +0d68 55 ld d,l +0d69 4e ld c,(hl) +0d6a 74 ld (hl),h +0d6b 5e ld e,(hl) +0d6c 93 sub e +0d6d 2e b2 ld l,0b2h +0d6f 3e d1 ld a,0d1h +0d71 0e f0 ld c,0f0h +0d73 1e 00 ld e,000h +0d75 00 nop +0d76 00 nop +0d77 00 nop +0d78 00 nop +0d79 00 nop +0d7a 00 nop +0d7b 00 nop +0d7c 00 nop +0d7d 00 nop +0d7e 00 nop +0d7f 00 nop +0d80 00 nop +0d81 00 nop +0d82 00 nop +0d83 00 nop +0d84 00 nop +0d85 00 nop +0d86 00 nop +0d87 00 nop +0d88 00 nop +0d89 00 nop +0d8a 00 nop +0d8b 00 nop +0d8c 00 nop +0d8d 00 nop +0d8e 00 nop +0d8f 00 nop +0d90 00 nop +0d91 00 nop +0d92 l0d92h: +0d92 00 nop +0d93 00 nop +0d94 00 nop +0d95 00 nop +0d96 00 nop +0d97 00 nop +0d98 00 nop +0d99 00 nop +0d9a 00 nop +0d9b 00 nop +0d9c 00 nop +0d9d 00 nop +0d9e 00 nop +0d9f 00 nop +0da0 00 nop +0da1 00 nop +0da2 00 nop +0da3 00 nop +0da4 00 nop +0da5 00 nop +0da6 00 nop +0da7 00 nop +0da8 00 nop +0da9 00 nop +0daa 00 nop +0dab 00 nop +0dac 00 nop +0dad 00 nop +0dae 00 nop +0daf 00 nop +0db0 00 nop +0db1 00 nop +0db2 00 nop +0db3 00 nop +0db4 00 nop +0db5 00 nop +0db6 00 nop +0db7 00 nop +0db8 00 nop +0db9 00 nop +0dba 00 nop +0dbb 00 nop +0dbc 00 nop +0dbd 00 nop +0dbe 00 nop +0dbf 00 nop +0dc0 00 nop +0dc1 00 nop +0dc2 00 nop +0dc3 00 nop +0dc4 00 nop +0dc5 00 nop +0dc6 00 nop +0dc7 00 nop +0dc8 00 nop +0dc9 00 nop +0dca 00 nop +0dcb 00 nop +0dcc 00 nop +0dcd 00 nop +0dce 00 nop +0dcf 00 nop +0dd0 00 nop +0dd1 00 nop +0dd2 00 nop +0dd3 00 nop +0dd4 00 nop +0dd5 00 nop +0dd6 00 nop +0dd7 00 nop +0dd8 00 nop +0dd9 00 nop +0dda 00 nop +0ddb 00 nop +0ddc 00 nop +0ddd 00 nop +0dde 00 nop +0ddf 00 nop +0de0 00 nop +0de1 00 nop +0de2 00 nop +0de3 00 nop +0de4 00 nop +0de5 00 nop +0de6 00 nop +0de7 00 nop +0de8 00 nop +0de9 00 nop +0dea 00 nop +0deb 00 nop +0dec 00 nop +0ded 00 nop +0dee 00 nop +0def 00 nop +0df0 00 nop +0df1 00 nop +0df2 00 nop +0df3 00 nop +0df4 00 nop +0df5 00 nop +0df6 00 nop +0df7 00 nop +0df8 00 nop +0df9 00 nop +0dfa 00 nop +0dfb 00 nop +0dfc 00 nop +0dfd 00 nop +0dfe 00 nop +0dff 00 nop +0e00 00 nop +0e01 00 nop +0e02 00 nop +0e03 00 nop +0e04 00 nop +0e05 00 nop +0e06 00 nop +0e07 00 nop +0e08 00 nop +0e09 00 nop +0e0a 00 nop +0e0b 00 nop +0e0c 00 nop +0e0d 00 nop +0e0e 00 nop +0e0f 00 nop +0e10 00 nop +0e11 00 nop +0e12 00 nop +0e13 00 nop +0e14 00 nop +0e15 00 nop +0e16 00 nop +0e17 00 nop +0e18 00 nop +0e19 00 nop +0e1a 00 nop +0e1b 00 nop +0e1c 00 nop +0e1d 00 nop +0e1e 00 nop +0e1f 00 nop +0e20 00 nop +0e21 00 nop +0e22 00 nop +0e23 00 nop +0e24 00 nop +0e25 00 nop +0e26 00 nop +0e27 00 nop +0e28 00 nop +0e29 00 nop +0e2a 00 nop +0e2b 00 nop +0e2c 00 nop +0e2d 00 nop +0e2e 00 nop +0e2f 00 nop +0e30 00 nop +0e31 00 nop +0e32 00 nop +0e33 00 nop +0e34 00 nop +0e35 00 nop +0e36 00 nop +0e37 00 nop +0e38 00 nop +0e39 00 nop +0e3a 00 nop +0e3b 00 nop +0e3c 00 nop +0e3d 00 nop +0e3e 00 nop +0e3f 00 nop +0e40 00 nop +0e41 00 nop +0e42 00 nop +0e43 00 nop +0e44 00 nop +0e45 00 nop +0e46 00 nop +0e47 00 nop +0e48 00 nop +0e49 00 nop +0e4a 00 nop +0e4b 00 nop +0e4c 00 nop +0e4d 00 nop +0e4e 00 nop +0e4f 00 nop +0e50 00 nop +0e51 00 nop +0e52 00 nop +0e53 00 nop +0e54 00 nop +0e55 00 nop +0e56 00 nop +0e57 00 nop +0e58 00 nop +0e59 00 nop +0e5a 00 nop +0e5b 00 nop +0e5c 00 nop +0e5d 00 nop +0e5e 00 nop +0e5f 00 nop +0e60 00 nop +0e61 00 nop +0e62 00 nop +0e63 00 nop +0e64 00 nop +0e65 00 nop +0e66 00 nop +0e67 00 nop +0e68 00 nop +0e69 00 nop +0e6a 00 nop +0e6b 00 nop +0e6c 00 nop +0e6d 00 nop +0e6e 00 nop +0e6f 00 nop +0e70 00 nop +0e71 00 nop +0e72 00 nop +0e73 00 nop +0e74 00 nop +0e75 00 nop +0e76 00 nop +0e77 00 nop +0e78 00 nop +0e79 00 nop +0e7a 00 nop +0e7b 00 nop +0e7c 00 nop +0e7d 00 nop +0e7e 00 nop +0e7f 00 nop +0e80 00 nop +0e81 00 nop +0e82 00 nop +0e83 00 nop +0e84 00 nop +0e85 00 nop +0e86 00 nop +0e87 00 nop +0e88 00 nop +0e89 00 nop +0e8a 00 nop +0e8b 00 nop +0e8c 00 nop +0e8d 00 nop +0e8e 00 nop +0e8f 00 nop +0e90 00 nop +0e91 00 nop +0e92 00 nop +0e93 00 nop +0e94 00 nop +0e95 00 nop +0e96 00 nop +0e97 00 nop +0e98 00 nop +0e99 00 nop +0e9a 00 nop +0e9b 00 nop +0e9c 00 nop +0e9d 00 nop +0e9e 00 nop +0e9f 00 nop +0ea0 00 nop +0ea1 00 nop +0ea2 00 nop +0ea3 00 nop +0ea4 00 nop +0ea5 00 nop +0ea6 00 nop +0ea7 00 nop +0ea8 00 nop +0ea9 00 nop +0eaa 00 nop +0eab 00 nop +0eac 00 nop +0ead 00 nop +0eae 00 nop +0eaf 00 nop +0eb0 00 nop +0eb1 00 nop +0eb2 00 nop +0eb3 00 nop +0eb4 00 nop +0eb5 00 nop +0eb6 00 nop +0eb7 00 nop +0eb8 00 nop +0eb9 00 nop +0eba 00 nop +0ebb 00 nop +0ebc 00 nop +0ebd 00 nop +0ebe 00 nop +0ebf 00 nop +0ec0 00 nop +0ec1 00 nop +0ec2 00 nop +0ec3 00 nop +0ec4 00 nop +0ec5 00 nop +0ec6 00 nop +0ec7 00 nop +0ec8 00 nop +0ec9 00 nop +0eca 00 nop +0ecb 00 nop +0ecc 00 nop +0ecd 00 nop +0ece 00 nop +0ecf 00 nop +0ed0 00 nop +0ed1 00 nop +0ed2 00 nop +0ed3 00 nop +0ed4 00 nop +0ed5 00 nop +0ed6 00 nop +0ed7 00 nop +0ed8 00 nop +0ed9 00 nop +0eda 00 nop +0edb 00 nop +0edc 00 nop +0edd 00 nop +0ede 00 nop +0edf 00 nop +0ee0 00 nop +0ee1 00 nop +0ee2 00 nop +0ee3 00 nop +0ee4 00 nop +0ee5 00 nop +0ee6 00 nop +0ee7 00 nop +0ee8 00 nop +0ee9 00 nop +0eea 00 nop +0eeb 00 nop +0eec 00 nop +0eed 00 nop +0eee 00 nop +0eef 00 nop +0ef0 00 nop +0ef1 00 nop +0ef2 00 nop +0ef3 00 nop +0ef4 00 nop +0ef5 00 nop +0ef6 00 nop +0ef7 00 nop +0ef8 00 nop +0ef9 00 nop +0efa 00 nop +0efb 00 nop +0efc 00 nop +0efd 00 nop +0efe 00 nop +0eff 00 nop +0f00 00 nop +0f01 00 nop +0f02 00 nop +0f03 00 nop +0f04 00 nop +0f05 00 nop +0f06 00 nop +0f07 00 nop +0f08 00 nop +0f09 00 nop +0f0a 00 nop +0f0b 00 nop +0f0c 00 nop +0f0d 00 nop +0f0e 00 nop +0f0f 00 nop +0f10 00 nop +0f11 00 nop +0f12 00 nop +0f13 00 nop +0f14 00 nop +0f15 00 nop +0f16 00 nop +0f17 00 nop +0f18 00 nop +0f19 00 nop +0f1a 00 nop +0f1b 00 nop +0f1c 00 nop +0f1d 00 nop +0f1e 00 nop +0f1f 00 nop +0f20 00 nop +0f21 00 nop +0f22 00 nop +0f23 00 nop +0f24 00 nop +0f25 00 nop +0f26 00 nop +0f27 00 nop +0f28 00 nop +0f29 00 nop +0f2a 00 nop +0f2b 00 nop +0f2c 00 nop +0f2d 00 nop +0f2e 00 nop +0f2f 00 nop +0f30 00 nop +0f31 00 nop +0f32 00 nop +0f33 00 nop +0f34 00 nop +0f35 00 nop +0f36 00 nop +0f37 00 nop +0f38 00 nop +0f39 00 nop +0f3a 00 nop +0f3b 00 nop +0f3c 00 nop +0f3d 00 nop +0f3e 00 nop +0f3f 00 nop +0f40 00 nop +0f41 00 nop +0f42 00 nop +0f43 00 nop +0f44 00 nop +0f45 00 nop +0f46 00 nop +0f47 00 nop +0f48 00 nop +0f49 00 nop +0f4a 00 nop +0f4b 00 nop +0f4c 00 nop +0f4d 00 nop +0f4e 00 nop +0f4f 00 nop +0f50 00 nop +0f51 00 nop +0f52 00 nop +0f53 00 nop +0f54 00 nop +0f55 00 nop +0f56 00 nop +0f57 00 nop +0f58 00 nop +0f59 00 nop +0f5a 00 nop +0f5b 00 nop +0f5c 00 nop +0f5d 00 nop +0f5e 00 nop +0f5f 00 nop +0f60 00 nop +0f61 00 nop +0f62 00 nop +0f63 00 nop +0f64 00 nop +0f65 00 nop +0f66 00 nop +0f67 00 nop +0f68 00 nop +0f69 00 nop +0f6a 00 nop +0f6b 00 nop +0f6c 00 nop +0f6d 00 nop +0f6e 00 nop +0f6f 00 nop +0f70 00 nop +0f71 00 nop +0f72 00 nop +0f73 00 nop +0f74 00 nop +0f75 00 nop +0f76 00 nop +0f77 00 nop +0f78 00 nop +0f79 00 nop +0f7a 00 nop +0f7b 00 nop +0f7c 00 nop +0f7d 00 nop +0f7e 00 nop +0f7f 00 nop +0f80 00 nop +0f81 00 nop +0f82 00 nop +0f83 00 nop +0f84 00 nop +0f85 00 nop +0f86 00 nop +0f87 00 nop +0f88 00 nop +0f89 00 nop +0f8a 00 nop +0f8b 00 nop +0f8c 00 nop +0f8d 00 nop +0f8e 00 nop +0f8f 00 nop +0f90 00 nop +0f91 00 nop +0f92 00 nop +0f93 00 nop +0f94 00 nop +0f95 00 nop +0f96 00 nop +0f97 00 nop +0f98 00 nop +0f99 00 nop +0f9a 00 nop +0f9b 00 nop +0f9c 00 nop +0f9d 00 nop +0f9e 00 nop +0f9f 00 nop +0fa0 00 nop +0fa1 00 nop +0fa2 00 nop +0fa3 00 nop +0fa4 00 nop +0fa5 00 nop +0fa6 00 nop +0fa7 00 nop +0fa8 00 nop +0fa9 00 nop +0faa 00 nop +0fab 00 nop +0fac 00 nop +0fad 00 nop +0fae 00 nop +0faf 00 nop +0fb0 00 nop +0fb1 00 nop +0fb2 00 nop +0fb3 00 nop +0fb4 79 ld a,c +0fb5 00 nop +0fb6 00 nop +0fb7 00 nop +0fb8 00 nop +0fb9 00 nop +0fba 00 nop +0fbb 00 nop +0fbc 00 nop +0fbd 00 nop +0fbe 00 nop +0fbf 00 nop +0fc0 00 nop +0fc1 00 nop +0fc2 00 nop +0fc3 00 nop +0fc4 00 nop +0fc5 00 nop +0fc6 00 nop +0fc7 00 nop +0fc8 00 nop +0fc9 00 nop +0fca 00 nop +0fcb 00 nop +0fcc 00 nop +0fcd 79 ld a,c +0fce 00 nop +0fcf +0fcf seek 00ffah +0fcf org 00ffah +0ffa +0ffa 0b 14 defb 0bh,14h +0ffc l0ffch: +0ffc 30 36 defb 30h,36h +0ffe l0ffeh: +0ffe cf defb 0cfh +0fff l0fffh: +0fff 3b defb 03bh +# End of file nabu_4k.asm +1000 diff --git a/WithEMU/original_rom4k.bin b/WithEMU/original_rom4k.bin new file mode 100644 index 0000000000000000000000000000000000000000..ce286df8b8cab7a4c7449ebde49d89f54b0674d7 GIT binary patch literal 4096 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 UfuGi&D)9fTKxU49+_4A$1AJ0FB>(^b literal 0 HcmV?d00001