Routines |
Prev: 673A | Up: Map | Next: 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 |