![]() |
Routines |
| Prev: 24327 | Up: Map | Next: 24471 |
|
Used by the routine at GameInitialisation.
|
||||
| GameMenu | 24428 | LD A,104 | Write 104 to Temp_Text_Pos_X. | |
| 24430 | LD (24136),A | |||
| 24433 | LD DE,24487 | DE=GameSelection_Attributes. | ||
| 24436 | EXX | Switch to the shadow registers. | ||
| 24437 | LD HL,24492 | HL'=GameSelection_Position. | ||
| 24440 | LD DE,24497 | DE'=GameSelection_Text. | ||
|
There are five lines of text.
|
||||
| 24443 | LD B,5 | B'=5 (counter). | ||
|
This entry point is used by the routine at DisplayCongratsMessaging.
|
||||
| GameMenu_Loop | 24445 | EXX | Switch back to the normal registers. | |
| 24446 | LD A,(DE) | Copy a byte from DE to Current_MenuAttr. | ||
| 24447 | LD (24127),A | |||
| 24450 | INC DE | Increment DE by one. | ||
| 24451 | EXX | Switch to the shadow registers. | ||
| 24452 | PUSH BC | Stash BC' on the stack. | ||
| 24453 | LD A,(HL) | A=HL' (grab the position data). | ||
| 24454 | INC HL | Increment HL' (position data pointer) by one. | ||
| 24455 | PUSH HL | Stash HL' (position data pointer) on the stack. | ||
| 24456 | LD H,A | H'=A. | ||
| 24457 | LD A,(24136) | L'=Temp_Text_Pos_X. | ||
| 24460 | LD L,A | |||
| 24461 | CALL MenuWriteText | Call MenuWriteText. | ||
| 24464 | EXX | Switch back to the normal registers. | ||
| 24465 | POP HL | Restore HL and BC from the stack. | ||
| 24466 | POP BC | |||
| 24467 | INC DE | Increase DE by one. | ||
| 24468 | DJNZ GameMenu_Loop | Decrease counter by one and loop back to GameMenu_Loop until counter is zero. | ||
| 24470 | RET | Return. | ||
|
View the equivalent code in;
|
||||
| Prev: 24327 | Up: Map | Next: 24471 |