![]() |
Routines |
| Prev: B073 | Up: Map | Next: B0A1 |
|
Used by the routines at GameMenu, Player_Name, A83A, Handler_Yes_No, Handler_StreetIntroduction, Handler_NewsFlash, FinishedStreet, Print_YoureFired, FiredScreen, Print_HighScoreTable, Messaging_GameOver, Play_Window and Handler_BonusMessaging.
|
||||
| PrintString | B081 | LD A,(HL) | A=*HL. | |
| PrintString_Loop | B082 | PUSH DE | Stash DE and HL on the stack. | |
| B083 | PUSH HL | |||
|
Create an offset in HL.
|
||||
| B084 | LD L,A | L=A. | ||
| B085 | LD H,$00 | H=00. | ||
| B087 | ADD HL,HL | HL*=08. | ||
| B088 | ADD HL,HL | |||
| B089 | ADD HL,HL | |||
| B08A | LD BC,$E417 | BC=Font. | ||
| B08D | DEC B | Decrease B by one. | ||
| B08E | ADD HL,BC | HL+=BC. | ||
| B08F | LD B,$08 | B=08. | ||
| PrintString_Copy | B091 | LD A,(HL) | A=*HL. | |
| B092 | LD (DE),A | Write A to *DE. | ||
| B093 | INC HL | Increment HL by one. | ||
| B094 | INC D | Increment D by one. | ||
| B095 | DJNZ PrintString_Copy | Decrease counter by one and loop back to PrintString_Copy until counter is zero. | ||
| B097 | POP HL | Restore HL and DE from the stack. | ||
| B098 | POP DE | |||
| B099 | INC DE | Increment DE by one. | ||
| B09A | INC HL | Increment HL by one. | ||
| B09B | LD A,(HL) | A=*HL. | ||
| B09C | BIT 7,A | Return if bit 7 is set (the terminator). | ||
| B09E | RET NZ | |||
| B09F | JR PrintString_Loop | Jump to PrintString_Loop. | ||
| Prev: B073 | Up: Map | Next: B0A1 |