Prev: 63768 Up: Map Next: 63829
63779: Make MR CREAK ask the birth year question if appropriate
Used by the routine at 31282. Makes MR CREAK ask the birth year question if (a) he hasn't asked it yet this lesson, and (b) ERIC hasn't opened the safe yet.
Input
A 0 (MR ROCKITT), 1 (MR WITHIT), or 2 (MR CREAK)
63779 LD B,A Save the teacher identifier in B for now
63780 LD HL,31258 Point HL at MR ROCKITT's question/answer data table (ready for the return to the calling routine)
63783 CP 2 Are we dealing with MR CREAK?
63785 JR Z,63790 Jump if so
63787 LD A,B Restore the teacher identifier (0-2) to A
63788 AND A Set the zero flag if we're dealing with MR ROCKITT
63789 RET
We're dealing with MR CREAK, so we need to determine whether he should ask the birth year question.
63790 LD A,(32746) Collect the game mode indicator from 32746
63793 CP 3 Has ERIC already opened the safe?
63795 JR NC,63787 Jump if so
63797 AND A Are we in demo mode?
63798 JR Z,63787 Jump if so
63800 LD A,(32730) Has MR CREAK already asked the birth year question this lesson?
63803 AND A
63804 JR NZ,63787 Jump if so
MR CREAK hasn't asked the birth year question yet. Make him do so now.
63806 POP DE Drop the return address from the stack; we'll be re-entering the calling routine at a different point
63807 INC A Set 32730 to 1, indicating that MR CREAK has asked the birth year question this period
63808 LD (32730),A
63811 LD A,(32666) Copy the identifier of CREAK's birth year battle into the 'Q' spot in 'It was the BATTLE OF Q'
63814 LD (61687),A
63817 LD HL,61665 61665: '{Please Sir - I cannot tell a lie . . }It was the BATTLE OF Q'
63820 LD (43371),HL Place this message address into bytes 107 and 108 of EINSTEIN's buffer
63823 LD DE,61741 61741='WHAT HAPPENED IN THE YEAR THAT I WAS BORN'
63826 JP 31433 Re-enter the calling routine to make MR CREAK ask the birth year question
Prev: 63768 Up: Map Next: 63829