![]() |
Routines |
| Prev: 41252 | Up: Map | Next: 41316 |
|
Used by the routine at YouSeeStart.
Prints the exits out of the current place.
|
||||
|
Save the registers used while the exits are listed.
|
||||
| DisplayExits | 41272 | PUSH IX | Save IX, IY, DE and BC, then call ExitsPointAtTheList to list the exits. | |
| 41274 | PUSH IY | |||
| 41276 | PUSH DE | |||
| 41277 | PUSH BC | |||
| 41278 | CALL ExitsPointAtTheList | |||
| 41281 | CALL MessageAConjunction | Call MessageAConjunction to print a conjunction. | ||
| 41284 | JR Z,DisplayExits_RestoreAndReturn | Jump to DisplayExits_RestoreAndReturn if there are no exits. | ||
| 41286 | LD HL,45088 | Point at the message "visible exits are:[0x16]" (45088). | ||
| 41289 | CALL PrintMessage | Call PrintMessage to print message. | ||
| DisplayExits_Loop | 41292 | LD A,(IX+0) | Read this exit's direction. | |
| 41295 | CALL ExitsTheDirectionWord | Call ExitsTheDirectionWord to describe the direction word. | ||
| 41298 | CALL PrintToken | Call PrintToken to print a dictionary token. | ||
| 41301 | CALL MessageAConjunction | Call MessageAConjunction to print a conjunction. | ||
| 41304 | JR NZ,DisplayExits_Loop | Jump back to DisplayExits_Loop while MessageAConjunction reports another name follows. | ||
| 41306 | CALL Print_LineBreak | Call Print_LineBreak to print a newline. | ||
|
Restore the registers saved for the exit list.
|
||||
| DisplayExits_RestoreAndReturn | 41309 | POP BC | Restore BC, DE, IY and IX from the stack. | |
| 41310 | POP DE | |||
| 41311 | POP IY | |||
| 41313 | POP IX | |||
| 41315 | RET | Return. | ||
|
View the equivalent code in;
|
||||
| Prev: 41252 | Up: Map | Next: 41316 |