Address |
Length |
Description |
7F00 |
1 |
Modified by the routines at 6000 and 609B.
|
7F01 |
8 |
Used by the routine at 610B.
|
7F09 |
1 |
Used by the (unused) routine at 64E6.
|
7F0A |
2 |
|
7F0C |
84 |
Used by the routines at 6980, 6992, 7087, 72D2 and 7427. Each byte of the SRB corresponds to a segment of 8 character squares on the screen, the leftmost of which will be at x=0, x=8, x=16 or x=24. Each bit set in an SRB byte corresponds to a character square in the segment that needs refreshing. Bit 0 corresponds to the leftmost character square in the segment, bit 7 to the rightmost character square.
|
7F60 |
4 |
|
7F64 |
2 |
|
7F66 |
34 |
|
7F88 |
4 |
|
7F8C |
8 |
Used by the routine at 78AA.
|
7F94 |
2 |
|
7F96 |
2 |
Used by the routine at F955.
|
7F98 |
2 |
|
7F9A |
1 |
|
7F9B |
4 |
Used by the routines at F6D7 and F855. Holds a copy of the battle-year message corresponding to CREAK's birth.
|
7F9F |
4 |
Used by the routines at F726 and F855. Holds the ASCII codes of the letters in the safe combination (in the right order). The teachers' safe combination letters are stored at 7FA3.
|
7FA3 |
4 |
Used by the routines at F855 and F955. Holds the ASCII codes of the teachers' safe combination letters. The safe combination itself is stored at 7F9F.
|
7FA7 |
1 |
|
7FA8 |
5 |
Used by the routine at F726.
|
7FAD |
1 |
|
7FAE |
5 |
Used by the routine at F726.
|
7FB3 |
1 |
|
7FB4 |
5 |
Used by the routine at F726.
|
7FB9 |
8 |
|
7FC1 |
1 |
Used by the routine at F5DA while in demo mode.
|
7FC2 |
2 |
|
7FC4 |
2 |
Used by the routine at 6AFB.
|
7FC6 |
2 |
|
7FC8 |
1 |
Various status flags for the current lesson.
Bit(s) |
Meaning |
0 |
End of lesson/playtime (always reset) |
1-3 |
Unused |
4 |
Next lines reprimand for the teacher fetching the truant ERIC (toggled by 77AC) |
5 |
Set after a teacher has found the truant ERIC (see 77AC) |
6 |
Set after a classroom lesson has started with ERIC present (see F300) (checked by 77AC; reset by 66E6) |
7 |
Set after EINSTEIN has had a chance to grass on the absent ERIC (see F300), or after dinner has started (see 7C6E) (checked by 77AC; reset by 66E6) |
|
7FC9 |
1 |
Bits 0-3 are used by the classroom-based command lists to indicate that or check whether a teacher has arrived at the classroom door to start the lesson.
Bit(s) |
Meaning if set |
0 |
Teacher has arrived at the Map Room |
1 |
Teacher has arrived at the Reading Room |
2 |
Teacher has arrived at the Exam Room |
3 |
Teacher has arrived at the White Room |
4-6 |
Unused |
7 |
EINSTEIN is speaking (set by 7CAF; checked by 79BA and 7CC8; reset by 79CA) |
|
7FCA |
1 |
These flags are set and reset by command list 0xCC, and checked by command list 0xCE.
Bit(s) |
Meaning if set |
0 |
Little boy no. 1 is ready to stampede |
1 |
Little boy no. 1 is ready to stampede again |
2-7 |
Unused |
|
7FCB |
1 |
These flags are used during the special playtimes (when EINSTEIN is going to tell MR WACKER what ERIC's up to, BOY WANDER has hidden a pea-shooter on the fire escape, or ANGELFACE has mumps).
Bit(s) |
Meaning if set |
0 |
Little boy no. 10 is waiting for ERIC to respond to the message just delivered (set and reset by F800; checked by F778) |
1 |
Unused |
2 |
EINSTEIN is ready (set by command list 0xD4; checked by command list 0xD0) |
BOY WANDER is ready (set and reset by command list 0xD8; checked by command lists 0xD0 and 0xDA) |
3 |
MR WACKER is ready (set by command lists 0xD6 and 0xDA; checked by command list 0xD0) |
4 |
Little boy no. 10 has told ERIC about EINSTEIN (set by command list 0xD0; checked by command list 0xD4) |
Little boy no. 10 has told ERIC about BOY WANDER (set by command list 0xD0; checked by command list 0xD8) |
Little boy no. 10 has told ERIC about ANGELFACE (set by command list 0xD2; checked by command list 0xDC) |
5 |
EINSTEIN has grassed on ERIC (set by command list 0xD4; checked by command list 0xD6) |
ERIC has mumps (set by FA2A; checked by command list 0xDE) |
6-7 |
Unused |
|
7FCC |
14 |
|
7FDA |
1 |
Used by the routine at F923, and reset at the start of each lesson by the routine at 66E6. Holds 0 if MR CREAK has not yet asked the birth year question during the current lesson, or 1 otherwise.
|
7FDB |
13 |
|
7FE8 |
1 |
Decremented by the main loop at 6767; when it becomes zero, the keyboard is checked and ERIC is moved accordingly (see also 6500, 653C, 656A and 6900).
|
7FE9 |
1 |
Zero unless ERIC is midstride or has his arm raised while writing on a board (see 653C); if non-zero, the value is copied to the main action timer at 7FE8 after ERIC has lowered his arm or moved from the midstride position (see 6500).
|
7FEA |
1 |
Used by the routine at 6DEF.
Value |
Meaning |
0 |
Demo mode |
1 |
Shields need to be flashed |
2 |
All shields flashing; ERIC needs to find the safe combination |
3 |
Shields need to be unflashed |
|
7FEB |
1 |
Used by the routine at 6DEF.
|
7FEC |
1 |
|
7FED |
1 |
Used by the routines at 71E8, 7264, F650 and FA10. Holds 0 if the board is clean.
|
7FEE |
1 |
|
7FEF |
1 |
Used by the routines at 71E8, 7264, F650 and FA10. Holds 0 if the board is clean.
|
7FF0 |
1 |
|
7FF1 |
1 |
Used by the routines at 71E8, 7264 and F650. Holds 0 if the board is clean.
|
7FF2 |
1 |
Used by the routine at 77AC.
|
7FF3 |
1 |
Used by the routine at 77AC.
|
7FF4 |
1 |
Used by the routines at 66E6, 77AC, 7940, 79D4 and 7DB2. The room ID is stored in bits 0-3, and the teacher ID in bits 4-7. See the list of lesson descriptors at ACE0.
|
7FF5 |
1 |
Used by the routine at 6AA7.
|
7FF6 |
1 |
Used by the routines at F41F, F4A4 and F533 to coordinate ERIC's movements while firing his catapult, hitting, or jumping.
|
7FF7 |
2 |
Decremented in the main loop at 6767. When it reaches 0, it is reset to 1500 by the routine at 66E6. It is also checked by the routines at 77AC and 7C3F, and modified by the routines at 6900, F7E0, F800, F8B4, F9BB and FA04.
|
7FF9 |
1 |
Used by the routines at 66E6 and 7C47. Holds the index (0x00-0x3F) into the main timetable. It is adjusted by the routine at 6900 before starting a new game.
|
7FFA |
1 |
Stores the value of the LSB of the system variable FRAMES as it stood at the end of the last pass through the main loop (see 6767).
|
7FFB |
1 |
If ERIC is doing anything other than walking or standing still, one of the bits here will be set.
|
7FFC |
1 |
Holds the ASCII code of the last key pressed. Set by the routines at 6767 and F650; checked by the routines at 653C and 6652.
|
7FFD |
1 |
Used by the routine at 6226.
|
7FFE |
2 |
Used by the routine at 61A1.
|