![]() |
Routines |
| Prev: 6298 | Up: Map | Next: 635E |
|
Used by the routine at GameInitialisation.
|
||||
| GameMenu | 6332 | LD DE,$635E | DE=GameSelection_Attributes. | |
| 6335 | EXX | Switch to the shadow registers. | ||
| 6336 | LD HL,$6365 | HL'=GameSelection_Position. | ||
| 6339 | LD DE,$636C | DE'=GameSelection_Text. | ||
|
There are seven lines of text.
|
||||
| 633C | LD B,$07 | B'=07 (counter). | ||
| GameMenu_Loop | 633E | EXX | Switch back to the normal registers. | |
| 633F | LD A,(DE) | Copy a byte from DE to Current_MenuAttr. | ||
| 6340 | LD ($5F24),A | |||
| 6343 | INC DE | Increment DE by one. | ||
| 6344 | EXX | Switch to the shadow registers. | ||
| 6345 | PUSH BC | Stash BC' on the stack. | ||
| 6346 | LD A,(HL) | A=HL' (grab the position data). | ||
| 6347 | INC HL | Increment HL' (position data pointer) by one. | ||
| 6348 | PUSH HL | Stash HL' (position data pointer) on the stack. | ||
| 6349 | LD H,A | H'=A L'=38. | ||
| 634A | LD L,$38 | |||
| 634C | CALL MenuWriteText | Call MenuWriteText. | ||
| 634F | EXX | Switch back to the normal registers. | ||
| 6350 | POP HL | Restore HL and BC from the stack. | ||
| 6351 | POP BC | |||
| 6352 | INC DE | Increase DE by one. | ||
| 6353 | DJNZ GameMenu_Loop | Decrease counter by one and loop back to GameMenu_Loop until counter is zero. | ||
| 6355 | LD HL,$B800 | HL=B800. | ||
| 6358 | LD DE,$5F8E | DE=Message_Rights. | ||
| 635B | JP PrintString | Jump to PrintString. | ||
|
View the equivalent code in;
|
||||
| Prev: 6298 | Up: Map | Next: 635E |