![]() |
Routines |
| Prev: 6922 | Up: Map | Next: 698E |
|
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 | Next: 698E |