Routines |
Prev: 32937 | Up: Map | Next: 33082 |
Used by the routines at Demo_Start and GameLoop.
|
||||
GameMenu | 32997 | CALL Clear_Screen | Call Clear_Screen. | |
33000 | CALL Initialise_Theme_Music | Call Initialise_Theme_Music. | ||
Print up all the options.
|
||||
GameMenu_Loop | 33003 | LD HL,32198 | HL=Messaging_Splash. | |
33006 | LD DE,3 | DE=0003. | ||
33009 | CALL PrintString | Call PrintString. | ||
Set up displaying the active game option.
|
||||
33012 | LD HL,32311 | HL=Messaging_Key. | ||
Calculate the screen position of the active control method.
|
||||
33015 | LD A,(45787) | B=2-*Game_Options. | ||
33018 | LD B,A | |||
33019 | LD A,2 | |||
33021 | SUB B | |||
33022 | LD B,A | |||
D contains the vertical position.
|
||||
33023 | ADD A,A | D=(B*8)-B. | ||
33024 | ADD A,A | |||
33025 | ADD A,A | |||
33026 | SUB B | |||
33027 | LD D,A | |||
And E is hardcoded for the horizontal position.
|
||||
33028 | LD E,3 | E=3. | ||
Print the active key to the screen, this just overwrites the one which is already present (so turns it white).
|
||||
33030 | CALL PrintString | Call PrintString. | ||
GameMenu_Initialise | 33033 | LD A,255 | Write 255 to TempStore_GameOptions. | |
33035 | LD (46313),A | |||
33038 | CALL Check_Music | Call Check_Music. | ||
Check if demo mode should start.
|
||||
33041 | LD A,(46431) | If Flag_DemoMode is not zero jump to Demo_Start. | ||
33044 | OR A | |||
33045 | JR NZ,Demo_Start | |||
33047 | LD A,(46313) | A=*TempStore_GameOptions. | ||
Handler for selecting "Sinclair Joystick".
|
||||
33050 | BIT 0,A | If bit 0 is not set, jump to GameMenu_Kempston. | ||
33052 | JR NZ,GameMenu_Kempston | |||
33054 | CALL Game_Options_Sinclair | Call Game_Options_Sinclair. | ||
33057 | JR GameMenu_Loop | Jump to GameMenu_Loop. | ||
Handler for selecting "Kempston Joystick".
|
||||
GameMenu_Kempston | 33059 | BIT 1,A | If bit 1 is not set, jump to GameMenu_Keyboard. | |
33061 | JR NZ,GameMenu_Keyboard | |||
33063 | CALL Game_Options_Kempston | Call Game_Options_Kempston. | ||
33066 | JR GameMenu_Loop | Jump to GameMenu_Loop. | ||
Handler for selecting "Keyboard".
|
||||
GameMenu_Keyboard | 33068 | BIT 2,A | If bit 2 is not set, jump to GameMenu_StartGame. | |
33070 | JR NZ,GameMenu_StartGame | |||
33072 | CALL Game_Options_Keyboard | Call Game_Options_Keyboard. | ||
33075 | JR GameMenu_Loop | Jump to GameMenu_Loop. | ||
Handler for selecting "Start".
|
||||
GameMenu_StartGame | 33077 | BIT 3,A | If bit 3 is not set, jump to GameMenu_Initialise. | |
33079 | JR NZ,GameMenu_Initialise | |||
33081 | RET | Return. |
Prev: 32937 | Up: Map | Next: 33082 |