Page Byte Address Length Description
127 0 7F00 1
x-coordinate of the leftmost column of the skool on screen
Modified by the routines at 6000 and 609B.
127 1 7F01 8
UDG back buffer
Used by the routine at 610B.
127 9 7F09 1
Number of on-screen character squares that need refreshing (unused)
Used by the (unused) routine at 64E6.
127 10 7F0A 2
Unused
127 12 7F0C 84
Screen refresh buffer (SRB)
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.
127 96 7F60 4
Unused
127 100 7F64 2
Speech bubble lip coordinates
Used by the routines at 734E and 7432.
127 102 7F66 34
UDG references and attribute bytes of the part of the skool overwritten by the speech bubble and lip
Used by the routines at 734E and 7432.
127 136 7F88 4
Unused
127 140 7F8C 8
Workspace used to find the main kid closest to a teacher
Used by the routine at 78AA.
127 148 7F94 2
Unused
127 150 7F96 2
Safe combination letter message
Used by the routine at F955.
127 152 7F98 2
Unused
127 154 7F9A 1
Identifier for CREAK's birth year battle
Used by the routines at F855 and F923.
127 155 7F9B 4
CREAK's year of birth
Used by the routines at F6D7 and F855. Holds a copy of the battle-year message corresponding to CREAK's birth.
127 159 7F9F 4
Safe combination code
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.
127 163 7FA3 4
Teachers' safe combination letters
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.
127 167 7FA7 1
Unused
127 168 7FA8 5
Reading Room blackboard contents buffer
Used by the routine at F726.
127 173 7FAD 1
Unused
127 174 7FAE 5
White Room blackboard contents buffer
Used by the routine at F726.
127 179 7FB3 1
Unused
127 180 7FB4 5
Exam Room blackboard contents buffer
Used by the routine at F726.
127 185 7FB9 8
Unused
127 193 7FC1 1
ERIC's stand-up delay counter
Used by the routine at F5DA while in demo mode.
127 194 7FC2 2
Hi-score
Used by the routines at 6B0E and 7ED6.
127 196 7FC4 2
Score
Used by the routine at 6AFB.
127 198 7FC6 2
Lines total
Used by the routines at 7700 and F9BB.
127 200 7FC8 1
Lesson status flags
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)
127 201 7FC9 1
Lesson signal flags
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)
127 202 7FCA 1
Stampede signal flags
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
127 203 7FCB 1
Special playtime signal flags
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
127 204 7FCC 14
Unused
127 218 7FDA 1
Birth year question indicator
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.
127 219 7FDB 13
Unused
127 232 7FE8 1
ERIC's main action timer
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).
127 233 7FE9 1
ERIC's midstride/mid-action timer
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).
127 234 7FEA 1
Game mode indicator
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
127 235 7FEB 1
Shield counter
Used by the routine at 6DEF.
127 236 7FEC 1
Next clean pixel column on the Reading Room blackboard
Used by the routines at 7142, 71E8 and F726.
127 237 7FED 1
Number of the character who last wrote on the Reading Room blackboard
Used by the routines at 71E8, 7264, F650 and FA10. Holds 0 if the board is clean.
127 238 7FEE 1
Next clean pixel column on the White Room blackboard
Used by the routines at 7142, 71E8 and F726.
127 239 7FEF 1
Number of the character who last wrote on the White Room blackboard
Used by the routines at 71E8, 7264, F650 and FA10. Holds 0 if the board is clean.
127 240 7FF0 1
Next clean pixel column on the Exam Room blackboard
Used by the routines at 7142, 71E8 and F726.
127 241 7FF1 1
Number of the character who last wrote on the Exam Room blackboard
Used by the routines at 71E8, 7264 and F650. Holds 0 if the board is clean.
127 242 7FF2 1
Lines-giving delay counter
Used by the routine at 77AC.
127 243 7FF3 1
Character number of the teacher who last gave ERIC lines
Used by the routine at 77AC.
127 244 7FF4 1
Lesson descriptor
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.
127 245 7FF5 1
ERIC's knockout delay counter
Used by the routine at 6AA7.
127 246 7FF6 1
Action timer for ERIC
Used by the routines at F41F, F4A4 and F533 to coordinate ERIC's movements while firing his catapult, hitting, or jumping.
127 247 7FF7 2
Lesson clock
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.
127 249 7FF9 1
Current lesson number
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.
127 250 7FFA 1
Last value seen in the system variable FRAMES
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).
127 251 7FFB 1
ERIC's status flags
If ERIC is doing anything other than walking or standing still, one of the bits here will be set.
Bit Meaning if set Handler Checked by
0 ERIC is firing the catapult F41F 6AD9
1 ERIC is hitting F4A4 6AD9
2 ERIC is jumping F533 6AD9, 77AC, 78AA, 79FD
3 ERIC is being spoken to by little boy no. 10 F778 6AD9
4 ERIC has just been knocked down or unseated 6AA7 6AD9
5 ERIC is writing on a blackboard F6AA 6767
6 Unused (always reset) 657F, 65E4, 6652
7 ERIC is sitting or lying down (set by 6AA7 or 6CAF) 6564, F46E, F5DA, F650
127 252 7FFC 1
Last key pressed
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.
127 253 7FFD 1
Number of the character just moved (0x98-0xAB)
Used by the routine at 6226.
127 254 7FFE 2
Random number seed
Used by the routine at 61A1.