Game status buffer |
Address | Length | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
5B60 | 450 |
Initialised at routine A89D
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5D22 | 300 |
Initialised at routine A89D.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5E4E | 24 |
Initialised at routine A628. Three bytes for every drone. 8 drones max. Byte $00 - x-position of drone Byte $01 - y-position of drone Byte $02 - index into the offset position table for the drone
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5E66 | 384 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5FE6 | 26 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
9F14 | 75 |
Three bytes for every atom. $00 y-delta $01 x-offset $02 y-position
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A012 | 1 |
Variable used to prevent multiple shots while FIRE key is hold down. FIRE key hold down is only available when rapid shots bonus is active
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A013 | 1 |
0-Basic Laser, 1-Double fire, 2-Laser, 3-Multiple, 4-Spray. Used to compute BOSS health
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A014 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A015 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A017 | 1 |
$00 or $01 select distints graphic data
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A018 | 1 |
Values from 0 to 120
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A019 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A01B | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A01D | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A01E | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A020 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A022 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A023 | 5 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A028 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A029 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A02A | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A02B | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A02C | 1 |
$00 No / $FF Yes
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A02D | 1 |
$00 No / $FF Yes
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A02E | 1 |
$00 No / $FF Yes
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A02F | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A030 | 1 |
$00 Not destroy all - $01 Destroy all. Value $00 on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A031 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A033 | 1 |
Used in routine B258
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A034 | 2 |
Used in routine B258
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A038 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A039 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A03B | 1 |
From 9 to 0
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A03C | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A03E | 2 |
Real score = score * 100
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A040 | 1 |
$00 inactive - $01 active
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A041 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A042 | 1 |
$FF inactive. Otherwise the value is the index into the table for flash commands at 9AB3
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A043 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A044 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A045 | 1 |
$00 train not generating $01 Generating train
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A046 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A048 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A049 | 1 |
$00 not active $01 active
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A04C | 1 |
Variable used to prevent activate and inactivate of shield if DOWN key is hold down
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A04D | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A04E | 1 |
Shield decrement when counter reaches zero
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A04F | 1 |
$00: Not available / $01: Available. Available on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A050 | 1 |
$00: Not available / $01: Available. Not available on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A051 | 1 |
$00: Not available / $01: Available. Not available on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A052 | 1 |
$00: Not available / $01: Available. Not available on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A053 | 1 |
$00: Not available / $01: Available. Not available on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A054 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A055 | 1 |
$00 Rex alive $01 Rex dead
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A056 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A057 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A059 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A05A | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A05B | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A05C | 1 |
$00 room not configured $01 room configured
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A05D | 1 |
$00 invisible $01 visible
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A05E | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A05F | 1 |
$00 not atom flushing $01 atoms flushing
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A060 | 1 |
$00 not teleporting $01 teleporting
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A061 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A062 | 1 |
$00 teleporting on game begin $01 teleporting after dead
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A063 | 1 |
$04 on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A064 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A065 | 1 |
Initialised with value $32 for title screen main loop Initialised with value $05 for time bar: number of zig-zag to remove a timer slot
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A066 | 1 |
$00 right $01 left
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A067 | 1 |
Timer bar: 12 slots of time
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A068 | 1 |
Used as well for index into laser template graphic table at B943
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A069 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A06A | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A06B | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A06C | 1 |
3 smartbombs on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A06E | 1 |
Every time that energy quantity in A018
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A06F | 1 |
(0-speed up 1-shield loss 2-1000 bonus 3-energy loss 4-100 rapid shots)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A071 | 1 |
$00 inmortal $01 mortal
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A072 | 1 |
$00 normal speed - $01 fast speed
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A073 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A076 | 2 |
Every 100 points increment a lives. Reset on every live awarded
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A07A | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A07B | 1 |
$01 enemy fired weapon / $00 Rex fired weapon
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A07C | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A07D | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A07F | 1 |
Value $00 on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A081 | 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A083 | 2 |
Initialised with value of $E05B on init, although the base address of the table is $E067. Every animation definition spans $0C bytes and in the first the value $0C is added to the initial address. Used in routine 947A
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A085 | 1 |
Hidden on init. $00 Hidden / $01 Visible
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A086 | 2 |
Value DC26 on init so initially this points to the FOOT MAN windows.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A088 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A089 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A08B | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A08D | 1 |
Value copied from Room connections and enemy configuration pointer at B133
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A08E | 1 |
Value copied from Room connections and enemy configuration pointer at B133
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A08F | 1 |
Value copied from Room connections and enemy configuration pointer at B133
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A090 | 1 |
Value copied from Room connections and enemy configuration pointer at B133
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A091 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A092 | 1 |
Value copied from the corresponding Enemy room configuration at AECD
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A093 | 2 |
Used as: length of the current processing line for windows setup, color attribute for windows border, color attribute for text content of the windows, ... Used in routine A13E. As x-position of the tile at routine C745. As stack pointer at routine B205 and A28A. As destructible tile type and laser x-position at routine B645. As position into offset table for debris expansion at routine BF66
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A095 | 2 |
Used as: max length of the lines processed for windows setup, number of columns of the windows, horizontal position of the windows, ... Used in routine A13E. As tile number in C745. As stack pointer at routine R$B33E. As address into mapping table of tile graphics/room graphics and laser y-position at routine B645
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A097 | 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A099 | 1 |
Used as increment for laser y-position at routine B645
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A09F | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0A1 | 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0A3 | 1 |
Value $11 on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0A4 | 7 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0AB | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0AD | 1 |
Is used to configure the routines at A46A to check for key presses of the defined keys
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0AE | 1 |
$FF Kempston | $00 Cursor, Sinclair or Defined keys. $00 on init. Not used in game
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0AF | 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B0 | 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B1 | 1 |
Used in routine B258
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B2 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B3 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B6 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B7 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B8 | 1 |
Value $00 on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0B9 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0BB | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0BC | 1 |
$00 not falling / otherwise falling speed ($02 or $04)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0BD | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0C0 | 2 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0C2 | 1 |
The list of rooms are stored into table at A90C. Value $00 on init
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A0C3 | 1 |
Value $C8 on init. Equals to 200 loops to run.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A1F1 | 6 |
Used in routine A1DB
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A233 | 6 |
Used in routine A212
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
D832 | 24 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
D855 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
D857 | 1 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
D962 | 350 |
Contains two words for every tile drawn on screen. First word: address of the tile location into the room graphics buffer Second word: address of the tile graphics $FF is an end marker Tiles $00, $10, $71, $81 and $91 are special tiles, not drawn The routine C745 fill this table and the data overwrites the main loop routine for the title screen (DAC0) and subsequent routines
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DD4E | 5 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
E049 | 6 |
Data copied from the corresponding animation definition at E067
|