Prev: BCEC Up: Map Next: BD15
BD0C: The control-method menu
Used by the routine at main.
Reads the keyboard directly rather than through the ROM: read_port OUTs a half-row and INs port $FE. Keys 1 to 4 choose keyboard, Kempston, cursor or Interface II, 5 toggles directional control, and 0 starts the game. The options chosen are shown by the FLASH bit of their line's colour.
The control method is bits 1 and 2 of $5BA4 (0 keyboard, 1 Kempston, 2 cursor, 3 Interface II) and bit 3 is directional control. The menu tune plays only on the first pass and blocks until it ends or a key is pressed (see menu_loop), so the menu does not respond to keys until then.
do_menu_selection BD0C XOR A $5BB8=0: the first list drawn will show the screen
BD0D LD ($5BB8),A
BD10 LD HL,menu_colours
BD13 LD B,$08
Worth knowing if you are driving the game from a script: nothing here goes through LAST-K, so poking the ROM's key buffer has no effect at all. The keys have to be presented at the port.
Prev: BCEC Up: Map Next: BD15