Address |
Description |
24832 |
Deal with Sam while he's transfixed by Lana |
24914 |
Prepare for the next game mode |
24925 |
Reset a gangster's location and restart the command list |
24951 |
'J' pressed - joystick |
25039 |
Add a random number of bucks to Sam's total |
25074 |
Check whether a gangster is close enough to Sam to pick him up |
25081 |
Make the gangster at no. 15 lie in wait for Sam |
25088 |
Make a sound effect |
25118 |
Control the sniper while active |
25307 |
Control the sniper |
25385 |
Make a gangster chase Sam |
25420 |
Control a banknote |
25539 |
Check whether Sam has somersaulted onto a banknote |
25600 |
Copy source sprite tiles over target sprite tiles |
25618 |
Prepare sprite tiles used by Sam when somersaulting or rolling |
25784 |
'R' pressed - forward roll |
25789 |
'S' pressed - somersault |
25918 |
Check whether Sam can roll or somersault from his current location |
25944 |
Determine Sam's location |
26002 |
Check whether Sam has been hit by a bullet |
26075 |
Move and draw the bullets |
26224 |
Update the sniper's sprite tile references |
26328 |
Check whether Sam is within firing range of the sniper |
26352 |
Make the sound effect of Sam being hit by a bullet |
27892 |
Check whether Sam is at the right place to pick up a telephone |
28150 |
Set A=1 |
28160 |
Print a message |
28186 |
Print a number |
28295 |
Adjust Sam's cash supply and print the new amount |
28337 |
Increment the score and decrement Sam's cash supply |
28357 |
Add a message to the message queue |
28616 |
Randomly select a message number |
28635 |
'M' pressed - toggle message speed |
28646 |
Make the sound effect of a sniper firing |
28660 |
Update the telephone icon |
28703 |
Show or hide an icon in the icon panel |
28760 |
Initialise the icon panel, score box and message line |
28803 |
Check whether a character is on a roof with edges on each side |
28842 |
Check whether a policeman can spot Sam |
28886 |
Check whether a character is visible to passers-by |
28942 |
Check whether a character is close enough to Sam to pick him up |
29004 |
Check whether a character is immobilised by a blown fuse |
29052 |
Make a policeman switch a light on if possible |
29072 |
Set a character's destination to Sam's current location |
29088 |
Set a policeman's destination to Sam's current location |
29100 |
Send a policeman to Sam's last known whereabouts |
29149 |
Make a gangster or policeman pick Sam up |
29218 |
Make a policeman start chasing Sam if appropriate |
29332 |
Check whether Sam's disguise is known to the police |
29354 |
Control a policeman (1) |
29361 |
Control a policeman (2) |
29559 |
Make a policeman chase Sam or go to his last known whereabouts if appropriate |
29578 |
Check whether Sam or a gangster is inside a region |
29597 |
Check whether a gangster should start chasing Sam |
29668 |
Show or hide the fuse, door, light bulb or phone in the icon panel (1) |
29716 |
Clear the message line and display the first aid kits |
29733 |
Show or hide the fuse, door, light bulb or phone in the icon panel (2) |
29854 |
Check whether Sam is standing next to a telephone |
29866 |
'F' pressed - fuse |
29912 |
Deal with Sam |
29952 |
Process the event table |
30017 |
Initialise the events and objects for a new game |
30043 |
Initialise an event or object for a new game |
30053 |
Make the cash bonus/key sound effect |
30070 |
'L' pressed - light on/off |
30092 |
'B' pressed - raise/lower blind |
30116 |
Check whether Sam is standing next to a fuse that has not been blown yet |
30146 |
Deal with Sam when his arm is raised or his knees are bent |
30154 |
Add an urgent message to the message queue |
30160 |
Determine the interval between the last message and the next |
30198 |
Ask Sam 'WHO'S THERE?' when he takes or makes a phone call |
30211 |
Check whether Sam has found something and update the icon panel |
30396 |
Deal with a character who is at the entrance to a building |
30429 |
Check whether Sam is standing next to a ringing telephone |
30458 |
'T' pressed - telephone |
30511 |
Check whether a character can answer the telephone that Sam is calling |
30575 |
Deal with Sam when he's on the phone and has been asked 'WHO'S THERE?' |
30627 |
Check whether there is a telephone message for Sam |
30675 |
Deal with Sam when he's on the phone |
30822 |
Prepare for a cutscene |
30972 |
Check whether a message is in the message queue |
30989 |
Display a cutscene |
31126 |
Collect a keypress during the game (or simulate one in demo mode) |
31204 |
'G' pressed - get object |
31236 |
Send the police after Sam |
31244 |
Place a telephone call |
31255 |
Check whether Sam has dialled a valid telephone number |
31284 |
Queue the message 'I HUNG UP' (unused) |
31289 |
Check whether Sam has entered a house through the front door without a key |
31319 |
Make a gangster walk up or down until Sam arrives |
31338 |
Make a gangster walk up and down while watching for Sam |
31362 |
Make a gangster chase and pick up Sam |
31414 |
Increment the score and decrement Sam's cash supply at regular intervals |
31458 |
Prepare the phone messages, events and objects for a new game |
31476 |
Deal with Sam when he's being carried by a gangster or policeman |
31580 |
Deal with a character who is standing next to the jail cell door |
31594 |
Let Sam out of jail if necessary |
31642 |
Make a policeman arrest Sam, and end the game if he cannot pay his bail |
31670 |
Control the hook while it's flying |
31713 |
'C' pressed - use hook |
31808 |
Check whether a character will soon be entering or leaving the hotel |
31944 |
Collect a character's destination coordinates from a command list |
31960 |
Take the hook and budgie from Sam |
31998 |
Check whether Sam should be chased by the police |
32009 |
Set the attribute bytes for Sam's current disguise |
59136 |
Copy a play area tile into the back buffer |
59148 |
Print a tile |
59368 |
Move a row of the screen left, right, up or down |
59406 |
Scroll the screen left 8 columns |
59461 |
Scroll the screen right 8 columns |
59516 |
Scroll the screen up 6 rows |
59575 |
Scroll the screen down 6 rows |
59635 |
Superimpose sprite tiles onto a tile of the play area |
59848 |
Update the SRB for a character's current animatory state and location |
59861 |
Update a character's animatory state and location and update the SRB |
60032 |
Update the display |
60082 |
Get the keypress offset of the last key pressed (1) |
60121 |
Get the ASCII code of the last key pressed |
60146 |
Get the keypress offset of the last key pressed (2) |
60152 |
Check whether a character is on the sidewalk or road |
60179 |
Obtain descriptors for a character's current location |
60293 |
Make a character stand up if he's lying down |
60315 |
Make a character move up |
60320 |
Make a character move down |
60334 |
Make a character move right |
60347 |
Make a character move left |
60506 |
Move a character from the midstride or mid-action position and update the SRB |
60521 |
Make a sound effect |
60539 |
Move Sam from the midstride or mid-action position and scroll the screen if necessary |
60626 |
'Q' pressed - up |
60631 |
'A' pressed - down |
60636 |
'P' pressed - right |
60641 |
'O' pressed - left |
60720 |
Obtain location descriptors for a character standing next to a closed door |
60726 |
Obtain an identifier for a character's current location |
60812 |
Determine the next move a character should make to reach his destination |
61440 |
Perform various main loop tasks |
61483 |
Main loop |
61568 |
Update the icon panel, draw the bullets, and scan the event table |
61600 |
Start (continued) |
61603 |
Populate addresses 32256-32767 (unused) |
61612 |
Start the game (unused) |
61618 |
Return to BASIC (unused) |
61630 |
End a cutscene |
61696 |
Open or close a door and update the screen refresh buffer |
61764 |
Close any doors that need closing |
61791 |
Collect one byte from a command list |
61809 |
Copy two bytes from a command list into a character's buffer |
61823 |
Get a random number |
61838 |
Cycle a character buffer group forwards and scroll the screen right 8 columns |
61882 |
Cycle a character buffer group backwards and scroll the screen left 8 columns |
61923 |
Check for keypresses when Sam is on the phone |
61948 |
Move the characters |
62080 |
Terminate a command |
62099 |
Check whether the door that a character is standing next to is closed |
62120 |
Check whether a character can open a door |
62192 |
'K' pressed - knock on or open a door |
62212 |
Make Sam raise his arm |
62216 |
Deal with Sam when he has knocked on or is opening a door |
62264 |
Make a character knock on a door or open it with a key |
62278 |
Control a character who is knocking on or opening a door (1) |
62297 |
Control a character who has knocked on a door and is waiting for an answer |
62325 |
Control a character who is knocking on or opening a door (2) |
62339 |
Control a character who is knocking on or opening a door (3) |
62368 |
Update the SRB for a window |
62468 |
Decrement and check the blown fuse delay counters |
62518 |
Check whether a character is standing next to a light switch |
62597 |
Make a character flip a light switch off or on occasionally |
62694 |
Make a character flip a light switch on or off occasionally |
62880 |
Make a character flip a light switch off occasionally |
62892 |
Guide a character up or down staircases |
62926 |
Guide a character across a floor to his destination |
62966 |
Make a character consider switching a light off (unused) |
62971 |
Guide a character from one spot on the sidewalk or road to another |
62976 |
Make a character go to a location |
63110 |
Make a character stop running and restart the command list |
63118 |
Check whether a gangster is midstride or has his arm raised |
63128 |
Check whether a character is midstride |
63138 |
Calculate the x-coordinate of the front column of a character's sprite |
63152 |
Check whether a character is standing next to a light switch or window blind |
63198 |
Restart the command list |
63209 |
Make a character walk up or down |
63281 |
Make a character drop Sam |
63304 |
Make a character walk up and down until somebody knocks on a door |
63386 |
Initialise a cat's interruptible subcommand |
63403 |
Initialise and execute an interruptible subcommand |
63409 |
Change the primary command routine address |
63423 |
Make a character open a door that has been knocked on |
63437 |
Open a door |
63450 |
Collect the window flags for a play area location |
63472 |
Initialise the character buffers for character groups 215-221 |
63520 |
Make a character walk up and down for a while |
63530 |
Control a cat |
63558 |
Make a cat run up or down |
63614 |
Initialise the character buffers for characters 222-230 |
63662 |
Prepare for demo mode or a new game |
63749 |
Check whether a character is in the correct spot to enter a building |
63774 |
Check whether a character should enter a building or knock first |
63784 |
Prepare the sprite tiles used by a character when lying down |
63838 |
Change Sam's disguise |
63954 |
Knock a character over |
63981 |
Initialise an uninterruptible subcommand if possible |
63994 |
Initialise an uninterruptible subcommand |
64005 |
Deal with a character who has been knocked over |
64121 |
Check whether there are any messages remaining in the message queue |
64131 |
Deal with a character who has nearly recovered from being knocked over |
64162 |
Check whether a falling character has hit anyone on the head |
64218 |
'D' pressed - change disguise |
64227 |
Move a falling character to the next point in his descent |
64331 |
Control a character who has stepped off the roof of a building |
64338 |
Deal with a character who is about to step off the roof of a building |
64512 |
Deal with a character who is stepping onto or over the roof of no. 19 |
64549 |
Add or remove the rope above the roof of no. 19 |
64582 |
Generate the table of mirrored values of 0-255 |
64599 |
Hide the play area |
64618 |
Scroll the screen up and down 7 times |
64740 |
Make a sound effect |