Page Byte Address Description
64 0 4000
Loading screen
91 0 5B00
Unused
91 96 5B60
Rex projectile configuration
93 34 5D22
Enemy projectiles configuration for the current room
94 78 5E4E
Drones configuration for multiple weapon
94 102 5E66
Data buffer for the state of every enemy on screen
95 230 5FE6
Stack (SP = $6190 at init game )
97 144 6190
Unused
99 6 6306
Charset and ui graphics
101 6 6506
Tile collision behaviour
102 6 6606
Tiles graphic data
110 6 6E06
Tiles attributes
111 6 6F06
Supertiles layout
120 6 7806
Room layout
127 34 7F22
Unused - Remnant Room Layout from Rex (Side A)
129 152 8198
Graphics data for player, enemies, hud and room objects
146 64 9240
Unused
148 112 9470
The game has just loaded
150 99 9663
Routine not used
150 103 9667
Active/inactive shield
150 131 9683
Draw Rex and shield
151 49 9731
Destroy all enemy projectiles
151 57 9739
Release a smartbomb
151 110 976E
Destroy an enemy if smartbomb released or Rex dead
151 171 97AB
Reset sound buffer, volume channels and check for FIRE key
151 210 97D2
Reset sound data and wait for FIRE key press
151 229 97E5
Routine not used
152 7 9807
Destroy enemy
152 150 9896
Table points based on enemy types. Score = points * 100
152 176 98B0
Update attribute color for score points in HUD
152 201 98C9
Draw score on HUD
152 217 98D9
Draws lives number on HUD
152 236 98EC
Handle shield loss
153 24 9918
Draw shield power
153 69 9945
Increment score
153 106 996A
HUD flash
153 209 99D1
Commands table for HUD flash
153 227 99E3
Handle FINAL BOSS destruction
154 225 9AE1
Unused
154 229 9AE5
Draw explosion for FINAL BOSS
155 77 9B4D
Draw random attribute color for FINAL BOSS explosion
155 167 9BA7
Handle Rex Dead - Last live explossion
156 197 9CC5
Handle Rex dead - Main routine
156 247 9CF7
Rex and FINAL BOSS offsets for compute explosion position
156 253 9CFD
Rex and FINAL BOSS explosion position and index for graphic data
157 45 9D2D
Handle respawn
157 104 9D68
Handle Rex dead - Resume or finish game
158 5 9E05
Rex visibility active
158 21 9E15
Configure data for Rex teleporting when game begins or resume
158 61 9E3D
Configure data for Rex teleporting when dead
158 103 9E67
Handle Rex visibility during teleporting
158 228 9EE4
Initialize teleporting into room data
158 241 9EF1
Configure teleporting out of the room
159 11 9F0B
Table of teleporting mask data for FOOT MAN
159 21 9F15
Handle FOOT MAN teleporting
159 143 9F8F
Hide a portion of Rex to simulate teleporting
159 155 9F9B
Handle Rex atoms flush during teleporting
160 165 A0A5
Graphic data for atoms based on bits2-0 x-position of atom
160 173 A0AD
Rex atoms data during teleporting
160 248 A0F8
Handle Rex over special tiles
161 171 A1AB
FIRE key hold down
161 172 A1AC
Rex weapon in use
161 173 A1AD
Weapon energy level. Value on init $01
161 174 A1AE
Attribute file pointer to current weapon icon in HUD
161 176 A1B0
Tilt arrow tiles
161 177 A1B1
Weapon energy quantity - Value $00 on init
161 178 A1B2
Address pointer into tile type buffer based on Rex position
161 180 A1B4
Address pointer into tile buffer of the tile under the entity
161 182 A1B6
Counter for tile drawn on room graphic buffer
161 183 A1B7
Pointer to the tile type buffer for the currently draw tile
161 185 A1B9
Addres pointer to static enemy definition for the current room
161 187 A1BB
Nou used
161 193 A1C1
Horizontal position for windows
161 194 A1C2
Vertical position for windows
161 195 A1C3
Length of the longest line for the windows
161 196 A1C4
Number of lines for the windows
161 197 A1C5
Enemy enters the room from left
161 198 A1C6
Enemy enters the room from right
161 199 A1C7
Enemy enters the room from top
161 200 A1C8
Max number of enemies to be destroyed when Destroy all enemies indicator active
161 201 A1C9
Destroy all enemies indicator
161 202 A1CA
Address pointer into the enemy configuration buffer for the enemy to be destroyed when Destroy all enemies indicator is active
161 204 A1CC
Entity type
161 205 A1CD
Address for the graphic data of entity
161 207 A1CF
Unused
161 209 A1D1
Initialized but never used
161 210 A1D2
Address pointer into attribute file/buffers for score points
161 212 A1D4
Loop counter for score points
161 213 A1D5
Score points value
161 215 A1D7
Score - Value $0000 on init
161 217 A1D9
Rapid shots active - Value $00 on init
161 218 A1DA
Number of rapid shots
161 219 A1DB
HUD flash index - Value $FF on init
161 220 A1DC
Counter for enemy enter the room (updated)
161 221 A1DD
Counter for enemy enter the room (original)
161 222 A1DE
Train is generating on current room. Used at routine C9E3
161 223 A1DF
Address into train definition buffer. Used at routine C9E3
161 225 A1E1
Counter for train appearance. Used at routine C9E3
161 226 A1E2
Shield power active - Value $00 on init
161 227 A1E3
Unused
161 229 A1E5
Shield power key hold down
161 230 A1E6
Shield power - Value $63 on init
161 231 A1E7
Shield loss counter - Value $02 on init
161 232 A1E8
Machine gun weapon on inventory indicator
161 233 A1E9
Double Fire weapon on inventory indicator
161 234 A1EA
Laser weapon on inventory indicator
161 235 A1EB
Multiple weapon on inventory indicator
161 236 A1EC
Spray weapon on inventory indicator
161 237 A1ED
Projectile type of enemy
161 238 A1EE
Rex status - Value $00 on init
161 239 A1EF
Rex explosion counter
161 240 A1F0
Address pointer into Rex explosion data buffer to compute explosion position
161 242 A1F2
x-position of last respawn saved - Value $A0 on init
161 243 A1F3
y-position of last respawn saved - Value $60 on init
161 244 A1F4
room number of last respawn saved - Value $00 on init
161 245 A1F5
Room configured - Value $00 on init
161 246 A1F6
Rex visibility
161 247 A1F7
Number of lines of Rex to hide (used in teleporting animation)
161 248 A1F8
Atoms flush during teleporting
161 249 A1F9
Rex teleporting
161 250 A1FA
Teleporting counter
161 251 A1FB
Teleporting (begin game or dead)
161 252 A1FC
Number of lives
161 253 A1FD
Time bar update slot index - Value $00 on init
161 254 A1FE
Loop counter used for time bar in HUD
161 255 A1FF
Time bar update direction - Value $00 on init
162 0 A200
Number of time slots availables
162 1 A201
Laser duration - Value $00 on init
162 2 A202
Respawn indicator index value - Value $00 on init
162 3 A203
Shield recharger index value - Value $00 on init
162 4 A204
Initialized but never used
162 5 A205
Number of smartbombs in the inventory
162 6 A206
Unused
162 7 A207
Number of weapon that has energy
162 8 A208
Bonus windows number
162 9 A209
Unused
162 10 A20A
Rex inmortal - Value $00 on init
162 11 A20B
Rex speed - Value $00 on init
162 12 A20C
Rex speed up duration - Value $00 on init
162 13 A20D
Unused
162 15 A20F
Lives Score - Value $0000 on init
162 17 A211
Unused
162 19 A213
Rex on elevator
162 20 A214
Actor firing indicator
162 21 A215
Initialized but never used
162 22 A216
Bonus Windows Loop Counter
162 24 A218
Unused
162 33 A221
Type of mobile enemy for the current room
162 34 A222
Bio Growths killed - Value $0000 on init
162 36 A224
Minimum score for the game - Value $000A on init
162 38 A226
Room connection - right room number
162 39 A227
Room connection - top room number
162 40 A228
Room connection - bottom room number
162 41 A229
Room connection - left room number
162 42 A22A
Speed of Rex - Value $00 on init
162 43 A22B
Max number of enemies in the current room
162 44 A22C
Used in multiple routines as temporal variable
162 46 A22E
Used in multiple routines as temporal variable
162 48 A230
Used in multiple routines as temporal variable
162 50 A232
Used in multiple routines as temporal variable
162 51 A233
Unused
162 54 A236
Charcode for the digit introduced in password code
162 55 A237
Unused
162 56 A238
Multiple uses
162 58 A23A
Seed for pseudo-random number generator.
162 60 A23C
Seed status variable
162 61 A23D
Charcode buffer for number conversion
162 68 A244
Port used to read the key pressed
162 70 A246
Opcode of the corresponent BIT operation to check key presses
162 71 A247
Input device type
162 72 A248
X-position of entity
162 73 A249
Y-position of entity
162 74 A24A
Width of entity sprite (in bytes)
162 75 A24B
Height of entity sprite (in pixels)
162 76 A24C
Initialized in game, but not used
162 77 A24D
Unused
162 79 A24F
Rex x-position (in pixels) - Value $A0 on init
162 80 A250
Rex y-position (in pixels) - Value $60 on init
162 81 A251
Current room number
162 82 A252
Pointer to the address mapping table of tile graphics data and room graphics buffer
162 84 A254
Rex facing direction ($00 right / $01 left) - Value $00 on init
162 85 A255
Rex falling speed - Value $00 on init
162 86 A256
Rex is jumping - Value $00 on init
162 87 A257
Unused
162 89 A259
Address pointer into table for Rex jumping y-offsets
162 91 A25B
List number of the room displayed on attract-mode
162 92 A25C
Loop counter for run the displayed room on attract-mode
162 93 A25D
Tile type found checking the list of tile types (background or wall)
162 94 A25E
Address for the graphic data of entity to draw
162 96 A260
Number of digits entered in password
162 97 A261
Checksum code for password
162 99 A263
Score (LSB) and humans killed (MSB) from Rex (Side A)
162 101 A265
Shield power from Rex (Side A)
162 102 A266
Smartbombs from Rex (Side A)
162 103 A267
Number of lives from Rex (Side A)
162 104 A268
FINAL BOSS live status
162 105 A269
FINAL BOSS explosion counter
162 106 A26A
FINAL BOSS addres pointer to table offset for compute explosions position
162 108 A26C
Update timer bar in HUD
162 219 A2DB
Initialize time bar loop counters
162 230 A2E6
Draws a windows in the display file
163 77 A34D
Draw HUD
163 131 A383
Draw the sprites for the smartbomb icons in HUD (1/2)
163 153 A399
Data buffer for the smartbomb icons in HUD
163 159 A39F
Draw the sprites for the smartbomb icons in HUD (2/2)
163 170 A3AA
Offsets graphics data for smartbombs in HUD
163 186 A3BA
Draw the sprites for the weapon icons in HUD (1/2)
163 219 A3DB
Data buffer for the weapon icons in HUD
163 225 A3E1
Draw the sprites for the weapon icons in HUD (2/2)
163 244 A3F4
Text definition for HUD
164 50 A432
Copy room graphic buffer to display file
164 135 A487
Print the text content of the windows
165 16 A510
Routine not used
165 29 A51D
Pseudo-random number generator
165 86 A556
Reset display and attribute file
165 112 A570
Draw the number saved in charcode buffer at $A23D into display file
165 170 A5AA
Convert a number into a list of digits charcodes
166 18 A612
Configure and check key pressed routines for Rex movement
166 143 A68F
Pause game
166 156 A69C
Draw explosion debris
166 171 A6AB
Computes address position in tile type buffer based on (x,y) position on screen
166 221 A6DD
Computes address into attribute file based of (x,y)-pixel-position on screen
167 6 A706
Update arrow tiles, shield recharger and respawn indicator
167 125 A77D
Table of graphic data addresses for tile animation
167 147 A793
Initialise drones configuration data buffer
167 164 A7A4
Draw drones for multiple weapon
168 54 A836
Offset position table for drones
168 182 A8B6
Graphic data for drones
168 246 A8F6
Update weapon in inventory (HUD)
169 20 A914
Routine not used - Simulate conveyor belt going up from Rex (Side A)
169 37 A925
Routine not used - Simulate conveyor belt going down from Rex (Side A)
169 57 A939
Configure current room
169 134 A986
List of rooms in attract-mode
169 142 A98E
Main loop for attract-mode
170 0 AA00
Table of trajectories for seed plant projectiles
170 67 AA43
Graphic data for seed plant projectile
170 71 AA47
Table for address pointers into table of trajectories for seed plant projectiles
170 87 AA57
Position offsets for explosion debris
170 183 AAB7
Graphic data for explosion debris
170 247 AAF7
Text Definition Data - Start game, game over and in-game windows
172 146 AC92
Unused
172 154 AC9A
Display file lookup table
174 26 AE1A
List of ports for read the keys
174 42 AE2A
Charset for the corresponding key pressed
174 82 AE52
Invert byte lookup table
175 82 AF52
Offsets table for animated sprites
175 130 AF82
Graphic data for arrows tiles
175 194 AFC2
Enemy configuration for every room (26 rooms)
177 167 B1A7
Room directions and enemy pointers
178 67 B243
Reset room graphic buffer
178 150 B296
Draw an entity (enemy, object or player)
179 127 B37F
Copy tile graphic into room graphic data
179 184 B3B8
Rex fires weapon
180 124 B47C
Configuration data for REX spray weapon
180 156 B49C
Handle spray weapon fire
181 25 B519
Configure Rex spray weapon projectile
181 48 B530
Computes offset into the room graphic data based on projectile y-delta
181 76 B54C
Configure weapon sound and check for weapon free slot
181 196 B5C4
Routine not used
181 212 B5D4
Create a new projectile
182 139 B68B
Draw projectiles
185 190 B9BE
Laser graphics
185 230 B9E6
Update color attribute for weapon icon on HUD
186 9 BA09
Handle weapon energy increase
186 106 BA6A
Handle weapon energy loss
186 184 BAB8
Handle double energy loss
186 198 BAC6
Initialise weapon data (Laser)
186 220 BADC
Draw the windows borders in the display file
187 107 BB6B
Draw a row of borders for the windows
187 158 BB9E
Draw a 3x3 grid attribute color into attribute file if tile is background
187 234 BBEA
Copy a 3x3 grid of attribute color from attribute buffer to attribute file
188 11 BC0B
Copy the attribute file of the HUD (3 first rows) to the attribute buffer of the HUD
188 23 BC17
Draw random attribute color for explosion
188 72 BC48
Draw enemies (1/2)
191 75 BF4B
X-delta table for PLANT projectiles
191 79 BF4F
Draw enemies (2/2)
193 65 C141
Configure BULB projectiles
193 203 C1CB
Handle bubble bouncing and burst
194 83 C253
Bubble graphic data offsets
194 94 C25E
Handle explosion debris movement and draw it
194 223 C2DF
List of 'random' attribute colors for explosion
194 231 C2E7
Handle enemy lateral movement (1/2)
195 10 C30A
Routine not used
195 193 C3C1
Handle TRIANGLE
196 51 C433
Handle enemy lateral movement (2/2)
197 190 C5BE
Enemy configuration for FOOTMAN crouched or stand-by
197 232 C5E8
Handle FOOT MAN walking/stand-by state change
198 39 C627
Handle FOOT MAN walking/crouching state change
198 107 C66B
Routine not used
198 110 C66E
Enemy configuration for FOOT MAN jumping
198 145 C691
Handler for FOOT MAN jumping
199 33 C721
Handler for FOOT MAN falling
199 148 C794
Obtain the tile type address pointer under the entity
199 174 C7AE
Initialize graphic and attribute data buffers for current room
201 50 C932
Copy room color attribute buffer to attribute file
201 78 C94E
Routine not used - Wait some time - Remnant code from Rex (Side A)
201 91 C95B
Utilities routine - Multiply two values
201 98 C962
Configure room connection and enemies of the room
201 205 C9CD
Check for end game room
201 208 C9D0
Routine not used
201 227 C9E3
Generate train parts: front, middle or rear wagon
202 53 CA35
Creates a new mobile enemy on room
202 246 CAF6
Check if enemy can be generated in a position
203 65 CB41
Configure static enemies for the current room
203 119 CB77
Configure entity for the current room
205 68 CD44
Handle speed up duration
205 82 CD52
Configure Rex to move right
205 110 CD6E
Configure Rex to move left
205 139 CD8B
Handle Rex lateral movement
205 149 CD95
Move Rex left or right
205 184 CDB8
Handle Rex collision detection moving right
205 210 CDD2
Handle Rex collision detection moving left
205 245 CDF5
Check if a tile is a wall or a background
206 34 CE22
List of 'wall' type tiles
206 39 CE27
List of 'background' type tiles
206 48 CE30
Check room connection to the left
206 65 CE41
Check room connection to the right
206 82 CE52
Configure Rex for jump
206 104 CE68
FOOT MAN and Rex jumping y-offsets increments
206 115 CE73
Unused
206 116 CE74
Handle Rex jumping
206 229 CEE5
Handle Rex falling
207 89 CF59
Handle enemy projectile collision with Rex
207 181 CFB5
Handle collision detection of enemy with Rex and projectiles
210 68 D244
Address pointers into text definition windows for bonus
210 78 D24E
Handle Rex takes question
211 56 D338
Increment number of lives
211 70 D346
Reset sound data channels
211 111 D36F
Reset the 3 channel volumes of the AY-3-8912
211 127 D37F
Configure sound channel and mixer register
212 36 D424
Play sound channels
212 115 D473
Configure note for current channel
212 220 D4DC
Send channel volume command
212 241 D4F1
Send commands to AY-3-8912
212 251 D4FB
Sound data
213 202 D5CA
Channel data buffer por playing sound
213 226 D5E2
Unused
213 237 D5ED
Sound data mixer
213 238 D5EE
Unused
213 239 D5EF
Channel volumne number (1-3)
213 240 D5F0
Routine not used
214 9 D609
Show weapon bonus windows
214 88 D658
Draws an sprite
214 161 D6A1
Fill a rectangle with a color attribute in the attribute file
214 198 D6C6
Routine not used
214 200 D6C8
Unused
217 98 D962
Mapping table for tile graphic and room graphic buffer
218 192 DAC0
Main loop for the tile screen
219 39 DB27
Enter and decode password
220 167 DCA7
Text Definition Data - Input code windows
221 31 DD1F
Handle passsword code input
222 19 DE13
Defined keys for Rex controls
222 24 DE18
Unused
222 25 DE19
Keypress handlers for the title screen menu
223 198 DFC6
Text Defintion Data - Control configuration
224 204 E0CC
Tile count buffer (partial)
225 159 E19F
Unused
225 255 E1FF
Tile type buffer
228 159 E49F
Unused
228 255 E4FF
Title screen
255 255 FFFF
Unused