Prev: 673A Up: Map Next: 686A
6821: Draw Horace
Called from the main loop at 6229, and also used by the routine at 686A.
6821 LD A,($7C79) Pick up the tunnel timer.
6824 AND A Is Horace in a tunnel at the moment?
6825 JR Z,$6832 Jump if not.
6827 DEC A Decrement the tunnel timer.
6828 LD ($7C79),A
682B LD HL,($7C6D) Update Horace's current location.
682E LD ($7C6B),HL
6831 RET
This entry point is used by the routine at 673A to draw Horace during the Horace-has-died colour-cycling effect.
6832 LD A,($7C72) Increment Horace's walking animation timer.
6835 INC A
6836 LD ($7C72),A
6839 AND $10 Keep only bit 4.
683B CP $00 Is bit 4 set now? (This instruction is redundant.)
683D JR NZ,$6844 Jump if so.
683F LD HL,$7D47 Point HL at the graphic data for Horace's sprite (frame 4).
6842 JR $6847
6844 LD HL,$7CC7 This is the base address of the graphic data for Horace's sprite (frame 0).
6847 LD A,($7C70) Pick up Horace's animation frame in A.
684A RLC A Point DE at the graphic data for the corresponding sprite (HL+32*A).
684C RLC A
684E RLC A
6850 RLC A
6852 RLC A
6854 LD B,$00
6856 LD C,A
6857 ADD HL,BC
6858 EX DE,HL
6859 LD HL,($7C6D) Update Horace's current location.
685C LD ($7C6B),HL
685F CALL $6C0F Set HL' to the corresponding attribute file address.
6862 LD A,($7C71) Pick up Horace's attribute byte and copy it to C.
6865 LD C,A
6866 CALL $6BD6 Draw Horace.
6869 RET
Prev: 673A Up: Map Next: 686A