Routines |
Prev: E064 | Up: Map | Next: E118 |
Used by the routines at InitialiseGame and Handler_Doors.
|
||||
PrintStatusBar | E0A9 | CALL Controller_DrawRoom | Call Controller_DrawRoom. | |
Restore the default ZX Spectrum font.
|
||||
E0AC | LD HL,$3C00 | Write 3C00 (CHARSET-0100) to *CHARS. | ||
E0AF | LD ($5C36),HL | |||
Set up the attributes.
|
||||
E0B2 | LD A,$10 | Set INK: YELLOW (06). | ||
E0B4 | RST $10 | |||
E0B5 | LD A,$06 | |||
E0B7 | RST $10 | |||
E0B8 | LD A,$11 | Set PAPER: *Active_BorderColour. | ||
E0BA | RST $10 | |||
E0BB | LD A,($5BD0) | |||
E0BE | RST $10 | |||
Set up the screen buffer position.
|
||||
E0BF | LD C,$21 | Set up the screen buffer location 01/21 using CL_SET. | ||
E0C1 | LD B,$01 | |||
E0C3 | CALL $0DD9 | |||
Print the status bar text at the bottom of the screen.
|
||||
E0C6 | LD B,$20 | B=20 (length of status bar string). | ||
E0C8 | LD DE,$F2BB | DE=Messaging_GameStatusBar. | ||
PrintStatusBar_Loop | E0CB | LD A,(DE) | Fetch a character from *DE and store it in the accumulator. | |
E0CC | INC DE | Increment the string pointer by one. | ||
E0CD | CALL PrintColourCharacter | Call PrintColourCharacter. | ||
E0D0 | DJNZ PrintStatusBar_Loop | Decrease the string length counter by one and loop back to PrintStatusBar_Loop until the string is printed. | ||
Prints the "Booty" count.
|
||||
E0D2 | LD C,$13 | Set up the screen buffer location 01/13 using CL_SET. | ||
E0D4 | LD B,$01 | |||
E0D6 | CALL $0DD9 | |||
|
||||
E0D9 | LD BC,($5BF4) | BC=*PlayerBooty. | ||
E0DD | CALL $1A1B | Call OUT_NUM_1. | ||
Prints the "Treasure" count.
|
||||
E0E0 | LD C,$05 | Set up the screen buffer location 01/05 using CL_SET. | ||
E0E2 | LD B,$01 | |||
E0E4 | CALL $0DD9 | |||
|
||||
E0E7 | LD BC,($5BF2) | BC=*PlayerTreasure. | ||
E0EB | CALL $1A1B | Call OUT_NUM_1. | ||
E0EE | CALL PrintStatusBarIcons | Call PrintStatusBarIcons. | ||
E0F1 | LD A,($5BF2) | Return if *PlayerTreasure is not equal to 00. | ||
E0F4 | CP $00 | |||
E0F6 | RET NZ | |||
This entry point is used by the routine at Handler_Items.
|
||||
PrintFindTheGoldKey | E0F7 | LD A,$10 | Set INK: WHITE (07). | |
E0F9 | RST $10 | |||
E0FA | LD A,$07 | |||
E0FC | RST $10 | |||
E0FD | LD A,$11 | Set PAPER: *ActiveRoom_PaperColour. | ||
E0FF | RST $10 | |||
E100 | LD A,($5BD1) | |||
E103 | RST $10 | |||
E104 | LD B,$02 | Set up the screen buffer location 02/21 using CL_SET. | ||
E106 | LD C,$21 | |||
E108 | CALL $0DD9 | |||
E10B | LD B,$20 | B=20 (length of "find the gold key in xx seconds" string). | ||
E10D | LD DE,$E6BC | DE=Messaging_FindTheGoldKey. | ||
PrintFindTheGoldKey_Loop | E110 | LD A,(DE) | Fetch a character from *DE and store it in the accumulator. | |
E111 | CALL PrintColourCharacter | Call PrintColourCharacter. | ||
E114 | INC DE | Increment the string pointer by one. | ||
E115 | DJNZ PrintFindTheGoldKey_Loop | Decrease the string length counter by one and loop back to PrintFindTheGoldKey_Loop until the string is printed. | ||
E117 | RET | Return. |
Prev: E064 | Up: Map | Next: E118 |