Prev: 29453 Up: Map Next: 29584
29457: Routine at 7311
Used by the routine at Game_Loop.
29457 CALL Handler_PlayerSprite Call Handler_PlayerSprite.
This entry point is used by the routine at Handler_GhostRider.
29460 CALL 29038 Call 29038.
29463 LD HL,(30743) HL=*Current_ScreenPosition.
29466 LD A,L A=L.
29467 RLCA RLCA.
29468 RLCA
29469 RLCA
29470 LD L,A L=A.
29471 AND %00000111 Keep only bits 0-2.
29473 LD B,A B=A.
29474 LD A,L A=L.
29475 AND %11111000 Keep only bits 3-7.
29477 LD L,A L=A.
29478 LD A,(30745) A=*ScrollPhase_Counter.
29481 ADD A,L A+=L.
29482 LD L,A L=A.
29483 LD A,H A=H.
29484 LD H,248 H=248.
29486 LD DE,2048 DE=2048.
29489 SUB 153 A-=153.
29491 ADD HL,DE HL+=DE.
29492 SUB 5 A-=5.
29494 JR NZ,29491 Jump to 29491 if A is not zero.
29496 LD A,H A=H.
29497 ADD A,B A+=B.
29498 LD H,A H=A.
29499 PUSH HL Stash HL on the stack.
29500 LD DE,8 DE=0008.
29503 SBC HL,DE HL-=DE (with carry).
29505 EX DE,HL Exchange the DE and HL registers.
29506 LD HL,(30785) HL=*30785.
29509 SBC HL,DE HL-=DE (with carry).
29511 LD A,H Jump to 29548 if H is not zero.
29512 AND A
29513 JR NZ,29548
29515 LD A,L A=L.
29516 CP 80 Jump to 29548 if A is higher than 80.
29518 JR NC,29548
29520 SUB 8 A-=8.
29522 SRA A
29524 LD C,68 C=INK: GREEN, PAPER: BLACK (BRIGHT) .
29526 LD E,A E=A.
29527 LD D,11 D=11.
29529 LD A,0 A=0.
29531 ADC A,0
29533 CALL Handler_GhostRider Call Handler_GhostRider.
29536 LD A,(30757) Jump to 29548 if *SpriteState is not equal to 68.
29539 CP 68
29541 JR NZ,29548
29543 LD A,1 Write 1 to *30784.
29545 LD (30784),A
29548 POP HL Restore HL from the stack.
29549 LD A,(30784) Return if *30784 is zero.
29552 AND A
29553 RET Z
29554 LD A,H Return if H is not zero.
29555 AND A
29556 RET NZ
29557 LD A,L Return if L is higher than 128.
29558 CP 128
29560 RET NC
29561 LD A,128 A=128.
29563 SUB L A-=L.
29564 NOP No operation.
29565 NOP
29566 NOP
29567 NOP
29568 NOP
29569 LD C,71 C=71.
29571 LD D,11 D=11.
29573 SRA A
29575 LD E,A E=A.
29576 LD A,64 A=64.
29578 ADC A,0
29580 CALL Handler_GhostRider Call Handler_GhostRider.
29583 RET Return.
Prev: 29453 Up: Map Next: 29584