Prev: 26909 Up: Map Next: 26941
26910: Remove the speech bubble
Used by the routine at 27144. Sets the bits in the screen refresh buffer (SRB) that correspond to the the speech bubble and lip, so that they are removed (replaced by play area tiles) next time the display is updated.
26910 PUSH HL
26911 CALL 26849 Reset the bits in the SRB corresponding to speech bubble
26914 LD L,248 HL=32760, which holds the LSB of the SRB address corresponding to the lip of the speech bubble (if any); pick this up in A
26916 LD A,(HL)
26917 AND A Is the speech bubble on-screen?
26918 JR Z,26939 Jump if not
26920 LD (HL),0 Signal: no one's talking now
26922 LD L,A HL points to the SRB byte corresponding to the lip of the speech bubble
26923 LD A,(32761) The bit set in A is the bit of that SRB byte that corresponds to the lip's location
26926 OR (HL) Update the speech bubble lip SRB byte with this bit set (forcing a refresh of the screen where the lip is)
26927 LD (HL),A
26928 LD A,L Update the SRB for where the bottom line of the speech bubble is
26929 ADD A,252
26931 LD L,A
26932 LD (HL),255
26934 ADD A,252 Update the SRB for where the top line of the speech bubble is
26936 LD L,A
26937 LD (HL),255
26939 POP HL
26940 RET
Prev: 26909 Up: Map Next: 26941