; NEWDOS/80 v2.0 SYS0/SYS ; INTLAT EQU 0x37E0 ; Interrupt latch DSDR0L EQU 0x37E1 ; Disk select / Drive 0 latch CASLAT EQU 0x37E2 ; Cassette latch DR1LAT EQU 0x37E3 ; Drive 1 latch CASSEL EQL 0x37E4 ; Cassette latch DR2LAT EQU 0x37E5 ; Drive 2 latch DR3LAT EQU 0x37E7 ; Drive 3 latch PRINTR EQU 0x37E8 ; Printer data/control ; EQU 0x37EB FDCCSR EQU 0x37EC ; FDC Command/Status Register FDC_TR EQU 0x37ED ; FDC Track Register FDC_SR EQU 0x37EE ; FDC Sector Register FDC_DR EQU 0x37EF ; FDC Data Register KEYB01 EQU 0x3801 ; Keyboard row 1 KEYB02 EQU 0x3802 ; Keyboard row 2 KEYB03 EQU 0x3804 ; Keyboard row 3 KEYB04 EQU 0x3808 ; Keyboard row 4 KEYB05 EQU 0x3810 ; Keyboard row 5 KEYB06 EQU 0x3820 ; Keyboard row 6 KEYB07 EQU 0x3840 ; Keyboard row 7 KEYB08 EQU 0x3880 ; Keyboard row 8 SCREEN EQU 0x3C00 ; Screen start address ORG 0x400C 400C C3C24B jp 0x4BC2 ; DOS Function Call Restart ; 400F C30946 jp 0x4609 ; The DEBUG Restart ; 4012 C3F245 jp 0x45F2 ; Interrupt received Restart ; ORG 0x402D 402D C30044 jp 0x4400 ; Jump to main body of SYS0 ; 4030 3E43 ld a,0x43 ; Select .... module to load 4032 EF rst 0x28 ; Execute the loading ; 4033 C3DB4A jp 0x4ADB ; Jump to starting point ; ORG 0x403E 403E 00 nop 403F 00 nop 4040 00 nop ; Cyclic counter for Interrupts ; Clock 4041 00 nop ; Secs 4042 00 nop ; Minutes 4043 00 nop ; Hours 4044 00 nop ; Years 4045 00 nop ; Days 4046 00 nop ; Months ; Load address for DOS System Modules 4047 00 nop 4048 52 ; 4049 FF ; HIMEM value ; 404A FF rst 0x38 ; 404B 00 nop ; Current Interrupt Status Bytes Level 2 404C 00 nop ; Interrupt Sub-routine Vectors 404D 00 nop ; Routine Address for Interrupt Bit 0 404E 00 nop ; 404F 00 nop ; Routine Address for Interrupt Bit 1 4050 00 nop ; 4051 00 nop ; Routine Address for Interrupt Bit 2 4052 00 nop ; 4053 F5 push af ; Routine Address for Interrupt Bit 3 4054 07 rlca ; 4055 DCE847 call c,0x47E8 ; ??; Routine Address for Interrupt Bit 4, 5 4058 F1 pop af ; 4059 C9 ret ; Routine Address for Interrupt Bit 6 (disk) 405A 00 nop ; 405B 00 nop ; Routine Address for Interrupt Bit 7 (clock) 405C 00 nop ; ; Temporary DOS routine (Converts DE to ASCII) ORG 0x4063 4063 7A ld a,d 4064 CD6840 call 0x4068 4067 7B ld a,e 4068 F5 push af 4069 0F rrca 406A 0F rrca 406B 0F rrca 406C 0F rrca 406D CD7140 call 0x4071 4070 F1 pop af 4071 E60F and 0x0F 4073 C690 add a,0x90 4075 27 daa 4076 CE40 adc a,0x40 4078 27 daa 4079 77 ld (hl),a 407A 23 inc hl 407B C9 ret ; Storage parameters for Time Checking 407C 3B dec sp 407D 3B dec sp 407E 17 rla 407F 00 nop ; ORG 0x4308 4308 00 nop 4309 00 nop 430A 112303 ld de,0x0323 430D 23 inc hl 430E 0A ld a,(bc) 430F 02 ld (bc),a 4310 00 nop 4311 00 nop ; 4312 C3B045 jp 0x45B0 ; control byte for Break key ; 4315 010000 ld bc,0x0000 ; ORG 0x4368 ; SYSTEM Storage 4368 A5 4369 40 436A 00 436B 00 436C 00 436D 00 436E 00 436F 00 4370 5A ; PDRIVE Storage drive 0 4371 11 ; DDSL 4372 23 4373 03 ; TI & TSR 4374 23 ; TC 4375 0A ; SPT 4376 02 ; GPL 4377 00 4378 00 ; TI & TD 4379 11 ; DDSL 437A 02 ; DDGA ; drive 1 437B FF ; DDSL 437C 01 437D 00 ; TI & TSR 437E 01 ; TC 437F 00 ; SPT 4380 00 ; GPL 4381 00 4382 00 ; TI & TD 4383 FF ; DDSL 4384 00 ; DDGA ; drive 2 4385 FF ; DDSL 4386 01 4387 00 ; TI & TSR 4388 01 ; TC 4389 00 ; SPT 438A 00 ; GPL 438B 00 438C 00 ; TI & TD 438D FF ; DDSL 438E 00 ; DDGA ; drive 3 438F FF ; DDSL 4390 01 4391 00 ; TI & TSR 4392 01 ; TC 4393 00 ; SPT 4394 00 ; GPL 4395 00 4396 00 ; TI & TD 4397 FF ; DDSL 4398 00 ; DDGA ; 4399 71 439A 43 ; 439B 00 nop 439C 00 nop 439D 00 nop 439E 00 nop 439F 04 inc b 43A0 010001 ld bc,0x0100 43A3 00 nop 43A4 010000 ld bc,0x0000 43A7 0D dec c 43A8 0D dec c ; ORG 0x43B2 43B2 00 nop 43B3 00 nop 43B4 00 nop 43B5 FF rst 0x38 43B6 FF rst 0x38 43B7 FC4C00 call m,0x004C ; Check the value in register A to see a key was pressed 43BA 00 nop 43BB 00 nop 43BC FF rst 0x38 43BD FF rst 0x38 43BE 00 nop 43BF 00 nop 43C0 00 nop 43C1 00 nop 43C2 00 nop 43C3 FF rst 0x38 43C4 FF rst 0x38 43C5 00 nop 43C6 00 nop 43C7 00 nop 43C8 00 nop 43C9 00 nop 43CA FF rst 0x38 43CB FF rst 0x38 43CC 00 nop 43CD 00 nop 43CE 80 add a,b 43CF 2800 jr z,0x43D1 43D1 00 nop 43D2 42 ld b,d 43D3 00 nop 43D4 00 nop 43D5 FF rst 0x38 43D6 00 nop 43D7 00 nop 43D8 00 nop 43D9 00 nop 43DA 40 ld b,b 43DB 00 nop 43DC 00 nop 43DD 00 nop 43DE FF rst 0x38 43DF FF rst 0x38 ; ; Overlay calls for SYS?/SYS (TRSDOS2.3) ORG 0x4400 4400 3E23 ld a,0x23 ; No-Error exit 4402 EF rst 0x28 ; 4403 00 nop 4404 00 nop 4405 3E63 ld a,0x63 ; Enter DOS and execute a command 4407 EF rst 0x28 ; 4408 C8 ret z ; 4409 F5 push af ; DOS Error Exit 440A 3E26 ld a,0x26 440C EF rst 0x28 ; 440D C30946 jp 0x4609 ; Enter DEBUG 4410 3E65 ld a,0x65 ; Enqueue a user timer interrupt 4412 EF rst 0x28 ; 4413 3E85 ld a,0x85 ; Dequeue a user timer interrupt routine 4415 EF rst 0x28 ; 4416 C36247 jp 0x4762 ; Keep drives rotating 4419 3EC3 ld a,0xC3 ; DOS-CALL Execute a DOS command and return 441B EF rst 0x28 ; 441C 3E83 ld a,0x83 ; Extract a filespec 441E EF rst 0x28 ; 441F 00 nop 4420 3E44 ld a,0x44 ; Open a FCB to new or existing disk file 4422 EF rst 0x28 ; 4423 00 nop 4424 3E24 ld a,0x24 ; Open a FCB to a existing file 4426 EF rst 0x28 ; 4427 82 add a,d ; referrs to NEWDOS/80 Version 2 ; 4428 3E25 ld a,0x25 ; Close a FCB 442A EF rst 0x28 ; ;442B 013E45 ld bc,0x453E ; ?? 0x442C is kill FCB's associated file ; 422B 01 ; refers to 01 for Model I ; 422C 3E45 ld a,0x45 ; Kill FCB's associated file 442E EF rst 0x28 ; 442F 00 nop 4430 3EA4 ld a,0xA4 ; Load a program file 4432 EF rst 0x28 ; 4433 3EC4 ld a,0xC4 ; Load and commence execution of a program file 4435 EF rst 0x28 ; 4436 C3FC49 jp 0x49FC ; Read sector or logical record from disk 4439 C3364A jp 0x4A36 ; Write sector or logical record to disk 443C C3324A jp 0x4A32 ; Write sector or logical record to disk with verify read 443F C34C4B jp 0x4B4C ; Position FCB to start of file 4442 C3734B jp 0x4B73 ; Position FCB to specified file record 4445 C3624B jp 0x4B62 ; Position FCB back one record 4448 C3544B jp 0x4B54 ; Position FCB to EOF 444B C30948 jp 0x4809 ; Allocate File space 444E C3474B jp 0x4B47 ; Position FCB to specified RBA 4451 3EC5 ld a,0xC5 ; Write the EOF value from the FCB to the directory 4453 EF rst 0x28 ; 4454 00 nop 4455 00 nop 4456 00 nop 4457 3E2A ld a,0x2A 4459 18AE jr 0x4409 ; DOS error exit 445B C37647 jp 0x4776 ; Select and power up the specified drive 445E C3EC47 jp 0x47EC ; Test for mounted diskette 4461 3E2B ld a,0x2B ; *name routine enqueue 4463 EF rst 0x28 4464 3E4B ld a,0x4B ; *name routine dequeue 4466 EF rst 0x28 4467 C3A64B jp 0x4BA6 ; Send message to the display 446A C3BC4B jp 0x4BBC ; Send message to the printer 446D C3A744 jp 0x44A7 ; Convert clock time to HH:MM:SS character format 4470 C3C244 jp 0x44C2 ; Convert the date to MM/DD/YY character format 4473 3EA3 ld a,0xA3 ; Insert default name extension into filespec 4475 EF rst 0x28 4476 00 nop 4477 00 nop 4478 00 nop 4479 00 nop 447A 00 nop 447B 00 nop 447C 18D9 jr 0x4457 447E AF xor a 447F C9 ret ; 4480 82 add a,d 4481 2000 jr nz,0x4483 4483 00 nop 4484 42 ld b,d 4485 00 nop 4486 00 nop 4487 FF rst 0x38 4488 00 nop 4489 00 nop 448A 02 ld (bc),a 448B 00 nop 448C FF rst 0x38 448D FF rst 0x38 448E FF rst 0x38 448F FF rst 0x38 4490 FF rst 0x38 4491 FF rst 0x38 4492 FF rst 0x38 4493 FF rst 0x38 4494 FF rst 0x38 4495 FF rst 0x38 4496 FF rst 0x38 4497 FF rst 0x38 4498 FF rst 0x38 4499 FF rst 0x38 449A FF rst 0x38 449B FF rst 0x38 449C FF rst 0x38 449D FF rst 0x38 449E FF rst 0x38 449F FF rst 0x38 44A0 00 nop 44A1 00 nop 44A2 2801 jr z,0x44A5 44A4 21353C ld hl,0x3C35 ; Convert clock time to HH:MM:SS character format 44A7 114340 ld de,0x4043 ; Interrupt Jump for Undefined Interrupt (3680H) 44AA 063A ld b,0x3A 44AC 0E03 ld c,0x03 44AE 362F ld (hl),0x2F 44B0 1A ld a,(de) 44B1 34 inc (hl) 44B2 D60A sub 0x0A 44B4 30FB jr nc,0x44B1 44B6 23 inc hl 44B7 C63A add a,0x3A 44B9 77 ld (hl),a 44BA 23 inc hl 44BB 1B dec de 44BC 0D dec c 44BD C8 ret z 44BE 70 ld (hl),b 44BF 23 inc hl 44C0 18EC jr 0x44AE ; Convert the date to MM/DD/YY character format 44C2 114640 ld de,0x4046 ; Interrupt Jump for Time Clock (3529H) 44C5 062F ld b,0x2F 44C7 18E3 jr 0x44AC 44C9 EB ex de,hl 44CA 44 ld b,h 44CB 2801 jr z,0x44CE 44CD 214140 ld hl,0x4041 ; 44D0 E5 push hl 44D1 11AC43 ld de,0x43AC 44D4 010600 ld bc,0x0006 44D7 EDB0 ldir 44D9 117C40 ld de,0x407C 44DC E1 pop hl 44DD 0603 ld b,0x03 44DF 34 inc (hl) 44E0 1A ld a,(de) 44E1 96 sub (hl) 44E2 D0 ret nc 44E3 71 ld (hl),c 44E4 13 inc de 44E5 23 inc hl 44E6 10F7 djnz 0x44DF 44E8 23 inc hl 44E9 34 inc (hl) 44EA C9 ret ; 44EB 00 nop 44EC 00 nop 44ED 14 inc d 44EE 01DDE5 ld bc,0xE5DD 44F1 E1 pop hl 44F2 111D40 ld de,0x401D ; DCB Type Value ( 07 ) 44F5 DF rst 0x18 ; The Compare HL/DE Restart 44F6 C8 ret z 44F7 3A2240 ld a,(0x4022) ; Character under Cursor storage 44FA B7 or a 44FB C8 ret z 44FC 2A2040 ld hl,(0x4020) ; Cursor Position - least significant byte 44FF BE cp (hl) 4500 365F ld (hl),0x5F 4502 C9 ret ; 4503 77 ld (hl),a 4504 C9 ret ; 4505 180C jr 0x4513 4507 CD5348 call 0x4853 450A 79 ld a,c 450B D620 sub 0x20 450D FE60 cp 0x60 450F 79 ld a,c 4510 DA7D04 jp c,0x047D 4513 C35804 jp 0x0458 4516 3A6943 ld a,(0x4369) ; Systen area 4519 EE20 xor 0x20 451B E668 and 0x68 451D 3ECB ld a,0xCB 451F CCDD49 call z,0x49DD 4522 C8 ret z 4523 21BE45 ld hl,0x45BE 4526 36C9 ld (hl),0xC9 4528 E5 push hl 4529 213640 ld hl,0x4036 452C 7E ld a,(hl) 452D B7 or a 452E 3E00 ld a,0x00 4530 2003 jr nz,0x4535 4532 328045 ld (0x4580),a 4535 AF xor a 4536 F600 or 0x00 4538 1809 jr 0x4543 453A B6 or (hl) 453B 2004 jr nz,0x4541 453D 3D dec a 453E 327345 ld (0x4573),a 4541 3600 ld (hl),0x00 4543 2E36 ld l,0x36 4545 010138 ld bc,KEYB01 4548 16FF ld d,0xFF 454A 0A ld a,(bc) 454B 5F ld e,a 454C AE xor (hl) 454D 73 ld (hl),e 454E A3 and e 454F 200D jr nz,0x455E 4551 7A ld a,d 4552 C608 add a,0x08 4554 57 ld d,a 4555 2C inc l 4556 CB01 rlc c 4558 F24A45 jp p,0x454A 455B AF xor a 455C 180F jr 0x456D 455E 5F ld e,a 455F 14 inc d 4560 0F rrca 4561 30FC jr nc,0x455F 4563 C5 push bc 4564 D5 push de 4565 222A45 ld (0x452A),hl 4568 CD0B04 call 0x040B 456B E1 pop hl 456C C1 pop bc 456D B7 or a 456E 57 ld d,a 456F 2818 jr z,0x4589 4571 7C ld a,h 4572 FEFF cp 0xFF 4574 327345 ld (0x4573),a 4577 3E00 ld a,0x00 4579 2006 jr nz,0x4581 457B 0A ld a,(bc) 457C A5 and l 457D 28EE jr z,0x456D 457F 3EFF ld a,0xFF 4581 323745 ld (0x4537),a 4584 3E02 ld a,0x02 4586 328045 ld (0x4580),a 4589 CDBF45 call 0x45BF 458C E1 pop hl 458D 3600 ld (hl),0x00 458F FE1F cp 0x1F 4591 281D jr z,0x45B0 4593 C9 ret ; 4594 E6DF and 0xDF ; clear only bit 5; 4596 D641 sub 0x41 4598 FE1A cp 0x1A ; 459A 79 ld a,c 459B 3815 jr c,0x45B2 459D FE20 cp 0x20 459F C0 ret nz 45A0 217F38 ld hl,0x387F ; Keyboard 0x3840-0x38&F, row Space,Arrows,Break,Clear,Enter 45A3 7E ld a,(hl) 45A4 23 inc hl 45A5 A6 and (hl) 45A6 0F rrca 45A7 79 ld a,c 45A8 D0 ret nc 45A9 21B445 ld hl,0x45B4 45AC 7E ld a,(hl) 45AD EEC9 xor 0xC9 ; 0b11001001 45AF 77 ld (hl),a 45B0 AF xor a 45B1 C9 ret ; 45B2 EE20 xor 0x20 45B4 C9 ret ; 45B5 FE61 cp 0x61 45B7 D8 ret c 45B8 FE7B cp 0x7B 45BA D0 ret nc 45BB D620 sub 0x20 45BD C9 ret ; 45BE 00 nop 45BF 216943 ld hl,0x4369 ; in System storage 45C2 7E ld a,(hl) 45C3 E66C and 0x6C 45C5 2026 jr nz,0x45ED 45C7 3A0138 ld a,(KEYB01) ; row G F E D C B A @ 45CA FED0 cp 0xD0 45CC 1805 jr 0x45D3 45CE 3EE3 ld a,0xE3 45D0 0E04 ld c,0x04 45D2 EF rst 0x28 45D3 3A1038 ld a,(KEYB05) ; row 7 6 5 4 3 2 1 0 45D6 FE0E cp 0x0E 45D8 180E jr 0x45E8 45DA 3ABE45 ld a,(0x45BE) 45DD D6C9 sub 0xC9 45DF CA0D44 jp z,0x440D ; jump to Enter DEBUG 45E2 F1 pop af 45E3 C1 pop bc 45E4 D1 pop de 45E5 E1 pop hl 45E6 1822 jr 0x460A 45E8 3A0238 ld a,(KEYB02) 45EB FE1C cp 0x1C 45ED 7A ld a,d 45EE C9 ret ; 45EF 3EA5 ld a,0xA5 45F1 EF rst 0x28 ; 45F2 F5 push af 45F3 E5 push hl 45F4 D5 push de 45F5 C5 push bc 45F6 3AE037 ld a,(INTLAT) 45F9 07 rlca 45FA CD5340 call 0x4053 45FD DC1046 call c,0x4610 4600 CDBE45 call 0x45BE 4603 C1 pop bc 4604 D1 pop de 4605 E1 pop hl 4606 F1 pop af 4607 FB ei 4608 C9 ret ; 4609 F5 push af 460A 3E27 ld a,0x27 ; Load and enter DEBUG 460C EF rst 0x28 ; 460D 70 ld (hl),b 460E 23 inc hl 460F E9 jp (hl) 4610 214040 ld hl,0x4040 4613 34 inc (hl) 4614 213745 ld hl,0x4537 4617 7E ld a,(hl) 4618 B7 or a 4619 2801 jr z,0x461C 461B 35 dec (hl) 461C 21C944 ld hl,0x44C9 461F 7C ld a,h 4620 B5 or l 4621 C8 ret z 4622 5E ld e,(hl) 4623 23 inc hl 4624 56 ld d,(hl) 4625 D5 push de 4626 23 inc hl 4627 46 ld b,(hl) 4628 23 inc hl 4629 35 dec (hl) 462A CC0D46 call z,0x460D 462D E1 pop hl 462E 18EF jr 0x461F 4630 3E88 ld a,0x88 4632 180E jr 0x4642 4634 E5 push hl 4635 2601 ld h,0x01 4637 CD3046 call 0x4630 463A E1 pop hl 463B C9 ret ; write to disk 463C 3EA9 ld a,0xA9 463E 1802 jr 0x4642 4640 3EA8 ld a,0xA8 4642 32C446 ld (0x46C4),a 4645 E620 and 0x20 4647 C5 push bc 4648 011A02 ld bc,0x021A 464B 2805 jr z,0x4652 464D 3E08 ld a,0x08 464F 01120A ld bc,0x0A12 4652 323147 ld (0x4731),a 4655 ED43FC46 ld (0x46FC),bc 4659 060A ld b,0x0A 465B CD7347 call 0x4773 465E 2018 jr nz,0x4678 4660 C5 push bc 4661 D5 push de 4662 E5 push hl 4663 3A0E43 ld a,(0x430E) 4666 EB ex de,hl 4667 CDB44C call 0x4CB4 466A 55 ld d,l 466B 5F ld e,a 466C 210D43 ld hl,0x430D 466F 7A ld a,d 4670 BE cp (hl) 4671 3809 jr c,0x467C 4673 3E14 ld a,0x14 4675 E1 pop hl 4676 D1 pop de 4677 C1 pop bc 4678 B7 or a 4679 C33747 jp 0x4737 467C 3A1143 ld a,(0x4311) 467F 47 ld b,a 4680 CB40 bit 0,b 4682 2805 jr z,0x4689 4684 21C446 ld hl,0x46C4 4687 CB8E res 1,(hl) 4689 210943 ld hl,0x4309 468C CB48 bit 1,b 468E 2801 jr z,0x4691 4690 14 inc d 4691 D5 push de 4692 CB50 bit 2,b 4694 2802 jr z,0x4698 4696 CB02 rlc d 4698 CB70 bit 6,b 469A 2809 jr z,0x46A5 469C CB09 rrc c 469E 7B ld a,e 469F 91 sub c 46A0 3803 jr c,0x46A5 46A2 5F ld e,a 46A3 CBDE set 3,(hl) 46A5 CD6747 call 0x4767 46A8 CB60 bit 4,b 46AA 2801 jr z,0x46AD 46AC 1C inc e 46AD ED53EE37 ld (FDC_SR),de 46B1 0E18 ld c,0x18 46B3 CD4747 call 0x4747 46B6 F1 pop af 46B7 C1 pop bc 46B8 C5 push bc 46B9 32ED37 ld (FDC_TR),a 46BC D5 push de 46BD 11EF37 ld de,FDC_DR 46C0 21EC37 ld hl,FDCCSR 46C3 3600 ld (hl),0x00 46C5 CDE347 call 0x47E3 46C8 F3 di 46C9 CB46 bit 0,(hl) 46CB 284A jr z,0x4717 46CD 3AC446 ld a,(0x46C4) 46D0 CB6F bit 5,a 46D2 2822 jr z,0x46F6 46D4 3E83 ld a,0x83 46D6 A6 and (hl) 46D7 E2D446 jp po,0x46D4 46DA 0A ld a,(bc) 46DB 12 ld (de),a ; data to FDC_DR - write 46DC 03 inc bc 46DD 0A ld a,(bc) 46DE 32E846 ld (0x46E8),a 46E1 03 inc bc 46E2 3E01 ld a,0x01 46E4 BE cp (hl) 46E5 28FD jr z,0x46E4 46E7 3E00 ld a,0x00 46E9 12 ld (de),a 46EA 0A ld a,(bc) 46EB 03 inc bc 46EC CB4E bit 1,(hl) 46EE 200C jr nz,0x46FC 46F0 CB4E bit 1,(hl) 46F2 2008 jr nz,0x46FC 46F4 1809 jr 0x46FF 46F6 3E83 ld a,0x83 46F8 A6 and (hl) 46F9 E2F646 jp po,0x46F6 46FC 1A ld a,(de) 46FD 02 ld (bc),a 46FE 03 inc bc 46FF CB4E bit 1,(hl) 4701 20F9 jr nz,0x46FC 4703 CB4E bit 1,(hl) 4705 20F5 jr nz,0x46FC 4707 CB4E bit 1,(hl) 4709 20F1 jr nz,0x46FC 470B CB46 bit 0,(hl) 470D 2808 jr z,0x4717 470F CB4E bit 1,(hl) 4711 20E9 jr nz,0x46FC 4713 CB7E bit 7,(hl) 4715 28E8 jr z,0x46FF 4717 7E ld a,(hl) 4718 36D0 ld (hl),0xD0 471A 23 inc hl 471B C1 pop bc 471C 70 ld (hl),b 471D E1 pop hl 471E D1 pop de 471F C1 pop bc 4720 FB ei 4721 E6FC and 0xFC 4723 2812 jr z,0x4737 4725 4F ld c,a 4726 E69C and 0x9C 4728 2806 jr z,0x4730 472A 4F ld c,a 472B 87 add a,a 472C 2802 jr z,0x4730 472E 100A djnz 0x473A 4730 3E00 ld a,0x00 4732 3C inc a 4733 CB09 rrc c 4735 30FB jr nc,0x4732 4737 FB ei 4738 C1 pop bc 4739 C9 ret ; 473A CB61 bit 4,c 473C C44247 call nz,0x4742 473F C36046 jp 0x4660 4742 CB40 bit 0,b 4744 C8 ret z 4745 0E08 ld c,0x08 4747 3A0C43 ld a,(0x430C) 474A E603 and 0x03 474C B1 or c 474D 32EC37 ld (FDCCSR),a 4750 CDE347 call 0x47E3 4753 CB47 bit 0,a 4755 C8 ret z 4756 07 rlca 4757 3805 jr c,0x475E 4759 CD6747 call 0x4767 475C 18F2 jr 0x4750 475E 3ED0 ld a,0xD0 4760 18EB jr 0x474D 4762 3AEC37 ld a,(FDCCSR) 4765 07 rlca 4766 D8 ret c 4767 3A0943 ld a,(0x4309) 476A 32E137 ld (0x37E1),a 476D C9 ret ; 476E DD7E06 ld a,(ix+0x06) ; Select and power up the specified drive 4771 1803 jr 0x4776 4773 3A0843 ld a,(0x4308) 4776 E5 push hl 4777 D5 push de 4778 C5 push bc 4779 FE01 cp 0x01 477B 4F ld c,a 477C 3E20 ld a,0x20 477E 305E jr nc,0x47DE 4780 CD5E47 call 0x475E 4783 210843 ld hl,0x4308 4786 7E ld a,(hl) 4787 71 ld (hl),c 4788 B9 cp c 4789 F5 push af 478A 6F ld l,a 478B 3AED37 ld a,(0x37ED) 478E 77 ld (hl),a 478F 69 ld l,c 4790 E5 push hl 4791 41 ld b,c 4792 3E80 ld a,0x80 4794 04 inc b 4795 07 rlca 4796 10FD djnz 0x4795 4798 320943 ld (0x4309),a 479B 79 ld a,c 479C 07 rlca 479D 07 rlca 479E 81 add a,c 479F 87 add a,a 47A0 C671 add a,0x71 47A2 6F ld l,a 47A3 229943 ld (0x4399),hl 47A6 0E08 ld c,0x08 47A8 110A43 ld de,0x430A 47AB EDB0 ldir 47AD 21EC37 ld hl,FDCCSR 47B0 5E ld e,(hl) 47B1 F3 di 47B2 3A1143 ld a,(0x4311) 47B5 F6FE or 0xFE 47B7 77 ld (hl),a 47B8 36D0 ld (hl),0xD0 47BA FB ei 47BB 23 inc hl 47BC C1 pop bc 47BD 0A ld a,(bc) 47BE 77 ld (hl),a 47BF 23 inc hl 47C0 3A1043 ld a,(0x4310) 47C3 77 ld (hl),a 47C4 CD5E47 call 0x475E 47C7 CD5947 call 0x4759 47CA 0680 ld b,0x80 47CC CB7B bit 7,e 47CE C4ED4C call nz,0x4CED 47D1 F1 pop af 47D2 2809 jr z,0x47DD 47D4 3A0C43 ld a,(0x430C) 47D7 07 rlca 47D8 060C ld b,0x0C 47DA DCED4C call c,0x4CED 47DD AF xor a 47DE C1 pop bc 47DF D1 pop de 47E0 E1 pop hl 47E1 B7 or a 47E2 C9 ret ; 47E3 3E06 ld a,0x06 47E5 3D dec a 47E6 20FD jr nz,0x47E5 47E8 3AEC37 ld a,(FDCCSR) 47EB C9 ret ; ; Test for mounted diskette 47EC CD7647 call 0x4776 47EF C0 ret nz 47F0 E5 push hl 47F1 D5 push de 47F2 C5 push bc 47F3 110000 ld de,0x0000 47F6 21EC37 ld hl,FDCCSR 47F9 46 ld b,(hl) 47FA 7E ld a,(hl) 47FB A8 xor b 47FC E602 and 0x02 47FE 20DD jr nz,0x47DD 4800 1B dec de 4801 7A ld a,d 4802 B3 or e 4803 20F5 jr nz,0x47FA 4805 3E08 ld a,0x08 4807 18D5 jr 0x47DE ; Allocate File space 4809 CD8049 call 0x4980 480C CDB749 call 0x49B7 480F AF xor a 4810 32BB48 ld (0x48BB),a 4813 CD6E47 call 0x476E 4816 205A jr nz,0x4872 4818 CD6849 call 0x4968 481B EB ex de,hl 481C DD7E00 ld a,(ix) 481F 0F rrca 4820 0F rrca 4821 3830 jr c,0x4853 4823 0F rrca 4824 3E2D ld a,0x2D 4826 384A jr c,0x4872 4828 EB ex de,hl 4829 CDB24C call 0x4CB2 482C 0E0E ld c,0x0E 482E EB ex de,hl 482F DDE5 push ix 4831 E1 pop hl 4832 09 add hl,bc 4833 F5 push af 4834 E5 push hl 4835 D5 push de 4836 3E08 ld a,0x08 4838 08 ex af,af' 4839 7E ld a,(hl) 483A 3C inc a 483B 23 inc hl 483C 2854 jr z,0x4892 483E 7E ld a,(hl) 483F CDE948 call 0x48E9 4842 3031 jr nc,0x4875 4844 09 add hl,bc 4845 EB ex de,hl 4846 AE xor (hl) 4847 07 rlca 4848 07 rlca 4849 07 rlca 484A 83 add a,e 484B 5F ld e,a 484C F1 pop af 484D F1 pop af 484E F1 pop af 484F 2B dec hl 4850 CD7C4C call 0x4C7C 4853 DD6E03 ld l,(ix+0x03) 4856 DD6604 ld h,(ix+0x04) 4859 AF xor a 485A C9 ret ; 485B C1 pop bc 485C C1 pop bc 485D E1 pop hl 485E ED52 sbc hl,de 4860 09 add hl,bc 4861 44 ld b,h 4862 4D ld c,l 4863 F5 push af 4864 CD2F49 call 0x492F 4867 2009 jr nz,0x4872 4869 3EFF ld a,0xFF 486B 23 inc hl 486C BE cp (hl) 486D 2B dec hl 486E 282F jr z,0x489F 4870 3E2C ld a,0x2C 4872 C3CD49 jp 0x49CD 4875 EB ex de,hl 4876 23 inc hl 4877 DDCB015E bit 3,(ix+0x01) 487B 37 scf 487C 28A6 jr z,0x4824 487E 08 ex af,af' 487F FE05 cp 0x05 4881 200C jr nz,0x488F 4883 4E ld c,(hl) 4884 23 inc hl 4885 46 ld b,(hl) 4886 23 inc hl 4887 D1 pop de 4888 D5 push de 4889 EB ex de,hl 488A ED42 sbc hl,bc 488C EB ex de,hl 488D 3803 jr c,0x4892 488F 3D dec a 4890 20A6 jr nz,0x4838 4892 010000 ld bc,0x0000 4895 D1 pop de 4896 CD4B49 call 0x494B 4899 20CC jr nz,0x4867 489B DD7E07 ld a,(ix+0x07) 489E F5 push af 489F F1 pop af 48A0 326A48 ld (0x486A),a 48A3 CB66 bit 4,(hl) 48A5 28C9 jr z,0x4870 48A7 D5 push de 48A8 C5 push bc 48A9 7D ld a,l 48AA C616 add a,0x16 48AC 6F ld l,a 48AD E5 push hl 48AE 7E ld a,(hl) 48AF FEFE cp 0xFE 48B1 23 inc hl 48B2 7E ld a,(hl) 48B3 23 inc hl 48B4 3810 jr c,0x48C6 48B6 28A3 jr z,0x485B 48B8 3E3E ld a,0x3E 48BA 1800 jr 0x48BC 48BC F1 pop af 48BD 3E64 ld a,0x64 48BF CDDD49 call 0x49DD 48C2 C1 pop bc 48C3 D1 pop de 48C4 18DD jr 0x48A3 48C6 CB65 bit 4,l 48C8 28A6 jr z,0x4870 48CA CDE948 call 0x48E9 48CD EB ex de,hl 48CE 30DE jr nc,0x48AE 48D0 C1 pop bc 48D1 D1 pop de 48D2 F1 pop af 48D3 E1 pop hl 48D4 F1 pop af 48D5 C5 push bc 48D6 010800 ld bc,0x0008 48D9 7A ld a,d 48DA B3 or e 48DB 2805 jr z,0x48E2 48DD 09 add hl,bc 48DE 73 ld (hl),e 48DF 23 inc hl 48E0 72 ld (hl),d 48E1 23 inc hl 48E2 EB ex de,hl 48E3 E1 pop hl 48E4 EDB0 ldir 48E6 C31348 jp 0x4813 48E9 E61F and 0x1F 48EB 4F ld c,a 48EC 0600 ld b,0x00 48EE 03 inc bc 48EF EB ex de,hl 48F0 ED42 sbc hl,bc 48F2 C9 ret ; 48F3 3A0242 ld a,(0x4202) 48F6 2A9943 ld hl,(0x4399) 48F9 77 ld (hl),a 48FA 3A3049 ld a,(0x4930) 48FD CD744C call 0x4C74 4900 CD3046 call 0x4630 4903 2002 jr nz,0x4907 4905 F631 or 0x31 4907 FE06 cp 0x06 4909 C9 ret ; 490A D5 push de 490B C5 push bc 490C CDFD48 call 0x48FD 490F 280B jr z,0x491C 4911 110000 ld de,0x0000 4914 CD3046 call 0x4630 4917 CCF348 call z,0x48F3 491A 3E11 ld a,0x11 491C C1 pop bc 491D D1 pop de 491E C9 ret ; 491F 3A3049 ld a,(0x4930) 4922 D5 push de 4923 C5 push bc 4924 CD744C call 0x4C74 4927 B4 or h 4928 CDB84A call 0x4AB8 492B 3E12 ld a,0x12 492D 18ED jr 0x491C 492F 2EFF ld l,0xFF 4931 1805 jr 0x4938 4933 DD7E07 ld a,(ix+0x07) 4936 2EFF ld l,0xFF 4938 F5 push af 4939 E61F and 0x1F 493B 3C inc a 493C 3C inc a 493D BD cp l 493E C40A49 call nz,0x490A 4941 E1 pop hl 4942 C0 ret nz 4943 3EE0 ld a,0xE0 4945 A4 and h 4946 6F ld l,a 4947 2642 ld h,0x42 4949 BF cp a 494A C9 ret ; 494B CD6E47 call 0x476E 494E CC3349 call z,0x4933 4951 C0 ret nz 4952 E5 push hl 4953 C616 add a,0x16 4955 6F ld l,a 4956 DD7E0E ld a,(ix+0x0E) 4959 BE cp (hl) 495A E1 pop hl 495B 2803 jr z,0x4960 495D 3C inc a 495E 2005 jr nz,0x4965 4960 7E ld a,(hl) 4961 E690 and 0x90 4963 FE10 cp 0x10 4965 3E2D ld a,0x2D 4967 C9 ret ; 4968 DD4E05 ld c,(ix+0x05) 496B DD6E0A ld l,(ix+0x0A) 496E DD660B ld h,(ix+0x0B) 4971 7C ld a,h 4972 DDBE0D cp (ix+0x0D) 4975 C0 ret nz 4976 7D ld a,l 4977 DDBE0C cp (ix+0x0C) 497A C0 ret nz 497B 79 ld a,c 497C DDBE08 cp (ix+0x08) 497F C9 ret ; 4980 1A ld a,(de) 4981 07 rlca 4982 3E26 ld a,0x26 4984 3001 jr nc,0x4987 4986 AF xor a 4987 08 ex af,af' 4988 E3 ex (sp),hl 4989 22A649 ld (0x49A6),hl 498C E1 pop hl 498D FDE5 push iy 498F E5 push hl 4990 D5 push de 4991 C5 push bc 4992 F5 push af 4993 D5 push de 4994 DDE3 ex (sp),ix 4996 E5 push hl 4997 2ACE49 ld hl,(0x49CE) 499A E3 ex (sp),hl 499B ED73CE49 ld (0x49CE),sp 499F FD218043 ld iy,0x4380 49A3 08 ex af,af' 49A4 B7 or a 49A5 CC0000 call z,0x0000 49A8 E1 pop hl 49A9 22CE49 ld (0x49CE),hl 49AC 08 ex af,af' 49AD DDE1 pop ix 49AF F1 pop af 49B0 C1 pop bc 49B1 D1 pop de 49B2 E1 pop hl 49B3 FDE1 pop iy 49B5 08 ex af,af' 49B6 C9 ret ; 49B7 0605 ld b,0x05 49B9 DD7E01 ld a,(ix+0x01) 49BC E607 and 0x07 49BE B8 cp b 49BF D8 ret c 49C0 3E25 ld a,0x25 49C2 1809 jr 0x49CD 49C4 CD6849 call 0x4968 49C7 D8 ret c 49C8 3E1C ld a,0x1C 49CA 2801 jr z,0x49CD 49CC 3C inc a 49CD 310000 ld sp,0x0000 49D0 B7 or a 49D1 18D5 jr 0x49A8 49D3 C20944 jp nz,0x4409 ; Jump to DOS Error Exit 49D6 AF xor a 49D7 20F4 jr nz,0x49CD 49D9 E3 ex (sp),hl 49DA 7C ld a,h 49DB 4D ld c,l 49DC E1 pop hl 49DD EF rst 0x28 ; 49DE DDCB017E bit 7,(ix+0x01) 49E2 C8 ret z 49E3 D1 pop de 49E4 DD4609 ld b,(ix+0x09) 49E7 F5 push af 49E8 E5 push hl 49E9 C5 push bc 49EA 4E ld c,(hl) 49EB CDED4A call 0x4AED 49EE 20DD jr nz,0x49CD 49F0 5F ld e,a 49F1 C1 pop bc 49F2 E1 pop hl 49F3 F1 pop af 49F4 3001 jr nc,0x49F7 49F6 73 ld (hl),e 49F7 23 inc hl 49F8 10ED djnz 0x49E7 49FA AF xor a 49FB C9 ret ; Read sector or logical record from disk 49FC CD8049 call 0x4980 49FF 37 scf 4A00 CDDE49 call 0x49DE 4A03 CD194A call 0x4A19 4A06 2803 jr z,0x4A0B 4A08 FE06 cp 0x06 4A0A C0 ret nz 4A0B DD340A inc (ix+0x0A) 4A0E 2003 jr nz,0x4A13 4A10 DD340B inc (ix+0x0B) 4A13 DDCB01EE set 5,(ix+0x01) 4A17 B7 or a 4A18 C9 ret ; 4A19 0606 ld b,0x06 4A1B CDB949 call 0x49B9 4A1E CDC449 call 0x49C4 4A21 3EB6 ld a,0xB6 4A23 CD1048 call 0x4810 4A26 CD3046 call 0x4630 4A29 DDCB01AE res 5,(ix+0x01) 4A2D DDCB01A6 res 4,(ix+0x01) 4A31 C9 ret ; ; Write sector or logical record to disk with verify read 4A32 3EF6 ld a,0xF6 4A34 1802 jr 0x4A38 ; Write sector or logical record to disk 4A36 3EE6 ld a,0xE6 4A38 328B4A ld (0x4A8B),a 4A3B CD8049 call 0x4980 4A3E CDDE49 call 0x49DE 4A41 CD674A call 0x4A67 4A44 C0 ret nz 4A45 DD7E05 ld a,(ix+0x05) 4A48 B7 or a 4A49 CC0B4A call z,0x4A0B 4A4C CD6849 call 0x4968 4A4F 3006 jr nc,0x4A57 4A51 DDCB0176 bit 6,(ix+0x01) 4A55 2009 jr nz,0x4A60 4A57 DD7108 ld (ix+0x08),c 4A5A DD750C ld (ix+0x0C),l 4A5D DD740D ld (ix+0x0D),h 4A60 AF xor a 4A61 C9 ret ; 4A62 DDCB0166 bit 4,(ix+0x01) 4A66 C8 ret z 4A67 CD0C48 call 0x480C 4A6A DDCB026E bit 5,(ix+0x02) 4A6E 2018 jr nz,0x4A88 4A70 DDCB004E bit 1,(ix) 4A74 2012 jr nz,0x4A88 4A76 E5 push hl 4A77 CD4B49 call 0x494B 4A7A 2003 jr nz,0x4A7F 4A7C 23 inc hl 4A7D CBEE set 5,(hl) 4A7F CC1F49 call z,0x491F 4A82 E1 pop hl 4A83 C0 ret nz 4A84 DDCB02EE set 5,(ix+0x02) 4A88 DD7E01 ld a,(ix+0x01) 4A8B E690 and 0x90 4A8D DDCB0046 bit 0,(ix) 4A91 CDB84A call 0x4AB8 4A94 C0 ret nz 4A95 AF xor a 4A96 1895 jr 0x4A2D 4A98 2812 jr z,0x4AAC 4A9A C5 push bc 4A9B CD0C48 call 0x480C 4A9E CD6849 call 0x4968 4AA1 2001 jr nz,0x4AA4 4AA3 B7 or a 4AA4 C4214A call nz,0x4A21 4AA7 C1 pop bc 4AA8 C0 ret nz 4AA9 CD294A call 0x4A29 4AAC CD0B4B call 0x4B0B 4AAF 71 ld (hl),c 4AB0 DDCB01E6 set 4,(ix+0x01) 4AB4 288B jr z,0x4A41 4AB6 1894 jr 0x4A4C 4AB8 4F ld c,a 4AB9 0603 ld b,0x03 4ABB 200D jr nz,0x4ACA 4ABD CD4046 call 0x4640 4AC0 C0 ret nz 4AC1 79 ld a,c 4AC2 B7 or a 4AC3 C43446 call nz,0x4634 4AC6 C8 ret z 4AC7 10F4 djnz 0x4ABD 4AC9 C9 ret ; 4ACA CD3C46 call 0x463C ; write to disk? 4ACD C0 ret nz 4ACE 79 ld a,c 4ACF B7 or a 4AD0 C8 ret z 4AD1 CD3446 call 0x4634 4AD4 CD0349 call 0x4903 4AD7 C8 ret z 4AD8 10F0 djnz 0x4ACA ; another write to disk? 4ADA C9 ret ; 4ADB 210000 ld hl,0x0000 4ADE 1A ld a,(de) 4ADF FEC0 cp 0xC0 4AE1 285D jr z,0x4B40 4AE3 CD8049 call 0x4980 4AE6 DDCB01FE set 7,(ix+0x01) 4AEA 78 ld a,b 4AEB FE02 cp 0x02 4AED DDCB016E bit 5,(ix+0x01) 4AF1 30A5 jr nc,0x4A98 4AF3 C4194A call nz,0x4A19 4AF6 C0 ret nz 4AF7 CDC449 call 0x49C4 4AFA CD0B4B call 0x4B0B 4AFD 2009 jr nz,0x4B08 4AFF E5 push hl 4B00 CD624A call 0x4A62 4B03 E1 pop hl 4B04 C0 ret nz 4B05 CD0B4A call 0x4A0B 4B08 7E ld a,(hl) 4B09 BF cp a 4B0A C9 ret ; 4B0B CD5348 call 0x4853 4B0E DD5E05 ld e,(ix+0x05) 4B11 57 ld d,a 4B12 19 add hl,de 4B13 DD3405 inc (ix+0x05) 4B16 C9 ret ; 4B17 7E ld a,(hl) 4B18 BB cp e 4B19 23 inc hl 4B1A 2002 jr nz,0x4B1E 4B1C 7E ld a,(hl) 4B1D BA cp d 4B1E 23 inc hl 4B1F 201A jr nz,0x4B3B 4B21 E5 push hl 4B22 D5 push de 4B23 C5 push bc 4B24 7E ld a,(hl) 4B25 A0 and b 4B26 23 inc hl 4B27 23 inc hl 4B28 23 inc hl 4B29 5E ld e,(hl) 4B2A 23 inc hl 4B2B 56 ld d,(hl) 4B2C D5 push de 4B2D DDE1 pop ix 4B2F CDD403 call 0x03D4 ; Reset the flags 4B32 C1 pop bc 4B33 D1 pop de 4B34 E1 pop hl 4B35 CB40 bit 0,b 4B37 2802 jr z,0x4B3B 4B39 B7 or a 4B3A C0 ret nz 4B3B 23 inc hl 4B3C 7E ld a,(hl) 4B3D 23 inc hl 4B3E 66 ld h,(hl) 4B3F 6F ld l,a 4B40 7C ld a,h 4B41 B5 or l 4B42 20D3 jr nz,0x4B17 4B44 C3F84C jp 0x4CF8 ; Position FCB to specified RBA 4B47 CD8049 call 0x4980 4B4A 1834 jr 0x4B80 ; Position FCB to start of file 4B4C CD8049 call 0x4980 4B4F 67 ld h,a 4B50 6F ld l,a 4B51 4F ld c,a 4B52 183C jr 0x4B90 ; Position FCB to EOF 4B54 CD8049 call 0x4980 4B57 DD4E08 ld c,(ix+0x08) 4B5A DD6E0C ld l,(ix+0x0C) 4B5D DD660D ld h,(ix+0x0D) 4B60 1822 jr 0x4B84 ; Position FCB back one record 4B62 CD8049 call 0x4980 4B65 CD6849 call 0x4968 4B68 AF xor a 4B69 DD9609 sub (ix+0x09) 4B6C 81 add a,c 4B6D 4F ld c,a 4B6E 3810 jr c,0x4B80 4B70 2B dec hl 4B71 180D jr 0x4B80 ; Position FCB to specified file record 4B73 CD8049 call 0x4980 4B76 60 ld h,b 4B77 69 ld l,c 4B78 DD7E09 ld a,(ix+0x09) 4B7B B7 or a 4B7C 4F ld c,a 4B7D C49D4C call nz,0x4C9D 4B80 DDCB01F6 set 6,(ix+0x01) 4B84 7C ld a,h 4B85 DDBE0B cp (ix+0x0B) 4B88 2006 jr nz,0x4B90 4B8A 7D ld a,l 4B8B DDBE0A cp (ix+0x0A) 4B8E 2811 jr z,0x4BA1 4B90 E5 push hl 4B91 C5 push bc 4B92 CD624A call 0x4A62 4B95 C1 pop bc 4B96 E1 pop hl 4B97 C0 ret nz 4B98 CD134A call 0x4A13 4B9B DD750A ld (ix+0x0A),l 4B9E DD740B ld (ix+0x0B),h 4BA1 DD7105 ld (ix+0x05),c 4BA4 AF xor a 4BA5 C9 ret ; ; Send message to the display 4BA6 D5 push de 4BA7 111D40 ld de,0x401D ; DCB Type Value ( 07 ) ; Send message to the selected device 4BAA E5 push hl 4BAB 7E ld a,(hl) 4BAC FE03 cp 0x03 ; ETX 4BAE 2809 jr z,0x4BB9 ; End of Text means we're ready 4BB0 CD1B00 call 0x001B ; ROM video and printer routine 4BB3 7E ld a,(hl) 4BB4 FE0D cp 0x0D ; CR 4BB6 23 inc hl 4BB7 20F2 jr nz,0x4BAB ; Next char 4BB9 E1 pop hl 4BBA D1 pop de 4BBB C9 ret ; ; Send message to the printer 4BBC D5 push de 4BBD 112540 ld de,0x4025 ; THE DCB Type Value ( 06 ) 4BC0 18E8 jr 0x4BAA ; ; DOS Function Call Restart 4BC2 33 inc sp ; Restore stack 4BC3 33 inc sp ; from RST28 call 4BC4 FE20 cp 0x20 ; 4BC6 DA1243 jp c,0x4312 ; A < 20 ? then Jump to (XOR A and RET) 4BC9 E5 push hl 4BCA D5 push de 4BCB C5 push bc 4BCC F5 push af 4BCD 216943 ld hl,0x4369 ; SYSTEM Storage 4BD0 CBF6 set 6,(hl) ; Set a bit at 0x4369, System storage ?set RST mode? 4BD2 21BE45 ld hl,0x45BE ; 4BD5 3600 ld (hl),0x00 4BD7 FB ei 4BD8 E61F and 0x1F ; leave only lower 5 bits; the SYS*/SYS module 4BDA 211743 ld hl,0x4317 4BDD BE cp (hl) 4BDE 2839 jr z,0x4C19 ; Jump to stack restore and RESET 4BE0 77 ld (hl),a ; store the module number 4BE1 E607 and 0x07 4BE3 4F ld c,a 4BE4 AF xor a 4BE5 32D843 ld (0x43D8),a 4BE8 CD7647 call 0x4776 ; load something (the SYS*/SYS module?) from disk 4BEB 7E ld a,(hl) 4BEC 91 sub c 4BED 07 rlca 4BEE 07 rlca 4BEF 81 add a,c 4BF0 CD3649 call 0x4936 4BF3 2019 jr nz,0x4C0E 4BF5 CB76 bit 6,(hl) 4BF7 2815 jr z,0x4C0E 4BF9 C616 add a,0x16 4BFB 6F ld l,a 4BFC 5E ld e,(hl) 4BFD 23 inc hl 4BFE 56 ld d,(hl) 4BFF ED53DC43 ld (0x43DC),de 4C03 21CE43 ld hl,0x43CE 4C06 CD284C call 0x4C28 4C09 221E4C ld (0x4C1E),hl 4C0C 280B jr z,0x4C19 ; 4C0E 3A1743 ld a,(0x4317) ; somewhere in DOS Sector Buffer 4C11 FE06 cp 0x06 4C13 3E2E ld a,0x2E 4C15 C20944 jp nz,0x4409 ; Jump to DOS Error Exit 4C18 76 halt ; Unknown parameter set defined with RST 28H? Probably best to freeze. ; 4C19 F1 pop af 4C1A C1 pop bc 4C1B D1 pop de 4C1C E1 pop hl 4C1D CD0000 call 0x0000 ; 4C20 E5 push hl 4C21 216943 ld hl,0x4369 ; system storage 4C24 CBB6 res 6,(hl) 4C26 E1 pop hl 4C27 C9 ret ; 4C28 226A4C ld (0x4C6A),hl 4C2B 11FF42 ld de,0x42FF 4C2E CD654C call 0x4C65 4C31 4F ld c,a 4C32 3E1F ld a,0x1F 4C34 B9 cp c 4C35 3E22 ld a,0x22 4C37 D8 ret c 4C38 CD654C call 0x4C65 4C3B 47 ld b,a 4C3C CD654C call 0x4C65 4C3F 6F ld l,a 4C40 61 ld h,c 4C41 0D dec c 4C42 2809 jr z,0x4C4D 4C44 0D dec c 4C45 201A jr nz,0x4C61 4C47 CD654C call 0x4C65 4C4A 67 ld h,a 4C4B AF xor a 4C4C C9 ret ; 4C4D CD654C call 0x4C65 4C50 67 ld h,a 4C51 05 dec b 4C52 05 dec b 4C53 CD654C call 0x4C65 4C56 77 ld (hl),a 4C57 BE cp (hl) 4C58 23 inc hl 4C59 2806 jr z,0x4C61 4C5B 3E24 ld a,0x24 4C5D 0C inc c 4C5E 0D dec c 4C5F 2862 jr z,0x4CC3 4C61 10F0 djnz 0x4C53 4C63 18C9 jr 0x4C2E 4C65 1C inc e 4C66 1A ld a,(de) 4C67 C0 ret nz 4C68 D5 push de 4C69 110000 ld de,0x0000 4C6C CD3644 call 0x4436 4C6F D1 pop de 4C70 2029 jr nz,0x4C9B 4C72 1A ld a,(de) 4C73 C9 ret ; 4C74 323049 ld (0x4930),a 4C77 1E00 ld e,0x00 4C79 2A9943 ld hl,(0x4399) 4C7C 4F ld c,a 4C7D 6E ld l,(hl) 4C7E 3A0F43 ld a,(0x430F) 4C81 CD924C call 0x4C92 4C84 47 ld b,a 4C85 57 ld d,a 4C86 19 add hl,de 4C87 3E05 ld a,0x05 4C89 CD944C call 0x4C94 4C8C 09 add hl,bc 4C8D EB ex de,hl 4C8E 210042 ld hl,0x4200 4C91 C9 ret ; 4C92 2600 ld h,0x00 4C94 C5 push bc 4C95 CD9D4C call 0x4C9D 4C98 7C ld a,h 4C99 65 ld h,l 4C9A 69 ld l,c 4C9B C1 pop bc 4C9C C9 ret ; 4C9D D5 push de 4C9E EB ex de,hl 4C9F 0E80 ld c,0x80 4CA1 210000 ld hl,0x0000 4CA4 0F rrca 4CA5 3001 jr nc,0x4CA8 4CA7 19 add hl,de 4CA8 CB3C srl h 4CAA CB1D rr l 4CAC CB19 rr c 4CAE 30F4 jr nc,0x4CA4 4CB0 D1 pop de 4CB1 C9 ret ; 4CB2 3E05 ld a,0x05 4CB4 4F ld c,a 4CB5 0610 ld b,0x10 4CB7 AF xor a 4CB8 29 add hl,hl 4CB9 17 rla 4CBA 3803 jr c,0x4CBF 4CBC B9 cp c 4CBD 3802 jr c,0x4CC1 4CBF 91 sub c 4CC0 2C inc l 4CC1 10F5 djnz 0x4CB8 4CC3 B7 or a 4CC4 C9 ret ; 4CC5 E5 push hl 4CC6 0A ld a,(bc) 4CC7 B7 or a 4CC8 03 inc bc 4CC9 2003 jr nz,0x4CCE 4CCB E3 ex (sp),hl 4CCC E1 pop hl 4CCD C9 ret ; 4CCE BE cp (hl) 4CCF 23 inc hl 4CD0 28F4 jr z,0x4CC6 4CD2 E1 pop hl 4CD3 1814 jr 0x4CE9 4CD5 7E ld a,(hl) 4CD6 FE0D cp 0x0D ; CR 4CD8 C8 ret z 4CD9 7E ld a,(hl) 4CDA FE2C cp 0x2C ; , 4CDC 23 inc hl 4CDD 280A jr z,0x4CE9 4CDF FE20 cp 0x20 ; space 4CE1 2B dec hl 4CE2 37 scf 4CE3 2005 jr nz,0x4CEA 4CE5 23 inc hl 4CE6 BE cp (hl) 4CE7 28FC jr z,0x4CE5 4CE9 B7 or a 4CEA 3E34 ld a,0x34 4CEC C9 ret ; 4CED 50 ld d,b 4CEE 1E01 ld e,0x01 4CF0 42 ld b,d 4CF1 CD6000 call 0x0060 4CF4 1D dec e 4CF5 20F9 jr nz,0x4CF0 4CF7 C9 ret ; 4CF8 CB40 bit 0,b 4CFA C0 ret nz 4CFB 79 ld a,c 4CFC C9 ret ; 4CFD A4 and h 4CFE 4B ld c,e 4CFF 00 nop ; The start address ; End of the persistent part of SYS0/SYS 4D00 A5 and l ; Magic byte. Must be A5H or start is aborted 'NO SYS' 4D01 ED56 im 1 ; interrupt mode 1 4D03 21FFFF ld hl,0xFFFF ; loop 4D06 7E ld a,(hl) 4D07 2F cpl ; invert A 4D08 77 ld (hl),a 4D09 BE cp (hl) 4D0A 2B dec hl 4D0B 20F9 jr nz,0x4D06 ; loop 4D0D 2F cpl 4D0E 23 inc hl 4D0F 77 ld (hl),a 4D10 22A943 ld (0x43A9),hl 4D13 224940 ld (0x4049),hl ; Interrupt Jump for I/O during IPL (43A2H) 4D16 21AB43 ld hl,0x43AB 4D19 3EA5 ld a,0xA5 4D1B BE cp (hl) 4D1C 2009 jr nz,0x4D27 4D1E 23 inc hl 4D1F 114140 ld de,0x4041 4D22 010600 ld bc,0x0006 4D25 EDB0 ldir 4D27 FD218043 ld iy,0x4380 4D2B ED4BFE42 ld bc,(0x42FE) 4D2F FD70F8 ld (iy-0x08),b 4D32 FD71F3 ld (iy-0x0D),c 4D35 3AFD42 ld a,(0x42FD) 4D38 FD77F7 ld (iy-0x09),a 4D3B 118044 ld de,0x4480 4D3E CD3644 call 0x4436 4D41 C2D34D jp nz,0x4DD3 4D44 3AEF42 ld a,(0x42EF) ; inside DOS Sector buffer 4D47 FEA5 cp 0xA5 4D49 C2D14D jp nz,0x4DD1 4D4C 21F842 ld hl,0x42F8 ; from 4D4F 115B50 ld de,0x505B ; to 4D52 010800 ld bc,0x0008 ; amount 4D55 EDB0 ldir 4D57 2AF042 ld hl,(0x42F0) ; inside DOS Sector buffer 4D5A 226C43 ld (0x436C),hl ; store byte in System Storage area 4D5D 2AF242 ld hl,(0x42F2) ; inside DOS Sector buffer 4D60 226E43 ld (0x436E),hl ; store byte in System Storage area 4D63 3AA042 ld a,(0x42A0) ; inside DOS Sector buffer 4D66 329F43 ld (0x439F),a 4D69 327A47 ld (0x477A),a 4D6C 3D dec a 4D6D FE04 cp 0x04 4D6F 3060 jr nc,0x4DD1 4D71 3AA142 ld a,(0x42A1) 4D74 32BA4A ld (0x4ABA),a 4D77 3AA242 ld a,(0x42A2) 4D7A 32A043 ld (0x43A0),a 4D7D 3AA342 ld a,(0x42A3) 4D80 32A143 ld (0x43A1),a 4D83 3AA642 ld a,(0x42A6) 4D86 325A46 ld (0x465A),a 4D89 3AA942 ld a,(0x42A9) 4D8C 32A243 ld (0x43A2),a 4D8F 32EF4C ld (0x4CEF),a 4D92 2E06 ld l,0x06 4D94 110024 ld de,0x2400 4D97 F5 push af 4D98 CD924C call 0x4C92 4D9B B4 or h 4D9C 2033 jr nz,0x4DD1 4D9E 7D ld a,l 4D9F 32E447 ld (0x47E4),a 4DA2 F1 pop af 4DA3 EB ex de,hl 4DA4 CD944C call 0x4C94 4DA7 B7 or a 4DA8 2027 jr nz,0x4DD1 4DAA 22F447 ld (0x47F4),hl 4DAD 3AA842 ld a,(0x42A8) 4DB0 327043 ld (0x4370),a 4DB3 2A4940 ld hl,(0x4049) ; Interrupt Jump for I/O during IPL (43A2H) 4DB6 ED5BD042 ld de,(0x42D0) 4DBA 7A ld a,d 4DBB B3 or e 4DBC 2806 jr z,0x4DC4 4DBE B7 or a 4DBF ED52 sbc hl,de 4DC1 3801 jr c,0x4DC4 4DC3 EB ex de,hl 4DC4 224940 ld (0x4049),hl 4DC7 AF xor a 4DC8 117143 ld de,0x4371 ; start PDRIVE table 4DCB DD210042 ld ix,0x4200 4DCF 1806 jr 0x4DD7 ; 4DD1 3E27 ld a,0x27 4DD3 F5 push af 4DD4 3E46 ld a,0x46 4DD6 EF rst 0x28 ; 4DD7 010A00 ld bc,0x000A 4DDA F5 push af 4DDB FDBE1F cp (iy+0x1F) 4DDE 3005 jr nc,0x4DE5 4DE0 DDE5 push ix 4DE2 E1 pop hl 4DE3 EDB0 ldir 4DE5 DD7E02 ld a,(ix+0x02) 4DE8 E61C and 0x1C 4DEA 28E5 jr z,0x4DD1 4DEC 0E10 ld c,0x10 4DEE DD09 add ix,bc 4DF0 F1 pop af 4DF1 3C inc a 4DF2 FE0A cp 0x0A ; LF, 10 4DF4 38E1 jr c,0x4DD7 4DF6 3AFA42 ld a,(0x42FA) 4DF9 CB7F bit 7,a 4DFB 2805 jr z,0x4E02 4DFD 3EAB ld a,0xAB 4DFF 323D46 ld (0x463D),a 4E02 ED4BF842 ld bc,(0x42F8) 4E06 ED5B6C43 ld de,(0x436C) ; store byte in System Storage area 4E0A CB73 bit 6,e 4E0C 2808 jr z,0x4E16 4E0E FDCBE9D6 set 2,(iy-0x17) 4E12 FDCBEDB6 res 6,(iy-0x13) 4E16 CB41 bit 0,c 4E18 280E jr z,0x4E28 4E1A 3E20 ld a,0x20 4E1C 323845 ld (0x4538),a 4E1F 3AA742 ld a,(0x42A7) 4E22 327845 ld (0x4578),a 4E25 322F45 ld (0x452F),a 4E28 3AA542 ld a,(0x42A5) 4E2B B7 or a 4E2C 2803 jr z,0x4E31 4E2E 320145 ld (0x4501),a 4E31 CB49 bit 1,c 4E33 2813 jr z,0x4E48 4E35 3A4038 ld a,(0x3840) 4E38 CB5F bit 3,a 4E3A 200C jr nz,0x4E48 4E3C 211645 ld hl,0x4516 4E3F 221640 ld (0x4016),hl 4E42 210545 ld hl,0x4505 4E45 221E40 ld (0x401E),hl 4E48 21003C ld hl,SCREEN ; Start of screen memory 4E4B 3E61 ld a,0x61 ; = 4E4D 77 ld (hl),a 4E4E BE cp (hl) 4E4F 3620 ld (hl),0x20 ; space 4E51 2017 jr nz,0x4E6A 4E53 CB50 bit 2,b 4E55 280A jr z,0x4E61 4E57 3E4F ld a,0x4F 4E59 329345 ld (0x4593),a 4E5C 3E38 ld a,0x38 4E5E 320545 ld (0x4505),a 4E61 CB48 bit 1,b 4E63 2005 jr nz,0x4E6A 4E65 3E00 ld a,0x00 4E67 32B445 ld (0x45B4),a 4E6A CB40 bit 0,b 4E6C 2805 jr z,0x4E73 4E6E 3EC8 ld a,0xC8 4E70 320245 ld (0x4502),a 4E73 CB79 bit 7,c 4E75 2005 jr nz,0x4E7C 4E77 3E3E ld a,0x3E 4E79 327D45 ld (0x457D),a 4E7C CB71 bit 6,c 4E7E 2805 jr z,0x4E85 4E80 3EC0 ld a,0xC0 4E82 32EE45 ld (0x45EE),a 4E85 CB61 bit 4,c 4E87 2805 jr z,0x4E8E 4E89 3E20 ld a,0x20 4E8B 32CC45 ld (0x45CC),a 4E8E CB51 bit 2,c 4E90 2804 jr z,0x4E96 4E92 AF xor a 4E93 329045 ld (0x4590),a 4E96 CB69 bit 5,c 4E98 2805 jr z,0x4E9F 4E9A 3E20 ld a,0x20 4E9C 32D845 ld (0x45D8),a 4E9F CB6B bit 5,e 4EA1 2804 jr z,0x4EA7 4EA3 FDCBE9E6 set 4,(iy-0x17) 4EA7 21A84F ld hl,0x4FA8 4EAA CD6744 call 0x4467 4EAD 3AF942 ld a,(0x42F9) 4EB0 CB6F bit 5,a 4EB2 2818 jr z,0x4ECC 4EB4 F3 di 4EB5 21B243 ld hl,0x43B2 4EB8 22DC4A ld (0x4ADC),hl 4EBB 111D40 ld de,0x401D ; Interrupt Sub-routine Vector 4EBE 73 ld (hl),e 4EBF 23 inc hl 4EC0 72 ld (hl),d 4EC1 23 inc hl 4EC2 1A ld a,(de) 4EC3 77 ld (hl),a 4EC4 23 inc hl 4EC5 3EC0 ld a,0xC0 4EC7 12 ld (de),a 4EC8 AF xor a 4EC9 77 ld (hl),a 4ECA 23 inc hl 4ECB 77 ld (hl),a 4ECC FB ei 4ECD 21AB4F ld hl,0x4FAB 4ED0 CD6744 call 0x4467 4ED3 3AAB43 ld a,(0x43AB) 4ED6 FEA5 cp 0xA5 4ED8 3AF942 ld a,(0x42F9) 4EDB 2002 jr nz,0x4EDF 4EDD CBBF res 7,a ; clear bit 7 4EDF E6C0 and 0xC0 ; clear bits 0-5 4EE1 C43D4F call nz,0x4F3D ; if bit 6 is 1 call 4EE4 218950 ld hl,0x5089 4EE7 E5 push hl 4EE8 CDC244 call 0x44C2 4EEB 219350 ld hl,0x5093 4EEE CDA744 call 0x44A7 4EF1 E1 pop hl 4EF2 CD6744 call 0x4467 4EF5 AF xor a 4EF6 323049 ld (0x4930),a 4EF9 21054F ld hl,0x4F05 4EFC E5 push hl 4EFD D5 push de 4EFE C5 push bc 4EFF 210042 ld hl,0x4200 4F02 C31149 jp 0x4911 ; 4F05 C2D34D jp nz,0x4DD3 4F08 111843 ld de,0x4318 4F0B D5 push de 4F0C C5 push bc 4F0D 21E042 ld hl,0x42E0 4F10 012000 ld bc,0x0020 4F13 EDB0 ldir 4F15 21AB43 ld hl,0x43AB 4F18 36A5 ld (hl),0xA5 4F1A C1 pop bc 4F1B E1 pop hl 4F1C AF xor a 4F1D FDCBEC76 bit 6,(iy-0x14) 4F21 2014 jr nz,0x4F37 4F23 3A5C50 ld a,(0x505C) 4F26 CB5F bit 3,a 4F28 280D jr z,0x4F37 4F2A 3A4038 ld a,(0x3840) ; Keyboard row Space|RghtA|LftA |DownA| UpA | Brk | Cls |Enter 4F2D 0F rrca 4F2E DA0044 jp c,0x4400 ; SYS0/SYS Start address 4F31 7E ld a,(hl) 4F32 FE0D cp 0x0D ; CR 4F34 CA0044 jp z,0x4400 ; SYS0/SYS Start address 4F37 CD6744 call 0x4467 4F3A C30544 jp 0x4405 ; Enter DOS and execute a command ; 4F3D 216350 ld hl,0x5063 4F40 CD644F call 0x4F64 4F43 019C50 ld bc,0x509C 4F46 114640 ld de,0x4046 4F49 3E2F ld a,0x2F 4F4B CD6F4F call 0x4F6F 4F4E 20ED jr nz,0x4F3D 4F50 217650 ld hl,0x5076 4F53 CD644F call 0x4F64 4F56 01A250 ld bc,0x50A2 4F59 114340 ld de,0x4043 4F5C 3E3A ld a,0x3A ; : 4F5E CD6F4F call 0x4F6F 4F61 20ED jr nz,0x4F50 4F63 C9 ret ; 4F64 CD6744 call 0x4467 4F67 211843 ld hl,0x4318 4F6A 0609 ld b,0x09 4F6C C34000 jp 0x0040 ; Jump to the keyboard input routine 4F6F 32A04F ld (0x4FA0),a 4F72 F3 di 4F73 C5 push bc 4F74 0603 ld b,0x03 ; ETX 4F76 7E ld a,(hl) 4F77 D630 sub 0x30 ; 0 4F79 FE0A cp 0x0A ; LF 4F7B 23 inc hl 4F7C 3026 jr nc,0x4FA4 4F7E 4F ld c,a 4F7F 07 rlca 4F80 07 rlca 4F81 81 add a,c 4F82 87 add a,a 4F83 4F ld c,a 4F84 7E ld a,(hl) 4F85 D630 sub 0x30 4F87 FE0A cp 0x0A ; LF 4F89 23 inc hl 4F8A 3018 jr nc,0x4FA4 4F8C 81 add a,c 4F8D 12 ld (de),a 4F8E 1B dec de 4F8F E3 ex (sp),hl 4F90 96 sub (hl) 4F91 23 inc hl 4F92 BE cp (hl) 4F93 23 inc hl 4F94 300E jr nc,0x4FA4 4F96 E3 ex (sp),hl 4F97 1005 djnz 0x4F9E 4F99 C1 pop bc 4F9A FB ei 4F9B C3D54C jp 0x4CD5 4F9E 7E ld a,(hl) 4F9F FE00 cp 0x00 4FA1 23 inc hl 4FA2 28D2 jr z,0x4F76 4FA4 FB ei 4FA5 F1 pop af 4FA6 B7 or a 4FA7 C9 ret ; 4FA8 1C inc e 4FA9 1F rra 4FAA 03 inc bc 4FAB BF cp a 4FAC B4 or h 4FAD 80 add a,b 4FAE BF cp a 4FAF 20BE jr nz,0x4F6F 4FB1 83 add a,e 4FB2 83 add a,e 4FB3 BD cp l 4FB4 20BF jr nz,0x4F75 4FB6 80 add a,b 4FB7 80 add a,b 4FB8 BF cp a 4FB9 20BF jr nz,0x4F7A 4FBB 83 add a,e 4FBC 83 add a,e 4FBD BD cp l 4FBE 20BE jr nz,0x4F7E 4FC0 83 add a,e 4FC1 83 add a,e 4FC2 BD cp l 4FC3 20BE jr nz,0x4F83 4FC5 83 add a,e 4FC6 83 add a,e 4FC7 8D adc a,l 4FC8 2080 jr nz,0x4F4A 4FCA 80 add a,b 4FCB B8 cp b 4FCC 87 add a,a 4FCD 20BE jr nz,0x4F8D 4FCF 83 add a,e 4FD0 83 add a,e 4FD1 BD cp l 4FD2 20BE jr nz,0x4F92 4FD4 83 add a,e 4FD5 83 add a,e 4FD6 BD cp l 4FD7 2020 jr nz,0x4FF9 4FD9 41 ld b,c 4FDA 50 ld d,b 4FDB 50 ld d,b 4FDC 41 ld b,c 4FDD 52 ld d,d 4FDE 41 ld b,c 4FDF 54 ld d,h 4FE0 2C inc l 4FE1 2049 jr nz,0x502C 4FE3 4E ld c,(hl) 4FE4 43 ld b,e 4FE5 2E0A ld l,0x0A 4FE7 BF cp a 4FE8 82 add a,d 4FE9 AD xor l 4FEA BF cp a 4FEB 20BF jr nz,0x4FAC 4FED 83 add a,e 4FEE 83 add a,e 4FEF B3 or e 4FF0 20BF jr nz,0x4FB1 4FF2 9E sbc a,(hl) 4FF3 AD xor l 4FF4 BF cp a 4FF5 20BF jr nz,0x4FB6 4FF7 80 add a,b 4FF8 80 add a,b 4FF9 BF cp a 4FFA 20BF jr nz,0x4FBB 4FFC 80 add a,b 4FFD 80 add a,b 4FFE BF cp a 4FFF 20B2 jr nz,0x4FB3 5001 83 add a,e 5002 83 add a,e 5003 BD cp l 5004 20A0 jr nz,0x4FA6 5006 9E sbc a,(hl) 5007 81 add a,c 5008 80 add a,b 5009 20BE jr nz,0x4FC9 500B 83 add a,e 500C 83 add a,e 500D BD cp l 500E 20BF jr nz,0x4FCF 5010 80 add a,b 5011 80 add a,b 5012 BF cp a 5013 2020 jr nz,0x5035 5015 2056 jr nz,0x506D 5017 45 ld b,l 5018 52 ld d,d 5019 53 ld d,e 501A 49 ld c,c 501B 4F ld c,a 501C 4E ld c,(hl) 501D 2032 jr nz,0x5051 501F 2E30 ld l,0x30 5021 0A ld a,(bc) 5022 83 add a,e 5023 80 add a,b 5024 80 add a,b 5025 83 add a,e 5026 2082 jr nz,0x4FAA 5028 83 add a,e 5029 83 add a,e 502A 81 add a,c 502B 2083 jr nz,0x4FB0 502D 80 add a,b 502E 80 add a,b 502F 83 add a,e 5030 2083 jr nz,0x4FB5 5032 83 add a,e 5033 83 add a,e 5034 81 add a,c 5035 2082 jr nz,0x4FB9 5037 83 add a,e 5038 83 add a,e 5039 81 add a,c 503A 2082 jr nz,0x4FBE 503C 83 add a,e 503D 83 add a,e 503E 81 add a,c 503F 2083 jr nz,0x4FC4 5041 80 add a,b 5042 80 add a,b 5043 80 add a,b 5044 2082 jr nz,0x4FC8 5046 83 add a,e 5047 83 add a,e 5048 81 add a,c 5049 2082 jr nz,0x4FCD 504B 83 add a,e 504C 83 add a,e 504D 81 add a,c 504E 2020 jr nz,0x5070 5050 2020 jr nz,0x5072 5052 4D ld c,l 5053 4F ld c,a 5054 44 ld b,h 5055 45 ld b,l 5056 4C ld c,h 5057 2049 jr nz,0x50A2 5059 0A ld a,(bc) 505A 0D dec c 505B 00 nop 505C 00 nop 505D 00 nop 505E 00 nop 505F 00 nop 5060 00 nop 5061 00 nop 5062 00 nop 5063 44 ld b,h 5064 41 ld b,c 5065 54 ld d,h 5066 45 ld b,l 5067 3F ccf 5068 2020 jr nz,0x508A 506A 284D jr z,0x50B9 506C 4D ld c,l 506D 2F cpl 506E 44 ld b,h 506F 44 ld b,h 5070 2F cpl 5071 59 ld e,c 5072 59 ld e,c 5073 29 add hl,hl 5074 2003 jr nz,0x5079 5076 54 ld d,h 5077 49 ld c,c 5078 4D ld c,l 5079 45 ld b,l 507A 3F ccf 507B 2020 jr nz,0x509D 507D 2848 jr z,0x50C7 507F 48 ld c,b 5080 3A4D4D ld a,(0x4D4D) 5083 3A5353 ld a,(0x5353) 5086 29 add hl,hl 5087 2003 jr nz,0x508C 5089 4D ld c,l 508A 4D ld c,l 508B 2F cpl 508C 44 ld b,h 508D 44 ld b,h 508E 2F cpl 508F 59 ld e,c 5090 59 ld e,c 5091 2020 jr nz,0x50B3 5093 48 ld c,b 5094 48 ld c,b 5095 3A4D4D ld a,(0x4D4D) 5098 3A5353 ld a,(0x5353) 509B 0D dec c 509C 010C01 ld bc,0x010C 509F 1F rra 50A0 00 nop 50A1 64 ld h,h 50A2 00 nop 50A3 1800 jr 0x50A5 50A5 3C inc a 50A6 00 nop 50A7 3C inc a 50A8 00 nop 50A9 00 nop 50AA 00 nop 50AB 00 nop 50AC 00 nop 50AD 00 nop 50AE 00 nop 50AF 00 nop 50B0 00 nop 50B1 00 nop 50B2 00 nop 50B3 00 nop 50B4 00 nop 50B5 00 nop 50B6 00 nop 50B7 00 nop 50B8 00 nop 50B9 00 nop 50BA 00 nop 50BB 00 nop 50BC 00 nop 50BD 00 nop 50BE 00 nop 50BF 00 nop 50C0 00 nop 50C1 00 nop 50C2 00 nop 50C3 00 nop 50C4 00 nop 50C5 00 nop 50C6 00 nop 50C7 00 nop 50C8 00 nop 50C9 00 nop 50CA 00 nop 50CB 00 nop 50CC 00 nop 50CD 00 nop 50CE 00 nop 50CF 00 nop 50D0 00 nop 50D1 00 nop 50D2 00 nop 50D3 00 nop 50D4 00 nop 50D5 00 nop 50D6 00 nop 50D7 00 nop 50D8 00 nop 50D9 00 nop 50DA 00 nop 50DB 00 nop 50DC 00 nop 50DD 00 nop 50DE 00 nop 50DF 00 nop 50E0 00 nop 50E1 00 nop 50E2 00 nop 50E3 00 nop 50E4 00 nop 50E5 00 nop 50E6 00 nop 50E7 00 nop 50E8 00 nop 50E9 00 nop 50EA 00 nop 50EB 00 nop 50EC 00 nop 50ED 00 nop 50EE 00 nop 50EF 00 nop 50F0 00 nop 50F1 00 nop 50F2 00 nop 50F3 00 nop 50F4 00 nop 50F5 00 nop 50F6 00 nop 50F7 00 nop 50F8 00 nop 50F9 00 nop 50FA 00 nop 50FB 00 nop 50FC 00 nop 50FD 00 nop 50FE 00 nop 50FF 00 nop 5100 00 nop 5101 00 nop 5102 00 nop 5103 00 nop 5104 00 nop 5105 00 nop 5106 00 nop 5107 00 nop 5108 00 nop 5109 00 nop 510A 00 nop 510B 00 nop 510C 00 nop 510D 00 nop 510E 00 nop 510F 00 nop 5110 00 nop 5111 00 nop 5112 00 nop 5113 00 nop 5114 00 nop 5115 00 nop 5116 00 nop 5117 00 nop 5118 00 nop 5119 00 nop 511A 00 nop 511B 00 nop 511C 00 nop 511D 00 nop 511E 00 nop 511F 00 nop 5120 00 nop 5121 00 nop 5122 00 nop 5123 00 nop 5124 00 nop 5125 00 nop 5126 00 nop 5127 00 nop 5128 00 nop 5129 00 nop 512A 00 nop 512B 00 nop 512C 00 nop 512D 00 nop 512E 00 nop 512F 00 nop 5130 00 nop 5131 00 nop 5132 00 nop 5133 00 nop 5134 00 nop 5135 00 nop 5136 00 nop 5137 00 nop 5138 00 nop 5139 00 nop 513A 00 nop 513B 00 nop 513C 00 nop 513D 00 nop 513E 00 nop 513F 00 nop 5140 00 nop 5141 00 nop 5142 00 nop 5143 00 nop 5144 00 nop 5145 00 nop 5146 00 nop 5147 00 nop 5148 00 nop 5149 00 nop 514A 00 nop 514B 00 nop 514C 00 nop 514D 00 nop 514E 00 nop 514F 00 nop 5150 00 nop 5151 00 nop 5152 00 nop 5153 00 nop 5154 00 nop 5155 00 nop 5156 00 nop 5157 00 nop 5158 00 nop 5159 00 nop 515A 00 nop 515B 00 nop 515C 00 nop 515D 00 nop 515E 00 nop 515F 00 nop 5160 00 nop 5161 00 nop 5162 00 nop 5163 00 nop 5164 00 nop 5165 00 nop 5166 00 nop 5167 00 nop 5168 00 nop 5169 00 nop 516A 00 nop 516B 00 nop 516C 00 nop 516D 00 nop 516E 00 nop 516F 00 nop 5170 00 nop 5171 00 nop 5172 00 nop 5173 00 nop 5174 00 nop 5175 00 nop 5176 00 nop 5177 00 nop 5178 00 nop 5179 00 nop 517A 00 nop 517B 00 nop 517C 00 nop 517D 00 nop 517E 00 nop 517F 00 nop 5180 00 nop 5181 00 nop 5182 00 nop 5183 00 nop 5184 00 nop 5185 00 nop 5186 00 nop 5187 00 nop 5188 00 nop 5189 00 nop 518A 00 nop 518B 00 nop 518C 00 nop 518D 00 nop 518E 00 nop 518F 00 nop 5190 00 nop 5191 00 nop 5192 00 nop 5193 00 nop 5194 00 nop 5195 00 nop 5196 00 nop 5197 00 nop 5198 00 nop 5199 00 nop 519A 00 nop 519B 00 nop 519C 00 nop 519D 00 nop 519E 00 nop 519F 00 nop 51A0 00 nop 51A1 00 nop 51A2 00 nop 51A3 00 nop 51A4 00 nop 51A5 00 nop 51A6 00 nop 51A7 00 nop 51A8 00 nop 51A9 00 nop 51AA 00 nop 51AB 00 nop 51AC 00 nop 51AD 00 nop 51AE 00 nop 51AF 00 nop 51B0 00 nop 51B1 00 nop 51B2 00 nop 51B3 00 nop 51B4 00 nop 51B5 00 nop 51B6 00 nop 51B7 00 nop 51B8 00 nop 51B9 00 nop 51BA 00 nop 51BB 00 nop 51BC 00 nop 51BD 00 nop 51BE 00 nop 51BF 00 nop 51C0 00 nop 51C1 00 nop 51C2 00 nop 51C3 00 nop 51C4 00 nop 51C5 00 nop 51C6 00 nop 51C7 00 nop 51C8 00 nop 51C9 00 nop 51CA 00 nop 51CB 00 nop 51CC 00 nop 51CD 00 nop 51CE 00 nop 51CF 00 nop 51D0 00 nop 51D1 00 nop 51D2 00 nop 51D3 00 nop 51D4 00 nop 51D5 00 nop 51D6 00 nop 51D7 00 nop 51D8 00 nop 51D9 00 nop 51DA 00 nop