Prev: EE7A Up: Map Next: F274
F232: New High Score Suffix
Used by the routine at HighScoreMessaging.
NewHighScore_Suffix F232 LD A,($5E77) If HighScorePosition is zero, jump to NewHighScore_Suffix_Top_Score.
F235 AND A
F236 JP Z,NewHighScore_Suffix_Top_Score
00 is the "Top Score" so we +01 to make it human readable.
F239 ADD A,$31 A=A+31 (convert to ASCII + 01).
F23B LD HL,$5007 HL=5007 (screen buffer location).
F23E PUSH AF Stash the ASCII highscore position on the stack.
F23F CALL PrintScreen Call PrintScreen.
F242 POP AF A=the ASCII highscore position from the stack.
F243 SUB $31 A=A-31.
F245 LD HL,$8048 HL=8048 (screen location).
Remember that 00 is the "Top Score" so 01 is 2nd place.
F248 CP $01 If the highscore position is 01 jump to NewHighScore_Suffix_ND.
F24A JP Z,NewHighScore_Suffix_ND
And 02 is 3rd...
F24D CP $02 If the highscore position is 02 jump to NewHighScore_Suffix_RD.
F24F JP Z,NewHighScore_Suffix_RD
Anything higher will use the "TH" suffix messaging.
NewHighScore_Suffix_TH F252 LD DE,$F274 DE=HighScore_Suffixes_TH.
NewHighScore_Suffix_Print F255 CALL PrintStringColour Call PrintStringColour.
Handle displaying "HIGHEST SCORE" messaging.
NewHighScore_Suffix_Highest F258 LD HL,$8060 HL=8060 (screen location).
F25B LD DE,$F287 DE=HighScore_Highest_Score.
F25E JP PrintStringColour Jump to PrintStringColour.
Handle displaying the "ND" suffix messaging.
NewHighScore_Suffix_ND F261 LD DE,$F281 DE=HighScore_Suffixes_ND.
F264 JR NewHighScore_Suffix_Print Jump to NewHighScore_Suffix_Print.
Handle displaying the "RD" suffix messaging.
NewHighScore_Suffix_RD F266 LD DE,$F284 DE=HighScore_Suffixes_RD.
F269 JR NewHighScore_Suffix_Print Jump to NewHighScore_Suffix_Print.
Handle displaying "TOP SCORE" messaging.
NewHighScore_Suffix_Top_Score F26B LD HL,$8058 HL=8058 (screen location).
F26E LD DE,$F277 DE=HighScore_Top_Score.
F271 JP PrintStringColour Jump to PrintStringColour.
Prev: EE7A Up: Map Next: F274