Prev: 899C Up: Map Next: 89EF
89BF: Print Scores
Print a three-byte BCD score to the banner.
Sets up the 1UP score.
Score_1UP 89BF LD HL,$4021 HL=4021 (screen buffer address).
89C2 LD DE,$5E5F DE=1UP_Score_1.
89C5 JR PrintScore Jump to PrintScore.
Sets up the 2UP score.
Score_2UP 89C7 LD HL,$4039 HL=4039 (screen buffer address).
89CA LD DE,$5E62 DE=2UP_Score_1.
89CD JR PrintScore Jump to PrintScore.
Sets up the HI score.
Score_HI 89CF LD HL,$402D HL=402D (screen buffer address).
89D2 LD DE,$5E06 DE=High_Score.
Prints the score.
PrintScore 89D5 LD B,$03 Set a score byte counter in B for 03 loops.
This entry point is used by the routine at HallOfFame.
PrintScore_Loop 89D7 LD A,(DE) A=*DE.
89D8 RRCA A=A / 10.
89D9 RRCA
89DA RRCA
89DB RRCA
89DC AND %00001111 Keep only bits 0-3.
89DE ADD A,$30 A=A + 30 (convert to ASCII).
89E0 CALL PrintScreen Call PrintScreen.
Print the lower digit of the score byte.
89E3 LD A,(DE) A=*DE.
89E4 AND %00001111 Keep only bits 0-3.
89E6 ADD A,$30 A=A + 30 (convert to ASCII).
89E8 CALL PrintScreen Call PrintScreen.
89EB INC DE Increment DE by one.
89EC DJNZ PrintScore_Loop Decrease the counter by one and jump back to PrintScore_Loop until it is zero.
89EE RET Return.
View the equivalent code in;
Prev: 899C Up: Map Next: 89EF