Routines |
Prev: 98E5 | Up: Map | Next: 9975 |
|
||||
PrintGraphic | 993A | LD A,$08 | A=08. | |
PrintGraphic_0 | 993C | PUSH HL | Stash HL, BC and AF on the stack. | |
993D | PUSH BC | |||
993E | PUSH AF | |||
PrintGraphic_1 | 993F | LD A,(DE) | A=*DE. | |
9940 | LD (HL),A | Write A to *HL. | ||
9941 | INC HL | Increment HL by one. | ||
9942 | INC DE | Increment DE by one. | ||
9943 | DJNZ PrintGraphic_1 | Decrease counter by one and loop back to PrintGraphic_1 until counter is zero. | ||
9945 | POP AF | Restore AF, BC and HL from the stack. | ||
9946 | POP BC | |||
9947 | POP HL | |||
9948 | PUSH AF | Stash AF on the stack. | ||
9949 | LD A,H | A=H. | ||
994A | RES 3,A | Reset bit 3 of A. | ||
994C | CP $47 | Jump to PrintGraphic_2 if A is not equal to 47. | ||
994E | JR NZ,PrintGraphic_2 | |||
9950 | LD A,L | Jump to PrintGraphic_2 if L is lower than E0. | ||
9951 | CP $E0 | |||
9953 | JR C,PrintGraphic_2 | |||
9955 | PUSH DE | Stash DE on the stack. | ||
9956 | LD DE,$0020 | DE=0020. | ||
9959 | ADD HL,DE | HL+=DE. | ||
995A | POP DE | Restore DE and AF from the stack. | ||
995B | POP AF | |||
995C | LD A,$08 | A=08. | ||
995E | JR PrintGraphic_3 | Jump to PrintGraphic_3. | ||
PrintGraphic_2 | 9960 | POP AF | Restore AF from the stack. | |
9961 | DEC A | Decrease A by one. | ||
9962 | CALL Z,PrintGraphic_4 | Call PrintGraphic_4 if A is zero. | ||
9965 | INC H | Increment H by one. | ||
PrintGraphic_3 | 9966 | DEC C | Decrease C by one. | |
9967 | JR NZ,PrintGraphic_0 | Jump to PrintGraphic_0 until C is zero. | ||
9969 | RET | Return. | ||
PrintGraphic_4 | 996A | PUSH DE | Stash DE on the stack. | |
996B | LD DE,$07E0 | DE=07E0. | ||
996E | XOR A | Reset the flags. | ||
996F | SBC HL,DE | HL-=DE (with carry). | ||
9971 | POP DE | Restore DE from the stack. | ||
9972 | LD A,$08 | A=08. | ||
9974 | RET | Return. |
Prev: 98E5 | Up: Map | Next: 9975 |