Files
2024-05-09 12:36:46 +02:00

95 lines
2.3 KiB
Plaintext

.PAGE "FTe SYSTEM EQUATES FOR ATARI"
;
; FILE = #DN:SYSEQU.ASM
;
;
; I/O CONTROL BLOCK EQUATES
;
SAVEPC = * ; SAVE CURRENT ORG
;
*= $0340 ;START OF SYSTEM IOCBS
IOCB
;
ICHID *= *+1 ;DEVICE HANDLER IS (SET BY OS)
ICDNO *= *+1 ;DEVICE NUMBER (SET BY OS)
ICCOM *= *+1 ;I/O COMMAND
ICSTA *= *+1 ;I/O STATUS
ICBADR *= *+2 ;BUFFER ADDRESS
ICPUT *= *+2 ;DH PUT ROUTINE (ADR-1)
ICBLEN *= *+2 ;BUFFER LENGTH
ICAUX1 *= *+1 ;AUX 1
ICAUX2 *= *+1 ;AUX 2
ICAUX3 *= *+1 ;AUX 3
ICAUX4 *= *+1 ;AUX 4
ICAUX5 *= *+1 ;AUX 5
ICAUX6 *= *+1 ;AUX 6
;
IOCBLEN = *-IOCB ;LENGTH OF ONE IOCB
;
; IOCB COMMAND VALUE EQUATES
;
COPN = 3 ;OPEN
CGBINR = 7 ;GET BINARY RECORD
CGTXTR = 5 ;GET TEXT RECORD
CPBINR = 11 ;PUT BINARY RECORD
CPTXTR = 9 ;PUT TEXT RECORD
CCLOSE = 12 ;CLOSE
CSTAT = 13 ;GET STATUS
;
; DEVICE DEPENDENT COMMAND EQUATES FOR FILE MANAGER
;
CREN = 32 ;RENAME
CERA = 33 ;ERASE
CPRO = 35 ;PROTECT
CUNP = 36 ;UNPROTECT
CPOINT = 37 ;POINT
CNOTE = 38 ;NOTE
;
; AUX1 VALUES REQD FOR OPEN
;
OPIN = 4 ;OPEN INPUT
OPOUT = 8 ;OPEN OUTPUT
OPUPD = 12 ;OPEN UPDATE
OPAPND = 9 ;OPEN APPEND
OPDIR = 6 ;OPEN DIRECTORY
;
.PAGE
;
; EXECUTE FLAG DEFINES
;
EXCYES = $80 ; EXECUTE IN PROGRESS
EXCSCR = $40 ; ECHO EXCUTE INPUT TO SCREEN
EXCNEW = $10 ; EXECUTE START UP MODE
EXCSUP = $20 ; COLD START EXEC FLAG
;
; MISC ADDRESS EQUATES
;
CPALOC = $0A ; POINTER TO CP/A
WARMST = $08 ; WAR, START (0=COLD)
MEMLO = $02E7 ; AVAIL MEM (LOW) PTR
MEMTOP = $02E5 ; AVAIL MEM (HIGH) PTR
APPMHI = $0E ; UPPER LIMIT OF APPLICATION MEMORY
INITADR = $02E2 ; ATARI LOAD/INIT ADR
GOADR = $02E0 ; ATARI LOAD/GO ADR
CARTLOC = $BFFA ; CARTRIDGE RUN LOCATION
CIO = $E456 ;CIO ENTRY ADR
EOL = $9B ; END OF LINE CHAR
;
; CP/A FUNCTION AND VALUE DISPLACEMSNT
; (INDIRECT THROUGH CPALOC)
; IE. (CPALOC),Y
;
CPGNFN = 3 ; GET NEXT FILE NAME
CPDFDV = $07 ; DEFAULT DRIVE (3 BYTES)
CPBUFP = $0A ; CMD BUFF NEXT CHAR POINTR (1 BYTE)
CPEXFL = $0B ; EXECUTE FLAG
CPEXFN = $0C ; EXECUTE FILE NAME (16 BYTES)
CPEXNP = $1C ; EXECUTE NOTE/POINT VALUES
CPFNAM = $21 ; FILENAME BUFFER
RUNLOC = $3D ; CP/A LOAD/RUN ADR
CPCMDB = $3F ; COMMAND BUFFER (60 BYTES)
CPCMDGO = $F3
;
*= SAVEPC ; RESTORE PC
;