Page Byte Address Description
64 0 16384
Data block at 16384
92 72 23624
Port 254 shadow
92 94 23646
Message at 23646
92 97 23649
Data block at 23649
92 235 23787
Message at 23787
92 240 23792
Data block at 23792
93 3 23811
Message at 23811
93 8 23816
Data block at 23816
93 26 23834
Message at 23834
93 32 23840
Data block at 23840
93 39 23847
Message at 23847
93 49 23857
Data block at 23857
95 157 24477
Message at 24477
95 161 24481
Data block at 24481
96 8 24584
Message at 24584
96 12 24588
Data block at 24588
96 29 24605
Game runtime data
96 39 24615
Number of aliens remaining
96 78 24654
Game initialisation data
96 88 24664
Screen initialisation data
96 127 24703
Start of game, from LOADer and new game loop
96 218 24794
Storage byte for routine that follows
96 219 24795
Move aliens along, based on speed control value
96 247 24823
Reset game data
97 3 24835
Initialise new screen data
97 36 24868
Dynamic pause
97 76 24908
delay_ms (approx)
97 87 24919
Advance alien start row
97 102 24934
Temp store for the print score code
97 103 24935
Print score
97 157 24989
Reset score, update high score
97 201 25033
Temporary store for the counter of lives remaining to draw
97 202 25034
Draw lives remaining on top row
98 17 25105
Award extra life
98 72 25160
Game over
98 140 25228
Initialise game screen attributes
98 194 25282
Data block at 25282
99 98 25442
Spaceship handler
99 248 25592
Hit spaceship
100 28 25628
Spaceship noise
100 39 25639
Bonus table
100 43 25643
Spaceship has been hit, award bonus
100 86 25686
Add A to HL (1)
100 91 25691
Runtime data for alien bullet firing loop
100 108 25708
Move alien bullets.
100 137 25737
Advance IX to point to next alien bullet slot
100 149 25749
Generate alien bullets
100 253 25853
Move alien bullet
101 120 25976
Clear alien bullets
101 138 25994
Increment alien bullet position
101 145 26001
Clear bottom character row
101 164 26020
Remove alien bullet
101 182 26038
Has an alien been hit?
101 193 26049
Bullet and alien collision check, Y axis
101 241 26097
Data block at 26097
102 42 26154
Bullet and alien collision check, X axis
102 113 26225
Alien hit
102 208 26320
Alien hit, zero out the UDGs
102 225 26337
Draw alien explosion
103 7 26375
Recalc alien numeric data on alien hit
103 91 26459
Scores table based on alien rows.
103 96 26464
Increase score when alien hit
103 116 26484
Add A to HL (2)
103 121 26489
Move bullet temp
103 122 26490
Player bullet interception detection
103 198 26566
Handle player inputs.
103 219 26587
Keypress detection
104 51 26675
Redraw player ship
104 88 26712
Select player ship clear sprite data
104 97 26721
Keypress routine's fire-released flag
104 98 26722
Player ship sprite data
105 3 26883
Fire pressed
105 36 26916
Draw the player bullet.
105 67 26947
Clear player bullet
105 84 26964
Temporary store for where the new ship should end up at the end of the scroll animation.
105 85 26965
New player ship
105 125 27005
Copy alien UDG data to a screen row
105 149 27029
Temporary value used for initialising aliens
105 150 27030
Initialise alien position data
105 217 27097
Find the data structure which represents the row of aliens
105 234 27114
Find alien UDG data
105 247 27127
Aliens data
106 199 27335
Original assembler strings
106 213 27349
Unused
106 214 27350
Message at 27350
106 225 27361
Data block at 27361
106 253 27389
Message at 27389
107 16 27408
Unused
107 17 27409
Message at 27409
107 30 27422
Data block at 27422
107 52 27444
Message at 27444
107 55 27447
Data block at 27447
107 84 27476
Message at 27476
107 95 27487
Unused
107 96 27488
Message at 27488
107 104 27496
Data block at 27496
107 107 27499
Message at 27499
107 114 27506
Data block at 27506
107 153 27545
Message at 27545
107 156 27548
Data block at 27548
108 50 27698
Message at 27698
108 53 27701
Data block at 27701
109 159 28063
Message at 28063
109 162 28066
Data block at 28066
109 176 28080
Message at 28080
109 179 28083
Data block at 28083
110 225 28385
Message at 28385
110 228 28388
Data block at 28388
110 244 28404
Message at 28404
110 247 28407
Data block at 28407
111 145 28561
111 181 28597
Data block at 28597
111 185 28601
Message at 28601
111 189 28605
Data block at 28605
113 22 28950
Message at 28950
113 25 28953
Data block at 28953
113 67 28995
Message at 28995
113 70 28998
Data block at 28998
115 83 29523
Message at 29523
115 86 29526
Data block at 29526
115 91 29531
Message at 29531
115 95 29535
Data block at 29535
116 219 29915
Message at 29915
116 223 29919
Data block at 29919
119 61 30525
Message at 30525
119 64 30528
Data block at 30528
119 73 30537
Message at 30537
119 77 30541
Data block at 30541
119 191 30655
Message at 30655
119 194 30658
Data block at 30658
119 195 30659
Message at 30659
119 198 30662
Data block at 30662
120 37 30757
Message at 30757
120 40 30760
Data block at 30760
120 137 30857
Move aliens
121 19 30995
Move one row of aliens down
121 99 31075
Initialise draw aliens
121 131 31107
Alien data structure
121 143 31119
Prepare alien row drawing data
121 222 31198
Print one row of aliens
122 25 31257
Draw an alien sprite scan line
122 58 31290
Set INK colour of attributes
122 71 31303
Set alien colour band
122 95 31327
Remove barriers when the aliens get low
122 139 31371
UDGs which make up the barriers.
122 187 31419
Barrier top row string
122 192 31424
Barrier middle row string
122 197 31429
Barrier bottom row string
122 202 31434
Temporary value for barrier loop
122 203 31435
Temporary value for barrier rows
122 204 31436
Draw barriers
123 21 31509
Data block at 31509
123 39 31527
Has bullet hit a barrier?
123 146 31634
Set pixel
123 152 31640
Clear pixel
123 159 31647
XOR pixel
123 165 31653
Clear screen byte but leave pixel
123 170 31658
Screen address calculation table, used by pxy2saddr
124 178 31922
pxy2saddr
124 216 31960
Draw or undraw sprite
124 240 31984
Data block at 31984
124 242 31986
Data block at 31986
124 243 31987
Sound burbler
125 34 32034
Click speaker bit, causes 2 clicks separated by the given pitch
125 55 32055
Randomish numbers
125 59 32059
Update cycler values
125 112 32112
Printable score
125 127 32127
Generate printable score
125 159 32159
Find digit char UDG
125 174 32174
Character set for scores
125 254 32254
cxy2saddr
126 19 32275
Print UDG at HL to screen at BC
126 31 32287
Clear screen pixel data
126 46 32302
Print string at return address
126 51 32307
Print positioned string at HL
126 55 32311
Print string at HL
126 87 32343
Attribute address finder, cx,cy to attr address
126 104 32360
A 2 byte entry from the table at 32362 is copied into here by the ship drawing routine. It's used as a destination for the jump at 32362
126 106 32362
Update pixel
126 110 32366
This is a jump table with 4 entries.
126 118 32374
Prime pixel update
126 142 32398
Find character
126 156 32412
Data block at 32412
255 89 65369
Message at 65369
255 92 65372
Data block at 65372
255 113 65393
Message at 65393
255 119 65399
Data block at 65399
255 140 65420
Message at 65420
255 143 65423
Data block at 65423
255 148 65428
Message at 65428
255 151 65431
Data block at 65431
255 164 65444
Message at 65444
255 167 65447
Unused
255 169 65449
Message at 65449
255 175 65455
Data block at 65455
255 185 65465
Message at 65465
255 191 65471
Unused
255 193 65473
Message at 65473
255 199 65479
Unused
255 201 65481
Message at 65481
255 207 65487
Data block at 65487
255 217 65497
Message at 65497
255 223 65503
Data block at 65503
255 249 65529
Message at 65529
255 255 65535
Unused