![]() |
Routines |
| Prev: 46328 | Up: Map | Next: 46382 |
|
Used by the routine at PrintDoubleHeightText.
Prints a character with every pixel row drawn twice, so that it is two characters tall.
|
||||||||||||||||||
| PrintDoubleHeightCharacter | 46346 | PUSH DE | Save the pointer into the text. | |||||||||||||||
| 46347 | PUSH HL | Save the screen address. | ||||||||||||||||
| 46348 | LD DE,(38424) | Fetch the address of the current character set. | ||||||||||||||||
| 46352 | ADD A,A | Multiply the character code by 8 (by doubling it and then multiplying it by four), ignoring bit 7. | ||||||||||||||||
| 46353 | LD L,A | |||||||||||||||||
| 46354 | LD H,0 | |||||||||||||||||
| 46356 | ADD HL,HL | |||||||||||||||||
| 46357 | ADD HL,HL | |||||||||||||||||
| 46358 | ADD HL,DE | Add the address of the character set. | ||||||||||||||||
| 46359 | EX DE,HL | Point DE at the graphics of the character. | ||||||||||||||||
| 46360 | POP HL | Restore the screen address. | ||||||||||||||||
| 46361 | PUSH HL | Save it again. | ||||||||||||||||
| 46362 | LD B,8 | There are 8 pixel rows in a character. | ||||||||||||||||
| PrintDoubleHeightCharacter_Row | 46364 | LD A,(DE) | Fetch a pixel row of the character. | |||||||||||||||
| 46365 | LD (HL),A | Write it to the screen. | ||||||||||||||||
| 46366 | LD C,A | Keep a copy. | ||||||||||||||||
| 46367 | CALL NextPixelRow | Move down to the next pixel row using NextPixelRow. | ||||||||||||||||
| 46370 | LD (HL),C | Write the pixel row again. | ||||||||||||||||
| 46371 | CALL NextPixelRow | Move down to the next pixel row. | ||||||||||||||||
| 46374 | INC DE | Move on to the next pixel row of the character. | ||||||||||||||||
| 46375 | DJNZ PrintDoubleHeightCharacter_Row | Loop back until the whole character has been printed. | ||||||||||||||||
| 46377 | POP HL | Restore the screen address. | ||||||||||||||||
| 46378 | POP DE | Restore the pointer into the text. | ||||||||||||||||
| 46379 | INC DE | Move on to the next character of the text. | ||||||||||||||||
| 46380 | INC L | Move on to the next column. | ||||||||||||||||
| 46381 | RET | Return. | ||||||||||||||||
| Prev: 46328 | Up: Map | Next: 46382 |