![]() |
Routines |
A | Knockout delay counter (1-18) |
H | Character number (152-169) |
63829 | CP 18 | Is it time to reveal a safe combination letter? |
63831 | JR Z,63840 | Jump if so |
63833 | CP 9 | Is it time to give lines to the nearest main kid? |
63835 | RET NZ | Return if not |
63836 | POP BC | |
63837 | JP 27196 | Give lines to the nearest main kid if we're dealing with a teacher |
63840 | LD A,(32746) | Collect the shield status from 32746 |
63843 | CP 2 | Set the zero flag if all the shields are flashing but the safe has not been opened |
63845 | LD A,18 | Restore the knockout delay counter to A |
63847 | RET NZ | Return unless all the shields are flashing |
63848 | LD A,H | Return unless we are dealing with a teacher |
63849 | CP 163 | |
63851 | RET C | |
63852 | CP 166 | |
63854 | RET NC | |
63855 | POP BC |
63856 | LD L,97 | Pick up the character's coordinates in DE |
63858 | LD D,(HL) | |
63859 | INC L | |
63860 | LD E,(HL) | |
63861 | LD L,H | Pick up the teacher's safe combination letter in A |
63862 | LD H,127 | |
63864 | LD A,(HL) | |
63865 | LD L,150 | Place this in 32662 |
63867 | LD (HL),A | |
63868 | CALL 29871 | Save the area of the screen that will be overwritten by the bubble |
63871 | RET C | Return if the character is off-screen |
63872 | PUSH DE | |
63873 | LD DE,60464 | Point DE at the safe combination letter bubble graphic buffer |
63876 | LD HL,55945 | 55945: ' ' (single space) |
63879 | CALL 30245 | Write this into the first line of the graphic buffer |
63882 | LD DE,60528 | Write the teacher's safe combination letter into the second line of the graphic buffer |
63885 | LD HL,32662 | |
63888 | CALL 30245 | |
63891 | LD HL,60440 | Set the attribute bytes in the graphic buffer - INK 7: PAPER 0 |
63894 | DEC L | |
63895 | LD (HL),7 | |
63897 | JR NZ,63894 | |
63899 | POP DE | Restore the attribute file address of the top left corner of the bubble to DE and save it again |
63900 | PUSH DE | |
63901 | CALL 29977 | Display the combination letter in a bubble |
63904 | XOR A | A=0 (black border for the sound effect) |
63905 | JP 30575 | Make a sound effect and remove the bubble |