This is an old revision of the document!


System ROM

The first 8K of the Astrocade's memory map ($0000-$1FFF) is dedicated to system ROM, which contains the operating system and the four built-in programs: Scribbling, Calculator, Checkmate, and Gunfight.

The end of the Nutting Manual contains the complete 8K ROM Source Listing. Its table of contents reads as follows:

Name Pages ROM Memory
Home Video Game Equates 2–15
System Routines 16–94 $0000
Scribbling 1–17 $0E19
Calculator 1–20 $1020
Checkmate 1–30 $1328
Gunfight 1–46

Better organization and context

System RAM Memory Cells

System RAM memory definitions are located at $4FC8–4FFD in the Nutting Manual source listing (p. 14–15).

Used by Music Processor
MUZPC Music Program Counter
MUZSP Music Stack Pointer
PVOLAB Preset Volume for Tones A & B
PVOLMC Preset Volume for Master Oscillator
VOICES Music Voices
Counter Timers (used by DECCTS, ACTINT, and CTIMER)
CT0 Counter Timer 0
CT1 Counter Timer 1
CT2 Counter Timer 2
CT3 Counter Timer 3
CT4 Counter Timer 4
CT5 Counter Timer 5
CT6 Counter Timer 6
CT7 Counter Timer 7
Used by SENTRY to Track Controls
CNT Counter Update & Number Tracking
SEMI4S Flag Bits
OPOT0 Pot 0 Tracking
OPOT1 Pot 1 Tracking
OPOT2 Pot 2 Tracking
OPOT3 Pot 3 Tracking
KEYSEX Keyboard Tracking Byte
OSW0 Switch 0 Tracking
OSW1 Switch 1 Tracking
OSW2 Switch 2 Tracking
OSW3 Switch 3 Tracking
COLLST Color List Address for P. B. A
Used by STIMER
DURAT Note Duration
TMR60 Sixtieths of a Second
TIMOUT Blackout Timer
GTSECS Game Time (Seconds)
GTMINS Game Time (Minutes)
Used by MENU
RANSHT Random Number Shift Register
NUMPLY Number of Players
ENDSCR Score to Play to
MRLOCK Magic Register Lockout Flag
GAMSTB Game Status Byte
PRIOR Music Protect Flag
SENFLAG Sentry Control Seizure Flag
UMARGT User Macro Argument Table [??]
USERTB User Table [??]

System dope vector (valid for ALL system ROM programs)

STIMER  EQU     $0200   ; Seconds and game TIMER, music
CTIMER  EQU     $0203   ; Custom TIMERs
FNTSYS  EQU     $0206   ; FoNT descriptor for SYStem font
FNTSML  EQU     $020D   ; FoNT descriptor for SMaLl font
ALKEYS  EQU     $0214   ; ALl KEYS keypad mask
MENUST  EQU     $0218   ; head of onboard MENU STart
MXSCR   EQU     $021E   ; address of 'MaX SCoRe' text string
NOPLAY  EQU     $0228   ; address of 'Number Of PLAYers' string
NOGAME  EQU     $0235   ; address of 'Number Of GAMEs' string