Prev: A26A Up: Map Next: A2DB
A26C: Update timer bar in HUD
Used by the routine at 9470.
A26C LD A,($A1DB) Return if HDU flash active
A26F CP $FF
A271 RET NZ
A272 LD A,($A1FD) Set DE the timer bar update slot
A275 LD E,A
A276 LD D,$00
A278 LD HL,$582B Set HL to the address into attribute file for the time bar position
A27B ADD HL,DE
A27C LD (HL),$46 Set color attribute to bright yellow
A27E INC HL Increase to the next time bar slot
A27F LD A,(HL) Jump forward if slot is green
A280 CP $04
A282 JP Z,$A287
A285 LD (HL),$06 Set color attribute to normal yellow
A287 LD A,($A1FF) Check for time bar update direction
A28A OR A Jump forward to increase slot if direction is right
A28B JP Z,$A291
A28E JP $A2A3 Jump forward to decrease slot if direction is left
A291 LD A,($A1FD) Increase time bar update slot
A294 INC A
A295 LD ($A1FD),A
A298 LD HL,$A200 Return if current update slot is less than the number of slots availables
A29B CP (HL)
A29C RET NZ
A29D LD A,$01 Change update direction to left
A29F LD ($A1FF),A
A2A2 RET
A2A3 LD A,($A1FD) Decrease timer bar update slot
A2A6 DEC A
A2A7 LD ($A1FD),A
A2AA OR A Return if slot is not zero
A2AB RET NZ
A2AC XOR A Change direction to right
A2AD LD ($A1FF),A
A2B0 LD A,($A1FE) Decrement time bar counter
A2B3 DEC A
A2B4 LD ($A1FE),A
A2B7 OR A if time bar counter is not zero return
A2B8 RET NZ
A2B9 LD A,$05 Reset time bar counter
A2BB LD ($A1FE),A
A2BE LD A,($A200) Decrement a time slot
A2C1 DEC A
A2C2 OR A Jump to kill rex if no time slots availables
A2C3 JP Z,$9CC5
A2C6 LD ($A200),A Set the number of availables time slots
A2C9 LD E,A Set this slot to green color in attribute file
A2CA LD D,$00
A2CC PUSH DE
A2CD LD HL,$582C
A2D0 ADD HL,DE
A2D1 LD (HL),$04
A2D3 POP DE Set this slot to green color in attribute buffer
A2D4 LD HL,$E52B
A2D7 ADD HL,DE
A2D8 LD (HL),$04
A2DA RET
Prev: A26A Up: Map Next: A2DB