Prev: 84CC Up: Map Next: 8576
855A: Save: Verify A Block
Used by the routine at SaveGame.
Verifies a block just saved, using LD_BYTES with carry clear. A tape error prints "tape error - hit any key to continue" and waits for a key.
Verify block.
VerifyBlock 855A CALL $0556 Call LD_BYTES.
855D RET C Return if the block verified (carry set).
855E LD A,$01 Write 01 to WaitCountdown.
8560 LD ($B701),A
8563 LD HL,$B381 Point at the message "tape error - hit any key to continue[0x15]" (B381).
8566 CALL PrintMessage Call PrintMessage to print message.
This is the same key wait as Normal_AnyKey.
VerifyBlock_WaitForKey 8569 XOR A Read from the keyboard port.
856A IN A,($FE)
856C AND %00011111 Keep bits 0-4, one for each key in the half-row. XOR A then IN A,(FE) reads every half-row at once, and a pressed key reads as a reset bit.
856E CP $1F Loop back to VerifyBlock_WaitForKey until any key has been pressed.
8570 JR Z,VerifyBlock_WaitForKey
8572 POP DE Jump back to SaveGame_Done to dispatch a control.
8573 JP SaveGame_Done
Prev: 84CC Up: Map Next: 8576