![]() |
Routines |
DE | Coordinates of speech bubble lip |
62714 | LD A,E | UDG references 248-255 correspond to the 8 UDGs that make up the bottom half of the speech bubble; set E to the reference of the UDG that is above the lip |
62715 | AND 7 | |
62717 | ADD A,248 | |
62719 | LD E,A | |
62720 | LD C,3 | We need to adjust the UDGs for each third of the skool |
62722 | LD H,127 | |
62724 | LD B,8 | 8 UDGs make up the bottom half of the speech bubble |
62726 | LD A,H | Point HL at the bottom pixel row of the UDG for the bottom-left corner of the speech bubble |
62727 | ADD A,B | |
62728 | LD H,A | |
62729 | LD A,E | |
62730 | LD L,248 | |
62732 | LD (HL),126 | Open the bottom edge (129=10000001) or close it (126=01111110) depending on whether the lip is underneath |
62734 | CP L | |
62735 | JR NZ,62739 | |
62737 | LD (HL),129 | |
62739 | INC L | Next UDG along the bottom of the speech bubble |
62740 | DJNZ 62732 | Jump back until the lip is open and the others are closed |
62742 | DEC C | Next third of the skool |
62743 | JR NZ,62724 | Jump back until the UDGs for each third have been done |
62745 | JP 29394 | Update the SRB for the middle 6 UDG columns of the bubble |