Prev: B26B Up: Map Next: B29F
B272: Handler: Hall Of Fame
Used by the routine at HallOfFameCheck.
Called from the game selection menu (see HallOfFameCheck). If the options have been changed then the counter is set again. Otherwise the counter in HallOfFame_Timer is decreased, and when it reaches zero the hall of fame is shown (see HallOfFame). The hall of fame stays on screen until a key is pressed, or until about twelve times FFFF loops of the delay have passed. The game selection menu is then drawn again.
Before After HandlerHallOfFame
handler-hall-of-fame-before handler-hall-of-fame-after
Input
F Zero flag set if the options have not changed
HandlerHallOfFame B272 JR NZ,InitialiseHallOfFameTimer Jump to InitialiseHallOfFameTimer to restart the hall of fame timer if the options have been changed.
B274 LD HL,($96B8) Decrease the hall of fame timer in HallOfFame_Timer by one.
B277 DEC HL
B278 LD ($96B8),HL
B27B LD A,H Return unless the hall of fame timer has run out.
B27C OR L
B27D RET NZ
This entry point is used by the routine at GameOver_ControllerRestart.
HandlerHallOfFame_Show B27E CALL HallOfFame Show the hall of fame.
B281 LD B,$0C Set the number of waits in B to 0C.
B283 LD HL,$0000 Set the wait counter in HL to zero.
Wait for a key to be pressed or for the time to run out.
HandlerHallOfFame_Wait B286 XOR A Select every row of the keyboard.
B287 OUT ($FD),A Select the keyboard rows (this does nothing on a 48K).
B289 IN A,($FE) Read the keyboard.
B28B CPL Flip the bits.
B28C AND %00011111 Keep only bits 0-4.
B28E JR NZ,HandlerHallOfFame_Finish Jump to HandlerHallOfFame_Finish if a key has been pressed.
B290 DEC HL Decrease the wait counter by one.
B291 LD A,H Loop back to HandlerHallOfFame_Wait until the wait counter is zero.
B292 OR L
B293 JR NZ,HandlerHallOfFame_Wait
B295 DJNZ HandlerHallOfFame_Wait Decrease the number of waits by one and loop back to HandlerHallOfFame_Wait until all of the waits are done.
HandlerHallOfFame_Finish B297 CALL HallOfFame_Clear Clear the panel.
B29A CALL GameMenu Print the game selection menu.
B29D JR InitialiseHallOfFameTimer Jump to InitialiseHallOfFameTimer to restart the hall of fame timer.
View the equivalent code in;
Prev: B26B Up: Map Next: B29F