Prev: DD22 Up: Map Next: DD6C
DD37: Load Game
Used by the routine at Handler_Keyboard.
Prints Messaging_LoadGame, waits for "2", then loads the tape block.
Use the ROM font and print the load message.
Tape_Load DD37 LD HL,$3C00 Write 3C00 to *CHARS.
DD3A LD ($5C36),HL
DD3D LD HL,$E7E4 Print the messaging at Messaging_LoadGame.
DD40 CALL JumpTable_PrintMessage
Wait until a key is pressed.
Tape_Load_Wait DD43 LD BC,$2710 Call JumpTable_Delay with a pause of 2710.
DD46 CALL JumpTable_Delay
DD49 CALL $028E Call KEY_SCAN.
DD4C LD A,E Jump to Tape_Load_Wait if no key is pressed.
DD4D CP $FF
DD4F JR Z,Tape_Load_Wait
Load only if "2" was pressed.
DD51 CP $02 Jump to Tape_Load_Resume unless "2" was pressed.
DD53 JR NZ,Tape_Load_Resume
DD55 POP BC Restore BC from the stack.
DD56 CALL Tape_BlockRange Call Tape_BlockRange.
DD59 SCF Call LD_BYTES with carry set.
DD5A CALL $0556
DD5D CALL Tape_Checksum Jump to Reset_Introduction if the checksum does not match.
DD60 CP L
DD61 JP NZ,Reset_Introduction
Reload the room with bit 7 set.
Tape_Load_Resume DD64 LD A,($64A2) Set bit 7 of the room ID.
DD67 SET 7,A
DD69 JP Change_Room Jump to Change_Room.
Prev: DD22 Up: Map Next: DD6C