Prev: 24497 Up: Map Next: 24616
24559: Start Game
Used by the routine at GameInitialisation.
StartGame 24559 XOR A Write 0 to
24560 LD (23672),A
24563 LD (24180),A
Reset the players life count.
24566 LD A,3 Write starting lives to Player_Lives.
24568 LD (24125),A
Reset the players score (3 digits).
24571 LD HL,24140 HL=Score_1.
24574 LD B,3 B=3.
ResetScore_Loop 24576 LD (HL),0 Write 0 to HL.
24578 INC HL Increment HL by one.
24579 DJNZ ResetScore_Loop Decrease counter by one and loop back to ResetScore_Loop until counter is zero.
24581 EI Enable interrupts.
24582 CALL GameInit Call GameInit.
This entry point is used by the routines at HandlerCup and 27251.
StartGame_0 24585 LD IX,24192 IX=24192.
24589 LD SP,24064 Set the stack pointer to 24064.
This entry point is used by the routine at 27251.
MainLoop 24592 LD HL,27251 HL=27251.
24595 PUSH HL Stash HL on the stack.
24596 LD HL,24616 HL=JumpTable_Main.
24599 LD A,(IX+0)
24602 RLCA
24603 AND %01111110 Keep only bits 1-6.
24605 LD C,A Create an offset in BC.
24606 LD B,0
24608 ADD HL,BC HL=HL + offset.
24609 LD A,(HL) HL=address from JumpTable_Main + offset.
24610 INC HL
24611 LD H,(HL)
24612 LD L,A
24613 JP 23728 Jump to 23728.
View the equivalent code in;
Prev: 24497 Up: Map Next: 24616