Address Description
6000
The game has just loaded
6229
Main loop
624F
Read the keyboard and update Horace's sprite accordingly
6337
Move Horace and the guards
63DA
Move a guard
651E
Redraw the tiles behind Horace and the guards if they've moved
655B
Redraw the tiles behind a guard after he's moved
65A1
Add to the score if Horace has eaten something
6622
Draw the guards
663D
Draw a guard
66A4
Check whether Horace has run into a guard
673A
Lose a life
6821
Draw Horace
686A
Draw the bell and check whether Horace has sounded the alarm
6907
Check whether a guard should drop his lunch
6922
Make a guard drop his lunch if necessary
696C
Decrement the guard countdown timers
698E
Toggle the sound on/off if 'T' is pressed
69A4
Ring the bell if necessary
6A17
Unused
6A1E
Enter the next maze
6A22
Initialise the guard countdown timers
6A3F
Copy a guard buffer into the temporary location
6A6A
Copy the temporary guard buffer back into place
6A77
Make the title screen or game over sound effect
6A9E
Get the tunnel offset and bell, initial guard and entrance locations for the current maze
6AA7
Copyright © 1982 Beam Software...
6AE7
DEMO MODE  PRESS ANY KEY TO PLAY
6B08
Title screen countdown timer
6B0A
Active guard counter
6B0B
Game mode indicator
6B0C
Wait for 26*BC+5 T states
6B12
Collect a pseudo-random number (from the ROM)
6B21
Print the score or high score
6B48
Compute and print a digit
6B75
Draw the current maze
6BD6
Draw a sprite
6BFA
Print a tile or font character
6C0F
Convert a sprite location or display file address into an attribute file address
6C20
Check the attribute bytes at a sprite's location
6C46
Check the attribute byte at a sprite tile location
6C68
Copy maze background tiles into a guard's buffer
6C95
Copy a maze background tile into a guard's buffer
6CC2
Check the tiles next to Horace or a guard
6CFA
Identify a tile in front of a sprite
6D17
Get the location of the tile in front of a sprite
6D4E
Print 'HUNGRY' or 'HORACE' on the title screen
6DA6
Guard countdown timers
6DAE
Guard panic timer
6DB0
Temporary store for a guard's screen x- and y-coordinates
6DB2
Temporary store for direction probability parameters
6DB6
Buffer address of the guard currently being handled
6DB8
Temporary guard buffer
6DE3
Guard buffers
6E8F
Data for the word 'HUNGRY' on the title screen
6F2F
Data for the word 'HORACE' on the title screen
6FCF
Tunnel offset and bell, initial guard and entrance locations for the current maze
6FD7
Tunnel offset and bell, initial guard and entrance locations for maze 1
6FDF
Tunnel offset and bell, initial guard and entrance locations for maze 2
6FE7
Tunnel offset and bell, initial guard and entrance locations for maze 3
6FEF
Tunnel offset and bell, initial guard and entrance locations for maze 4
6FF7
Maze 2 layout
72F7
Maze 1 layout
75F7
Maze 3 layout
78F7
Maze 4 layout
7BF7
Maze tiles
7C47
PASSES   SCORE       BEST
7C61
Sprite movement timer
7C62
Game speed parameter (1-8)
7C63
Current maze number
7C64
Redundant temporary variable
7C65
Lunch-drop countdown timer
7C67
Address of the next pseudo-random number
7C69
Sound on/off indicator
7C6A
'T' pressed indicator
7C6B
Horace's current location
7C6D
Horace's new location
7C6F
Temporary store for direction keypress
7C70
Horace's animation frame (0-3)
7C71
Horace's attribute byte
7C72
Horace's walking animation timer
7C73
Score
7C75
High score
7C77
Extra life indicator
7C78
Number of lives remaining
7C79
Tunnel timer
7C7A
Temporary store for Horace's screen x- and y-coordinates
7C7C
Cherry and strawberry graphics
7CC4
Bell location
7CC6
Bell animation frame counter
7CC7
Horace graphics
7DC7
Guard graphics
7F07
Bell graphics
7F87
Blank sprite