Prev: 44687 Up: Map Next: 44751
44705: Flash Score Label
Used by the routine at GamePlayEntry.
Used while the game is waiting to start the active player. Makes a low tone every sixteen frames and flashes the score label of the active player ("1UP" or "2UP").
Input
HL Address of the delay counter in GameDelayTimer
ScoreLabelFlash 44705 LD A,(HL) Fetch the start-of-turn delay.
44706 AND %00001111 Keep only bits 0-3.
44708 CALL Z,PlayLowTone Play the low tone if the start-of-turn delay is a multiple of 16 (every sixteenth frame).
44711 LD A,(38558) Jump to FlashScoreLabel2UP to flash the 2UP score label if 2UP is the active player (Flag_ActivePlayer is not zero).
44714 AND A
44715 JR NZ,FlashScoreLabel2UP
Flash 1UP score label.
44717 LD HL,16 HL=000,016 (position of the 1UP score label).
Set flash state for the 3-attributes of the score label.
FlashText 44720 CALL AttributeAddress Find the attribute address of the score label.
44723 LD B,3 Set the letter counter in B to 3 (one for each letter of a score label).
FlashText_Loop 44725 LD A,(HL) Fetch the attribute byte.
44726 OR %10000000 Ensure bit 7 is set (the flash bit).
44728 LD (HL),A Write the attribute byte back.
44729 INC HL Move onto the next attribute.
44730 DJNZ FlashText_Loop Decrease the letter counter by one and loop back to FlashText_Loop until all three letters have been flashed.
44732 RET Return.
This entry point is used by the routine at GamePlayEntry.
Unset flash state for the 3-attributes of the score label.
UnsetFlashText 44733 CALL AttributeAddress Find the attribute address of the score label.
44736 LD B,3 Set the letter counter in B to 3 (one for each letter of a score label).
UnsetFlashText_Loop 44738 LD A,(HL) Fetch the attribute byte.
44739 AND %01111111 Keep only bits 0-6 (i.e. everything except the flash bit).
44741 LD (HL),A Write the attribute byte back.
44742 INC HL Move onto the next attribute.
44743 DJNZ UnsetFlashText_Loop Decrease the letter counter by one and loop back to UnsetFlashText_Loop until all three letters have been unflashed.
44745 RET Return.
Flash 2UP score label.
FlashScoreLabel2UP 44746 LD HL,216 HL=000,216 (position of the 2UP score label).
44749 JR FlashText Jump to FlashText.
View the equivalent code in;
Prev: 44687 Up: Map Next: 44751