![]() |
Routines |
Page | Byte | Address | Length | Description |
---|---|---|---|---|
80 | 160 | 20640 | 10 |
Clear character buffer 214
|
80 | 185 | 20665 | 41 |
Print a message centred across the entire screen
|
80 | 229 | 20709 | 15 |
Populate a row of the screen with machine code
|
81 | 160 | 20896 | 60 |
Change a character's name
|
81 | 220 | 20956 | 36 |
Guide a character onto the catwalk or off it
|
82 | 160 | 21152 | 85 |
Display the cast of characters and change their names
|
83 | 160 | 21408 | 11 |
Do essential POKEs before the game starts
|
83 | 171 | 21419 | 6 |
Make a walking sound effect (yellow border)
|
83 | 177 | 21425 | 67 |
Clear the screen and request the input method (keyboard, joystick, Int2)
|
84 | 160 | 21664 | 82 |
Set the input method, change the characters' names, and start the game
|
84 | 242 | 21746 | 13 |
Prepare addresses 23808 to 24575
|
85 | 160 | 21920 | 80 |
Count down from 9 to 0
|
93 | 0 | 23808 | 35 |
Deal with ERIC while he's falling (2)
|
93 | 35 | 23843 | 16 |
Deal with ERIC's flight from the saddle of the bike
|
93 | 51 | 23859 | 4 |
Deal with ERIC's descent from the top-floor window
|
93 | 55 | 23863 | 24 |
'T' pressed - throw away the water pistol
|
93 | 79 | 23887 | 20 |
'J' pressed - jump
|
93 | 99 | 23907 | 120 |
Deal with ERIC when he's jumping
|
93 | 220 | 24028 | 104 |
Compare blackboard contents with combinations
|
94 | 69 | 24133 | 42 |
'W' pressed - write on a blackboard
|
94 | 111 | 24175 | 61 |
Deal with ERIC when he's writing on a blackboard
|
94 | 173 | 24237 | 10 |
Deal with ERIC when he's firing the catapult, hitting or kissing
|
94 | 183 | 24247 | 16 |
Signal that ERIC is firing the catapult, hitting, or kissing
|
94 | 199 | 24263 | 31 |
'H' pressed - hit
|
94 | 232 | 24296 | 32 |
'F' pressed - fire catapult
|
95 | 8 | 24328 | 20 |
Make HAYLEY hit ERIC
|
95 | 28 | 24348 | 128 |
'K' pressed - kiss
|
95 | 157 | 24477 | 83 |
Play a tune
|
96 | 0 | 24576 | 101 |
Superimpose sprite tiles onto a tile of the play area
|
96 | 108 | 24684 | 194 |
Print a tile
|
97 | 48 | 24880 | 131 |
Update a character's animatory state and location and update the SRB
|
97 | 180 | 25012 | 14 |
Update the SRB for a character's current animatory state and location
|
97 | 194 | 25026 | 54 |
Scroll the screen left 8 columns
|
97 | 248 | 25080 | 106 |
Scroll the screen right 8 columns
|
98 | 100 | 25188 | 25 |
Copy two bytes from a command list into a character's buffer
|
98 | 125 | 25213 | 20 |
Collect one byte from a command list
|
98 | 145 | 25233 | 15 |
Get a random number
|
98 | 160 | 25248 | 48 |
Update the display
|
98 | 208 | 25296 | 188 |
Move the characters
|
99 | 140 | 25484 | 19 |
Terminate a command
|
99 | 159 | 25503 | 17 |
Call an interruptible subcommand
|
99 | 176 | 25520 | 5 |
Jump to an interruptible subcommand
|
99 | 181 | 25525 | 8 |
Set the interruptible subcommand (unused)
|
99 | 190 | 25534 | 20 |
Determine ERIC's y-coordinate
|
99 | 210 | 25554 | 27 |
Get the play area region identifier for a given location
|
99 | 237 | 25581 | 75 |
Guide a character to an intermediate destination
|
100 | 56 | 25656 | 21 |
Guide a character up a staircase
|
100 | 77 | 25677 | 22 |
Guide a character down a staircase
|
100 | 100 | 25700 | 112 |
Make a character go to a location
|
100 | 215 | 25815 | 28 |
Make a character go to a random location
|
100 | 243 | 25843 | 97 |
Determine the next move of a character following another character
|
101 | 88 | 25944 | 118 |
Make a teacher find ERIC
|
101 | 212 | 26068 | 66 |
Check whether a character is beside a chair
|
102 | 24 | 26136 | 39 |
Check whether a chair is occupied
|
102 | 63 | 26175 | 48 |
Knock the current occupant (if any) out of a chair
|
102 | 112 | 26224 | 15 |
Deal with a character who's been dethroned (1)
|
102 | 127 | 26239 | 24 |
Deal with a character who's been dethroned (2)
|
102 | 151 | 26263 | 40 |
Deal with a character who is looking for a seat
|
102 | 192 | 26304 | 14 |
Make a character find a seat
|
102 | 206 | 26318 | 60 |
Get the next character of a message being spoken or written
|
103 | 12 | 26380 | 73 |
Update the SRB for a blackboard
|
103 | 85 | 26453 | 43 |
Get the identifier and coordinates of the blackboard close to a character
|
103 | 128 | 26496 | 16 |
Move the bike if it's obstructing the boys' skool door or the gate
|
103 | 145 | 26513 | 124 |
Write a single character on a blackboard
|
104 | 15 | 26639 | 111 |
Make a teacher wipe a blackboard
|
104 | 128 | 26752 | 93 |
Make a character write on a blackboard
|
104 | 225 | 26849 | 60 |
Update the SRB so that the speech bubble is not corrupted
|
105 | 30 | 26910 | 31 |
Remove the speech bubble
|
105 | 61 | 26941 | 17 |
Print a speech bubble UDG
|
105 | 78 | 26958 | 151 |
Print the speech bubble
|
105 | 230 | 27110 | 33 |
Place a font character bitmap into a message graphic buffer
|
106 | 8 | 27144 | 128 |
Make a character speak
|
106 | 140 | 27276 | 87 |
Save the area of the screen that will be overwritten by a message box
|
106 | 228 | 27364 | 54 |
Copy a graphic buffer to the screen
|
107 | 27 | 27419 | 42 |
Write a line of text into a graphic buffer
|
107 | 70 | 27462 | 35 |
Print a message box
|
107 | 105 | 27497 | 73 |
Print the score, lines total or hi-score (2)
|
107 | 180 | 27572 | 99 |
Compute the decimal digits of a number
|
108 | 24 | 27672 | 131 |
Alter UDG references in the play area for a door, a window, a cup or the bike
|
108 | 156 | 27804 | 16 |
Check whether any characters were punched
|
108 | 172 | 27820 | 38 |
Check whether any characters have been hit by a fist, pellet or conker
|
108 | 212 | 27860 | 24 |
Prepare the doors, windows, cups and bike for new game
|
108 | 238 | 27886 | 17 |
Get the x-coordinate range within which a character can see or be seen
|
109 | 0 | 27904 | 49 |
Control a boy during assembly
|
109 | 50 | 27954 | 48 |
Check whether a target character can be seen by another character
|
109 | 98 | 28002 | 27 |
Check whether ERIC can be seen by an adult
|
109 | 125 | 28029 | 38 |
Check for main kids near a teacher
|
109 | 163 | 28067 | 18 |
Check whether a location is on the assembly hall stage
|
109 | 181 | 28085 | 29 |
Determine which floor ERIC's on when he's not standing directly on one
|
109 | 210 | 28114 | 41 |
Put ERIC midstride
|
110 | 0 | 28160 | 54 |
Move ERIC from the midstride or mid-action position and scroll the screen if necessary
|
110 | 56 | 28216 | 23 |
Turn ERIC round
|
110 | 80 | 28240 | 65 |
Check whether a character is on a staircase
|
110 | 145 | 28305 | 8 |
Deal with ERIC when he has stepped off the stage
|
110 | 155 | 28315 | 121 |
Check for walls and closed doors in front of ERIC
|
111 | 20 | 28436 | 24 |
'P' pressed - right
|
111 | 44 | 28460 | 24 |
'O' pressed - left
|
111 | 68 | 28484 | 92 |
'Q' pressed - up
|
111 | 160 | 28576 | 81 |
'A' pressed - down
|
111 | 242 | 28658 | 14 |
Collect the identifier and coordinates of a blackboard that will be wiped
|
112 | 0 | 28672 | 63 |
Check for walls, closed doors and ALBERT in front of the bike
|
112 | 64 | 28736 | 31 |
Open or close a door or window
|
112 | 95 | 28767 | 45 |
Check for a closed door in front of a character
|
112 | 142 | 28814 | 41 |
Check for a closed door in a character's path and open it if allowed
|
112 | 183 | 28855 | 19 |
Make a character open or close a door
|
112 | 205 | 28877 | 75 |
Close any temporarily open doors if necessary
|
113 | 24 | 28952 | 26 |
Score 100 points and make the sound of a mouse being caught
|
113 | 50 | 28978 | 14 |
Make a female character stop jumping
|
113 | 64 | 28992 | 20 |
'D' pressed - drop stinkbomb
|
113 | 84 | 29012 | 18 |
Make a walking sound effect (blue border)
|
113 | 102 | 29030 | 20 |
Prevent ERIC from getting past ALBERT if necessary
|
113 | 124 | 29052 | 42 |
Make a character open or close a door
|
113 | 173 | 29101 | 16 |
Move the bike if it's obstructing the skool gate
|
113 | 190 | 29118 | 60 |
Get the ASCII code of the last key pressed
|
113 | 250 | 29178 | 14 |
Get the keypress offset of the last key pressed
|
114 | 10 | 29194 | 83 |
Control the bike when ERIC's not sitting on the saddle
|
114 | 94 | 29278 | 184 |
Deal with ERIC when he's riding the bike
|
115 | 22 | 29462 | 105 |
Deal with ERIC when he's standing on the saddle of the bike
|
115 | 128 | 29568 | 6 |
Display the frog in ERIC's inventory
|
115 | 134 | 29574 | 39 |
'M' pressed - mount bike
|
115 | 173 | 29613 | 8 |
Print the score, lines total or hi-score (1)
|
115 | 181 | 29621 | 22 |
Add to the score and print it
|
115 | 203 | 29643 | 38 |
Add to the lines total and print it
|
115 | 241 | 29681 | 12 |
Open the Science Lab storeroom door if ERIC has the key
|
116 | 0 | 29696 | 20 |
Calculate appropriate coordinates for a message box
|
116 | 20 | 29716 | 118 |
Make a teacher give lines
|
116 | 140 | 29836 | 20 |
Make a sound effect
|
116 | 160 | 29856 | 39 |
Check whether any adults were hit by the pellet, water, sherry or conker
|
116 | 200 | 29896 | 200 |
Control the descent of the water, sherry or conker
|
117 | 150 | 30102 | 100 |
Deal with a character who has been knocked over
|
117 | 253 | 30205 | 24 |
Check whether a pellet has hit a cup
|
118 | 21 | 30229 | 62 |
Check whether a pellet has hit a cup containing water, sherry or the frog
|
118 | 84 | 30292 | 88 |
Check for walls, doors and windows in the path of a mouse, frog or pellet
|
118 | 172 | 30380 | 152 |
Control the flight of a catapult pellet
|
119 | 70 | 30534 | 9 |
Initialise an uninterruptible subcommand
|
119 | 79 | 30543 | 12 |
Check whether a character is on the top, middle or bottom floor
|
119 | 91 | 30555 | 88 |
Make BOY WANDER fire his catapult now and then
|
119 | 179 | 30643 | 19 |
Deal with BOY WANDER when he is firing
|
119 | 200 | 30664 | 42 |
Check whether any characters were or can be punched by ERIC or ANGELFACE
|
119 | 242 | 30706 | 33 |
Make ANGELFACE hit now and then
|
120 | 19 | 30739 | 46 |
Deal with ANGELFACE when he is hitting
|
120 | 66 | 30786 | 18 |
Knock down a main kid hit by a pellet
|
120 | 84 | 30804 | 102 |
Deal with the frog when it has been knocked out of a cup
|
120 | 186 | 30906 | 170 |
Control the frog
|
121 | 102 | 31078 | 13 |
Control a female character while she's standing on a chair or jumping (1)
|
121 | 116 | 31092 | 36 |
Make a female character stand on a chair or start jumping
|
121 | 152 | 31128 | 20 |
Control a female character while she's standing on a chair or jumping (2)
|
121 | 174 | 31150 | 102 |
Make any female characters near a mouse start or continue jumping
|
122 | 22 | 31254 | 208 |
Control a mouse
|
122 | 230 | 31462 | 40 |
Release some mice (if possible)
|
123 | 14 | 31502 | 70 |
Prepare character buffers for released mice
|
123 | 85 | 31573 | 147 |
Make ERIC catch a mouse or frog (if present)
|
123 | 235 | 31723 | 10 |
Update the SRB for ERIC or his pellet and scroll the screen if necessary
|
123 | 245 | 31733 | 13 |
Make ERIC catch the frog (if possible)
|
124 | 2 | 31746 | 97 |
Print the inventory
|
124 | 100 | 31844 | 17 |
Print an inventory item
|
124 | 117 | 31861 | 26 |
Collect the bit mask and game status buffer address for an event identifier
|
124 | 143 | 31887 | 6 |
Check whether a signal has been raised
|
124 | 149 | 31893 | 3 |
Raise the signal for a certain event (unused)
|
124 | 152 | 31896 | 7 |
Raise the signal for a certain event
|
124 | 161 | 31905 | 10 |
Lower the signal for a certain event (unused)
|
124 | 171 | 31915 | 37 |
Check whether a character should continue walking up and down
|
124 | 208 | 31952 | 17 |
Make a character walk up and down until a certain time
|
124 | 225 | 31969 | 29 |
Make a character walk up and down a few times or until a certain time
|
125 | 0 | 32000 | 21 |
Get the identifier for ERIC's location
|
125 | 21 | 32021 | 11 |
Check whether ERIC is where he should be
|
125 | 32 | 32032 | 22 |
Make any nearby teacher give ERIC lines if necessary (1)
|
125 | 54 | 32054 | 6 |
Make MR WACKER find the truant ERIC
|
125 | 62 | 32062 | 309 |
Make any nearby teacher give ERIC lines if necessary (2)
|
126 | 117 | 32373 | 6 |
Make MISS TAKE chase ERIC (1)
|
126 | 123 | 32379 | 53 |
Make MISS TAKE chase ERIC (2)
|
126 | 177 | 32433 | 62 |
Print the lesson and ring the bell
|
126 | 241 | 32497 | 15 |
Make BOY WANDER write on a blackboard
|
210 | 36 | 53796 | 1 |
Make a character do nothing
|
225 | 37 | 57637 | 32 |
'C' pressed - catch a mouse or the frog
|
225 | 69 | 57669 | 17 |
Deal with ERIC when he's bending over, dropping a stinkbomb etc.
|
226 | 37 | 57893 | 17 |
'R' pressed - release mice
|
226 | 54 | 57910 | 23 |
Prepare buffer 213 for use by a stinkbomb cloud
|
226 | 79 | 57935 | 7 |
Check whether buffer 214 is being used
|
240 | 0 | 61440 | 22 |
Control EINSTEIN during class
|
240 | 23 | 61463 | 24 |
Make EINSTEIN speak
|
240 | 47 | 61487 | 23 |
Make a teacher give lines to EINSTEIN or the kid he grassed up
|
240 | 72 | 61512 | 21 |
Check whether ERIC and EINSTEIN are in class
|
240 | 93 | 61533 | 21 |
Make a teacher tell the class what to do
|
240 | 115 | 61555 | 39 |
Restart the command list or make a teacher tell the kids to sit down
|
240 | 155 | 61595 | 28 |
Make a teacher find the truant ERIC
|
240 | 184 | 61624 | 7 |
Restart the command list
|
240 | 191 | 61631 | 26 |
Make a teacher find ERIC if he's absent during dinner
|
240 | 218 | 61658 | 35 |
Control a teacher during assembly
|
241 | 0 | 61696 | 332 |
Make a teacher conduct a class
|
242 | 80 | 62032 | 60 |
Make MR WACKER put the kids in detention
|
242 | 142 | 62094 | 81 |
Deal with ERIC when he's been knocked over
|
242 | 226 | 62178 | 242 |
Deal with ERIC when he's sitting or lying down
|
243 | 215 | 62423 | 11 |
'S' pressed - sit (1)
|
243 | 230 | 62438 | 22 |
Make ERIC sit in a chair or on the floor
|
243 | 252 | 62460 | 20 |
'S' pressed - sit (2)
|
244 | 19 | 62483 | 77 |
Collect a keypress during the game (or simulate one in demo mode)
|
244 | 96 | 62560 | 12 |
Make the next command be the start of the command list
|
244 | 108 | 62572 | 23 |
Restart the command list unless the boys' skool door is closed
|
244 | 135 | 62599 | 21 |
Jump forward in the command list if the boys' skool door or the gate is closed
|
244 | 156 | 62620 | 47 |
Wait till everyone has gone past the gate or the boys' skool door
|
244 | 204 | 62668 | 98 |
Make ALBERT keep an eye out for ERIC during lessons
|
245 | 50 | 62770 | 24 |
Set MR WACKER on his way to expel ERIC
|
245 | 74 | 62794 | 21 |
Make MR WACKER find the truant ERIC
|
245 | 95 | 62815 | 88 |
Make MR WACKER find and expel ERIC
|
245 | 190 | 62910 | 246 |
Prepare for a new game
|
246 | 180 | 63156 | 10 |
Move the characters, close doors, and give ERIC lines if necessary
|
246 | 190 | 63166 | 10 |
Start a new game if a key is pressed while ERIC's sitting or lying down in demo mode
|
246 | 213 | 63189 | 21 |
Start a new game or enter demo mode
|
246 | 234 | 63210 | 99 |
Main loop
|
247 | 77 | 63309 | 95 |
Change the lesson
|
247 | 173 | 63405 | 41 |
Deal with ERIC
|
247 | 215 | 63447 | 8 |
Place a continual subcommand routine address into a character's buffer
|
247 | 223 | 63455 | 36 |
Make ANGELFACE stalk HAYLEY
|
248 | 4 | 63492 | 9 |
Make ANGELFACE or BOY WANDER hit or fire now and then
|
248 | 13 | 63501 | 11 |
Restart the command list unless it's time for assembly
|
248 | 24 | 63512 | 41 |
Scroll the display file left or right one column
|
248 | 65 | 63553 | 8 |
Scroll the display file left one column
|
248 | 73 | 63561 | 15 |
Scroll the display file right one column
|
248 | 88 | 63576 | 10 |
Clear various game and lesson flags
|
248 | 98 | 63586 | 157 |
Deal with a stinkbomb when dropped
|
249 | 57 | 63801 | 60 |
Deal with MR WACKER's journey to a window
|
249 | 117 | 63861 | 17 |
Prepare the buffer for ERIC's catapult pellet and make a sound effect
|
249 | 134 | 63878 | 20 |
Check for the presence of a plant pot
|
249 | 154 | 63898 | 17 |
'G' pressed - fire water pistol
|
249 | 171 | 63915 | 81 |
Control water fired from the pistol (1)
|
250 | 57 | 64057 | 19 |
Control water fired from the pistol (2)
|
250 | 77 | 64077 | 164 |
Deal with water fired from the pistol at certain phases
|
250 | 242 | 64242 | 17 |
Begin ERIC's descent from a plant, a plant pot, or the assembly hall stage
|
251 | 3 | 64259 | 57 |
Deal with ERIC when he's stepping off a plant, a plant pot, or the assembly hall stage
|
251 | 60 | 64316 | 100 |
Deal with ERIC when he's standing on a plant or plant pot
|
251 | 160 | 64416 | 44 |
Deal with ERIC when he's falling to the floor to land on his feet
|
251 | 204 | 64460 | 100 |
Deal with ERIC while he's falling (1)
|