Prev: 630F Up: Map Next: 6374
6333: Start Game
Used by the routine at GameInitialisation.
StartGame 6333 LD HL,$5CF4 HL=1UP_Score
6336 LD BC,$6000 BC=Platform_Buffer
6339 CALL ResetScreen_0
633C CALL $630F
633F CALL $698B
6342 CALL LevelNew
This entry point is used by the routine at 6965.
StartGame_0 6345 LD SP,$5CF0 Change the stack pointer to High_Score
6348 EI Enable interrupts
6349 LD IX,$5D30 IX=ActivePlayerRocket_State
634D XOR A Clear A (sets to $00)
634E LD ($5DCB),A Writes A to ActiveAlien
This entry point is used by the routine at 6965.
StartGame_1 6351 LD A,($5C78) Compare FRAMES and LastFrame.
6354 LD C,A
6355 LD A,($5DD4)
6358 CP C
6359 CALL NZ,$6965
635C LD HL,$69A8 Stash 69A8 on the stack.
635F PUSH HL
6360 LD HL,$6374 HL=JumpTable.
6363 LD A,(IX+$00)
6366 RLCA A=A * 02.
6367 AND %01111110 Keep only bits 1-6.
This entry point is used by the routine at 6498.
StartGame_2 6369 LD C,A Create an offset in BC.
636A LD B,$00
636C ADD HL,BC HL=the address held at JumpTable + offset.
636D LD A,(HL)
636E INC HL
636F LD H,(HL)
6370 LD L,A
6371 JP $5CB0 Jump to NMIADD which will jump to the address in HL.
View the equivalent code in;
Prev: 630F Up: Map Next: 6374