![]() |
Routines |
| Prev: BCEC | Up: Map | Next: BD15 |
|
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 |