2023-11-16 18:19:54 -05:00

107 lines
3.2 KiB
Plaintext

PAGE
SBTTL "--- HARDWARE EQUATES: CBM PLUS/4 ---"
; ----------------------------------
; MACHINE-DEPENDENT SOFTWARE EQUATES
; ----------------------------------
FAST EQU $02 ; (BYTE) FAST-READ AVAILABLE FLAG
CSHAPE EQU $D8 ; (BYTE) CURRENT CURSOR SHAPE
COLUMN EQU $D9 ; (BYTE) CURRENT CURSOR COLUMN
SROW EQU $DA ; (WORD) CURRENT SCREEN ROW ADDR
CROW EQU $DC ; (WORD) CURRENT COLOR ROW ADDR
BLINK EQU $DE ; (WORD) BLINK TIMER
FINDEX EQU $E0 ; (BYTE) FAST-READ INDEX
FDATA EQU $E1 ; (BYTE) FAST-READ DATA BUFFER
FASTEN EQU $E2 ; (BYTE) FAST-READ ENABLE FLAG
; ---------------------------
; CBM PLUS/4 HARDWARE EQUATES
; ---------------------------
COLRAM EQU $0800 ; COLOR (ATTRIBUTE) RAM
SCREEN EQU $0C00 ; SCREEN RAM
XSIZE EQU 39 ; X-SIZE OF SCREEN
YSIZE EQU 24 ; Y-SIZE OF SCREEN
EOL EQU $0D ; EOL CHAR
SPACE EQU $20 ; SPACE CHAR
BACKSP EQU $14 ; BACKSPACE
WHITE EQU $51 ; WHITE COLOR FOR TEXT
FADDR EQU $22 ; FUNCTION KEY STRING ADDRESS
FKEY EQU $76 ; FUNCTION KEY ID
TIME EQU $A5 ; SYSTEM JIFFY CLOCK
NDX EQU $EF ; # CHARS IN KEYBOARD QUEUE
COLOR EQU $053B ; TEXT COLOR
BLINKA EQU $053C ; BLINK ATTRIBUTE ($80 = BLINK)
SHFLAG EQU $0543 ; SHIFT KEY FLAG
LINKEN EQU $07E9 ; LINE LINK ENABLE (BIT 6)
; ---
; TED
; ---
TED EQU $FF00 ; START OF TED CHIP
T1LSB EQU TED ; TIMER #1 LSB
T1MSB EQU TED+1 ; TIMER #1 MSB
T2LSB EQU TED+2 ; TIMER #2 LSB
T2MSB EQU TED+3 ; TIMER #2 MSB
T3LSB EQU TED+4 ; TIMER #3 LSB
T3MSB EQU TED+5 ; TIMER #3 MSB
VSCROL EQU TED+6 ; V-SCROLL, DISPLAY CTRL
HSCROL EQU TED+7 ; H-SCROLL, DISPLAY CTRL
KEYLAT EQU TED+8 ; KEYBOARD LATCH
INTREG EQU TED+9 ; INTERRUPT FLAGS
IMASK EQU TED+10 ; INTERRUPT MASK
RASTER EQU TED+11 ; RASTER LSB
CURSH EQU TED+12 ; CURSOR POSITION MSB
CURSL EQU TED+13 ; CURSOR POSITION LSB
V1FLSB EQU TED+14 ; VOICE #1 FREQ LSB
V2FLSB EQU TED+15 ; VOICE #2 FREQ LSB
V2FMSB EQU TED+16 ; VOICE #2 FREQ MSB
VOLUME EQU TED+17 ; VOLUME CTRL/VOICE SELECT
BITMAP EQU TED+18 ; BITMAP BASE ADDR/VOICE #1 MSB
CHBASE EQU TED+19 ; CHAR BASE ADDR
SBASE EQU TED+20 ; SCREEN BASE ADDR
BGCOL0 EQU TED+21 ; BACKGROUND COLOR #0
BGCOL1 EQU TED+22 ; BACKGROUND COLOR #1
BGCOL2 EQU TED+23 ; BACKGROUND COLOR #2
BGCOL3 EQU TED+24 ; BACKGROUND COLOR #3
BORDER EQU TED+25 ; BORDER COLOR
BMRMSB EQU TED+26 ; BIT MAP RELOAD MSB
BMRLSB EQU TED+27 ; BIT MAP RELOAD LSB
VLINEH EQU TED+28 ; VERTICAL LINE MSB
VLINEL EQU TED+29 ; VERTICAL LINE LSB
HSCAN EQU TED+30 ; HORIZONTAL LINE MSB
BLINRT EQU TED+31 ; BLINK RATE/VERTICAL SUBADDR
ROMIN EQU TED+62 ; ROM ENABLE
ROMOUT EQU TED+63 ; ROM DISABLE
; -------------------
; KERNAL JUMP VECTORS
; -------------------
CHKIN EQU $FFC6 ; OPEN CHANNEL FOR INPUT
CHKOUT EQU $FFC9 ; OPEN CHANNEL FOR OUTPUT
CHRIN EQU $FFCF ; INPUT CHARACTER FROM CHANNEL
CHROUT EQU $FFD2 ; OUTPUT CHARACTER TO CHANNEL
CLALL EQU $FFE7 ; CLOSE ALL CHANNELS & FILES
CLOSE EQU $FFC3 ; CLOSE A FILE
CLRCHN EQU $FFCC ; CLEAR CHANNEL
GETIN EQU $FFE4 ; GET CHAR FROM KEYBOARD QUEUE
OPEN EQU $FFC0 ; OPEN A FILE
PLOT EQU $FFF0 ; READ/SET CURSOR POSITION
READST EQU $FFB7 ; READ I/O STATUS
SETLFS EQU $FFBA ; SET FILE ATTRIBUTES
SETMSG EQU $FF90 ; SET KERNAL MESSAGES
SETNAM EQU $FFBD ; SET FILENAME
FUNCT EQU $FF49 ; DEFINE FUNCTION KEYS
END