// LispBcpl.decl. Declarations file for InterLisp-D Bcpl code
// new atom hash January 30, 1985 11:52 AM
// bumped Bcpl&MinLisp again December 10, 1984 10:14 PM
// bumped Bcpl&MinLisp for booting change November 20, 1984
// purged Nova instrs (xferPage, GetBasePtr) May 21, 1984 4:08 PM by Bill van Melle
// Fugue change May 24, 1983 11:35 PM by Bill van Melle
// Fugue change April 5, 1983 4:52 PM by Bill van Melle
// Chorus change January 19, 1983 4:49 PM by Bill van Melle
// Wind change March 18, 1982 12:14 PM by Bill van Melle
// subr renumbering January 5, 1982 2:50 PM by van Melle, Masinter at kbd
// MDS table change December 30, 1981 11:38 PM by Bill van Melle
// ConBrio change December 24, 1981 5:18 PM by Bill van Melle
// Allegro change October 12, 1981 11:13 PM by Bill van Melle
// Allegro change August 4, 1981 4:21 PM by Beau Sheil
manifest WindFlg = true
get "LispBcpl.params" // Definitions from Lisp
manifest
[ BcplVersion = #24400 // 51,0
MinRamForBcpl = #12400 // 25,0
MinLispForBcpl = #113400 // 227,0
]
compileif (BcplVersion ls MinBcplVersion) % (LispVersion ls MinLispForBcpl)
then [ Error("Lisp/Bcpl compile version mismatch") ]
manifest [ // miscellaneous
StackEnd = #335 // checked by GetFrame
Dolphin = 4 // Dolphins are Alto IV's
Dorado = 5 // Dorados are Alto V's
PagesPerSegment = 256
WordsPerPage = 256
]
structure [ HiByte byte; LoByte byte ] // for extracting bytes from words
structure VA: // 24-bit virtual address in 2 words
[ vahi word = [ blank byte; segment byte ]
valo word = [ pageN byte; wordN byte ]
]
structure VP: // virtual page
[ segment byte; page byte ]
manifest InterfacePageVP = INTERFACEspace lshift 8 + INTERFACEbase rshift 8