Prev: 65B3 Up: Map Next: 669D
663D: Main loop
663D EI Turn on interrupts, then turn them off again. Doesn't seem to do much.
663E DI
663F CALL $669D Check for input
6642 LD A,($5DDE) Did we hit a bike?
6645 BIT 0,A
6647 CALL Z,$68F0 If not, check for fire and act accordingly
664A CALL $5EFE Respond to bike movement
664D CALL $5E00 Move the trees
6650 LD A,($5DD7) Are we firing the photon bolt?
6653 BIT 0,A
6655 CALL NZ,$6A28 If so, adjust its position
6658 CALL $5F89 Print objects on the playing field
665B LD A,($5DDE)
665E BIT 0,A
6660 CALL NZ,$69E3
6663 CALL $69CD Toggle the range indicator
6666 CALL $69A7
6669 CALL $61F3 Recalculate where enemy bikes should be
666C LD A,($5DC6)
666F LD HL,$5DC7
6672 CP (HL)
6673 JR NZ,$667A
6675 LD A,($5DC5)
6678 ADD A,(HL)
6679 LD (HL),A
667A CALL $66FD Check to see if we hit a tree
667D CALL $67C6 Move the bikes nearer or further depending on speed
6680 CALL $633A Move a plan or tank if necessary
6683 LD A,($5DDE) Did we hit a bike?
6686 BIT 0,A
6688 JR NZ,$669A Move on if we did
668A LD A,($5DD7) Is the photon bolt being fired?
668D BIT 0,A
668F JR Z,$669A Skip if it isn't
6691 CALL $6859 Draw the trail of the photon bolt
6694 CALL $6A28 Move it left or right appropriately
6697 CALL $6813 See if anything has been hit?
669A JP $663D Back to start
Prev: 65B3 Up: Map Next: 669D