pcs/schemed.ref

92 lines
3.5 KiB
Plaintext
Raw Permalink Normal View History

2023-05-20 05:57:06 -04:00
; =====> SCHEMED.REF
; Copyright 1984,1985 by Texas Instruments Incorporated.
; All Rights Reserved.
; Last Modification: 06 January 1986
extrn pagetabl:word ; Page Table
extrn attrib:word ; Page Attribute Table
extrn nextcell:word ; Next available location table
extrn pagelink:word ; Page link table
extrn ptype:word ; Page type table
extrn psize:word ; Page size table
extrn PAGESIZE:word ; Page size
; Table of pages for allocation by type
extrn pagelist:word ; Page table
extrn listpage:word ; [0] Page number for list cell allocation
extrn fixpage:word ; [1] Page number for fixnum allocation
extrn flopage:word ; [2] Page number for flonum allocation
extrn bigpage:word ; [3] Page number for bignum allocation
extrn sympage:word ; [4] Page number for symbol allocation
extrn strpage:word ; [5] Page number for string allocation
extrn vectpage:word ; [6] Page number for vector allocation
extrn contpage:word ; [7] Page number for continuation allocation
extrn clospage:word ; [8] Page number for closure allocation
extrn freepage:word ; [9] Page number for free pages list
extrn codepage:word ; [10] Page number for code page allocation
extrn refpage:word ; [11] Page number for ref cell allocation
extrn portpage:word ; [12] Page number for port cell allocation
; Table of page attributes by data object type
extrn pageattr:word
; System tables
extrn hash_pag:byte, hash_dis:word ; oblist's hash table
extrn prop_pag:byte, prop_dis:word ; property list hash table
extrn obj_ht:byte ; object hash table
; Table of bits to "or" in
extrn bitable:word
extrn nextpage:word ; Next unused page number
extrn lastpage:word ; Last unused page number
extrn nextpara:word ; Next available paragraph number
; The interpreter's registers
extrn reg0_pag:word, reg0_dis:word, reg0:dword
extrn reg1_pag:word, reg1_dis:word, reg1:dword
extrn FNV_pag:word, FNV_dis:word, FNV_reg:dword
extrn GNV_pag:word, GNV_dis:word, GNV_reg:dword
extrn CB_pag:word, CB_dis:word, CB_reg:dword
extrn TRNS_pag:word, TRNS_dis:word, TRNS_reg:dword
extrn tmp_page:word, tmp_disp:word, tmp_reg:dword
extrn tm2_page:word, tm2_disp:word, tm2_reg:dword
extrn tmp_adr:word, tm2_adr:word
extrn PREV_pag:word, PREV_dis:word, PREV_reg:dword
extrn CON_PAGE:word, CON_DISP:word
extrn TOS:word, FP:word, BASE:word
extrn FNV_save:word, STL_save:word
extrn nil_reg:dword
; The Scheme runtime stack
extrn S_stack:byte
; Scheme-reset state variables
extrn FP_save:word, RST_ent:word
; Scheme debugger entry point offset
extrn ERR_ent:word
extrn VM_debug:word ; flag indicating VM debug mode
extrn s_break:word ; flag indicating shift-break key depressed
; Current port
extrn iooffs:word, ioseg:word
; Abort stack pointer
extrn abadr:word
; Machine Type (Manufacturer) Flag
extrn PC_MAKE:word
; Access to Lattice C's character attribute data structures
extrn _ctype:byte
_U equ 1 ; uppercase
_L equ 2 ; lowercase
_N equ 4 ; number
_S equ 8 ; space
_P equ 16 ; punctuation
_C equ 32 ; control character
_B equ 64 ; blank
_X equ 128 ; hexadecimal digit