![]() |
Data |
| Prev: DADF | Up: Map | Next: DD39 |
|
Where the loader goes if its checksum test fails. It never runs on a good load and is kept as data here; what it does, read from the bytes: it clears memory from its own first bytes down to SPRITE5B00 (an LDDR), prints a line in the ROM's characters on the bottom row of the screen, bright yellow and flashing on black, asking for the tape to be rewound and loaded again, makes the border black, warbles on the beeper with two calls of the ROM's BEEPER 233 times over, and resets the machine (RST 0).
After its message, the byte the loader keeps its decryption key in (it XORs each byte loaded with it, and adds to it), as the load left it; and three counters of the countdown the loader draws over the loading screen.
|
||||
| LOADER_FAILURE | DCC9 | DEFB $21,$D3,$DC,$11,$D2,$DC,$01,$D3 | The routine | |
| DCD1 | DEFB $81,$AF,$77,$ED,$B8,$FD,$21,$1D | |||
| DCD9 | DEFB $DD,$1E,$E7,$06,$18,$C5,$FD,$6E | |||
| DCE1 | DEFB $00,$26,$00,$01,$00,$3C,$29,$29 | |||
| DCE9 | DEFB $29,$09,$16,$50,$06,$08,$7E,$12 | |||
| DCF1 | DEFB $14,$23,$10,$FA,$16,$5A,$3E,$C6 | |||
| DCF9 | DEFB $12,$1C,$FD,$23,$C1,$10,$DE,$3E | |||
| DD01 | DEFB $00,$32,$48,$5C,$06,$E9,$C5,$11 | |||
| DD09 | DEFB $05,$00,$21,$6A,$06,$CD,$B5,$03 | |||
| DD11 | DEFB $1E,$04,$21,$05,$04,$CD,$B5,$03 | |||
| DD19 | DEFB $C1,$10,$EB,$C7 | The routine's last four bytes (the end of the BEEPER loop, and the RST 0); the message, 24 characters of ASCII; the key; the countdown's counters | ||
| DD1D | DEFB $20,$45,$52,$52,$4F,$52,$3A,$20 | |||
| DD25 | DEFB $52,$45,$57,$49,$4E,$44,$20,$26 | |||
| DD2D | DEFB $20,$52,$45,$4C,$4F,$41,$44,$20 | |||
| DD35 | DEFB $ED | |||
| DD36 | DEFB $FF,$4F,$4F | |||
| Prev: DADF | Up: Map | Next: DD39 |