Prev: 25359 Up: Map Next: 25460
25395: Start Game
Used by the routine at GameInitialisation.
StartGame 25395 LD HL,23796 HL=1UP_Score
25398 LD BC,24576 BC=Platform_Buffer
25401 CALL ResetScreen_0
25404 CALL ResetPlayers
25407 CALL 27019
25410 CALL LevelNew
This entry point is used by the routine at 26981.
StartGame_0 25413 LD SP,23792 Change the stack pointer to High_Score
25416 EI Enable interrupts
25417 LD IX,23856 IX=ActivePlayerRocket_State
25421 XOR A Clear A (sets to $00)
25422 LD (24011),A Writes A to ActiveAlien
This entry point is used by the routine at 26981.
StartGame_1 25425 LD A,(23672) Compare FRAMES and LastFrame.
25428 LD C,A
25429 LD A,(24020)
25432 CP C
25433 CALL NZ,26981
25436 LD HL,27048 Stash 27048 on the stack.
25439 PUSH HL
25440 LD HL,25460 HL=JumpTable.
25443 LD A,(IX+0)
25446 RLCA A=A * 2.
25447 AND %01111110 Keep only bits 1-6.
This entry point is used by the routine at 25752.
StartGame_2 25449 LD C,A Create an offset in BC.
25450 LD B,0
25452 ADD HL,BC HL=the address held at JumpTable + offset.
25453 LD A,(HL)
25454 INC HL
25455 LD H,(HL)
25456 LD L,A
25457 JP 23728 Jump to NMIADD which will jump to the address in HL.
View the equivalent code in;
Prev: 25359 Up: Map Next: 25460