![]() |
Routines |
| Prev: 6922 | Up: Map |
|
Called from the main loop at 6229.
|
||||||||
| 696C | LD HL,$6DA6 | Point HL at the first guard countdown timer. | ||||||
| 696F | LD B,$04 | There are four guards to consider. | ||||||
| 6971 | LD E,(HL) | Pick up the countdown timer value in DE. | ||||||
| 6972 | INC HL | |||||||
| 6973 | LD D,(HL) | |||||||
| 6974 | DEC HL | |||||||
| 6975 | LD A,D | Is the value zero? | ||||||
| 6976 | OR E | |||||||
| 6977 | JR Z,$6989 | Jump if so (this guard is already in play). | ||||||
| 6979 | DEC DE | Decrement the countdown timer. | ||||||
| 697A | LD (HL),E | |||||||
| 697B | INC HL | |||||||
| 697C | LD (HL),D | |||||||
| 697D | DEC HL | |||||||
| 697E | LD A,D | |||||||
| 697F | OR C | This should be OR E. | ||||||
| 6980 | JR NZ,$6989 | Jump unless A is now zero. | ||||||
| 6982 | LD A,($6B0A) | Increment the active guard counter. | ||||||
| 6985 | INC A | |||||||
| 6986 | LD ($6B0A),A | |||||||
| 6989 | INC HL | Point HL at the next guard's countdown timer. | ||||||
| 698A | INC HL | |||||||
| 698B | DJNZ $6971 | Jump back to consider the next guard. | ||||||
| 698D | RET | |||||||
| Prev: 6922 | Up: Map |