![]() |
Routines |
| Prev: 39088 | Up: Map | Next: 39178 |
|
Used by the routine at GameEntry.
Sets up the screen and the tables used by the game and then shows the title screen. This routine never returns.
|
||||
| InitialiseGame | 39120 | LD HL,38419 | Point HL at the first of the game variables. | |
| 39123 | LD BC,429 | There are 429 bytes to clear, which covers the variables and the first 19 entries of the entity table. | ||
| 39126 | CALL FillMemory | Zero them using FillMemory. | ||
| 39129 | LD (38419),IY | Save IY, as it is restored every time the game waits for an interrupt. | ||
| 39133 | XOR A | Set the border to black. | ||
| 39134 | OUT (254),A | |||
| 39136 | LD DE,16383 | Point DE at an address in ROM, so that the screen is not touched. | ||
| 39139 | CALL DrawPlayWindow_Entry | Initialise the off-screen buffer using DrawPlayWindow_Entry. | ||
| 39142 | CALL BuildShiftTables | Build the tables that are used to shift sprites using BuildShiftTables. | ||
| 39145 | CALL ClearScreen | Clear the screen using ClearScreen. | ||
| 39148 | CALL DrawBorder | Draw the border around the screen using DrawBorder. | ||
|
This entry point is used by the routine at GameOver.
The game comes back here when it has ended.
|
||||
| TitleScreen | 39151 | CALL DrawPanel | Draw the panel using DrawPanel. | |
| 39154 | CALL PrintScore | Print the score using PrintScore. | ||
| 39157 | CALL PrintHiScore | Print the hi-score using PrintHiScore. | ||
| 39160 | LD HL,38427 | Point HL at Scores. | ||
| 39163 | LD BC,421 | There are 421 bytes to clear, which covers the scores, the variables and the first 19 entries of the entity table. | ||
| 39166 | CALL FillMemory | Zero them using FillMemory. | ||
| 39169 | CALL ClearLargeWindow | Clear the large window using ClearLargeWindow. | ||
| 39172 | CALL GameMenu | Show the menu using GameMenu, which returns when the player has chosen to start the game. | ||
| 39175 | CALL StartGame | Start the game using StartGame. | ||
| Prev: 39088 | Up: Map | Next: 39178 |