Prev: 27648 Up: Map Next: 27934
27818: Game Initialisation
Used by the routines at 27937, InitialiseDemoMode and CheckPassword.
GameInitialisation 27818 CALL PrintGameDisplay Call PrintGameDisplay.
This entry point is used by the routine at 30423.
SetNewGameStates 27821 LD HL,13312 Write 13312 to *Fuel.
27824 LD (30780),HL
27827 LD HL,30741 Write 0 to 30741.
27830 LD (HL),0
27832 DEC L Write 0 to 30740.
27833 LD (HL),0
27835 LD L,26 Write 1 to 30746.
27837 LD (HL),1
27839 INC L Write 0 to 30747.
27840 LD (HL),0
27842 INC L Write ShadowBuffer to 30748.
27843 LD (HL),0
27845 INC L
27846 LD (HL),178
27848 LD L,33 HL=30753.
Write 128 to 30753, Speed and 30755.
27850 LD B,3 B=3.
GameInitialisation_0 27852 LD (HL),128 Write 128 to *HL.
27854 INC L Increment L by one.
27855 DJNZ GameInitialisation_0 Decrease counter by one and loop back to GameInitialisation_0 until counter is zero.
Write 0 to 30756, 30757, 30758, 30759, 30760, 30761, 30762 and 30763.
27857 LD B,8 B=8.
GameInitialisation_1 27859 LD (HL),0 Write 0 to *HL.
27861 INC L Increment L by one.
27862 DJNZ GameInitialisation_1 Decrease counter by one and loop back to GameInitialisation_1 until counter is zero.
27864 INC L Write 41235 to *LevelProgressPointer.
27865 INC L
27866 LD (HL),19
27868 INC L
27869 LD (HL),161
27871 INC L Write 3 to *30768.
27872 LD (HL),3
27874 INC L Write 47872 to *30769.
27875 LD (HL),0
27877 INC L
27878 LD (HL),187
27880 INC L Write 11 to *30771.
27881 LD (HL),11
27883 INC L Write 0 to *Wheelie.
27884 LD (HL),0
27886 CALL InitialiseLevel Call InitialiseLevel.
27889 LD L,16 L=16.
27891 LD A,(30765) Jump to GameInitialisation_4 if the game is not in "demo mode" (the high-order byte of ControlMethod_Pointer does not contain 115).
27894 CP 115
27896 JR NZ,GameInitialisation_4
27898 LD HL,41440 HL=41440.
GameInitialisation_2 27901 LD A,(HL) A=*HL.
27902 DEC L Decrease L by one.
27903 DEC A Decrease A by one.
27904 JR Z,GameInitialisation_3 Jump to GameInitialisation_3 if A is zero.
27906 CP 49 Jump to GameInitialisation_2 if A is higher than 49.
27908 JR NC,GameInitialisation_2
27910 CP 45 Jump to GameInitialisation_2 if A is lower than 45.
27912 JR C,GameInitialisation_2
GameInitialisation_3 27914 LD A,L A=L.
27915 INC A Increment A by one.
27916 LD (30766),A Write A to *LevelProgressPointer.
27919 DEC L Decrease L by two.
27920 DEC L
GameInitialisation_4 27921 LD H,158 H=158.
27923 XOR A A=0.
27924 CALL 26624 Call 26624.
This entry point is used by the routine at 28184.
GameInitialisation_5 27927 LD A,(23672) A=*FRAMES.
27930 INC A Increment A by one.
27931 JP 60406 Jump to 60406.
Prev: 27648 Up: Map Next: 27934