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 |