![]() |
Routines |
| Prev: 81AB | Up: Map | Next: 8209 |
|
Used by the routine at Game_Restart.
|
||||
| StartGame | 81BB | LD DE,$BA35 | DE=BA35. | |
| 81BE | CALL $B9BC | Call B9BC. | ||
|
Reset Planet data.
|
||||
| 81C1 | LD HL,$5E50 | HL=5E50. | ||
| 81C4 | LD BC,$6000 | BC=Laser_Param_1. | ||
| 81C7 | CALL ResetScreen_0 | Call ResetScreen_0. | ||
| 81CA | CALL ResetPlanet | Call ResetPlanet. | ||
| 81CD | CALL NewGame | Call NewGame. | ||
| 81D0 | CALL $822F | Call 822F. | ||
| 81D3 | CALL LevelNew | Call LevelNew. | ||
|
This entry point is used by the routine at 8258.
|
||||
| StartGame_0 | 81D6 | LD SP,$5E00 | Set the stack pointer to GameOptions. | |
| 81D9 | LD A,($5E68) | If 5E68 is not zero, call A2CF. | ||
| 81DC | AND A | |||
| 81DD | CALL NZ,$A2CF | |||
| 81E0 | EI | Enable interrupts. | ||
|
This entry point is used by the routine at A1AA.
|
||||
| StartGame_1 | 81E1 | XOR A | Write 00 to 5E5E. | |
| 81E2 | LD ($5E5E),A | |||
| 81E5 | LD IX,$6078 | IX=6078. | ||
| StartGame_2 | 81E9 | LD A,($5C78) | C=FRAMES. | |
| 81EC | LD C,A | |||
| 81ED | LD A,($5E53) | |||
| 81F0 | CP C | |||
| 81F1 | CALL NZ,$8209 | |||
| 81F4 | LD HL,$8259 | HL=8259. | ||
| 81F7 | PUSH HL | Stash HL on the stack. | ||
| 81F8 | LD BC,$82C5 | BC=JumpTable. | ||
| 81FB | LD L,(IX+$00) | |||
|
This entry point is used by the routine at B6CF.
|
||||
| StartGame_3 | 81FE | LD H,$00 | ||
| 8200 | ADD HL,HL | |||
| 8201 | ADD HL,BC | |||
| 8202 | LD A,(HL) | |||
| 8203 | INC HL | |||
| 8204 | LD H,(HL) | |||
| 8205 | LD L,A | |||
| 8206 | JP IndirectJump | Jump to IndirectJump. | ||
| Prev: 81AB | Up: Map | Next: 8209 |