mirror of
https://github.com/erkyrath/infocom-zcode-terps.git
synced 2026-01-11 23:43:24 +00:00
114 lines
3.5 KiB
Plaintext
114 lines
3.5 KiB
Plaintext
SUBTTL EQUATES - STACK AND DATA SEGMENTS INITIALIZATION
|
|
PAGE
|
|
|
|
IBM_ID EQU 6 ; (A15) INTERPRETER ID
|
|
ZMVERS EQU 4 ;Z-MACHINE VERSION NUMBER
|
|
LSTACK EQU 512 ;LENGTH OF USER STACK(MUST BE 1 PAGE FOR NOW)
|
|
DEBUG EQU 0
|
|
|
|
PVERS1 EQU 0 ;POSITION OF ZVERSION VERSION BYTE
|
|
PVERS2 EQU 1 ;ZVERSION MODE BYTE
|
|
PZRKID EQU 2 ;ZORKID
|
|
PENDLD EQU 4 ;ENDLOD
|
|
PSTART EQU 6 ;START
|
|
PVOCTB EQU 8 ;VOCAB
|
|
POBJTB EQU 10 ;OBJECT
|
|
PGLOTB EQU 12 ;GLOBALS
|
|
PPURBT EQU 14 ;PURBOT
|
|
PFLAGS EQU 16 ;USER FLAG WORD
|
|
PSERNM EQU 18 ;SERIAL NUMBER (6 BYTES)
|
|
PWRDTB EQU 24 ;WORDS
|
|
PLENTH EQU 26 ;GAME LENGTH
|
|
PCHKSM EQU 28 ;GAME CHECKSUM
|
|
PINTVR EQU 30 ; (A0) INTERPRETER NUMBER
|
|
PINTID EQU 31 ; (A0) INTERPRETER ID
|
|
PSCLIN EQU 32 ; (A0) SCREEN LINE LENGTH
|
|
PSCCOL EQU 33 ; (A0) SCREEN COLUMN LENGTH
|
|
|
|
OBJLEN EQU 14 ; (A0) LENGTH OF OBJECTS
|
|
PTABSIZ EQU 63 ; (A0) NUMBER OF PROPERTY ENTRIES IN TBL
|
|
PROPDEF EQU PTABSIZ*2-OBJLEN ; (A0) SIZE OF DEFAULT PROPERT TBL
|
|
|
|
PADCHR EQU 5 ;PADDING CHARACTER
|
|
|
|
SSVER EQU "A"-10 ; ADD THIS TO THE VERTICAL SETUP HEIGHT
|
|
SSHOR EQU -6 ; ADD THIS TO THE HORIZONTAL SETUP WIDTH
|
|
SSLNT EQU 3 ; LENGTH OF SETUP FILE
|
|
|
|
|
|
CRESET EQU 0H ;MS-DOS FUNCTION CALLS WITH INT 21H
|
|
CCONIN EQU 1H
|
|
CCONOUT EQU 2
|
|
CPROUT EQU 5H
|
|
CCONIO EQU 6H
|
|
CNOECHO EQU 7H ; (7) FIX MCHRI TO HAVE NO ECHO
|
|
CRDLIN EQU 0AH
|
|
CDRESET EQU 0DH ; (7o) DISK RESET
|
|
CSELDSK EQU 0EH ; (7n) SELECT DISK
|
|
CFOPEN EQU 0FH
|
|
CFCLOS EQU 10H
|
|
CFDELE EQU 13H
|
|
CFMAKE EQU 16H
|
|
CURDSK EQU 19H ; (7n) CURRENT DISK
|
|
CSDMAO EQU 1AH
|
|
CRDRND EQU 21H
|
|
CWRRND EQU 22H
|
|
CPRSNM EQU 29H
|
|
CTIME EQU 2CH ; (A0) GET TIME OF DAY
|
|
; FUNCTION CALLS ADDED FOR VERSION "H"
|
|
; UPGRADE TO DOS 2.0 AND ABOVE
|
|
CFCREAZ EQU 3CH
|
|
CFOPENZ EQU 3DH
|
|
CFCLOSZ EQU 3EH
|
|
CRDRNDZ EQU 3FH
|
|
CWRRNDZ EQU 40H
|
|
CFDELEZ EQU 41H
|
|
CFSEEK EQU 42H
|
|
CSETBLK EQU 4AH ; FOR DETERMINING MEM SIZE
|
|
SCROLLUP EQU 6 ; (7) FOR VIDEO BIOS CALL
|
|
DOSVER EQU 30H ; (7) REQUEST FOR DOS VERSION
|
|
BIOSEG EQU 0F800H ; (7) STRINGS ARE FOUND AT F000:E0++
|
|
BIOSOFF EQU 0000H ; (7)
|
|
COLCUR EQU 0607H ; (7) CURSOR SCAN LINES FOR COLOR
|
|
SETCUR EQU 1 ; (7) VIDEO FUNCTION TO SET CURSOR SIZE
|
|
COLATR EQU 17H ; (7) COLOR ATTRIBUTE IS WHITE ON BLUE
|
|
SCRBIT EQU 100000B ; (7) 5 BIT TURNS ON SCREEN SPLITTING
|
|
STDPRT EQU 4 ; (7) STANDARD PRINTER DEVICE
|
|
PRTMSK EQU 0A1H ; (7) PRINTER INI STATUS MASK
|
|
SCRMSK EQU 0FEFFH ; (7) WORD TO MASK SCRIPT BIT IN MODE WORD
|
|
RDYBIT EQU 1 ; (7) WAS THE PRINTER READY
|
|
MINMEM EQU (25*1024)/16 ; (7) MINIMUM MEMORY IN PARAGRAPHS
|
|
MAXLIN EQU 78 ; (7r) MAXIMUM INPUT LINE LENGTH
|
|
BUFLEN EQU MAXLIN+1 ; (A15) LENGTH OF OUTPUT BUFFER
|
|
TABWID EQU 8 ; (A0) PAGE TABLE WIDTH IS NOW 8 BYTES
|
|
TBLSHF EQU 3 ; (A0) TABLE WIDTH IS 2**TBLSHF
|
|
SCRPTBT EQU 0100H ; (A17) BIT 0 IN FLAGS WORD
|
|
REFRESH EQU 0400H ; (A17) BIT 2 IN FLAGS WORD
|
|
|
|
|
|
; SOUND EQUATES
|
|
NSNDS EQU 2 ; (A0) NUMBER OF SOUNDS AVAILABLE
|
|
SPKRON EQU 3 ; (A0) CONTROL WORD TO TURN TIMER 2 AND THE
|
|
; SPEAKER ON
|
|
SPKROFF EQU 0FCH ; (A0) CONTROL WORD TO TURN TIMER 2 AND THE
|
|
; SPEAKER OFF
|
|
TMRCWD EQU 0B6H ; (A0) USE TIMER 2 FOR A SQUARE WAVE GEN
|
|
TMRDPT EQU 42H ; (A0) TIMER 2 DATA PORT I/O ADDRESS
|
|
TMRCPT EQU 43H ; (A0) TIMER 2 CONTROL PORT I/O ADDRESS
|
|
PTBCPT EQU 61H ; (A0) SYSTEM PORT B CONTROL PORT
|
|
|
|
CINSTAT EQU 0BH ;(A0) CHECK STANDARD INPUT STATUS
|
|
|
|
; KEY PROCESSING
|
|
EOL EQU 0DH ;(A0) CARRIAGE RETURN
|
|
DEL EQU 7FH ;(A0) DELETE (RUB OUT)
|
|
SPACE EQU 20H ;(A0) ASCII SPACE
|
|
BACKSP EQU 08H ;(A0) LEFT ARROW (BS)
|
|
NAK EQU 15H ;(A0)
|
|
|
|
; HIGHLIGHTING
|
|
MAXHI EQU 4 ; (A0) THERE ARE CURRENTLY THREE FEATURES
|
|
|
|
; SCREEN
|
|
STSBIT EQU 4 ; (A9) STATUS LINE REFRESH REQUEST BIT
|