Prev: 94B8 Up: Map Next: 94E6
94D3: Press Any Key To Continue
Used by the routine at MainMenu.
Read from the keyboard- returns 00 when no keys are being pressed.
Debounce_CheckKeys 94D3 CALL $965F Call 965F.
94D6 OR A Jump back to Debounce_CheckKeys if any keys are still being pressed.
94D7 JR NZ,Debounce_CheckKeys
After the frame delay, return regardless of key presses.
94D9 LD B,$32 Set a timeout counter in B of 32.
Debounce_Loop 94DB HALT Halt operation (suspend CPU until the next interrupt).
94DC XOR A Reset the flags.
94DD IN A,($FE) Read from the keyboard port.
Mask off the unused bits.
94DF OR %11100000 Set bits 5-7.
If no keys are being pressed, A will become 00.
94E1 INC A Increment the value by one.
94E2 RET NZ Return if any key has been pressed.
94E3 DJNZ Debounce_Loop Decrease the timeout counter by one and loop back to Debounce_Loop until the timeout counter is zero.
94E5 RET Return.
Prev: 94B8 Up: Map Next: 94E6