Prev: 30140 Up: Map Next: 30230
30143: Routine at 75BF
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.
This entry point is used by the routines at 30125 and 30130.
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