mirror of
https://github.com/erkyrath/infocom-zcode-terps.git
synced 2026-01-11 23:43:24 +00:00
106 lines
2.7 KiB
Plaintext
106 lines
2.7 KiB
Plaintext
PAGE
|
|
SBTTL "--- HARDWARE EQUATES: ATARI ---"
|
|
|
|
; ----------------
|
|
; ATARI MEMORY MAP
|
|
; ----------------
|
|
|
|
IOBUFF EQU $0400 ; DISK I/O BUFFER
|
|
BUFTOP EQU $0480 ; TOP HALF OF I/O BUFFER
|
|
ZSTAKL EQU $0500 ; Z-STACK LSBS
|
|
ZSTAKH EQU $0600 ; Z-STACK MSBS
|
|
PTABL EQU $0700 ; PAGING TABLE LSBS
|
|
PTABH EQU $0800 ; PAGING TABLE MSBS
|
|
LRUMAP EQU $0900 ; TIMESTAMP MAP
|
|
LOCALS EQU $0A00 ; LOCAL VARIABLE STORAGE (30 BYTES)
|
|
BUFSAV EQU $0A20 ; AUXILIARY INPUT BUFFER (80 BYTES)
|
|
LBUFF EQU $0A80 ; MAIN INPUT BUFFER (80 BYTES)
|
|
|
|
PLMRAM EQU $0800 ; START OF PLAYER/MISSILE RAM
|
|
MISSL EQU $0B00 ; START OF MISSILE RAM (CURSOR)
|
|
|
|
ZIP EQU $0C00 ; START OF ZIP CODE
|
|
ZBEGIN EQU $2600 ; START OF Z-CODE (ASSUME 6.5K ZIP)
|
|
|
|
OLDLST EQU $BC20 ; CIO DEFAULT DL ADDR
|
|
SCREEN EQU $BC40 ; START OF SCREEN RAM
|
|
|
|
; ---------
|
|
; CONSTANTS
|
|
; ---------
|
|
|
|
XSIZE EQU 39 ; WIDTH OF SCREEN IN CHARACTERS (-1)
|
|
YSIZE EQU 23 ; HEIGHT OF SCREEN IN LINES (-1)
|
|
|
|
EOL EQU $9B ; EOL CHAR
|
|
SPACE EQU $20 ; SPACE CHAR
|
|
BACKSP EQU 126 ; BACKSPACE
|
|
|
|
; ---------
|
|
; ZER0-PAGE
|
|
; ---------
|
|
|
|
BOOT EQU $09 ; BOOT FLAG
|
|
DOSVEC EQU $0A ; DOS START VECTOR
|
|
POKMSK EQU $10 ; FOR BREAK KEY DISABLE
|
|
RTCLOK EQU $14 ; JIFFY CLOCK
|
|
LMARGN EQU $52 ; LEFT MARGIN
|
|
ROWCRS EQU $54 ; OS CURSOR ROW
|
|
COLCRS EQU $55 ; OS CURSOR COLUMN
|
|
|
|
; ---------
|
|
; PAGES 2-3
|
|
; ---------
|
|
|
|
SDMCTL EQU $022F ; DMA CONTROL
|
|
SDLSTL EQU $0230 ; DISPLAY LIST ADDRESS
|
|
COLDST EQU $0244 ; COLDSTART FLAG
|
|
GPRIOR EQU $026F ; GRAPHICS PRIORITY
|
|
LOGMAP EQU $02B2 ; LOGICAL LINE MAP (3 BYTES)
|
|
INVFLG EQU $02B6 ; INVERSE TEXT FLAG
|
|
COLOR1 EQU $02C5 ; TEXT COLOR
|
|
COLOR4 EQU $02C8 ; BORDER COLOR
|
|
CRSINH EQU $02F0 ; OS CURSOR INHIBIT
|
|
CH EQU $02FC ; KEYBOARD READ FLAG
|
|
DUNIT EQU $0301 ; DRIVE #
|
|
DCOMND EQU $0302 ; DISK COMMAND
|
|
DSTATS EQU $0303 ; DISK I/O STATUS
|
|
DBUFLO EQU $0304 ; DISK BUFFER ADDR (LSB)
|
|
DBUFHI EQU $0305 ; DISK BUFFER ADDR (MSB)
|
|
DAUX1 EQU $030A ; SECTOR ADDR (LSB)
|
|
DAUX2 EQU $030B ; SECTOR ADDR (MSB)
|
|
ICCOM EQU $0342 ; IOCB #0 COMMAND
|
|
ICBADR EQU $0344 ; IOCB #0 BUFFER ADDR
|
|
ICBLEN EQU $0348 ; IOCB #0 LENGTH
|
|
ICAUX1 EQU $034A ; IOCB #0 AUX BYTE #1
|
|
ICAUX2 EQU $034B ; IOCB #0 AUX BYTE #2
|
|
|
|
; ------------------
|
|
; GTIA, POKEY, ANTIC
|
|
; ------------------
|
|
|
|
HPOSP0 EQU $D000 ; PLAYER #0 H-POS
|
|
HPOSM0 EQU $D004 ; MISSILE #0 H-POS
|
|
SIZEM EQU $D00C ; MISSILE SIZES
|
|
GRACTL EQU $D01D ; P/M GRAPHICS CONTROL
|
|
CONSOL EQU $D01F ; CONSOLE KEY REGISTER
|
|
AUDF1 EQU $D200 ; AUDIO CH1 FREQ
|
|
AUDC1 EQU $D201 ; AUDIO CH1 CTRL
|
|
AUDCTL EQU $D208 ; AUDIO CONTROL
|
|
MRAND EQU $D20A ; RANDOM BYTE
|
|
IRQEN EQU $D20E ; IRQ ENABLE
|
|
SKCTL EQU $D20F ; SERIAL PORT CONTROL
|
|
PORTB EQU $D301 ; PORT B (XL ROM SWITCH)
|
|
DMACTL EQU $D400 ; DMA CONTROL
|
|
PMBASE EQU $D407 ; PMG RAM BASE ADDR
|
|
|
|
; ------
|
|
; OS ROM
|
|
; ------
|
|
|
|
DSKINV EQU $E453 ; SIO DISK ACCESS
|
|
CIOV EQU $E456 ; CIO VECTOR
|
|
|
|
END
|
|
|