Prev: 7200 Up: Map Next: 72C9
7254: Routine at 7254
Used by the routines at TitleScreen and StartGame.
7254 LD A,($66A4) Jump to 730D if *66A4 is not equal to 02.
7257 CP $02
7259 JP NZ,$730D
725C LD A,($66F1) Jump to 7277 if *66F1 is not equal to 04.
725F CP $04
7261 JR NZ,$7277
7263 LD HL,$65DD HL=65DD.
7266 LD B,$08 B=08.
7268 PUSH BC Stash BC on the stack.
7269 LD E,(HL) E=*HL.
726A INC HL Increment HL by one.
726B LD D,(HL) D=*HL.
726C INC HL Increment HL by one.
726D PUSH HL Stash HL on the stack.
726E BIT 6,D Call 7564 if bit 6 of D is set.
7270 CALL NZ,$7564
7273 POP HL Restore HL and BC from the stack.
7274 POP BC
7275 DJNZ $7268 Decrease counter by one and loop back to 7268 until counter is zero.
7277 LD HL,$6680 HL=6680.
727A LD DE,$6681 DE=6681.
727D LD BC,$006C BC=006C.
7280 LD (HL),B Write B to *HL.
7281 LDIR LDIR.
7283 LD HL,$65DD HL=65DD.
7286 LD DE,$65DE DE=65DE.
7289 PUSH HL Stash HL on the stack.
728A LD C,$1D C=1D.
728C LD (HL),B Write B to *HL.
728D LDIR LDIR.
728F LD HL,$6637 HL=6637.
7292 LD A,($66F1) Jump to 729D if *66F1 is not zero.
7295 OR A
7296 JR NZ,$729D
7298 LD HL,$65FB HL=65FB.
729B JR $72AD Jump to 72AD.
729D CP $01 Jump to 72A6 if A is not equal to 01.
729F JR NZ,$72A6
72A1 LD HL,$6619 HL=6619.
72A4 JR $72AD Jump to 72AD.
72A6 CP $04 Jump to 72AD if A is not equal to 04.
72A8 JR NZ,$72AD
72AA LD HL,$6647 HL=6647.
72AD POP DE Restore DE from the stack.
72AE LD A,($667F) A=*667F.
72B1 ADD A,A Multiply A by 02.
72B2 JR Z,$72B7 Jump to 72B7 if A is zero.
72B4 LD C,A C=A.
72B5 LDIR LDIR.
72B7 LD HL,$66ED Write CE to *66ED.
72BA LD (HL),$CE
72BC LD HL,$66F0 HL=Player_Lives.
72BF DEC (HL) Decrease Player_Lives by one.
72C0 LD A,(HL) Jump to 72C9 if *Player_Lives indicates the player still has lives left.
72C1 OR A
72C2 JR NZ,$72C9
Player has lost all their lives, set the *Flag_GameOver flag.
72C4 INC A Write 01 to *Flag_GameOver.
72C5 LD ($66F5),A
72C8 RET Return.
Prev: 7200 Up: Map Next: 72C9