![]() |
Routines |
| Prev: 25037 | Up: Map | Next: 25212 |
|
Used by the routine at GameInitialisation.
|
||||
| GameMenu | 25168 | LD DE,25212 | DE=GameSelection_Attributes. | |
| 25171 | EXX | Switch to the shadow registers. | ||
| 25172 | LD HL,25218 | HL'=GameSelection_Position. | ||
| 25175 | LD DE,25224 | DE'=GameSelection_Text. | ||
|
There are six lines of text.
|
||||
| 25178 | LD B,6 | B'=6 (counter). | ||
| GameMenu_Loop | 25180 | EXX | Switch back to the normal registers. | |
| 25181 | LD A,(DE) | Store the attribute byte to Current_MenuAttr. | ||
| 25182 | LD (24097),A | |||
| 25185 | INC DE | Increment DE by one. | ||
| 25186 | EXX | Switch to the shadow registers. | ||
| 25187 | PUSH BC | Stash BC' on the stack. | ||
| 25188 | LD A,(HL) | A=HL' (grab the position data). | ||
| 25189 | INC HL | Increment HL' (position data pointer) by one. | ||
| 25190 | PUSH HL | Stash HL' (position data pointer) on the stack. | ||
| 25191 | LD H,A | H'=A and L'=56 (indentation). | ||
| 25192 | LD L,56 | |||
| 25194 | CALL MenuWriteText | Call MenuWriteText. | ||
| 25197 | EXX | Switch back to the normal registers. | ||
| 25198 | POP HL | Restore HL and BC from the stack. | ||
| 25199 | POP BC | |||
| 25200 | INC DE | Increase DE by one. | ||
| 25201 | DJNZ GameMenu_Loop | Decrease counter by one and loop back to GameMenu_Loop until counter is zero. | ||
|
Print the copyright footer.
|
||||
| 25203 | LD HL,47104 | HL=47104. | ||
| 25206 | LD DE,24309 | DE=Message_Copyright. | ||
| 25209 | JP PrintString | Jump to PrintString. | ||
|
View the equivalent code in;
|
||||
| Prev: 25037 | Up: Map | Next: 25212 |