Prev: $292F Up: Map Next: $29C8
$298B: Make a stricken teacher reveal his safe combination letter
Used by the routine at $2A43.
$298B LDA $60 Pick up the current character number from $60.
$298D CMP #$0B Is it $00-$0A (a little boy)?
$298F BCC $29C7 Return if so.
$2991 CMP #$0E Is the current character number $0B-$0D (a teacher other than MR CREAK)?
$2993 BCS $29C7 Return if not.
This entry point is used by the routine at $1F29 to make MR CREAK reveal his safe combination letter.
$2995 SEC Reduce the teacher's character number to 0-3.
$2996 SBC #$0B
$2998 TAX Pick up the teacher's safe combination letter from $03-$06 and store it at $4640. This is the first line in the message.
$2999 LDA $03,X
$299B STA $4640
$299E LDA #$46 Prepare the MSBs of the addresses of the first and second lines in the message at $87 and $89.
$29A0 STA $87
$29A2 LDA #$46
$29A4 STA $89
$29A6 LDA #$20 Store a space character at $4642. This is the second line in the message.
$29A8 STA $4642
$29AB LDA #$40 Prepare the LSBs of the addresses of the first and second lines in the message at $86 and $88.
$29AD STA $86
$29AF LDA #$42
$29B1 STA $88
$29B3 LDA $D015 Pick up the current value of the sprite enable register and store it at $F6.
$29B6 STA $F6
$29B8 BEQ $29BD Branch if no sprites are enabled at the moment.
$29BA JSR $38AC Back up existing sprite information
$29BD JSR $2043 Print the safe combination letter above the teacher's head.
$29C0 LDA $F6 Were any sprites enabled before this routine was called?
$29C2 BEQ $29C7 Return if not.
$29C4 JSR $38EF Otherwise restore the previous sprite information.
$29C7 RTS
Prev: $292F Up: Map Next: $29C8