![]() |
Routines |
Prev: 75BC | Up: Map | Next: 7616 |
Used by the routine at 75B7.
|
||||
75BF | LD BC,$0505 | BC=0505. | ||
75C2 | XOR A | A=00. | ||
75C3 | LD IXl,A | Write A to the low byte of IX. | ||
75C5 | JR $75E0 | Jump to 75E0. | ||
This entry point is used by the routine at 7616.
|
||||
75C7 | LD HL,$611F | HL=Graphics_Pheenix_03. | ||
75CA | LD B,$05 | B=05. | ||
75CC | LD A,($667D) | C=*667D. | ||
75CF | LD C,A | |||
75D0 | JR $75DE | Jump to 75DE. | ||
This entry point is used by the routine at 7616.
|
||||
75D2 | LD HL,$6185 | HL=Graphics_Pheenix_05. | ||
75D5 | JR $75DA | Jump to 75DA. | ||
This entry point is used by the routine at 7616.
|
||||
75D7 | LD HL,$615B | HL=615B. | ||
75DA | LD BC,($667D) | BC=*667D. | ||
75DE | LD IXl,B | Write B to the low byte of IX. | ||
75E0 | PUSH DE | Stash DE, BC and DE on the stack. | ||
75E1 | PUSH BC | |||
75E2 | PUSH DE | |||
75E3 | LD B,$03 | B=03. | ||
75E5 | PUSH BC | Stash BC and DE on the stack. | ||
75E6 | PUSH DE | |||
75E7 | LD B,$08 | Set a line counter in B (08 lines in a UDG). | ||
75E9 | LD A,(HL) | Copy the UDG data to the screen buffer. | ||
75EA | LD (DE),A | |||
75EB | INC HL | Move to the next UDG graphic data byte. | ||
75EC | INC D | Move down one pixel line in the screen buffer. | ||
75ED | DJNZ $75E9 | Decrease the line counter by one and loop back to 75E9 until all 08 lines of the UDG character have been drawn. | ||
75EF | POP DE | Restore DE from the stack. | ||
75F0 | INC DE | Increment DE by one. | ||
75F1 | POP BC | Restore BC from the stack. | ||
75F2 | DJNZ $75E5 | Decrease counter by one and loop back to 75E5 until counter is zero. | ||
75F4 | POP DE | Restore DE and BC from the stack. | ||
75F5 | POP BC | |||
75F6 | PUSH HL | Stash HL on the stack. | ||
75F7 | CALL ConvertScreenToAttributeBufferAddress | Call ConvertScreenToAttributeBufferAddress. | ||
75FA | EX DE,HL | Exchange the DE and HL registers. | ||
75FB | LD A,IXl | A=the low byte of IX. | ||
75FD | LD (HL),A | Write A to *HL. | ||
75FE | INC HL | Increment HL by one. | ||
75FF | LD (HL),C | Write C to *HL. | ||
7600 | INC HL | Increment HL by one. | ||
7601 | LD (HL),B | Write B to *HL. | ||
7602 | LD BC,$001F | HL+=001F. | ||
7605 | ADD HL,BC | |||
7606 | LD (HL),$06 | Write 06 to *HL. | ||
7608 | CALL ConvertAttributeToScreenBufferAddress | Call ConvertAttributeToScreenBufferAddress. | ||
760B | POP DE | Restore DE from the stack. | ||
760C | LD B,$08 | Set a line counter in B (08 lines in a UDG). | ||
760E | LD A,(DE) | Copy the UDG data to the screen buffer. | ||
760F | LD (HL),A | |||
7610 | INC H | Move down one pixel line in the screen buffer. | ||
7611 | INC DE | Move to the next UDG graphic data byte. | ||
7612 | DJNZ $760E | Decrease the line counter by one and loop back to 760E until all 08 lines of the UDG character have been drawn. | ||
7614 | POP DE | Restore DE from the stack. | ||
7615 | RET | Return. |
Prev: 75BC | Up: Map | Next: 7616 |