Prev: B34C Up: Map Next: B3BE
B3AB: Wait for a keypress and return it in A
Used by the routines at B2F1, B3C3 and B451.
B3AB XOR A Read all rows of the keyboard, if any are pressed, then the relevant bit 0 - 5 will be reset. Although this makes it impossible to determine what key is pressed, that doesn't matter here.
B3AC IN A,($FE)
B3AE OR $E0 Switch on bits 5-7, which are not used.
B3B0 CP $FF Were any keys pressed?
B3B2 JR NZ,$B3AB Loop back while there aren't.
A key is pressed. Make sure it's released before continuing.
B3B4 XOR A Read all keys again.
B3B5 IN A,($FE)
B3B7 OR $E0 Switch on bits 5-7.
B3B9 CP $FF Were any keys pressed?
B3BB JR Z,$B3B4 Loop back while there still are.
B3BD RET Otherwise return.
Prev: B34C Up: Map Next: B3BE