![]() |
Routines |
| Prev: 6FFD | Up: Map | Next: 7048 |
|
Used by the routine at GamePlayEntry.
|
||||
|
Controller for handling whether to action 1UP or 2UP score label.
|
||||
| ScoreLabelFlash | 7020 | LD A,($5F21) | A=ActivePlayer. | |
| 7023 | AND A | If the current player is 2UP then jump to FlashScoreLabel2UP. | ||
| 7024 | JR NZ,FlashScoreLabel2UP | |||
|
Flash 1UP score label.
|
||||
| 7026 | LD HL,$0018 | HL=00,18 (position of the 1UP score label). | ||
|
Set flash state for the 3-attributes of the score label.
|
||||
| FlashText | 7029 | CALL AttributeAddress | Call AttributeAddress. | |
| 702C | LD B,$03 | B=03 (counter for the three letters in a score label). | ||
| FlashText_Loop | 702E | LD A,(HL) | Fetch the attribute byte. | |
| 702F | OR %10000000 | Ensure bit 7 is set (the flash bit). | ||
| 7031 | LD (HL),A | Write the attribute byte back. | ||
| 7032 | INC HL | Increase the attribute pointer by one. | ||
| 7033 | DJNZ FlashText_Loop | Decrease counter by one and loop back to FlashText_Loop until counter is zero. | ||
| 7035 | RET | Return. | ||
|
Unset flash state for the 3-attributes of the score label.
|
||||
| UnsetFlashText | 7036 | CALL AttributeAddress | Call AttributeAddress. | |
| 7039 | LD B,$03 | B=03 (counter for the three letters in a score label). | ||
| UnsetFlashText_Loop | 703B | LD A,(HL) | Fetch the attribute byte. | |
| 703C | AND %01111111 | Keep only bits 0-6 (i.e. everything except the flash bit). | ||
| 703E | LD (HL),A | Write the attribute byte back. | ||
| 703F | INC HL | Increase the attribute pointer by one. | ||
| 7040 | DJNZ UnsetFlashText_Loop | Decrease counter by one and loop back to UnsetFlashText_Loop until counter is zero. | ||
| 7042 | RET | Return. | ||
|
Flash 2UP score label.
|
||||
| FlashScoreLabel2UP | 7043 | LD HL,$00D8 | HL=00,D8 (position of the 2UP score label). | |
| 7046 | JR FlashText | Jump to FlashText. | ||
| Prev: 6FFD | Up: Map | Next: 7048 |