![]() |
Routines |
| Prev: 61CD | Up: Map | Next: 627C |
|
Used by the routine at GameInitialisation.
|
||||
| GameMenu | 6250 | LD DE,$627C | DE=GameSelection_Attributes. | |
| 6253 | EXX | Switch to the shadow registers. | ||
| 6254 | LD HL,$6282 | HL'=GameSelection_Position. | ||
| 6257 | LD DE,$6288 | DE'=GameSelection_Text. | ||
|
There are six lines of text.
|
||||
| 625A | LD B,$06 | B'=06 (counter). | ||
| GameMenu_Loop | 625C | EXX | Switch back to the normal registers. | |
| 625D | LD A,(DE) | Store the attribute byte to Current_MenuAttr. | ||
| 625E | LD ($5E21),A | |||
| 6261 | INC DE | Increment DE by one. | ||
| 6262 | EXX | Switch to the shadow registers. | ||
| 6263 | PUSH BC | Stash BC' on the stack. | ||
| 6264 | LD A,(HL) | A=HL' (grab the position data). | ||
| 6265 | INC HL | Increment HL' (position data pointer) by one. | ||
| 6266 | PUSH HL | Stash HL' (position data pointer) on the stack. | ||
| 6267 | LD H,A | H'=A and L'=38 (indentation). | ||
| 6268 | LD L,$38 | |||
| 626A | CALL MenuWriteText | Call MenuWriteText. | ||
| 626D | EXX | Switch back to the normal registers. | ||
| 626E | POP HL | Restore HL and BC from the stack. | ||
| 626F | POP BC | |||
| 6270 | INC DE | Increase DE by one. | ||
| 6271 | DJNZ GameMenu_Loop | Decrease counter by one and loop back to GameMenu_Loop until counter is zero. | ||
|
Print the copyright footer.
|
||||
| 6273 | LD HL,$B800 | HL=B800. | ||
| 6276 | LD DE,$5EF5 | DE=Message_Copyright. | ||
| 6279 | JP PrintString | Jump to PrintString. | ||
|
View the equivalent code in;
|
||||
| Prev: 61CD | Up: Map | Next: 627C |