Routines |
Prev: A62E | Up: Map | Next: A6C7 |
Used by the routine at GameEntryPoint.
|
||||||||||||||||||||
Prints "Please select method of control".
|
||||||||||||||||||||
GameMenu | A675 | LD HL,$AB8B | HL=Messaging_SelectControl. | |||||||||||||||||
A678 | LD DE,$4820 | DE=4820 (screen buffer location). | ||||||||||||||||||
A67B | CALL PrintString | Call PrintString. | ||||||||||||||||||
Prints "1 : Keyboard ( cursor keys )".
|
||||||||||||||||||||
A67E | LD HL,$ABAB | HL=Messaging_SelectKeyboard. | ||||||||||||||||||
A681 | LD DE,$4861 | DE=4861 (screen buffer location). | ||||||||||||||||||
A684 | CALL PrintString | Call PrintString. | ||||||||||||||||||
Prints "2 : Kempston joystick".
|
||||||||||||||||||||
A687 | LD HL,$ABC8 | HL=Messaging_SelectKempston. | ||||||||||||||||||
A68A | LD DE,$4881 | DE=4881 (screen buffer location). | ||||||||||||||||||
A68D | CALL PrintString | Call PrintString. | ||||||||||||||||||
Prints "3 : Interface 2".
|
||||||||||||||||||||
A690 | LD HL,$ABDE | HL=Messaging_SelectInterface2. | ||||||||||||||||||
A693 | LD DE,$48A1 | DE=48A1 (screen buffer location). | ||||||||||||||||||
A696 | CALL PrintString | Call PrintString. | ||||||||||||||||||
Prints "4 : Cursor key type joysticks".
|
||||||||||||||||||||
A699 | LD HL,$ABEE | HL=Messaging_SelectCursor. | ||||||||||||||||||
A69C | LD DE,$48C1 | DE=48C1 (screen buffer location). | ||||||||||||||||||
A69F | CALL PrintString | Call PrintString. | ||||||||||||||||||
Handle retrieving the players input.
|
||||||||||||||||||||
A6A2 | LD BC,$F7FE | Read from the keyboard;
|
||||||||||||||||||
GameMenu_Loop | A6A5 | IN A,(C) | ||||||||||||||||||
A6A7 | BIT 0,A | If "1" is pressed, set HL to Handler_Controls_Keyboard and jump to GameMenu_WriteControl. | ||||||||||||||||||
A6A9 | LD HL,$B6BF | |||||||||||||||||||
A6AC | JR Z,GameMenu_WriteControl | |||||||||||||||||||
A6AE | BIT 3,A | If "4" is pressed jump to GameMenu_WriteControl. | ||||||||||||||||||
A6B0 | JR Z,GameMenu_WriteControl | |||||||||||||||||||
A6B2 | LD HL,$B6E5 | If "2" is pressed, set HL to Handler_Controls_Kempston and jump to GameMenu_WriteControl. | ||||||||||||||||||
A6B5 | BIT 1,A | |||||||||||||||||||
A6B7 | JR Z,GameMenu_WriteControl | |||||||||||||||||||
A6B9 | LD HL,$B703 | If "3" is not pressed, set HL to Handler_Controls_Interface2 and jump to GameMenu_Loop. | ||||||||||||||||||
A6BC | BIT 2,A | |||||||||||||||||||
A6BE | JR NZ,GameMenu_Loop | |||||||||||||||||||
The controller routine is written as the target address for a
CALL operation at Handler_Controls.
|
||||||||||||||||||||
GameMenu_WriteControl | A6C0 | LD ($B6BC),HL | Write the appropriate controller location from HL into the CALL target at *B6BC. | |||||||||||||||||
A6C3 | CALL PressAnyKey_0 | Call PressAnyKey_0. | ||||||||||||||||||
A6C6 | RET | Return. |
Prev: A62E | Up: Map | Next: A6C7 |