Address Description
24576
The game has just loaded
25129
Main loop
25167
Read the keyboard and update Horace's sprite accordingly
25399
Move Horace and the guards
25562
Move a guard
25886
Redraw the tiles behind Horace and the guards if they've moved
25947
Redraw the tiles behind a guard after he's moved
26017
Add to the score if Horace has eaten something
26146
Draw the guards
26173
Draw a guard
26276
Check whether Horace has run into a guard
26426
Lose a life
26657
Draw Horace
26730
Draw the bell and check whether Horace has sounded the alarm
26887
Check whether a guard should drop his lunch
26914
Make a guard drop his lunch if necessary
26988
Decrement the guard countdown timers
27022
Toggle the sound on/off if 'T' is pressed
27044
Ring the bell if necessary
27166
Enter the next maze
27170
Initialise the guard countdown timers
27199
Copy a guard buffer into the temporary location
27242
Copy the temporary guard buffer back into place
27255
Make the title screen or game over sound effect
27294
Get the tunnel offset and bell, initial guard and entrance locations for the current maze
27404
Wait for 26*BC+5 T states
27410
Collect a pseudo-random number (from the ROM)
27425
Print the score or high score
27464
Compute and print a digit
27509
Draw the current maze
27606
Draw a sprite
27642
Print a tile or font character
27663
Convert a sprite location or display file address into an attribute file address
27680
Check the attribute bytes at a sprite's location
27718
Check the attribute byte at a sprite tile location
27752
Copy maze background tiles into a guard's buffer
27797
Copy a maze background tile into a guard's buffer
27842
Check the tiles next to Horace or a guard
27898
Identify a tile in front of a sprite
27927
Get the location of the tile in front of a sprite
27982
Print 'HUNGRY' or 'HORACE' on the title screen