← C1D4 Post-load handler for the LOAD LEVELS tape read Map C21C → Draw the options screen
C207: Redraw the options screen, then poll Q to quit
Tail shared by every fire-triggered option change: it redraws the option lines so the new value shows, then polls Q. A held Q leaves to the title screen, and otherwise the menu input loop resumes.
options_apply_tail C207 CALL draw_options_menu Repaint the page so the new value shows.
Alternate entry, taken from the fire test when fire is not held: nothing changed, so it skips the redraw and polls Q straight away.
options_poll_quit C20A LD BC,KBD_ROW_Q_T Read the "Q W E R T" keyboard half-row.
C20D IN A,(C)
C20F AND $1F Keep the five key bits; a pressed key reads as 0.
C211 BIT 0,A Q held? (bit 0, active low).
C213 JP NZ,options_loop Q up: re-enter the menu input loop to re-read the cursor and fire.
C216 CALL wait_no_key Q held: wait for every key to release, then return to the title screen.
C219 JP title_screen
← C1D4 Post-load handler for the LOAD LEVELS tape read Map C21C → Draw the options screen
Fork me on GitHub