Prev: D509 Up: Map Next: D519
D50E: Pause if SPACE is pressed
Used by the routine at end_of_frame.
Called once a frame. The half-row $7E is B, N, M, SYMBOL SHIFT and SPACE, and read_port returns SPACE as bit 0. Only SPACE on its own pauses: with any other key of that half-row held as well the routine returns. Why that matters has not been worked out.
The pause itself is a busy wait inside this routine: nothing moves, nothing is drawn and the frame counter stops until SPACE is pressed and let go again. toggle_audio_hw_x24 sounds on the way in and on the way out.
handle_pause D50E LD A,$7E SPACE not pressed: carry on
D510 CALL read_port
D513 BIT 0,A
D515 RET Z
D516 AND $1E another key of the half-row is held too: not a pause
D518 RET NZ
Prev: D509 Up: Map Next: D519