Prev: 6371 Up: Map Next: 63FC
637C: Move the plane across screen
Used by the routine at 633A.
637C LD A,($5DCA) Get the enemy offset
637F LD HL,$7CB0
6382 LD (HL),$00
6384 INC L
6385 LD (HL),$00
6387 CP $08 Is it above 8?
6389 JR C,$63CD Jump if so
638B CP $14 Is it below 14?
638D LD IX,($5DCD) Get the current screen offset
6391 JR NC,$63B2 Jump if below 14
6393 INC IX Move down a line
6395 INC IX
6397 INC IX
6399 LD H,(IX+$01) Get the offset to draw at
639C LD L,(IX+$00)
639F EX DE,HL
63A0 LD HL,$4860 Make the offset the distance up from the horizon
63A3 AND A
63A4 SBC HL,DE
63A6 JR NC,$63AC
63A8 LD IX,$650F
63AC LD ($5DCD),IX Set the new position
63B0 JR $63CD
63B2 DEC IX Move up a line
63B4 DEC IX
63B6 DEC IX
63B8 LD L,(IX+$00) Get the offset to draw at
63BB LD H,(IX+$01)
63BE EX DE,HL
63BF LD HL,$40C0 Make the offset the distance from the horizon
63C2 AND A
63C3 SBC HL,DE
63C5 JR C,$63AC
63C7 LD IX,$6500
63CB JR $63AC Jump back to set new position, then continue
63CD LD A,($5DCA) Get enemy offset
63D0 LD HL,$5DE8 Is the bike moving?
63D3 BIT 0,(HL)
63D5 JR Z,$63DB
63D7 LD HL,$5DDF Adjust enemy position to new bike position if we are turning
63DA SUB (HL)
63DB INC A
63DC CP $00
63DE JR Z,$63E4
63E0 CP $1E
63E2 JR C,$63E8
63E4 XOR A
63E5 LD ($5DCB),A Set no bonus enemy on screen
63E8 LD ($5DCA),A Set no bonus enemy on screen
Rotate the helecopter blades
63EB LD A,($631B) Graphic for left blade
63EE XOR $2A Invert bits 1,3 and 5
63F0 LD ($631B),A Store it
63F3 LD A,($6323) Graphic for right blade
63F6 XOR $2A Invert bits 1,3 and 5
63F8 LD ($6323),A Store it
63FB RET
Prev: 6371 Up: Map Next: 63FC