Routines |
Prev: AA33 | Up: Map | Next: AAA9 |
Used by the routines at GameEntryPoint and Handler_Fired.
|
||||
Print_HighScoreTable | AA69 | CALL BlankMiddleScreenBuffer | Call BlankMiddleScreenBuffer. | |
AA6C | CALL BlankMiddleAttributeBuffer | Call BlankMiddleAttributeBuffer. | ||
Print "TRASHMAN OF THE YEAR NOMINATIONS".
|
||||
AA6F | LD DE,$4820 | DE=4820 (screen buffer location). | ||
AA72 | LD HL,$AE07 | HL=Messaging_Nominations. | ||
AA75 | CALL PrintString | Call PrintString. | ||
AA78 | LD HL,$4840 | HL=4840 (screen buffer location). | ||
AA7B | LD B,$20 | B=20. | ||
AA7D | CALL Concealer | Call Concealer. | ||
AA80 | LD DE,$4865 | DE=4865 (screen buffer location). | ||
AA83 | LD HL,$B043 | HL=Table_HighScore. | ||
The game holds four high scores.
|
||||
AA86 | LD B,$04 | B=04 (counter). | ||
Print_HighScoreTable_Loop | AA88 | PUSH BC | Stash the counter held in BC on the stack. | |
Print the players name for this position.
|
||||
AA89 | CALL PrintString | Call PrintString. | ||
Score are held backwards, so add three to point to the last digit.
|
||||
AA8C | LD BC,$0003 | BC=0003. | ||
AA8F | ADD HL,BC | HL+=BC. | ||
Store the pointer for easily moving onto the next entry.
|
||||
AA90 | PUSH HL | Stash HL on the stack. | ||
AA91 | EX DE,HL | Exchange the DE register with the shadow HL register. | ||
AA92 | ADD HL,BC | HL+=BC. | ||
AA93 | EX DE,HL | Exchange the DE register with the shadow HL register. | ||
Scores are held using three bytes.
|
||||
AA94 | LD B,$03 | B=03 (counter). | ||
AA96 | CALL PrintNumbers | Call PrintNumbers. | ||
Print the "pts" suffix.
|
||||
AA99 | LD HL,$AE28 | HL=Messaging_Pts. | ||
AA9C | CALL PrintString | Call PrintString. | ||
Update the screen buffer address for the next entry.
|
||||
AA9F | LD A,E | E+=0A. | ||
AAA0 | ADD A,$0A | |||
AAA2 | LD E,A | |||
Restore the stashed pointer, and move onto the next entry.
|
||||
AAA3 | POP HL | Restore HL from the stack. | ||
AAA4 | INC HL | Increment HL by one. | ||
Fetch the counter, and loop until all the positions have been displayed.
|
||||
AAA5 | POP BC | Restore the counter to BC from the stack. | ||
AAA6 | DJNZ Print_HighScoreTable_Loop | Decrease counter by one and loop back to Print_HighScoreTable_Loop until counter is zero. | ||
AAA8 | RET | Return. |
Prev: AA33 | Up: Map | Next: AAA9 |