(FILECREATED "10-Aug-85 18:33:44" {ERIS}<LISPCORE>SOURCES>LLPARAMS.;25 121626Q

      changes to:  (VARS INITCONSTANTS \MPERRORS)

      previous date: " 9-Aug-85 17:42:51" {ERIS}<LISPCORE>SOURCES>LLPARAMS.;24)


(* Copyright (c) 1981, 1982, 1983, 1984, 1985 by Xerox Corporation. All rights reserved.)

(PRETTYCOMPRINT LLPARAMSCOMS)

(RPAQQ LLPARAMSCOMS [(E (RESETSAVE (RADIX 8)))
		     (FNS WRITEBCPLPARAMS WRITEMCPARAMS MAKERECORD STRIP\)
		     (FNS WRITECALLSUBRS)
		     (DECLARE: DONTCOPY [EXPORT (CONSTANTS (WINDFLG T))
						(VARS INITCONSTANTS \INITSUBRS MISCSTATSLAYOUT 
						      IFPAGELAYOUT IOPAGELAYOUT)
						(PROP ARGNAMES * \INITSUBRS)
						[CONSTANTS * (for X in INITCONSTANTS when
								  (FIXP (CADR X))
								  collect
								  (LIST (CAR X)
									(CADR X]
						(CONSTANTS * \MPERRORS)
						(GLOBALVARS *
							    (for X in INITCONSTANTS when
								 [AND (NEQ (CAR X)
									   (QUOTE *))
								      (NOT (FIXP (CADR X]
								 collect
								 (CAR X)))
						(P * (LIST (MAKERECORD (QUOTE MISCSTATS)
								       MISCSTATSLAYOUT)
							   (MAKERECORD (QUOTE IFPAGE)
								       IFPAGELAYOUT)
							   (MAKERECORD (QUOTE IOPAGE)
								       IOPAGELAYOUT]
			       EVAL@COMPILE
			       (ADDVARS (DONTCOMPILEFNS WRITEBCPLPARAMS PRINTIPATOMS WRITEMCPARAMS 
							MAKERECORD STRIP\ WRITECALLSUBRS)))
		     (DECLARE: DONTCOPY (* Access to the emulator space)
			       (EXPORT (MACROS EMADDRESS EMGETBASE EMPUTBASE EMULATORSEGMENT 
					       EMPOINTER EMADDRESSP])
(DEFINEQ

(WRITEBCPLPARAMS
  [LAMBDA NIL                                                (* bvm: "24-May-84 10:17")
                                                             (* This function writes out the parameter files used by
							     BCPL)
    (RESETLST [OUTPUT (OPENFILE (QUOTE LISPBCPL.PARAMS)
				(QUOTE OUTPUT)
				(QUOTE NEW)
				NIL
				(QUOTE ((SEQUENTIAL T]
	      (RESETSAVE NIL (LIST [FUNCTION (LAMBDA (X)
				       (CLOSEF? X)
				       (COND
					 (RESETSTATE (DELFILE X]
				   (OUTPUT)))
	      (RESETSAVE (RADIX 10Q))
	      (printout NIL "// This file written from LLPARAMS on " (DATE)
			T T)
	      (printout NIL "manifest [" T)                  (* INITCONSTANTS is of the form 
							     (Lispname value bcplname MCNAME). If BCPLNAME = 
							     LispName except for first char, BCPLNAME=T)
	      [for X in INITCONSTANTS unless (EQ (CAR X)
						 (QUOTE *))
		 do (COND
		      ((LISTP (CADR X))
			(for Z in (CADR X) as Y in (CADDR X) when Y
			   do (printout NIL Y " = #" Z T)))
		      (T (for Y inside (CADDR X) do (printout NIL (STRIP\ (COND
									    ((EQ Y T)
									      (CAR X))
									    (T Y)))
							      " = #"
							      (CADR X)
							      T]
	      (for X in MISCSTATSLAYOUT bind (I ← 0) unless (EQ (CAR X)
								(QUOTE *))
		 do (AND (CADDR X)
			 (NEQ (CADDR X)
			      T)
			 (printout NIL (CADDR X)
				   " = #" I T))
		    (add I (SELECTQ (CADR X)
				    ((FIXP FULLXPOINTER)
				      2)
				    (WORD 1)
				    (SHOULDNT)))
		 finally (printout NIL "lenMiscStats = #" I T))
	      [for X in IFPAGELAYOUT bind (I ← 0) unless (EQ (CAR X)
							     (QUOTE *))
		 do (AND (CAR X)
			 (printout NIL (QUOTE IFP)
				   (CAR X)
				   " = #" I T))
		    (add I (SELECTQ (CADR X)
				    ((FIXP FULLXPOINTER)
				      2)
				    (WORD 1)
				    (SHOULDNT]
	      (printout NIL "]" T)
	      (OUTPUT])

(WRITEMCPARAMS
  [LAMBDA NIL                                                (* edited: " 5-Jan-85 21:52")
                                                             (* This function writes out the parameter files used by
							     MICROCODE)
    (RESETLST (OUTFILE (QUOTE LPARAMS.DMC))
	      (RESETSAVE NIL (LIST [FUNCTION (LAMBDA (X)
				       (CLOSEF? X)
				       (COND
					 (RESETSTATE (DELFILE X]
				   (OUTPUT)))
	      (RESETSAVE (RADIX 10Q))
	      (printout NIL "Title[LParams.dmc, " (DATE)
			", written from Lisp];" T T)
	      [for X in INITCONSTANTS do (COND
					   ((EQ (CAR X)
						(QUOTE *)))
					   [(LISTP (CADR X))
					     (for Z in (CADR X) as Y in (CADDDR X) when Y
						do (printout NIL "mc[" Y "," Z "];" T))
					     (COND
					       ((CAR (CADDDR X))
						 (printout NIL "MC[" (CAR (CADDDR X))
							   "L, "
							   (LLSH (CAADR X)
								 10Q)
							   "];" T]
					   (T (for Y inside (CADDDR X)
						 do (printout NIL "mc[" (COND
								((EQ Y T)
								  (STRIP\ (CAR X)))
								(T Y))
							      ","
							      (CADR X)
							      "];" T]
	      (OUTPUT])

(MAKERECORD
  [LAMBDA (NAME LAYOUT)                                      (* bvm: "29-NOV-82 17:40")
    (PROG ((I 0)
	   PTRS M NAM)
          (RETURN
	    (BQUOTE
	      (BLOCKRECORD
		, NAME ,
		[for X in LAYOUT
		   collect (CONS (SETQ NAM (CAR X))
				 (COND
				   ((EQ NAM (QUOTE *))
				     (CDR X))
				   (T (PROG1 [COND
					       [[FIXP (SETQ M (CAR (SETQ X (CDR X]
						 (LIST M (CAR (SETQ X (CDR X]
					       (T (SETQ M (SELECTQ (CAR X)
								   ((FIXP FULLXPOINTER)
								     (OR (EVENP I WORDSPERCELL)
									 (ERROR 
								       "Record field not aligned"
										(CONS NAM X)))
								     2)
								   (WORD 1)
								   (SHOULDNT)))
						  (LIST (CAR X]
					     [COND
					       ((CADDR X)
						 (SETQ PTRS
						   (CONS (LIST (PACK* NAM (QUOTE PTR))
							       (BQUOTE (\ADDBASE DATUM , I)))
							 PTRS]
					     (add I M]
		,.
		[AND PTRS (BQUOTE ((ACCESSFNS , NAME , PTRS]
		(CREATE (\ALLOCBLOCK , (FOLDHI I WORDSPERCELL])

(STRIP\
  [LAMBDA (X)                                                (* lmm "16-MAR-81 23:14")
    (COND
      ((EQ (NTHCHAR X 1)
	   (QUOTE \))
	(SUBATOM X 2))
      (T X])
)
(DEFINEQ

(WRITECALLSUBRS
  [LAMBDA NIL                                                (* bvm: "13-APR-82 14:01")
    [RESETVARS ((DFNFLG (QUOTE PROP)))
	       (for X in \INITSUBRS as I from 0 bind ARGS
		  do (DEFINE (LIST (LIST X (LIST (QUOTE LAMBDA)
						 (SETQ ARGS (GETPROP X (QUOTE ARGNAMES)))
						 (CONS (LIST (QUOTE OPCODES)
							     (QUOTE SUBRCALL)
							     I
							     (LENGTH ARGS))
						       ARGS]
    [SETQQ LLSUBRSCOMS ((FNS *(PROGN \INITSUBRS))
	    (VARS \INITSUBRS)
	    (PROP ARGNAMES *(PROGN \INITSUBRS]
    (CONS (RESETLST (OUTFILE (QUOTE CALLSUBRS.BCPL))
		    (RESETSAVE NIL (LIST [FUNCTION (LAMBDA (X)
					     (CLOSEF? X)
					     (COND
					       (RESETSTATE (DELFILE X]
					 (OUTPUT)))
		    (RESETSAVE (RADIX 10Q))
		    (printout NIL "// This file written from LLPARAMS on " (DATE)
			      T T)
		    (printout NIL "external [" T)
		    (for X in \INITSUBRS do (PRINT (STRIP\ X)))
		    (printout NIL "]" T)
		    (printout NIL "let CALLSUBRS() be [" T)
		    (for X in \INITSUBRS as I from 0 do (printout NIL (STRIP\ X)
								  "()" 62Q "//" I T))
		    (printout NIL "]" T)
		    (OUTPUT))
	  (MAKEFILE (QUOTE LLSUBRS)
		    (QUOTE (C F])
)
(DECLARE: DONTCOPY 
(* FOLLOWING DEFINITIONS EXPORTED)


(DECLARE: EVAL@COMPILE 

(RPAQQ WINDFLG T)

(CONSTANTS (WINDFLG T))
)

(RPAQQ INITCONSTANTS ((* * (LISPNAME VALUE BCPLNAME UCODENAME))
		      (CDRCODING 1 T T)
		      (* IF CDRCODING=0, CDR CODING IS OFF, OTHERWISE ON)
		      (* * type numbers - repeated on LLBASIC too)
		      (\SMALLP 1 SMALLTYPE SmallType)
		      (\FIXP 2 INTEGERTYPE FixpType)
		      (\FLOATP 3 FLTPTTYPE FloatpType)
		      (\LITATOM 4 ATOMTYPE AtomType)
		      (\LISTP 5 LISTTYPE ListType)
		      (\ARRAYP 6 ARRAYPTRTYPE ArrayType)
		      (\STRINGP 7 STRINGPTRTYPE)
		      (\STACKP 10Q)
		      (\CHARACTERP 11Q)
		      (\VMEMPAGEP 12Q NIL VMemPagePType)
		      (\STREAM 13Q NIL STREAMTYPE)
		      (* * TYPE TABLE CONSTANTS)
		      (\TT.TYPEMASK 377Q TTTypeMask T)
		      (\TT.NOREF 100000Q NIL T)
		      (\TT.LISPREF 40000Q NIL T)
		      (\TT.FIXP 20000Q)
		      (\TT.NUMBERP 10000Q)
		      (\TT.ATOM 4000Q)
		      (* * page map)
		      (\PMblockSize 40Q PMBLOCKSIZE)
		      (\STATSsize 10Q T)
		      (\NumPMTpages 10Q)
		      (\EmptyPMTEntry 177777Q T)
		      (\FirstVmemBlock 2 T)
		      (\MAXVMPAGE 177775Q)
		      (\MAXVMSEGMENT 377Q)
		      (* * interface page)
		      (\IFPValidKey 12743Q T)
		      (* * MDS)
		      (\FirstMDSPage 34776Q)
		      (\MaxMDSPage 177775Q)
		      (\DefaultSecondMDSPage 177774Q)
		      (\MDSIncrement 1000Q)
		      (\PagesPerMDSUnit 2)
		      (* (FOLDLO \MDSIncrement WORDSPERPAGE))
		      (* * arrays)
		      (\ARRAYSPACE (23Q 0))
		      (\FirstArraySegment 23Q)
		      (\FirstArrayPage 11400Q)
		      (\ARRAYSPACE2 (100Q 0))
		      (\DefaultSecondArrayPage 40000Q)
		      (* * pname chars)
		      (\PNCHARSSPACE (72Q 0))
		      (\PnCharsFirstSegment 72Q)
		      (\PNAMESPACEEND (77Q 1777777Q))
		      (\LastPnPage 2777Q)
		      (* * stack block constants)
		      (\StackMask 160000Q T T)
		      (\FxtnBlock 140000Q T T)
		      (\GuardBlock 160000Q T T)
		      (\BFBlock 100000Q T T)
		      (\FreeStackBlock 120000Q T T)
		      (\NotStackBlock 0)
		      (* none of the above)
		      (\MinExtraStackWords 40Q T T)
		      (* * backspace kludge)
		      (ERASECHARCODE 0 T)
		      (* * GC constants)
		      (\HT1CNT 2000Q NIL T)
		      (\HTSTKBIT 1000Q NIL T)
		      (\HTCNTMASK 176000Q NIL T)
		      (\HTMAINSIZE 100000Q NIL T)
		      (\HTCOLLSIZE 177770Q NIL T)
		      (\HTENDFREE 1 NIL T)
		      (\HTFREEPTR 0 NIL T)
		      (* * pointers and lengths of various data spaces)
		      (\ATOMSPACE (0 0)
				  (ATOMspace NIL)
				  (atomHiVal NIL))
		      (\AtomHI 0)
		      (\CHARHI 7)
		      (* overlap character space and the atom hash table space)
		      (\AtomHashTable (7 0)
				      (AHTspace AHTbase))
		      (\AtomHTpages 400Q AHTSIZE)
		      (\LastAtomPage 377Q)
		      (\MaxAtomFrLst 177777Q)
		      (\SMALLPOSPSPACE (16Q 0))
		      (\SmallPosHi 16Q SMALLPOSspace smallpl)
		      (\SMALLNEGSPACE (17Q 0))
		      (\SmallNegHi 17Q SMALLNEGspace smallneg)
		      (\NumSmallPages 1000Q)
		      (\PNPSPACE (10Q 0)
				 (PNPspace PNPbase))
		      (\PNAME.HI 10Q)
		      (\DEFSPACE (12Q 0)
				 (DEFspace DEFbase)
				 (DEFspace DEFbase))
		      (\DEF.HI 12Q)
		      (\VALSPACE (14Q 0)
				 (TOPVALspace TOPVALbase)
				 (VALspace VALbase))
		      (\VAL.HI 14Q)
		      (\PLISTSPACE (2 0)
				   (PLISTspace PLISTbase))
		      (\PLIST.HI 2)
		      (\PAGEMAP (5 0)
				(PAGEMAPspace PAGEMAPbase))
		      (\NumPageMapPages 400Q)
		      (\PageMapTBL (6 1000Q)
				   (PMTspace PMTbase))
		      (\InterfacePage (6 0)
				      (INTERFACEspace INTERFACEbase)
				      (INTERFACEspace INTERFACEbase))
		      (\IOPAGE (0 177400Q))
		      (\DoveIORegion (0 40000Q))
		      (\IOCBPAGE (0 400Q))
		      (\FPTOVP (4 0))
		      (\MDSTypeTable (6 100000Q)
				     (MDSTYPEspace MDSTYPEbase)
				     (MDSTYPEspace MDSTYPEbase))
		      (\MDSTTsize 200Q T)
		      (\MISCSTATS (6 5000Q)
				  (STATSspace MISCSTATSbase))
		      (\UFNTable (6 6000Q)
				 NIL
				 (STATSspace UFNTablebase))
		      (\UFNTableSize 2)
		      (\DTDSpaceBase (6 10000Q)
				     (DTDspace DTDbase)
				     (DTDspace DTDbase))
		      (\DTDSize 20Q T)
		      (\LISTPDTD (6 10120Q))
		      (\EndTypeNumber 377Q)
		      (\LOCKEDPAGETABLE (6 70000Q))
		      (\NumLPTPages 20Q)
		      (\STACKSPACE (1 0)
				   (STACKspace NIL)
				   (STACKspace NIL))
		      (\GuardStackAddr 170000Q)
		      (\LastStackAddr 177776Q)
		      (\STACKHI 1 T T)
		      (\HTMAIN (20Q 0)
			       (HTMAINspace HTMAINbase)
			       (HTMAINspace HTMAINbase))
		      (\HTMAINnpages 201Q T)
		      (\HTOVERFLOW (20Q 100000Q)
				   NIL
				   (NIL HTOVERFLOWbase))
		      (\HTBIGCOUNT (20Q 100400Q))
		      (\HTCOLL (21Q 0)
			       NIL
			       (HTCOLLspace HTCOLLbase))
		      (\DISPLAYREGION (22Q 0))
		      (\D1BCPLspace 0 T LEmubrHiVal)
		      (\D0BCPLspace 0 T)
		      (* * Interface Page locations)
		      (\CurrentFXP 0 T T)
		      (\ResetFXP 1 T T)
		      (\SubovFXP 2 T T)
		      (\KbdFXP 3 T T)
		      (\HardReturnFXP 4 T T)
		      (\GCFXP 5)
		      (\FAULTFXP 6 T T)
		      (\MiscFXP 16Q T T)
		      (\TeleRaidFXP 30Q T T)
		      (* * emulator segment locations)
		      (DCB.EM 420Q)
		      (DISPINTERRUPT.EM 421Q)
		      (CURSORBITMAP.EM 431Q)
		      (KBDAD0.EM 177034Q)
		      (KBDAD1.EM 177035Q)
		      (KBDAD2.EM 177036Q)
		      (KBDAD3.EM 177037Q)
		      (UTILIN.EM 177030Q)
		      (CURSORX.EM 426Q)
		      (CURSORY.EM 427Q)
		      (MOUSEX.EM 424Q)
		      (MOUSEY.EM 425Q)
		      (\LispKeyMask 20000Q T T)
		      (\BcplKeyMask 10400Q T T)
		      (* Machine types)
		      (\DOLPHIN 4)
		      (\DORADO 5)
		      (\DANDELION 6)
		      (\DAYBREAK 10Q)
		      (* * FOR DLION (AND DAYBREAK))
		      (\VP.DISPLAY 11000Q)
		      (\NP.DISPLAY 312Q)
		      (* for Dorado display 1024x808 pixels / (20Q pixels/word x 400Q words/page))
		      (\NP.WIDEDOVEDISPLAY 363Q)
		      (* Wide Dove display 1152x864 pixels)
		      (\WIDEDOVEDISPLAYWIDTH 2200Q)
		      (\RP.AFTERDISPLAY 316Q)
		      (* Includes 4 pages for cursor)
		      (\RP.AFTERDOVEDISPLAY 363Q)
		      (* if big screen)
		      (\RP.DISPLAY 0)
		      (\RP.TEMPDISPLAY 3001Q)
		      (\RP.MISCLOCKED 3364Q)
		      (* (IPLUS \RP.TEMPDISPLAY \NP.WIDEDOVEDISPLAY))
		      (\RP.STACK 1400Q)
		      (\VP.STACK 400Q)
		      (\RP.MAP 400Q)
		      (\NP.MAP 400Q)
		      (\RP.IOPAGE 1000Q)
		      (* The DOVE IOCBPAGE can go anywhere, but should be under the 1mbyte range)
		      (\RP.DOVEIOCBPAGE 1037Q)
		      (\RP.DOVEIORGN 1040Q)
		      (\VP.DOVEIORGN 100Q)
		      (\DOVEIORGNSIZE 100Q)
		      (\VP.IOPAGE 377Q)
		      (\VP.IFPAGE 3000Q)
		      (\VP.FPTOVP 2000Q)
		      (\NP.FPTOVP 400Q)
		      (\RP.FPTOVP 2000Q)
		      (\RP.STARTBUFFERS 1200Q)
		      (\VP.TYPETABLE 3200Q)
		      (\NP.TYPETABLE 200Q)
		      (\RP.TYPETABLE 2400Q)
		      (\VP.GCTABLE 10000Q)
		      (\NP.GCTABLE 200Q)
		      (\RP.GCTABLE 2600Q)
		      (\VP.GCOVERFLOW 10200Q)
		      (\NP.GCOVERFLOW 1)
		      (\RP.GCOVERFLOW 3000Q)
		      (\FP.IFPAGE 2)
		      (\VP.IOCBS 1)
		      (\VP.PRIMARYMAP 3002Q)
		      (\VP.SECONDARYMAP 2400Q)
		      (\VP.LPT 3160Q)
		      (\VP.INITSCRATCH 10Q)
		      (\VP.RPT 200Q)
		      (\VP.BUFFERS 332Q)
		      (* DLion processor commands)
		      (\DL.PROCESSORBUSY 100000Q)
		      (\DL.SETTOD 100001Q)
		      (\DL.READTOD 100002Q)
		      (\DL.READPID 100003Q)
		      (\DL.BOOTBUTTON 100004Q)))

(RPAQQ \INITSUBRS (\uCodeCheck was\StackOverflow \NWWInterrupt was\PageFault \StatsOverflow NOOPSUBR 
			       \BACKGROUNDSUBR \CHECKBCPLPASSWORD DISKPARTITION DSPBOUT \DSPRATE 
			       \GATHERSTATS \GETPACKETBUFFER \LISPFINISH \MOREVMEMFILE RAID 
			       \READRAWPBI \WRITERAWPBI SETSCREENCOLOR SHOWDISPLAY \PUPLEVEL1STATE 
			       \WRITESTATS \CONTEXTSWITCH \COPYSYS0SUBR \WRITEMAP))

(RPAQQ MISCSTATSLAYOUT ((STARTTIME FIXP MSstrtTime)
			(TOTALTIME FIXP)
			(SWAPWAITTIME FIXP T)
			(PAGEFAULTS FIXP T)
			(SWAPWRITES FIXP T)
			(DISKIOTIME FIXP T)
			(DISKOPS FIXP T)
			(KEYBOARDWAITTIME FIXP T)
			(GCTIME FIXP T)
			(NETIOTIME FIXP T)
			(NETIOOPS FIXP T)
			(SWAPTEMP0 FIXP)
			(SWAPTEMP1 FIXP)
			(RCLKSECOND FIXP)
			(SECONDSCLOCK FIXP)
			(MILLISECONDSCLOCK FIXP)
			(BASECLOCK FIXP)
			(RCLKTEMP0 FIXP)
			(SECONDSTMP FIXP)
			(MILLISECONDSTMP FIXP)
			(BASETMP FIXP)
			(EXCESSTIMETMP FIXP)
			(CLOCKTEMP0 FIXP)
			(DISKTEMP0 FIXP)
			(DISKTEMP1 FIXP)
			(TELERAIDTEMP1 FIXP)
			(TELERAIDTEMP2 FIXP)
			(TELERAIDTEMP3 FIXP)
			(LASTUSERACTION FIXP)
			(DLMOUSETIMER FIXP)
			(DLMOUSETEMP FIXP)))

(RPAQQ IFPAGELAYOUT ((CurrentFXP WORD)
		     (ResetFXP WORD)
		     (SubovFXP WORD)
		     (KbdFXP WORD)
		     (HardReturnFXP WORD)
		     (GCFXP WORD)
		     (FAULTFXP WORD)
		     (EndOfStack WORD)
		     (LVersion WORD)
		     (MinRVersion WORD)
		     (MinBVersion WORD)
		     (RVersion WORD)
		     (BVersion WORD)
		     (MachineType WORD)
		     (MiscFXP WORD)
		     (Key WORD)
		     (SerialNumber WORD)
		     (EmulatorSpace WORD)
		     (ScreenWidth WORD)
		     (NxtPMAddr WORD)
		     (NActivePages WORD)
		     (NDirtyPages WORD)
		     (filePnPMP0 WORD)
		     (filePnPMT0 WORD)
		     (TELERAIDFXP WORD)
		     (NIL WORD)
		     (NIL WORD)
		     (NIL WORD)
		     (UserNameAddr WORD)
		     (UserPswdAddr WORD)
		     (StackBase WORD)
		     (FAULTHI WORD)
		     (FAULTLO WORD)
		     (wasREALPAGETABLE WORD)
		     (RPTSIZE WORD)
		     (RPOFFSET WORD)
		     (wasRPTLAST WORD)
		     (EMBUFVP WORD)
		     (NSHost0 WORD)
		     (NSHost1 WORD)
		     (NSHost2 WORD)
		     (MDSZone WORD)
		     (MDSZoneLength WORD)
		     (EMUBUFFERS WORD)
		     (EMUBUFLENGTH WORD)
		     (LASTNUMCHARS WORD)
		     (SYSDISK WORD)
		     (ISFMAP WORD)
		     (* These are for \MISCAPPLY* -- note that they are not ref counted, so don't 
			pass the only pointer to something this way!)
		     (MISCSTACKFN FULLXPOINTER)
		     (MISCSTACKARG1 FULLXPOINTER)
		     (MISCSTACKARG2 FULLXPOINTER)
		     (MISCSTACKRESULT FULLXPOINTER)
		     (NRealPages WORD)
		     (LastLockedFilePage WORD)
		     (LastDominoFilePage WORD)
		     (FPTOVPStart WORD)
		     (FAKEMOUSEBITS WORD)
		     (DL24BitAddressable WORD)
		     (REALPAGETABLEPTR FULLXPOINTER)
		     (DLLastVmemPage WORD)
		     (FullSpaceUsed WORD)
		     (FAKEKBDAD4 WORD)
		     (FAKEKBDAD5 WORD)))

(RPAQQ IOPAGELAYOUT ((NIL 22Q WORD)
		     (DLMAINTPANEL WORD NIL T)
		     (DLFLOPPYCMD WORD)
		     (DLTTYPORTCMD WORD)
		     (DLPROCESSORCMD WORD)
		     (NEWMOUSESTATE WORD)
		     (DLBEEPCMD WORD)
		     (DLRS232CMISCCOMMAND WORD)
		     (DLRS232CPUTFLAG WORD)
		     (DLRS232CGETFLAG WORD)
		     (NIL 6 WORD)
		     (DLFLOPPY WORD)
		     (DLTTYOUT WORD)
		     (NIL 1 WORD)
		     (DLTTYIN WORD)
		     (NIL 1 WORD)
		     (DLPROCESSOR2 WORD)
		     (DLPROCESSOR1 WORD)
		     (DLPROCESSOR0 WORD)
		     (NEWMOUSEX WORD)
		     (NEWMOUSEY WORD)
		     (DLBEEPFREQ WORD)
		     (DLRS232CPARAMETERCSBLO WORD)
		     (DLRS232CPARAMETERCSBHI WORD)
		     (DLRS232CSETRS366STATUS 3 WORD)
		     (DLRS232CPUTCSBLO WORD)
		     (DLRS232CPUTCSBHI WORD)
		     (DLRS232CGETCSBLO WORD)
		     (DLRS232CGETCSBHI WORD)
		     (DLRS232CDEVICESTATUS WORD)
		     (DLRS232CPARAMETEROUTCOME WORD)
		     (DLTODVALID WORD)
		     (DLTODLO WORD NIL T)
		     (DLTODHI WORD)
		     (DLTODLO2 WORD)
		     (DLMOUSEX WORD NIL T)
		     (DLMOUSEY WORD NIL T)
		     (DLUTILIN WORD NIL T)
		     (DLKBDAD0 WORD NIL T)
		     (DLKBDAD1 WORD NIL T)
		     (DLKBDAD2 WORD NIL T)
		     (DLKBDAD3 WORD NIL T)
		     (DLKBDAD4 WORD NIL T)
		     (DLKBDAD5 WORD NIL T)
		     (DLLSEPIMAGECSB 40Q WORD)
		     (DLIOPHARDWARECONFIG WORD)
		     (NIL 13Q WORD)
		     (DLRS232CPARAMETERCSBLO.11 WORD)
		     (DLRS232CPARAMETERCSBHI.11 WORD)
		     (DLRS232CSETRS366STATUS.11 16Q WORD)
		     (NIL 74Q WORD)
		     (DLMAGTAPE 4 WORD)
		     (DLETHERNET 14Q WORD NIL T)
		     (NIL 37Q WORD)
		     (DLDISPINTERRUPT WORD NIL T)
		     (DLDISPCONTROL WORD)
		     (DLDISPBORDER WORD)
		     (DLCURSORX WORD NIL T)
		     (DLCURSORY WORD NIL T)
		     (DLCURSORBITMAP 20Q WORD NIL T)))

(RPAQQ \INITSUBRS (\uCodeCheck was\StackOverflow \NWWInterrupt was\PageFault \StatsOverflow NOOPSUBR 
			       \BACKGROUNDSUBR \CHECKBCPLPASSWORD DISKPARTITION DSPBOUT \DSPRATE 
			       \GATHERSTATS \GETPACKETBUFFER \LISPFINISH \MOREVMEMFILE RAID 
			       \READRAWPBI \WRITERAWPBI SETSCREENCOLOR SHOWDISPLAY \PUPLEVEL1STATE 
			       \WRITESTATS \CONTEXTSWITCH \COPYSYS0SUBR \WRITEMAP))

(PUTPROPS \uCodeCheck ARGNAMES (DUMMY))

(PUTPROPS was\StackOverflow ARGNAMES (DUMMY))

(PUTPROPS \NWWInterrupt ARGNAMES (DUMMY))

(PUTPROPS \StatsOverflow ARGNAMES (DUMMY))

(PUTPROPS NOOPSUBR ARGNAMES (DUMMY))

(PUTPROPS \BACKGROUNDSUBR ARGNAMES (DUMMY))

(PUTPROPS \CHECKBCPLPASSWORD ARGNAMES (PASS VECTOR))

(PUTPROPS DISKPARTITION ARGNAMES NIL)

(PUTPROPS DSPBOUT ARGNAMES (CHARCODE))

(PUTPROPS \DSPRATE ARGNAMES (AC0 AC1 AC2))

(PUTPROPS \GATHERSTATS ARGNAMES (FID))

(PUTPROPS \GETPACKETBUFFER ARGNAMES NIL)

(PUTPROPS \LISPFINISH ARGNAMES (DUMMY))

(PUTPROPS \MOREVMEMFILE ARGNAMES (FILEPAGE))

(PUTPROPS RAID ARGNAMES (MESS1 MESS2 FLG))

(PUTPROPS \READRAWPBI ARGNAMES NIL)

(PUTPROPS \WRITERAWPBI ARGNAMES (PBI))

(PUTPROPS SETSCREENCOLOR ARGNAMES (FLG))

(PUTPROPS SHOWDISPLAY ARGNAMES (BASE RASTERWIDTH))

(PUTPROPS \PUPLEVEL1STATE ARGNAMES (FLG))

(PUTPROPS \WRITESTATS ARGNAMES (TYPE X1 X2 X3 X4 X5 X6 X7 X8 X9 X10))

(PUTPROPS \CONTEXTSWITCH ARGNAMES (DUMMY))

(PUTPROPS \COPYSYS0SUBR ARGNAMES (FID))

(PUTPROPS \WRITEMAP ARGNAMES (VP RP FLAGS))
(DECLARE: EVAL@COMPILE 

(RPAQQ CDRCODING 1)

(RPAQQ \SMALLP 1)

(RPAQQ \FIXP 2)

(RPAQQ \FLOATP 3)

(RPAQQ \LITATOM 4)

(RPAQQ \LISTP 5)

(RPAQQ \ARRAYP 6)

(RPAQQ \STRINGP 7)

(RPAQQ \STACKP 10Q)

(RPAQQ \CHARACTERP 11Q)

(RPAQQ \VMEMPAGEP 12Q)

(RPAQQ \STREAM 13Q)

(RPAQQ \TT.TYPEMASK 377Q)

(RPAQQ \TT.NOREF 100000Q)

(RPAQQ \TT.LISPREF 40000Q)

(RPAQQ \TT.FIXP 20000Q)

(RPAQQ \TT.NUMBERP 10000Q)

(RPAQQ \TT.ATOM 4000Q)

(RPAQQ \PMblockSize 40Q)

(RPAQQ \STATSsize 10Q)

(RPAQQ \NumPMTpages 10Q)

(RPAQQ \EmptyPMTEntry 177777Q)

(RPAQQ \FirstVmemBlock 2)

(RPAQQ \MAXVMPAGE 177775Q)

(RPAQQ \MAXVMSEGMENT 377Q)

(RPAQQ \IFPValidKey 12743Q)

(RPAQQ \FirstMDSPage 34776Q)

(RPAQQ \MaxMDSPage 177775Q)

(RPAQQ \DefaultSecondMDSPage 177774Q)

(RPAQQ \MDSIncrement 1000Q)

(RPAQQ \PagesPerMDSUnit 2)

(RPAQQ \FirstArraySegment 23Q)

(RPAQQ \FirstArrayPage 11400Q)

(RPAQQ \DefaultSecondArrayPage 40000Q)

(RPAQQ \PnCharsFirstSegment 72Q)

(RPAQQ \LastPnPage 2777Q)

(RPAQQ \StackMask 160000Q)

(RPAQQ \FxtnBlock 140000Q)

(RPAQQ \GuardBlock 160000Q)

(RPAQQ \BFBlock 100000Q)

(RPAQQ \FreeStackBlock 120000Q)

(RPAQQ \NotStackBlock 0)

(RPAQQ \MinExtraStackWords 40Q)

(RPAQQ ERASECHARCODE 0)

(RPAQQ \HT1CNT 2000Q)

(RPAQQ \HTSTKBIT 1000Q)

(RPAQQ \HTCNTMASK 176000Q)

(RPAQQ \HTMAINSIZE 100000Q)

(RPAQQ \HTCOLLSIZE 177770Q)

(RPAQQ \HTENDFREE 1)

(RPAQQ \HTFREEPTR 0)

(RPAQQ \AtomHI 0)

(RPAQQ \CHARHI 7)

(RPAQQ \AtomHTpages 400Q)

(RPAQQ \LastAtomPage 377Q)

(RPAQQ \MaxAtomFrLst 177777Q)

(RPAQQ \SmallPosHi 16Q)

(RPAQQ \SmallNegHi 17Q)

(RPAQQ \NumSmallPages 1000Q)

(RPAQQ \PNAME.HI 10Q)

(RPAQQ \DEF.HI 12Q)

(RPAQQ \VAL.HI 14Q)

(RPAQQ \PLIST.HI 2)

(RPAQQ \NumPageMapPages 400Q)

(RPAQQ \MDSTTsize 200Q)

(RPAQQ \UFNTableSize 2)

(RPAQQ \DTDSize 20Q)

(RPAQQ \EndTypeNumber 377Q)

(RPAQQ \NumLPTPages 20Q)

(RPAQQ \GuardStackAddr 170000Q)

(RPAQQ \LastStackAddr 177776Q)

(RPAQQ \STACKHI 1)

(RPAQQ \HTMAINnpages 201Q)

(RPAQQ \D1BCPLspace 0)

(RPAQQ \D0BCPLspace 0)

(RPAQQ \CurrentFXP 0)

(RPAQQ \ResetFXP 1)

(RPAQQ \SubovFXP 2)

(RPAQQ \KbdFXP 3)

(RPAQQ \HardReturnFXP 4)

(RPAQQ \GCFXP 5)

(RPAQQ \FAULTFXP 6)

(RPAQQ \MiscFXP 16Q)

(RPAQQ \TeleRaidFXP 30Q)

(RPAQQ DCB.EM 420Q)

(RPAQQ DISPINTERRUPT.EM 421Q)

(RPAQQ CURSORBITMAP.EM 431Q)

(RPAQQ KBDAD0.EM 177034Q)

(RPAQQ KBDAD1.EM 177035Q)

(RPAQQ KBDAD2.EM 177036Q)

(RPAQQ KBDAD3.EM 177037Q)

(RPAQQ UTILIN.EM 177030Q)

(RPAQQ CURSORX.EM 426Q)

(RPAQQ CURSORY.EM 427Q)

(RPAQQ MOUSEX.EM 424Q)

(RPAQQ MOUSEY.EM 425Q)

(RPAQQ \LispKeyMask 20000Q)

(RPAQQ \BcplKeyMask 10400Q)

(RPAQQ \DOLPHIN 4)

(RPAQQ \DORADO 5)

(RPAQQ \DANDELION 6)

(RPAQQ \DAYBREAK 10Q)

(RPAQQ \VP.DISPLAY 11000Q)

(RPAQQ \NP.DISPLAY 312Q)

(RPAQQ \NP.WIDEDOVEDISPLAY 363Q)

(RPAQQ \WIDEDOVEDISPLAYWIDTH 2200Q)

(RPAQQ \RP.AFTERDISPLAY 316Q)

(RPAQQ \RP.AFTERDOVEDISPLAY 363Q)

(RPAQQ \RP.DISPLAY 0)

(RPAQQ \RP.TEMPDISPLAY 3001Q)

(RPAQQ \RP.MISCLOCKED 3364Q)

(RPAQQ \RP.STACK 1400Q)

(RPAQQ \VP.STACK 400Q)

(RPAQQ \RP.MAP 400Q)

(RPAQQ \NP.MAP 400Q)

(RPAQQ \RP.IOPAGE 1000Q)

(RPAQQ \RP.DOVEIOCBPAGE 1037Q)

(RPAQQ \RP.DOVEIORGN 1040Q)

(RPAQQ \VP.DOVEIORGN 100Q)

(RPAQQ \DOVEIORGNSIZE 100Q)

(RPAQQ \VP.IOPAGE 377Q)

(RPAQQ \VP.IFPAGE 3000Q)

(RPAQQ \VP.FPTOVP 2000Q)

(RPAQQ \NP.FPTOVP 400Q)

(RPAQQ \RP.FPTOVP 2000Q)

(RPAQQ \RP.STARTBUFFERS 1200Q)

(RPAQQ \VP.TYPETABLE 3200Q)

(RPAQQ \NP.TYPETABLE 200Q)

(RPAQQ \RP.TYPETABLE 2400Q)

(RPAQQ \VP.GCTABLE 10000Q)

(RPAQQ \NP.GCTABLE 200Q)

(RPAQQ \RP.GCTABLE 2600Q)

(RPAQQ \VP.GCOVERFLOW 10200Q)

(RPAQQ \NP.GCOVERFLOW 1)

(RPAQQ \RP.GCOVERFLOW 3000Q)

(RPAQQ \FP.IFPAGE 2)

(RPAQQ \VP.IOCBS 1)

(RPAQQ \VP.PRIMARYMAP 3002Q)

(RPAQQ \VP.SECONDARYMAP 2400Q)

(RPAQQ \VP.LPT 3160Q)

(RPAQQ \VP.INITSCRATCH 10Q)

(RPAQQ \VP.RPT 200Q)

(RPAQQ \VP.BUFFERS 332Q)

(RPAQQ \DL.PROCESSORBUSY 100000Q)

(RPAQQ \DL.SETTOD 100001Q)

(RPAQQ \DL.READTOD 100002Q)

(RPAQQ \DL.READPID 100003Q)

(RPAQQ \DL.BOOTBUTTON 100004Q)

(CONSTANTS (CDRCODING 1)
	   (\SMALLP 1)
	   (\FIXP 2)
	   (\FLOATP 3)
	   (\LITATOM 4)
	   (\LISTP 5)
	   (\ARRAYP 6)
	   (\STRINGP 7)
	   (\STACKP 10Q)
	   (\CHARACTERP 11Q)
	   (\VMEMPAGEP 12Q)
	   (\STREAM 13Q)
	   (\TT.TYPEMASK 377Q)
	   (\TT.NOREF 100000Q)
	   (\TT.LISPREF 40000Q)
	   (\TT.FIXP 20000Q)
	   (\TT.NUMBERP 10000Q)
	   (\TT.ATOM 4000Q)
	   (\PMblockSize 40Q)
	   (\STATSsize 10Q)
	   (\NumPMTpages 10Q)
	   (\EmptyPMTEntry 177777Q)
	   (\FirstVmemBlock 2)
	   (\MAXVMPAGE 177775Q)
	   (\MAXVMSEGMENT 377Q)
	   (\IFPValidKey 12743Q)
	   (\FirstMDSPage 34776Q)
	   (\MaxMDSPage 177775Q)
	   (\DefaultSecondMDSPage 177774Q)
	   (\MDSIncrement 1000Q)
	   (\PagesPerMDSUnit 2)
	   (\FirstArraySegment 23Q)
	   (\FirstArrayPage 11400Q)
	   (\DefaultSecondArrayPage 40000Q)
	   (\PnCharsFirstSegment 72Q)
	   (\LastPnPage 2777Q)
	   (\StackMask 160000Q)
	   (\FxtnBlock 140000Q)
	   (\GuardBlock 160000Q)
	   (\BFBlock 100000Q)
	   (\FreeStackBlock 120000Q)
	   (\NotStackBlock 0)
	   (\MinExtraStackWords 40Q)
	   (ERASECHARCODE 0)
	   (\HT1CNT 2000Q)
	   (\HTSTKBIT 1000Q)
	   (\HTCNTMASK 176000Q)
	   (\HTMAINSIZE 100000Q)
	   (\HTCOLLSIZE 177770Q)
	   (\HTENDFREE 1)
	   (\HTFREEPTR 0)
	   (\AtomHI 0)
	   (\CHARHI 7)
	   (\AtomHTpages 400Q)
	   (\LastAtomPage 377Q)
	   (\MaxAtomFrLst 177777Q)
	   (\SmallPosHi 16Q)
	   (\SmallNegHi 17Q)
	   (\NumSmallPages 1000Q)
	   (\PNAME.HI 10Q)
	   (\DEF.HI 12Q)
	   (\VAL.HI 14Q)
	   (\PLIST.HI 2)
	   (\NumPageMapPages 400Q)
	   (\MDSTTsize 200Q)
	   (\UFNTableSize 2)
	   (\DTDSize 20Q)
	   (\EndTypeNumber 377Q)
	   (\NumLPTPages 20Q)
	   (\GuardStackAddr 170000Q)
	   (\LastStackAddr 177776Q)
	   (\STACKHI 1)
	   (\HTMAINnpages 201Q)
	   (\D1BCPLspace 0)
	   (\D0BCPLspace 0)
	   (\CurrentFXP 0)
	   (\ResetFXP 1)
	   (\SubovFXP 2)
	   (\KbdFXP 3)
	   (\HardReturnFXP 4)
	   (\GCFXP 5)
	   (\FAULTFXP 6)
	   (\MiscFXP 16Q)
	   (\TeleRaidFXP 30Q)
	   (DCB.EM 420Q)
	   (DISPINTERRUPT.EM 421Q)
	   (CURSORBITMAP.EM 431Q)
	   (KBDAD0.EM 177034Q)
	   (KBDAD1.EM 177035Q)
	   (KBDAD2.EM 177036Q)
	   (KBDAD3.EM 177037Q)
	   (UTILIN.EM 177030Q)
	   (CURSORX.EM 426Q)
	   (CURSORY.EM 427Q)
	   (MOUSEX.EM 424Q)
	   (MOUSEY.EM 425Q)
	   (\LispKeyMask 20000Q)
	   (\BcplKeyMask 10400Q)
	   (\DOLPHIN 4)
	   (\DORADO 5)
	   (\DANDELION 6)
	   (\DAYBREAK 10Q)
	   (\VP.DISPLAY 11000Q)
	   (\NP.DISPLAY 312Q)
	   (\NP.WIDEDOVEDISPLAY 363Q)
	   (\WIDEDOVEDISPLAYWIDTH 2200Q)
	   (\RP.AFTERDISPLAY 316Q)
	   (\RP.AFTERDOVEDISPLAY 363Q)
	   (\RP.DISPLAY 0)
	   (\RP.TEMPDISPLAY 3001Q)
	   (\RP.MISCLOCKED 3364Q)
	   (\RP.STACK 1400Q)
	   (\VP.STACK 400Q)
	   (\RP.MAP 400Q)
	   (\NP.MAP 400Q)
	   (\RP.IOPAGE 1000Q)
	   (\RP.DOVEIOCBPAGE 1037Q)
	   (\RP.DOVEIORGN 1040Q)
	   (\VP.DOVEIORGN 100Q)
	   (\DOVEIORGNSIZE 100Q)
	   (\VP.IOPAGE 377Q)
	   (\VP.IFPAGE 3000Q)
	   (\VP.FPTOVP 2000Q)
	   (\NP.FPTOVP 400Q)
	   (\RP.FPTOVP 2000Q)
	   (\RP.STARTBUFFERS 1200Q)
	   (\VP.TYPETABLE 3200Q)
	   (\NP.TYPETABLE 200Q)
	   (\RP.TYPETABLE 2400Q)
	   (\VP.GCTABLE 10000Q)
	   (\NP.GCTABLE 200Q)
	   (\RP.GCTABLE 2600Q)
	   (\VP.GCOVERFLOW 10200Q)
	   (\NP.GCOVERFLOW 1)
	   (\RP.GCOVERFLOW 3000Q)
	   (\FP.IFPAGE 2)
	   (\VP.IOCBS 1)
	   (\VP.PRIMARYMAP 3002Q)
	   (\VP.SECONDARYMAP 2400Q)
	   (\VP.LPT 3160Q)
	   (\VP.INITSCRATCH 10Q)
	   (\VP.RPT 200Q)
	   (\VP.BUFFERS 332Q)
	   (\DL.PROCESSORBUSY 100000Q)
	   (\DL.SETTOD 100001Q)
	   (\DL.READTOD 100002Q)
	   (\DL.READPID 100003Q)
	   (\DL.BOOTBUTTON 100004Q))
)

(RPAQQ \MPERRORS ((\MP.OBSOLETEVMEM 1)
		  (\MP.INVALIDVMEM 2 "Vmem inconsistent at startup")
		  (\MP.IOCBPAGE 3 "No place for IOCB page at startup")
		  (\MP.MOB 4 "Map out of bounds")
		  (\MP.INVALIDADDR 5)
		  (\MP.INVALIDVP 6)
		  (\MP.CHAIN.UNAVAIL 7 "Unavailable page on real page table chain")
		  (\MP.SELECTLOOP 10Q "Loop in \SELECTREALPAGE")
		  (\MP.NEWPAGE 11Q "Attempt to allocate already existing page")
		  (\MP.NEWMAPPAGE 12Q "\DONEWPAGE failed to allocate new map page")
		  (\MP.BADLOCKED 13Q "Locked page occupies a file page needed to lock another")
		  (\MP.CLOCK0 14Q "Arg to CLOCK0 not an integer box")
		  (\MP.RESIDENT 15Q "Fault on resident page")
		  (\MP.STACKFAULT 16Q "Fault on stack")
		  (\MP.VMEMTOOLONG 20Q "Attempt to extend Vmem File beyond fixed limit (8mb)")
		  (\MP.WRITING.LOCKED.PAGE 21Q "Writing a locked page with UPDATEKEY = T")
		  (\MP.UNINTERRUPTABLE 22Q "Error in uninterruptable system code")
		  (\MP.STACKFULL 23Q)
		  (\MP.MDSFULL 24Q)
		  (\MP.UNKNOWN.UFN 25Q)
		  (\MP.ATOMSFULL 26Q)
		  (\MP.PNAMESFULL 27Q)
		  (\MP.USECOUNTOVERFLOW 30Q)
		  (\MP.MDSFULLWARNING 31Q)
		  (\MP.BADMDSFREELIST 32Q)
		  (\MP.BADARRAYBLOCK 33Q)
		  (\MP.BADDELETEBLOCK 34Q)
		  (\MP.BADARRAYRECLAIM 35Q)
		  (\MP.BIGREFCNTMISSING 36Q 
				      "PTR refcnt previously overflowed, but not found in table.")
		  (\MP.BIGREFCNTALREADYPRESENT 37Q "PTR already in overflow table")
		  (\MP.DELREF0 40Q)
		  (\MP.PROCERROR 41Q)
		  (\MP.PROCNOFRAME 42Q "Failed to build frame for PROCESS use")
		  (\MP.32MBINUSE 43Q)
		  (\MP.TOPUNWOUND 44Q "Unexpected (RETTO T)")
		  (\MP.STACKRELEASED 45Q)
		  (\MP.FLUSHLOCKED 46Q)
		  (\MP.MAPNOTLOCKED 47Q)
		  (\MP.UNLOCKINGMAP 50Q)))
(DECLARE: EVAL@COMPILE 

(RPAQQ \MP.OBSOLETEVMEM 1)

(RPAQ \MP.INVALIDVMEM 2 "Vmem inconsistent at startup")

(RPAQ \MP.IOCBPAGE 3 "No place for IOCB page at startup")

(RPAQ \MP.MOB 4 "Map out of bounds")

(RPAQQ \MP.INVALIDADDR 5)

(RPAQQ \MP.INVALIDVP 6)

(RPAQ \MP.CHAIN.UNAVAIL 7 "Unavailable page on real page table chain")

(RPAQ \MP.SELECTLOOP 10Q "Loop in \SELECTREALPAGE")

(RPAQ \MP.NEWPAGE 11Q "Attempt to allocate already existing page")

(RPAQ \MP.NEWMAPPAGE 12Q "\DONEWPAGE failed to allocate new map page")

(RPAQ \MP.BADLOCKED 13Q "Locked page occupies a file page needed to lock another")

(RPAQ \MP.CLOCK0 14Q "Arg to CLOCK0 not an integer box")

(RPAQ \MP.RESIDENT 15Q "Fault on resident page")

(RPAQ \MP.STACKFAULT 16Q "Fault on stack")

(RPAQ \MP.VMEMTOOLONG 20Q "Attempt to extend Vmem File beyond fixed limit (8mb)")

(RPAQ \MP.WRITING.LOCKED.PAGE 21Q "Writing a locked page with UPDATEKEY = T")

(RPAQ \MP.UNINTERRUPTABLE 22Q "Error in uninterruptable system code")

(RPAQQ \MP.STACKFULL 23Q)

(RPAQQ \MP.MDSFULL 24Q)

(RPAQQ \MP.UNKNOWN.UFN 25Q)

(RPAQQ \MP.ATOMSFULL 26Q)

(RPAQQ \MP.PNAMESFULL 27Q)

(RPAQQ \MP.USECOUNTOVERFLOW 30Q)

(RPAQQ \MP.MDSFULLWARNING 31Q)

(RPAQQ \MP.BADMDSFREELIST 32Q)

(RPAQQ \MP.BADARRAYBLOCK 33Q)

(RPAQQ \MP.BADDELETEBLOCK 34Q)

(RPAQQ \MP.BADARRAYRECLAIM 35Q)

(RPAQ \MP.BIGREFCNTMISSING 36Q "PTR refcnt previously overflowed, but not found in table.")

(RPAQ \MP.BIGREFCNTALREADYPRESENT 37Q "PTR already in overflow table")

(RPAQQ \MP.DELREF0 40Q)

(RPAQQ \MP.PROCERROR 41Q)

(RPAQ \MP.PROCNOFRAME 42Q "Failed to build frame for PROCESS use")

(RPAQQ \MP.32MBINUSE 43Q)

(RPAQ \MP.TOPUNWOUND 44Q "Unexpected (RETTO T)")

(RPAQQ \MP.STACKRELEASED 45Q)

(RPAQQ \MP.FLUSHLOCKED 46Q)

(RPAQQ \MP.MAPNOTLOCKED 47Q)

(RPAQQ \MP.UNLOCKINGMAP 50Q)

(CONSTANTS (\MP.OBSOLETEVMEM 1)
	   (\MP.INVALIDVMEM 2 "Vmem inconsistent at startup")
	   (\MP.IOCBPAGE 3 "No place for IOCB page at startup")
	   (\MP.MOB 4 "Map out of bounds")
	   (\MP.INVALIDADDR 5)
	   (\MP.INVALIDVP 6)
	   (\MP.CHAIN.UNAVAIL 7 "Unavailable page on real page table chain")
	   (\MP.SELECTLOOP 10Q "Loop in \SELECTREALPAGE")
	   (\MP.NEWPAGE 11Q "Attempt to allocate already existing page")
	   (\MP.NEWMAPPAGE 12Q "\DONEWPAGE failed to allocate new map page")
	   (\MP.BADLOCKED 13Q "Locked page occupies a file page needed to lock another")
	   (\MP.CLOCK0 14Q "Arg to CLOCK0 not an integer box")
	   (\MP.RESIDENT 15Q "Fault on resident page")
	   (\MP.STACKFAULT 16Q "Fault on stack")
	   (\MP.VMEMTOOLONG 20Q "Attempt to extend Vmem File beyond fixed limit (8mb)")
	   (\MP.WRITING.LOCKED.PAGE 21Q "Writing a locked page with UPDATEKEY = T")
	   (\MP.UNINTERRUPTABLE 22Q "Error in uninterruptable system code")
	   (\MP.STACKFULL 23Q)
	   (\MP.MDSFULL 24Q)
	   (\MP.UNKNOWN.UFN 25Q)
	   (\MP.ATOMSFULL 26Q)
	   (\MP.PNAMESFULL 27Q)
	   (\MP.USECOUNTOVERFLOW 30Q)
	   (\MP.MDSFULLWARNING 31Q)
	   (\MP.BADMDSFREELIST 32Q)
	   (\MP.BADARRAYBLOCK 33Q)
	   (\MP.BADDELETEBLOCK 34Q)
	   (\MP.BADARRAYRECLAIM 35Q)
	   (\MP.BIGREFCNTMISSING 36Q "PTR refcnt previously overflowed, but not found in table.")
	   (\MP.BIGREFCNTALREADYPRESENT 37Q "PTR already in overflow table")
	   (\MP.DELREF0 40Q)
	   (\MP.PROCERROR 41Q)
	   (\MP.PROCNOFRAME 42Q "Failed to build frame for PROCESS use")
	   (\MP.32MBINUSE 43Q)
	   (\MP.TOPUNWOUND 44Q "Unexpected (RETTO T)")
	   (\MP.STACKRELEASED 45Q)
	   (\MP.FLUSHLOCKED 46Q)
	   (\MP.MAPNOTLOCKED 47Q)
	   (\MP.UNLOCKINGMAP 50Q))
)
(DECLARE: DOEVAL@COMPILE DONTCOPY

(GLOBALVARS \ARRAYSPACE \ARRAYSPACE2 \PNCHARSSPACE \PNAMESPACEEND \ATOMSPACE \AtomHashTable 
	    \SMALLPOSPSPACE \SMALLNEGSPACE \PNPSPACE \DEFSPACE \VALSPACE \PLISTSPACE \PAGEMAP 
	    \PageMapTBL \InterfacePage \IOPAGE \DoveIORegion \IOCBPAGE \FPTOVP \MDSTypeTable 
	    \MISCSTATS \UFNTable \DTDSpaceBase \LISTPDTD \LOCKEDPAGETABLE \STACKSPACE \HTMAIN 
	    \HTOVERFLOW \HTBIGCOUNT \HTCOLL \DISPLAYREGION)
)
(BLOCKRECORD MISCSTATS ((STARTTIME FIXP)
	      (TOTALTIME FIXP)
	      (SWAPWAITTIME FIXP)
	      (PAGEFAULTS FIXP)
	      (SWAPWRITES FIXP)
	      (DISKIOTIME FIXP)
	      (DISKOPS FIXP)
	      (KEYBOARDWAITTIME FIXP)
	      (GCTIME FIXP)
	      (NETIOTIME FIXP)
	      (NETIOOPS FIXP)
	      (SWAPTEMP0 FIXP)
	      (SWAPTEMP1 FIXP)
	      (RCLKSECOND FIXP)
	      (SECONDSCLOCK FIXP)
	      (MILLISECONDSCLOCK FIXP)
	      (BASECLOCK FIXP)
	      (RCLKTEMP0 FIXP)
	      (SECONDSTMP FIXP)
	      (MILLISECONDSTMP FIXP)
	      (BASETMP FIXP)
	      (EXCESSTIMETMP FIXP)
	      (CLOCKTEMP0 FIXP)
	      (DISKTEMP0 FIXP)
	      (DISKTEMP1 FIXP)
	      (TELERAIDTEMP1 FIXP)
	      (TELERAIDTEMP2 FIXP)
	      (TELERAIDTEMP3 FIXP)
	      (LASTUSERACTION FIXP)
	      (DLMOUSETIMER FIXP)
	      (DLMOUSETEMP FIXP))
	     (CREATE (\ALLOCBLOCK 37Q)))
(BLOCKRECORD IFPAGE ((CurrentFXP WORD)
	      (ResetFXP WORD)
	      (SubovFXP WORD)
	      (KbdFXP WORD)
	      (HardReturnFXP WORD)
	      (GCFXP WORD)
	      (FAULTFXP WORD)
	      (EndOfStack WORD)
	      (LVersion WORD)
	      (MinRVersion WORD)
	      (MinBVersion WORD)
	      (RVersion WORD)
	      (BVersion WORD)
	      (MachineType WORD)
	      (MiscFXP WORD)
	      (Key WORD)
	      (SerialNumber WORD)
	      (EmulatorSpace WORD)
	      (ScreenWidth WORD)
	      (NxtPMAddr WORD)
	      (NActivePages WORD)
	      (NDirtyPages WORD)
	      (filePnPMP0 WORD)
	      (filePnPMT0 WORD)
	      (TELERAIDFXP WORD)
	      (NIL WORD)
	      (NIL WORD)
	      (NIL WORD)
	      (UserNameAddr WORD)
	      (UserPswdAddr WORD)
	      (StackBase WORD)
	      (FAULTHI WORD)
	      (FAULTLO WORD)
	      (wasREALPAGETABLE WORD)
	      (RPTSIZE WORD)
	      (RPOFFSET WORD)
	      (wasRPTLAST WORD)
	      (EMBUFVP WORD)
	      (NSHost0 WORD)
	      (NSHost1 WORD)
	      (NSHost2 WORD)
	      (MDSZone WORD)
	      (MDSZoneLength WORD)
	      (EMUBUFFERS WORD)
	      (EMUBUFLENGTH WORD)
	      (LASTNUMCHARS WORD)
	      (SYSDISK WORD)
	      (ISFMAP WORD)
	      (* These are for \MISCAPPLY* -- note that they are not ref counted, so don't pass the 
		 only pointer to something this way!)
	      (MISCSTACKFN FULLXPOINTER)
	      (MISCSTACKARG1 FULLXPOINTER)
	      (MISCSTACKARG2 FULLXPOINTER)
	      (MISCSTACKRESULT FULLXPOINTER)
	      (NRealPages WORD)
	      (LastLockedFilePage WORD)
	      (LastDominoFilePage WORD)
	      (FPTOVPStart WORD)
	      (FAKEMOUSEBITS WORD)
	      (DL24BitAddressable WORD)
	      (REALPAGETABLEPTR FULLXPOINTER)
	      (DLLastVmemPage WORD)
	      (FullSpaceUsed WORD)
	      (FAKEKBDAD4 WORD)
	      (FAKEKBDAD5 WORD))
	     (CREATE (\ALLOCBLOCK 42Q)))
(BLOCKRECORD IOPAGE ((NIL 22Q WORD)
	      (DLMAINTPANEL WORD)
	      (DLFLOPPYCMD WORD)
	      (DLTTYPORTCMD WORD)
	      (DLPROCESSORCMD WORD)
	      (NEWMOUSESTATE WORD)
	      (DLBEEPCMD WORD)
	      (DLRS232CMISCCOMMAND WORD)
	      (DLRS232CPUTFLAG WORD)
	      (DLRS232CGETFLAG WORD)
	      (NIL 6 WORD)
	      (DLFLOPPY WORD)
	      (DLTTYOUT WORD)
	      (NIL 1 WORD)
	      (DLTTYIN WORD)
	      (NIL 1 WORD)
	      (DLPROCESSOR2 WORD)
	      (DLPROCESSOR1 WORD)
	      (DLPROCESSOR0 WORD)
	      (NEWMOUSEX WORD)
	      (NEWMOUSEY WORD)
	      (DLBEEPFREQ WORD)
	      (DLRS232CPARAMETERCSBLO WORD)
	      (DLRS232CPARAMETERCSBHI WORD)
	      (DLRS232CSETRS366STATUS 3 WORD)
	      (DLRS232CPUTCSBLO WORD)
	      (DLRS232CPUTCSBHI WORD)
	      (DLRS232CGETCSBLO WORD)
	      (DLRS232CGETCSBHI WORD)
	      (DLRS232CDEVICESTATUS WORD)
	      (DLRS232CPARAMETEROUTCOME WORD)
	      (DLTODVALID WORD)
	      (DLTODLO WORD)
	      (DLTODHI WORD)
	      (DLTODLO2 WORD)
	      (DLMOUSEX WORD)
	      (DLMOUSEY WORD)
	      (DLUTILIN WORD)
	      (DLKBDAD0 WORD)
	      (DLKBDAD1 WORD)
	      (DLKBDAD2 WORD)
	      (DLKBDAD3 WORD)
	      (DLKBDAD4 WORD)
	      (DLKBDAD5 WORD)
	      (DLLSEPIMAGECSB 40Q WORD)
	      (DLIOPHARDWARECONFIG WORD)
	      (NIL 13Q WORD)
	      (DLRS232CPARAMETERCSBLO.11 WORD)
	      (DLRS232CPARAMETERCSBHI.11 WORD)
	      (DLRS232CSETRS366STATUS.11 16Q WORD)
	      (NIL 74Q WORD)
	      (DLMAGTAPE 4 WORD)
	      (DLETHERNET 14Q WORD)
	      (NIL 37Q WORD)
	      (DLDISPINTERRUPT WORD)
	      (DLDISPCONTROL WORD)
	      (DLDISPBORDER WORD)
	      (DLCURSORX WORD)
	      (DLCURSORY WORD)
	      (DLCURSORBITMAP 20Q WORD))
	     [ACCESSFNS IOPAGE ((DLCURSORBITMAPPTR (\ADDBASE DATUM 360Q))
			 (DLCURSORYPTR (\ADDBASE DATUM 357Q))
			 (DLCURSORXPTR (\ADDBASE DATUM 356Q))
			 (DLDISPINTERRUPTPTR (\ADDBASE DATUM 353Q))
			 (DLETHERNETPTR (\ADDBASE DATUM 300Q))
			 (DLKBDAD5PTR (\ADDBASE DATUM 103Q))
			 (DLKBDAD4PTR (\ADDBASE DATUM 102Q))
			 (DLKBDAD3PTR (\ADDBASE DATUM 101Q))
			 (DLKBDAD2PTR (\ADDBASE DATUM 100Q))
			 (DLKBDAD1PTR (\ADDBASE DATUM 77Q))
			 (DLKBDAD0PTR (\ADDBASE DATUM 76Q))
			 (DLUTILINPTR (\ADDBASE DATUM 75Q))
			 (DLMOUSEYPTR (\ADDBASE DATUM 74Q))
			 (DLMOUSEXPTR (\ADDBASE DATUM 73Q))
			 (DLTODLOPTR (\ADDBASE DATUM 70Q))
			 (DLMAINTPANELPTR (\ADDBASE DATUM 22Q]
	     (CREATE (\ALLOCBLOCK 200Q)))


(* END EXPORTED DEFINITIONS)

EVAL@COMPILE 

(ADDTOVAR DONTCOMPILEFNS WRITEBCPLPARAMS PRINTIPATOMS WRITEMCPARAMS MAKERECORD STRIP\ WRITECALLSUBRS)
)
(DECLARE: DONTCOPY 
(* FOLLOWING DEFINITIONS EXPORTED)


(DECLARE: EVAL@COMPILE 
[PUTPROPS EMADDRESS MACRO (ARGS ([LAMBDA (ADDR)
					 (COND [(EQ \D1BCPLspace \D0BCPLspace)
						(LIST (LIST (QUOTE OPCODES)
							    (QUOTE GCONST)
							    0
							    (LRSH ADDR 10Q)
							    (LOGAND ADDR 377Q]
					       (T (BQUOTE (\VAG2 (fetch EmulatorSpace of 
									\InterfacePage)
								 , ADDR]
				 (EVAL (CAR ARGS]
(PUTPROPS EMGETBASE MACRO ((OFFSET)
	   (\GETBASE (EMADDRESS OFFSET)
		     0)))
(PUTPROPS EMPUTBASE MACRO ((OFFSET VAL)
	   (\PUTBASE (EMADDRESS OFFSET)
		     0 VAL)))
(PUTPROPS EMULATORSEGMENT MACRO (NIL (fetch EmulatorSpace of \InterfacePage)))
[PUTPROPS EMPOINTER MACRO (X (COND ((NEQ \D1BCPLspace \D0BCPLspace)
				    (LIST (QUOTE \VAG2)
					  (QUOTE (fetch (IFPAGE EmulatorSpace)
							of \InterfacePage))
					  (CAR X)))
				   ((ZEROP (CAR X))
				    NIL)
				   (T (LIST (QUOTE \VAG2)
					    \D0BCPLspace
					    (CAR X]
[PUTPROPS EMADDRESSP MACRO (X (LIST (QUOTE EQ)
				    (LIST (QUOTE \HILOC)
					  (CAR X))
				    (COND ((EQ \D1BCPLspace \D0BCPLspace)
					   \D0BCPLspace)
					  (T (QUOTE (fetch (IFPAGE EmulatorSpace)
							   of \InterfacePage]
)


(* END EXPORTED DEFINITIONS)

)
(PUTPROPS LLPARAMS COPYRIGHT ("Xerox Corporation" 3675Q 3676Q 3677Q 3700Q 3701Q))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (2776Q 14524Q (WRITEBCPLPARAMS 3010Q . 7263Q) (WRITEMCPARAMS 7265Q . 11741Q) (MAKERECORD
 11743Q . 14207Q) (STRIP\ 14211Q . 14522Q)) (14525Q 17336Q (WRITECALLSUBRS 14537Q . 17334Q)))))
STOP