![]() |
Routines |
| Prev: 33775 | Up: Map | Next: 33971 |
|
|
||||
| LoadGame | 33873 | PUSH IX | Stash IX and DE on the stack. | |
| 33875 | PUSH DE | |||
|
Load "flags".
|
||||
| 33876 | LD A,255 | Set the load as a "data block". | ||
| 33878 | SCF | Set the carry flag. | ||
| 33879 | LD IX,46827 | Set the start address to; 46827. | ||
| 33883 | LD DE,29 | Set the block length to; $001D bytes. | ||
| 33886 | CALL LoadBlock | Call LoadBlock. | ||
|
Load "objects".
|
||||
| 33889 | LD A,255 | Set the load as a "data block". | ||
| 33891 | SCF | Set the carry flag. | ||
| 33892 | LD IX,49435 | Set the start address to; Objects. | ||
| 33896 | LD DE,1557 | Set the block length to; $0615 bytes. | ||
| 33899 | CALL LoadBlock | Call LoadBlock. | ||
|
Load...
|
||||
| 33902 | LD A,255 | Set the load as a "data block". | ||
| 33904 | SCF | Set the carry flag. | ||
| 33905 | LD IX,51844 | Set the start address to; 51844. | ||
| 33909 | LD DE,191 | Set the block length to; $00BF bytes. | ||
| 33912 | CALL LoadBlock | Call LoadBlock. | ||
|
Load "locations".
|
||||
| 33915 | LD A,255 | Set the load as a "data block". | ||
| 33917 | SCF | Set the carry flag. | ||
| 33918 | LD IX,47754 | Set the start address to; Locations. | ||
| 33922 | LD DE,1497 | Set the block length to; $05D9 bytes. | ||
| 33925 | CALL LoadBlock | Call LoadBlock. | ||
|
Success!
|
||||
| 33928 | DI | Disable interrupts. | ||
| 33929 | LD HL,46827 | Call ThreeByteCopy using HL=46827 and DE=$C9E2. | ||
| 33932 | LD DE,51682 | |||
| 33935 | CALL ThreeByteCopy | |||
| 33938 | POP DE | Restore DE and IX from the stack. | ||
| 33939 | POP IX | |||
| 33941 | JP 33459 | Jump to 33459. | ||
|
Load Block
|
||||
| LoadBlock | 33944 | CALL 1366 | Call LD_BYTES. | |
| 33947 | RET C | Return if the carry flag is set. | ||
| 33948 | LD A,1 | Write $01 to WaitCoutdown. | ||
| 33950 | LD (46849),A | |||
| 33953 | LD HL,45911 | HL="tape error - hit any key to restart program[0x15]" | ||
| 33956 | CALL PrintMsg | Call PrintMsg. | ||
| LoadBlock_Loop | 33959 | XOR A | Read from the keyboard port. | |
| 33960 | IN A,(254) | |||
| 33962 | AND %00011111 | A pressed key from any line will set its respective bit; bit 0 (outer key) to bit 4 (inner key). Hence keep only bits 0-4 for the check. | ||
| 33964 | CP 31 | Loop back to LoadBlock_Loop until any key has been pressed. | ||
| 33966 | JR Z,LoadBlock_Loop | |||
| 33968 | JP ReStart | Jump to ReStart. | ||
| Prev: 33775 | Up: Map | Next: 33971 |