Prev: $2552 Up: Map Next: $2620
$2573: Print the lesson
This corresponds to $F9A5 in the ZX Spectrum version.
Used by the routine at $3AD5.
$2573 LDA $46 Pick up the game mode indicator from $46.
$2575 BNE $25AF Branch unless we're in demo mode.
We're in demo mode.
$2577 LDA #$46 Store $4600 (DEMO, - PRESS) at $D6.
$2579 STA $D7
$257B LDA #$00
$257D STA $D6
$257F LDA #$08 Store the width of the lesson box (in character cells) at $9D.
$2581 STA $9D
$2583 LDA #$40 Store the number of bytes to copy from the text graphic buffer at $31.
$2585 STA $31
$2587 JSR $2005 Write the first line of text ('DEMO, - PRESS') into the text graphic buffer at $4500.
$258A JSR $213B Centre the text in the text graphic buffer.
$258D LDX #$10 These are the coordinates at which to print the first line of text.
$258F LDY #$15
$2591 JSR $3868 Copy the text graphic buffer to the screen.
$2594 JSR $212A Clear the text graphic buffer.
$2597 LDA #$46 Store $4610 (A KEY TO PLAY) at $D6.
$2599 STA $D7
$259B LDA #$10
$259D STA $D6
$259F JSR $2005 Write the second line of text ('A KEY TO PLAY') into the text graphic buffer at $4500.
$25A2 JSR $213B Centre the text in the text graphic buffer.
$25A5 LDX #$10 These are the coordinates at which to print the second line of text.
$25A7 LDY #$17
$25A9 JSR $3868 Copy the text graphic buffer to the screen.
$25AC JMP $261F Return.
A game is in progress.
$25AF LDA #$08 Store the width of the lesson box (in character cells) at $9D.
$25B1 STA $9D
$25B3 LDA #$40 Store the number of bytes to copy from the text graphic buffer at $31.
$25B5 STA $31
$25B7 JSR $212A Clear the text graphic buffer.
$25BA LDA $70 Pick up the lesson descriptor from $70.
$25BC AND #$07 Keep only the room bits (0-2).
$25BE CMP #$05 Is this lesson in a classroom?
$25C0 BCS $25EA Branch if not.
$25C2 LDA $70 Pick up the lesson descriptor from $70.
$25C4 AND #$F0 Keep only the teacher bits (4-7).
$25C6 BNE $25CD Branch unless the teacher is MR WACKER.
$25C8 LDA #$B8 This is the LSB of $47B8 (MR WACKER).
$25CA JMP $25E1 Jump forward.
$25CD CMP #$10 Is the teacher MR ROCKITT?
$25CF BNE $25D6 Branch if not.
$25D1 LDA #$C6 This is the LSB of $47C6 (MR ROCKITT).
$25D3 JMP $25E1 Jump forward.
$25D6 CMP #$20 Is the teacher MR WITHIT?
$25D8 BNE $25DF Branch if not.
$25DA LDA #$D4 This is the LSB of $47D4 (MR WITHIT).
$25DC JMP $25E1 Jump forward.
$25DF LDA #$E2 This is the LSB of $47E2 (MR CREAK).
$25E1 STA $D6 Store the address of the teacher's name at $D6.
$25E3 LDA #$47
$25E5 STA $D7
$25E7 JMP $25F4 Jump forward.
$25EA BNE $25FA Branch unless the lesson is REVISION LIBRARY.
$25EC LDA #$80 Store $4880 (REVISION) at $D6.
$25EE STA $D6
$25F0 LDA #$48
$25F2 STA $D7
$25F4 JSR $2005 Write the first line of text ('REVISION' or the teacher's name) into the text graphic buffer at $4500.
$25F7 JSR $213B Centre the text in the text graphic buffer.
$25FA LDX #$10 These are the coordinates at which to print the first line of text.
$25FC LDY #$15
$25FE JSR $3868 Copy the text graphic buffer to the screen.
$2601 LDA $70 Pick up the lesson descriptor from $70.
$2603 AND #$07 Keep only the room bits (0-2).
$2605 ASL A Shift the room bits into bits 4-6.
$2606 ASL A
$2607 ASL A
$2608 ASL A
$2609 CLC Store the address of the room name (or 'LIBRARY', 'DINNER' or 'PLAYTIME') at $D6.
$260A ADC #$80
$260C STA $D6
$260E LDA #$48
$2610 STA $D7
$2612 JSR $2005 Write the second line of text into the text graphic buffer at $4500.
$2615 JSR $213B Centre the text in the text graphic buffer.
$2618 LDX #$10 These are the coordinates at which to print the second line of text.
$261A LDY #$17
$261C JSR $3868 Copy the text graphic buffer to the screen.
$261F RTS
Prev: $2552 Up: Map Next: $2620