Prev: CA5E Up: Map Next: CACB
CA84: The timers END_OF_TURN counts down
Ten 7-byte entries, ending at $FF: byte 0 is the timer's length in turns, and starting it is copying that into byte 1, the count -- WINE_DRUNK does exactly that for timer 7, and timer 9 restarts itself the same way. Bytes 2 and 3 are the routine to run when the count reaches zero. Byte 4 is how many turns before then to warn, and bytes 5 and 6 the routine to warn with. All of them are reached through JUMP_HL's JP (HL).
This table and what follows it, $BF bytes in all, are copied aside by START and copied back on every new game; SAVE and LOAD take the same $BF bytes.
Timer 0, 2 turns: the barrel reaches the long lake (BARREL_REACHES_LAKE); started by BARREL_THROWN
TIMERS CA84 DEFB $02 Its length in turns
TIMER0_COUNT CA85 DEFB $00 Its count: 0 when it is not running
CA86 DEFW BARREL_REACHES_LAKE The routine when the count reaches zero
CA88 DEFB $00 How many turns before then to warn
CA89 DEFW $0000 The routine to warn with
Timer 1, 2 turns: the broken web is mended (WEB_CHANGES); started by WEB_BROKEN
TIMER1 CA8B DEFB $02 Its length in turns
TIMER1_COUNT CA8C DEFB $00 Its count: 0 when it is not running
CA8D DEFW WEB_CHANGES The routine when the count reaches zero
CA8F DEFB $00 How many turns before then to warn
CA90 DEFW $0000 The routine to warn with
Timer 2, 5 turns: the web smothers anyone still in it (WEB_SMOTHERS)
TIMER2 CA92 DEFB $05 Its length in turns
TIMER2_COUNT CA93 DEFB $00 Its count: 0 when it is not running
CA94 DEFW WEB_SMOTHERS The routine when the count reaches zero
CA96 DEFB $00 How many turns before then to warn
CA97 DEFW $0000 The routine to warn with
Timer 3, 2 turns: the goblins' door shuts (GOBLINS_DOOR_SHUTS); started by GOBLINS_DOOR_OPENED
TIMER3 CA99 DEFB $02 Its length in turns
TIMER3_COUNT CA9A DEFB $00 Its count: 0 when it is not running
CA9B DEFW GOBLINS_DOOR_SHUTS The routine when the count reaches zero
CA9D DEFB $00 How many turns before then to warn
CA9E DEFW $0000 The routine to warn with
Timer 4, 2 turns: the deep bog, warning every turn (SINKING_IN_BOG)
TIMER4 CAA0 DEFB $02 Its length in turns
TIMER4_COUNT CAA1 DEFB $00 Its count: 0 when it is not running
CAA2 DEFW SINKING_IN_BOG The routine when the count reaches zero
CAA4 DEFB $02 How many turns before then to warn
CAA5 DEFW SINKING_IN_BOG The routine to warn with
Timer 5, 4 turns: the magic door opens a turn before it closes (MAGIC_DOOR_OPENS, MAGIC_DOOR_CLOSES); started by MAGIC_DOOR_EXAMINED
TIMER5 CAA7 DEFB $04 Its length in turns
TIMER5_COUNT CAA8 DEFB $00 Its count: 0 when it is not running
CAA9 DEFW MAGIC_DOOR_CLOSES The routine when the count reaches zero
CAAB DEFB $01 How many turns before then to warn
CAAC DEFW MAGIC_DOOR_OPENS The routine to warn with
Timer 6: the ring slips off (RING_CHECK); started by WEAR_RING at 2 to 10 turns, and run early by timer 5's warning
TIMER6 CAAE DEFB $00 Its length in turns
TIMER6_COUNT CAAF DEFB $00 Its count: 0 when it is not running
CAB0 DEFW RING_CHECK The routine when the count reaches zero
CAB2 DEFB $00 How many turns before then to warn
CAB3 DEFW $0000 The routine to warn with
Timer 7, 5 turns: the wine wears off (WINE_WEARS_OFF)
TIMER7 CAB5 DEFB $05 Its length in turns
TIMER7_COUNT CAB6 DEFB $00 Its count: 0 when it is not running
CAB7 DEFW WINE_WEARS_OFF The routine when the count reaches zero
CAB9 DEFB $00 How many turns before then to warn
CABA DEFW $0000 The routine to warn with
Timer 8, 4 turns: the eyes in the forest (EYES_WARNING, EYES_STING)
TIMER8 CABC DEFB $04 Its length in turns
TIMER8_COUNT CABD DEFB $00 Its count: 0 when it is not running
CABE DEFW EYES_STING The routine when the count reaches zero
CAC0 DEFB $03 How many turns before then to warn
CAC1 DEFW EYES_WARNING The routine to warn with
Timer 9, 5 turns: the hole in the mountain's side (SIDE_DOOR_APPEARS, SIDE_DOOR_VANISHES)
TIMER9 CAC3 DEFB $05 Its length in turns
TIMER9_COUNT CAC4 DEFB $00 Its count: 0 when it is not running
CAC5 DEFW SIDE_DOOR_VANISHES The routine when the count reaches zero
CAC7 DEFB $01 How many turns before then to warn
CAC8 DEFW SIDE_DOOR_APPEARS The routine to warn with
CACA DEFB $FF End of the timers
Prev: CA5E Up: Map Next: CACB