Prev: 62168 Up: Map Next: 62349
62201: Draw Score Entry
Used by the routine at Display_High_Score_Screen.
Draws one score entry on the high score screen. Given the screen position in DE and the name data in HL, prints the rank number from 50435, a closing parenthesis, the three-character name, then the full score digits via Print_BCD_Score. The alternate entry at Draw_Score_Entry_Compact uses tighter row spacing and a smaller column advance for the All Time Heroes table.
Input
DE Screen position (row in D, column in E)
HL Points to the three-character name for this score entry
Draw_Score_Entry 62201 LD B,1 Set the rank digit count and row stride.
62203 LD C,6
62205 PUSH HL Stash the name pointer and screen position on the stack.
62206 PUSH DE
62207 LD HL,50435 Call Print_BCD_Score_Suppress_Loop using 50435.
62210 CALL Print_BCD_Score_Suppress_Loop
62213 POP DE Restore the screen position and name pointer from the stack.
62214 POP HL
62215 LD A,22 Position the cursor and print the closing parenthesis character.
62217 CALL PrintDispatch
62220 LD A,D
62221 ADD A,12
62223 CALL PrintDispatch
62226 LD A,E
62227 CALL PrintDispatch
62230 LD A,41
62232 CALL PrintDispatch
62235 LD A,22 Position the cursor for the score entry name.
62237 CALL PrintDispatch
62240 LD A,D
62241 ADD A,19
62243 CALL PrintDispatch
62246 LD A,E
62247 CALL PrintDispatch
62250 LD B,3 Set the name character loop counter.
Draw_Score_Entry_Name_Loop 62252 LD A,(HL) Print the next character of the name.
62253 INC HL
62254 CALL PrintDispatch
62257 DJNZ Draw_Score_Entry_Name_Loop Repeat for the three-character name.
62259 PUSH DE Save the screen position and advance the row for the score digits.
62260 LD A,45
62262 ADD A,D
62263 LD D,A
62264 LD C,6
62266 CALL Print_BCD_Score Print the score digits via Print_BCD_Score.
62269 POP DE Restore the position and advance the column for the next entry.
62270 LD A,8
62272 ADD A,E
62273 LD E,A
62274 RET Return.
This entry point is used by the routine at Display_High_Score_Screen.
Compact variant for the All Time Heroes table; uses a row stride of 4 and a column advance of 6 for tighter spacing.
Draw_Score_Entry_Compact 62275 LD B,1 Set the rank digit count and row stride.
62277 LD C,4
62279 PUSH HL Stash the name pointer and screen position on the stack.
62280 PUSH DE
62281 LD HL,50435 Call Print_BCD_Score_Suppress_Loop using 50435.
62284 CALL Print_BCD_Score_Suppress_Loop
62287 POP DE Restore the screen position and name pointer from the stack.
62288 POP HL
62289 LD A,22 Position the cursor and print the closing parenthesis character.
62291 CALL PrintDispatch
62294 LD A,D
62295 ADD A,8
62297 CALL PrintDispatch
62300 LD A,E
62301 CALL PrintDispatch
62304 LD A,41
62306 CALL PrintDispatch
62309 LD A,22 Position the cursor for the score entry name.
62311 CALL PrintDispatch
62314 LD A,D
62315 ADD A,13
62317 CALL PrintDispatch
62320 LD A,E
62321 CALL PrintDispatch
62324 LD B,3 Set the name character loop counter.
Draw_Score_Entry_Compact_Name_Loop 62326 LD A,(HL) Print the next character of the name.
62327 INC HL
62328 CALL PrintDispatch
62331 DJNZ Draw_Score_Entry_Compact_Name_Loop Repeat for the three-character name.
62333 PUSH DE Save the screen position and advance the row for the score digits.
62334 LD A,31
62336 ADD A,D
62337 LD D,A
62338 LD C,4
62340 CALL Print_BCD_Score Print the score digits via Print_BCD_Score.
62343 POP DE Restore the position and advance the column for the next entry.
62344 LD A,6
62346 ADD A,E
62347 LD E,A
62348 RET Return.
Prev: 62168 Up: Map Next: 62349