Prev: 28733 Up: Map Next: 28775
28744: Make BOY WANDER fire his catapult (4)
The address of this uninterruptible subcommand routine is placed into bytes 111 and 112 of BOY WANDER's buffer by the routine at 28733. At this point BOY WANDER's catapult is fully raised, and so a pellet is launched.
Input
H 167 (BOY WANDER)
Output
28744 LD L,111 Replace the address of this uninterruptible subcommand routine in bytes 111 and 112 of BOY WANDER's buffer with 28775
28746 LD (HL),103
28748 LD L,96 Byte 96 of BOY WANDER's buffer holds his animatory state (57/185)
28750 LD A,(HL) Pick this up in A
28751 ADD A,70 Now A=127 or 255 (catapult pellet)
28753 INC L Pick up BOY WANDER's coordinates in DE
28754 LD D,(HL)
28755 INC L
28756 LD E,(HL)
28757 LD H,170 170=character number of BOY WANDER's catapult pellet
This entry point is used by the routine at 62495 with H=171 (ERIC's catapult pellet).
28759 LD (HL),E Fill in the initial coordinates and animatory state of the catapult pellet
28760 DEC L
28761 LD (HL),D
28762 DEC L
28763 LD (HL),A
28764 LD L,111 Place the address of the uninterruptible subcommand routine at 27932 into bytes 111 and 112 of the catapult pellet's buffer
28766 LD (HL),28
28768 INC L
28769 LD (HL),109
28771 INC L Initialise the pellet's remaining distance to travel (13 spaces)
28772 LD (HL),13
28774 RET
Prev: 28733 Up: Map Next: 28775