![]() |
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 |