Used by the routines at 6B0E (to print the Skool Daze logo and the score box), 7700 (to print a lines bubble), 7940 (to print the lesson box) and F955 (to print a safe combination letter in a bubble).
Input
DE
Attribute file address
HL
Graphic buffer address
Output
7519
PUSH DE
Save the attribute file address
751A
LD BC,$0008
Copy the first row of attribute bytes from the graphic buffer to the screen
751D
LDIR
751F
LD C,$18
Copy the second row of attribute bytes from the graphic buffer to the screen
7521
EX DE,HL
7522
ADD HL,BC
7523
EX DE,HL
7524
LD C,$08
7526
LDIR
7528
LD C,$18
Copy the third row of attribute bytes from the graphic buffer to the screen
752A
EX DE,HL
752B
ADD HL,BC
752C
EX DE,HL
752D
LD C,$08
752F
LDIR
The attribute bytes have been copied to the screen. Now for the graphic bytes. This entry point is used by the routine at 75CC.
7531
POP DE
Restore the attribute file address to DE
7532
LD A,D
Set DE to the corresponding display file address
7533
SUB $50
7535
ADD A,A
7536
ADD A,A
7537
ADD A,A
7538
LD D,A
7539
LD C,$03
There are three rows of UDGs to copy to the screen
753B
LD A,$08
There are 8 pixel lines per row of UDGs
753D
PUSH BC
Save C (the row counter)
753E
PUSH DE
Copy a row of 8 UDGs from the graphic buffer to the screen
753F
LD C,$08
7541
LDIR
7543
POP DE
7544
INC D
7545
DEC A
7546
JR NZ,$753E
7548
LD A,E
Set DE to the display file address for the next row
7549
ADD A,$20
754B
LD E,A
754C
JR C,$7552
754E
LD A,D
754F
SUB $08
7551
LD D,A
7552
POP BC
Restore the row counter to C
7553
DEC C
Next row
7554
JR NZ,$753B
Jump back until all three rows of UDGs have been copied