Pyjamarama | Memory map |
Page | Byte | Address | Length | Description | |
---|---|---|---|---|---|
100 | 255 | 64FF | 5494 |
Copy of loading screen, used as title screen.
|
|
122 | 117 | 7A75 | 1931 |
Data block at 7A75
|
|
130 | 0 | 8200 | 14 |
Copy loaded screen to memory. This is used to be displayed after each game.
|
|
130 | 14 | 820E | 2 |
Points to the address of the next command in the demo data.
|
|
130 | 16 | 8210 | 1 |
Ignore Energy / Demo flag.
|
|
130 | 17 | 8211 | 18 |
Tests : Table of pointers for event checking functions.
|
|
130 | 35 | 8223 | 42 |
Actions : Address of routines used for actions after running an event check.
|
|
130 | 77 | 824D | 31 |
Action 0C : Set Lift Lighting
|
|
130 | 108 | 826C | 90 |
Scoreboard item, drawn as a piece of furniture.
|
|
130 | 198 | 82C6 | 60 |
Table of addresses for each room data.
|
|
131 | 2 | 8302 | 96 |
Milk (full) bitmap
|
|
131 | 98 | 8362 | 96 |
Milk (empty) bitmap
|
|
131 | 194 | 83C2 | 37 |
Draw Full Milk Bitmap
|
|
131 | 231 | 83E7 | 42 |
Decreases Wally's milk energy level by given amount.
|
|
132 | 17 | 8411 | 43 |
Draw a number of rows of a bitmap.
|
|
132 | 60 | 843C | 52 |
Increase Wally's energy by given amount.
|
|
132 | 112 | 8470 | 33 |
Check to see if Wally is colliding with another sprite.
|
|
132 | 145 | 8491 | 64 |
Table of found markers for each object.
|
|
132 | 209 | 84D1 | 30 |
Table of flags representing which rooms has visited.
|
|
132 | 239 | 84EF | 5 |
Holds, in BCD, number of steps taken.
|
|
132 | 244 | 84F4 | 26 |
Calculate final game percentage score.
|
|
133 | 14 | 850E | 39 |
Updates the percentage score.
|
|
133 | 53 | 8535 | 90 |
Object slots for each room.
|
|
133 | 143 | 858F | 1024 |
Main room logic.
|
|
137 | 143 | 898F | 29 |
Test 00 : Exit position test.
|
|
137 | 172 | 89AC | 36 |
Test 01 : Check for position.
|
|
137 | 208 | 89D0 | 2 |
Pockets for Wally's Inventory
|
|
137 | 210 | 89D2 | 17 |
Test 02 : See if Wally if carrying a specific object
|
|
137 | 227 | 89E3 | 10 |
Test 03 : See if fuel can is full.
|
|
137 | 237 | 89ED | 69 |
Action 00 : Swaps object carried with object in room.
|
|
138 | 50 | 8A32 | 13 |
Play the picked up sound.
|
|
138 | 63 | 8A3F | 73 |
Action 01 : Picks up object in current room.
|
|
138 | 136 | 8A88 | 36 |
Checks to see if Wally has walked away from an object slot if just pick up and object.
|
|
138 | 172 | 8AAC | 38 |
Action 02 : Entering a new room.
|
|
138 | 210 | 8AD2 | 20 |
Action 03 : Fills the bucket.
|
|
138 | 230 | 8AE6 | 7 |
Action 06 : Empties the Bucket.
|
|
138 | 237 | 8AED | 20 |
Action 04 : Charges the Laser Gun.
|
|
139 | 1 | 8B01 | 7 |
Action 05 : Discharges the laser.
|
|
139 | 8 | 8B08 | 20 |
Action 07 : Fills the Fuel Can.
|
|
139 | 28 | 8B1C | 7 |
Action 08 : Empties the Fuel Can.
|
|
139 | 35 | 8B23 | 7 |
Action 0F : Switch help off.
|
|
139 | 42 | 8B2A | 11 |
Action 0E : Switches the help on.
|
|
139 | 53 | 8B35 | 9 |
Action 09 : Switches on the lift.
|
|
139 | 62 | 8B3E | 31 |
Action : Updates screen with item that has been switched on.
|
|
139 | 93 | 8B5D | 10 |
Action 0B : Decrease lift count by one.
|
|
139 | 103 | 8B67 | 10 |
Test 04 : Is the lift is on?
|
|
139 | 113 | 8B71 | 5 |
Test 07 : Is the help switch is of?
|
|
139 | 118 | 8B76 | 10 |
Test 06 : Is the lift is off.
|
|
139 | 128 | 8B80 | 8 |
Action 0A : Moves the lift to a given floor value.
|
|
139 | 136 | 8B88 | 13 |
Test 05 : Is lift at a specific floor value.
|
|
139 | 149 | 8B95 | 28 |
Action 10 : Lift off from Earth.
|
|
139 | 177 | 8BB1 | 28 |
Action 11 : Lift off from Moon
|
|
139 | 205 | 8BCD | 59 |
Shifts the rocket based on set up by actions Action10_LiftOffFromEarth and Action11_LiftOffFromMoon.
|
|
140 | 8 | 8C08 | 69 |
Checks the current room's logic and acts on anything that is 'true'.
|
|
140 | 77 | 8C4D | 24 |
Tiles, ceiling, floor and walls
|
|
140 | 101 | 8C65 | 69 |
Draw Walls, Ceiling and Floor
|
|
140 | 170 | 8CAA | 132 |
Table of pointers to each furniture item.
|
|
141 | 46 | 8D2E | 60 |
Table to pointers holding addresses to each room description data.
|
|
141 | 106 | 8D6A | 769 |
Description Data for each room.
|
|
144 | 107 | 906B | 384 |
DF row address look up table.
|
|
145 | 235 | 91EB | 2048 |
|
|
153 | 235 | 99EB | 384 |
|
|
155 | 107 | 9B6B | 128 |
|
|
155 | 235 | 9BEB | 3840 |
|
|
170 | 235 | AAEB | 106 |
Draw 16 x 16 bitmap shifted to pixel position.
|
|
171 | 85 | AB55 | 1 |
Number of lives.
|
|
171 | 86 | AB56 | 20 |
Life : Draw / Erase
|
|
171 | 106 | AB6A | 14 |
Reset lives.
|
|
171 | 120 | AB78 | 4 |
Wally's stats.
|
|
171 | 124 | AB7C | 192 |
Main handler for moving Wally around.
|
|
172 | 60 | AC3C | 13 |
Short pause.
|
|
172 | 73 | AC49 | 1 |
Copy of the last direction when moving. (FF - left, 01 - right)
|
|
172 | 74 | AC4A | 39 |
Check to see if Wally is standing on solid ground.
|
|
172 | 113 | AC71 | 230 |
Handles Wally jumping.
|
|
173 | 87 | AD57 | 41 |
Create a 'bullet' if required.
|
|
173 | 128 | AD80 | 1 |
Count down for animating Wally's head.
|
|
173 | 129 | AD81 | 61 |
Checks to see if Wally should turn his head towards the camera.
|
|
173 | 190 | ADBE | 103 |
Move Wally and animate.
|
|
174 | 37 | AE25 | 6 |
Store for keys used for game control.
|
|
174 | 43 | AE2B | 16 |
Holds background colour behind wally.
|
|
174 | 59 | AE3B | 132 |
Erase Wally and colour background.
|
|
174 | 191 | AEBF | 1 |
Set when Wally has completed a single step.
|
|
174 | 192 | AEC0 | 25 |
Checks to see if wally has put a foot down, classing as one step.
|
|
174 | 217 | AED9 | 39 |
Increases Wally's step count by one.
|
|
175 | 0 | AF00 | 1 |
Pixel offset for Wally.
|
|
175 | 1 | AF01 | 131 |
Draw Wally.
|
|
175 | 132 | AF84 | 36 |
Table of translations for the jump.
|
|
175 | 168 | AFA8 | 1 |
Flag for input type, 0 - Keys / Sinclair Joystick, 1 - Kempston Joystick.
|
|
175 | 169 | AFA9 | 21 |
Simple Clear Screen
|
|
175 | 190 | AFBE | 26 |
Play sound effect based on values passed in.
|
|
175 | 216 | AFD8 | 19 |
Simple beep
|
|
175 | 235 | AFEB | 44 |
FX : White Noise
|
|
176 | 23 | B017 | 165 |
Congratulation message for winning game.
|
|
176 | 188 | B0BC | 30 |
Press any key text.
|
|
176 | 218 | B0DA | 210 |
Didn't win message.
|
|
177 | 172 | B1AC | 19 |
Waits for a key to be pressed.
|
|
177 | 191 | B1BF | 16 |
Check for SHIFT + BREAK to exit current game.
|
|
177 | 207 | B1CF | 72 |
Final score text.
|
|
178 | 23 | B217 | 2 |
Data block at B217
|
|
178 | 25 | B219 | 131 |
Display number of steps and total percentage score.
|
|
178 | 156 | B29C | 17 |
Sets up and displays the lost game screen.
|
|
178 | 173 | B2AD | 15 |
Sets up and displays the congratulations screen.
|
|
178 | 188 | B2BC | 18 |
Sets up and displays the final score screen.
|
|
178 | 206 | B2CE | 66 |
Main start routine.
|
|
179 | 16 | B310 | 100 |
Start a new game.
|
|
179 | 116 | B374 | 37 |
Scans for menu keys. (1,2,3, Enter)
|
|
179 | 153 | B399 | 40 |
Table of ZX ASCII for keyboard input conversion.
|
|
179 | 193 | B3C1 | 25 |
Converts the standard I/O port / address keyboard values into the equivalent ASCII value.
|
|
179 | 218 | B3DA | 16 |
Set game input as Sinclair Joystick
|
|
179 | 234 | B3EA | 6 |
Set game input as Kempston Joystick
|
|
179 | 240 | B3F0 | 120 |
Defines the keys for game input.
|
|
180 | 104 | B468 | 6 |
Key scans / port address for each key input for Sinclair Joystick.
|
|
180 | 110 | B46E | 64 |
Define keys text.
|
|
180 | 174 | B4AE | 32 |
Basic beep for menu key press.
|
|
180 | 206 | B4CE | 141 |
Main Menu String.
|
|
181 | 91 | B55B | 88 |
Updates the display with the correct keys defined for play.
|
|
181 | 179 | B5B3 | 72 |
The main menu.
|
|
181 | 251 | B5FB | 21 |
Sharp, loss of energy, sound.
|
|
182 | 16 | B610 | 68 |
Action 14 : Won the game.
|
|
182 | 84 | B654 | 199 |
Animate the fireworks.
|
|
183 | 27 | B71B | 70 |
Table of pointers for each firework.
|
|
183 | 97 | B761 | 1342 |
Firework scripts.
|
|
188 | 159 | BC9F | 176 |
|
|
189 | 79 | BD4F | 22 |
Fireworks Furniture string.
|
|
189 | 101 | BD65 | 80 |
|
|
189 | 181 | BDB5 | 14 |
Check for Wally's death.
|
|
189 | 195 | BDC3 | 102 |
Animate Wally's Death
|
|
190 | 41 | BE29 | 184 |
Lose a life, end game or resurrect Wally.
|
|
190 | 225 | BEE1 | 30 |
Routine at BEE1
|
|
190 | 255 | BEFF | 9 |
Routine at BEFF
|
|
191 | 8 | BF08 | 78 |
Knock Wally down to the floor.
|
|
191 | 86 | BF56 | 17 |
Runs the current room event 6 times.
|
|
191 | 103 | BF67 | 11 |
Boxing Glove Trap details.
|
|
191 | 114 | BF72 | 213 |
Test 08 : Is Boxing Glove Trap safe.
|
|
192 | 71 | C047 | 76 |
Table of X,Y positions for each room when resurecting Wally.
|
|
192 | 147 | C093 | 30 |
Get ATTR(H (pixel_y),L (pixel_x) ) in A
|
|
192 | 177 | C0B1 | 100 |
Draws a furniture tile as a double height bitmap.
|
|
193 | 21 | C115 | 66 |
Draw tile(n) at character position (char_y, char_x).
|
|
193 | 87 | C157 | 73 |
Tile, Inverted Draw.
|
|
193 | 160 | C1A0 | 4440 |
Bitmaps for the room and alpha-numeric tiles.
|
|
210 | 248 | D2F8 | 3756 |
Furniture strings.
|
|
225 | 164 | E1A4 | 65 |
Draw Furniture Item
|
|
225 | 229 | E1E5 | 37 |
Display a string using double height characters.
|
|
226 | 10 | E20A | 38 |
Table of background colours for each room.
|
|
226 | 48 | E230 | 77 |
Screen Clear with special effect
|
|
226 | 125 | E27D | 529 |
Object text.
|
|
228 | 142 | E48E | 64 |
Table of pointers to each object text string.
|
|
228 | 206 | E4CE | 38 |
Clear Screen
|
|
228 | 244 | E4F4 | 89 |
Redraw inventory area on screen.
|
|
229 | 77 | E54D | 1 |
Current Room number.
|
|
229 | 78 | E54E | 125 |
Draw Room.
|
|
229 | 203 | E5CB | 5 |
'Full' Text
|
|
229 | 208 | E5D0 | 6 |
'Empty' Text
|
|
229 | 214 | E5D6 | 85 |
Draws the text for an object in a pocket.
|
|
230 | 43 | E62B | 76 |
Table of jump vectors for each room update.
|
|
230 | 119 | E677 | 211 |
Bunch of forwarders for each room update.
|
|
231 | 74 | E74A | 16 |
Calls the event for the current room.
|
|
231 | 90 | E75A | 1 |
Direction of Magnet Lock.
|
|
231 | 91 | E75B | 83 |
Displays the closing / opening Magentic Lock Bars.
|
|
231 | 174 | E7AE | 80 |
Action 0D : Unlocks magentic lock by colourring the platforms.
|
|
231 | 254 | E7FE | 43 |
Update Wally on the moving floor.
|
|
232 | 41 | E829 | 15 |
Falling block data for room event.
|
|
232 | 56 | E838 | 119 |
Handler : Falling Blocks
|
|
232 | 175 | E8AF | 1 |
Data for Fire Handler.
|
|
232 | 176 | E8B0 | 43 |
Handler : Fire
|
|
232 | 219 | E8DB | 144 |
|
|
233 | 107 | E96B | 56 |
Rolling Rock Furniture string.
|
|
233 | 163 | E9A3 | 39 |
Draw : Rolling Rock.
|
|
233 | 202 | E9CA | 1 |
Countdown before rolling rock appears.
|
|
233 | 203 | E9CB | 63 |
Room Event : Rolling Rock.
|
|
234 | 10 | EA0A | 45 |
start a new room.
|
|
234 | 55 | EA37 | 41 |
Reset Wally's stats for a new room.
|
|
234 | 96 | EA60 | 140 |
Room Event : Balloon Help.
|
|
234 | 236 | EAEC | 49 |
Room Event : Moving Floor Draw.
|
|
235 | 29 | EB1D | 10 |
Angel of Death stats.
|
|
235 | 39 | EB27 | 148 |
Room Event : Angels of Death.
|
|
235 | 187 | EBBB | 1 |
Savage plants' stats.
|
|
235 | 188 | EBBC | 135 |
Room Event : Savage Plants.
|
|
236 | 67 | EC43 | 2 |
Falling Book stats.
|
|
236 | 69 | EC45 | 147 |
Room Event : Book Baddies.
|
|
236 | 216 | ECD8 | 7 |
Chicken monster stats.
|
|
236 | 223 | ECDF | 181 |
Room Event : Cooked Chickens
|
|
237 | 148 | ED94 | 106 |
Action 12 Grab rope and slide down bannister.
|
|
237 | 254 | EDFE | 2 |
Data for the dropping weight object.
|
|
238 | 0 | EE00 | 98 |
Draw and move the 3 Ton weight.
|
|
238 | 98 | EE62 | 43 |
Table of food data.
|
|
238 | 141 | EE8D | 2 |
Pointer to active food.
|
|
238 | 143 | EE8F | 78 |
Check for food pickup by Wally.
|
|
238 | 221 | EEDD | 39 |
Draws food for current room at (x, $a8)
|
|
239 | 4 | EF04 | 3 |
Rolling ball stats.
|
|
239 | 7 | EF07 | 100 |
Room Event : Bolling Ball.
|
|
239 | 107 | EF6B | 6 |
Darts' stats.
|
|
239 | 113 | EF71 | 118 |
Room Event : Darts
|
|
239 | 231 | EFE7 | 13 |
Data for the Ghosts.
|
|
239 | 244 | EFF4 | 166 |
Room Event : Ghost
|
|
240 | 154 | F09A | 37 |
Data for Space Invaders.
|
|
240 | 191 | F0BF | 184 |
Room Event : Invaders
|
|
241 | 119 | F177 | 22 |
Object Flags Table.
|
|
241 | 141 | F18D | 56 |
Reset all the flags and stats for a new game.
|
|
241 | 197 | F1C5 | 21 |
Sound made for bouncing axe.
|
|
241 | 218 | F1DA | 4 |
Bouncing Axe stats.
|
|
241 | 222 | F1DE | 115 |
Room Event : Axe
|
|
242 | 81 | F251 | 28 |
Spooky hand stats.
|
|
242 | 109 | F26D | 96 |
Room Event : Spooky Hand.
|
|
242 | 205 | F2CD | 51 |
Data for the Arcade Room.
|
|
243 | 0 | F300 | 20 |
Invaders : Set Y position of each invader.
|
|
243 | 20 | F314 | 34 |
Invaders : Set X pos of each invader.
|
|
243 | 54 | F336 | 106 |
Invaders : Initialise
|
|
243 | 160 | F3A0 | 7 |
Data for the Arcade Room.
|
|
243 | 167 | F3A7 | 182 |
Routine at F3A7
|
|
244 | 93 | F45D | 18 |
Data for the Arcade Room.
|
|
244 | 111 | F46F | 55 |
Reset everything for next stage.
|
|
244 | 166 | F4A6 | 44 |
Game loop for Invaders game room. (Room 1E)
|
|
244 | 210 | F4D2 | 35 |
Invaders exit check.
|
|
244 | 245 | F4F5 | 1 |
Invaders pause value.
|
|
244 | 246 | F4F6 | 34 |
Sets up the Arcade Room.
|
|
245 | 24 | F518 | 2 |
Arcade bullet data.
|
|
245 | 26 | F51A | 142 |
Invaders : Bullet Update.
|
|
245 | 168 | F5A8 | 22 |
Invaders pause where p = ( ($18 - p) * 32 )
|
|
245 | 190 | F5BE | 19 |
Data slots for the explosion animations.
|
|
245 | 209 | F5D1 | 54 |
Draw and update explosions in the Arcade Room.
|
|
246 | 7 | F607 | 44 |
Create an explosions in the Arcade room.
|
|
246 | 51 | F633 | 9 |
Data for holding information on three 'bombs' in the Arcade Room.
|
|
246 | 60 | F63C | 81 |
Update and draw bombs for the Arcade room.
|
|
246 | 141 | F68D | 108 |
Set up title music to start playing.
|
|
246 | 249 | F6F9 | 10 |
Pause
|
|
247 | 3 | F703 | 20 |
Plays a note.
|
|
247 | 23 | F717 | 261 |
Score sheet for music.
|
|
248 | 28 | F81C | 38 |
Inialisation for the demo.
|
|
248 | 66 | F842 | 209 |
Run demo.
|
|
249 | 19 | F913 | 859 |
Demo Script.
|
|
252 | 110 | FC6E | 2 |
Counts from $012c. When zero is reached energy is lost. See Energy_Countdown.
|
|
252 | 112 | FC70 | 39 |
Handles countdown which indicates the loss of energy.
|
|
252 | 151 | FC97 | 22 |
Main entry point once loaded.
|