![]() |
Routines |
| Prev: C29C | Up: Map | Next: C306 |
|
Used by the routine at CheckTVFlagAndProcess.
|
||||||||
| ProcessScreenCharacter | C2BA | PUSH HL | Stash HL, BC and AF on the stack. | |||||
| C2BB | PUSH BC | |||||||
| C2BC | PUSH AF | |||||||
| C2BD | LD HL,($C1F8) | HL=*C1F8. | ||||||
| C2C0 | LD A,($C1FA) | C=*C1FA. | ||||||
| C2C3 | LD C,A | |||||||
| C2C4 | POP AF | Restore AF from the stack. | ||||||
| C2C5 | PUSH AF | Stash AF on the stack. | ||||||
| C2C6 | CP $0D | Jump to ProcessScreenCharacter_2 if A is not equal to 0D. | ||||||
| C2C8 | JR NZ,ProcessScreenCharacter_2 | |||||||
| ProcessScreenCharacter_0 | C2CA | LD A,($A019) | A=*A019. | |||||
| C2CD | CP $0F | Jump to ProcessScreenCharacter_1 if A is not equal to 0F. | ||||||
| C2CF | JR NZ,ProcessScreenCharacter_1 | |||||||
| C2D1 | CALL ScrollScreenAndResetDisplay | Call ScrollScreenAndResetDisplay. | ||||||
| C2D4 | LD A,$FF | A=FF. | ||||||
| ProcessScreenCharacter_1 | C2D6 | INC A | Increment A by one. | |||||
| C2D7 | LD ($A019),A | Write A to *A019. | ||||||
| C2DA | LD HL,$5020 | HL=5020 (screen buffer location). | ||||||
| C2DD | LD C,$02 | C=02. | ||||||
| C2DF | CALL UpdateScreenDisplay | Call UpdateScreenDisplay. | ||||||
| C2E2 | LD A,($C128) | A=*C128. | ||||||
| C2E5 | AND A | Set flags. | ||||||
| C2E6 | LD A,$24 | A=24. | ||||||
| C2E8 | JR Z,ProcessScreenCharacter_3 | Jump to ProcessScreenCharacter_3 if A is equal to A. | ||||||
| C2EA | LD A,$12 | A=12. | ||||||
| C2EC | JR ProcessScreenCharacter_3 | Jump to ProcessScreenCharacter_3. | ||||||
| ProcessScreenCharacter_2 | C2EE | CALL PrintCharacter | Call PrintCharacter. | |||||
| C2F1 | LD A,($C1F5) | A=*ScreenWidth. | ||||||
| C2F4 | DEC A | Decrease A by one. | ||||||
| C2F5 | JP Z,ProcessScreenCharacter_0 | Jump to ProcessScreenCharacter_0 if A is zero. | ||||||
| ProcessScreenCharacter_3 | C2F8 | LD ($C1F5),A | Write A to *ScreenWidth. | |||||
| C2FB | LD ($C1F8),HL | Write HL to *C1F8. | ||||||
| C2FE | LD A,C | Write C to *C1FA. | ||||||
| C2FF | LD ($C1FA),A | |||||||
| C302 | POP AF | Restore AF, BC and HL from the stack. | ||||||
| C303 | POP BC | |||||||
| C304 | POP HL | |||||||
| C305 | RET | Return. | ||||||
| Prev: C29C | Up: Map | Next: C306 |