![]() |
Routines |
Prev: 30140 | Up: Map | Next: 30230 |
Used by the routine at 30135.
|
||||
30143 | LD BC,1285 | BC=1285. | ||
30146 | XOR A | A=0. | ||
30147 | LD IXl,A | Write A to the low byte of IX. | ||
30149 | JR 30176 | Jump to 30176. | ||
This entry point is used by the routine at 30230.
|
||||
30151 | LD HL,24863 | HL=Graphics_Pheenix_03. | ||
30154 | LD B,5 | B=5. | ||
30156 | LD A,(26237) | C=*26237. | ||
30159 | LD C,A | |||
30160 | JR 30174 | Jump to 30174. | ||
This entry point is used by the routine at 30230.
|
||||
30162 | LD HL,24965 | HL=Graphics_Pheenix_05. | ||
30165 | JR 30170 | Jump to 30170. | ||
This entry point is used by the routine at 30230.
|
||||
30167 | LD HL,24923 | HL=24923. | ||
30170 | LD BC,(26237) | BC=*26237. | ||
30174 | LD IXl,B | Write B to the low byte of IX. | ||
30176 | PUSH DE | Stash DE, BC and DE on the stack. | ||
30177 | PUSH BC | |||
30178 | PUSH DE | |||
30179 | LD B,3 | B=3. | ||
30181 | PUSH BC | Stash BC and DE on the stack. | ||
30182 | PUSH DE | |||
30183 | LD B,8 | Set a line counter in B (8 lines in a UDG). | ||
30185 | LD A,(HL) | Copy the UDG data to the screen buffer. | ||
30186 | LD (DE),A | |||
30187 | INC HL | Move to the next UDG graphic data byte. | ||
30188 | INC D | Move down one pixel line in the screen buffer. | ||
30189 | DJNZ 30185 | Decrease the line counter by one and loop back to 30185 until all 8 lines of the UDG character have been drawn. | ||
30191 | POP DE | Restore DE from the stack. | ||
30192 | INC DE | Increment DE by one. | ||
30193 | POP BC | Restore BC from the stack. | ||
30194 | DJNZ 30181 | Decrease counter by one and loop back to 30181 until counter is zero. | ||
30196 | POP DE | Restore DE and BC from the stack. | ||
30197 | POP BC | |||
30198 | PUSH HL | Stash HL on the stack. | ||
30199 | CALL ConvertScreenToAttributeBufferAddress | Call ConvertScreenToAttributeBufferAddress. | ||
30202 | EX DE,HL | Exchange the DE and HL registers. | ||
30203 | LD A,IXl | A=the low byte of IX. | ||
30205 | LD (HL),A | Write A to *HL. | ||
30206 | INC HL | Increment HL by one. | ||
30207 | LD (HL),C | Write C to *HL. | ||
30208 | INC HL | Increment HL by one. | ||
30209 | LD (HL),B | Write B to *HL. | ||
30210 | LD BC,31 | HL+=0031. | ||
30213 | ADD HL,BC | |||
30214 | LD (HL),6 | Write 6 to *HL. | ||
30216 | CALL ConvertAttributeToScreenBufferAddress | Call ConvertAttributeToScreenBufferAddress. | ||
30219 | POP DE | Restore DE from the stack. | ||
30220 | LD B,8 | Set a line counter in B (8 lines in a UDG). | ||
30222 | LD A,(DE) | Copy the UDG data to the screen buffer. | ||
30223 | LD (HL),A | |||
30224 | INC H | Move down one pixel line in the screen buffer. | ||
30225 | INC DE | Move to the next UDG graphic data byte. | ||
30226 | DJNZ 30222 | Decrease the line counter by one and loop back to 30222 until all 8 lines of the UDG character have been drawn. | ||
30228 | POP DE | Restore DE from the stack. | ||
30229 | RET | Return. |
Prev: 30140 | Up: Map | Next: 30230 |