Prev: 5FA8 Up: Map Next: 8029
8000: Main entry point (second block)
This block is loaded immediately after the screen is drawn and the banner messages scrolled on screen. Once loaded, control passes immediately into it
8000 JP NC,$0000 Reset if previous block didn't load
8003 LD A,$08 Make the border black
8005 OUT ($FE),A
8007 EXX Set "animation hash change" value. This is used to determine when a character needs to be redrawn. For now, don't do anything.
8008 LD C,$00
800A EXX
800B LD H,$00
800D LD B,$80 Initial timing constant
800F LD IX,$8C1C Start of next block
The main block does not have a usual loading tone, so just ensure the tape is in sync
8013 LD D,$05 Number of attempts
8015 CALL $8341 Look for a bit on tape
8018 JP NC,$0000 Reset if we couldn't find one
801B LD B,$B1 New timing constant
801D DEC D Reduce number of attempts
801E JR NZ,$8015 Try again if we didn't find an edge change within the right time
8020 LD DE,$72D8 Length of next block
8023 EXX
8024 INC C Set "hash change" flag to 1 - equivalent to reading bit 0 from tape
8025 EXX
8026 JP $837D Onto the next part
Prev: 5FA8 Up: Map Next: 8029