Google
 

Trailing-Edge - PDP-10 Archives - BB-M081E-SM - exec/execca.mac
There are 64 other files named execca.mac in the archive. Click here to see a list.
; UPD ID= 149, FARK:<5-1-WORKING-SOURCES.EXEC>EXECCA.MAC.2,  21-Dec-82 11:48:47 by TSANG
;Edit 937 - Make the abbreviation for FILE-STATUS, "F", work.
; UPD ID= 120, SNARK:<5.EXEC>EXECIN.MAC.21,  28-Dec-81 11:14:01 by CHALL
;TCO 5.1644 - UPDATE COPYRIGHT NOTICE
; UPD ID= 100, SNARK:<5.EXEC>EXECCA.MAC.17,  22-Oct-81 14:33:35 by CHALL
;TCO 5.1583 MOVE $DEF-, KEYWORDS FOR "INFO DEFAULTS", HERE
;  PUT "I DEF PROGRAM" UNDER MFRK
; UPD ID= 83, SNARK:<5.EXEC>EXECCA.MAC.16,  10-Oct-81 19:45:39 by CHALL
;TCO 5.1564 ADD "PRESERVE (PCL ENVIRONMENT)"; DELETE SAVE/ENV AND SAVE/EXEC
; UPD ID= 58, SNARK:<5.EXEC>EXECCA.MAC.14,  31-Aug-81 11:54:16 by CHALL
;TCO 5.1480 $CONFD- ADD LABEL $CONF1 BEFORE COMMA AND CR OPTIONS
; UPD ID= 44, SNARK:<5.EXEC>EXECCA.MAC.10,  19-Aug-81 10:38:45 by CHALL
;TCO 5.1463 THERE'S NO "SET DEF PROGRAM" & "SET NO DEF PROGRAM" IF NO M'FORKING
;TCO 5.1464 CREATE $FRKNM: LIST OF OPTIONS TO THE FORK COMMAND
;TCO 5.1465 MOVE ALL MFRK-DEPENDENT RESET CODE FROM EXECP TO HERE
; UPD ID= 39, SNARK:<5.EXEC>EXECCA.MAC.9,  17-Aug-81 09:38:56 by CHALL
;TCO 5.1454 CHANGE NAME FROM XDEF TO EXECDE
; UPD ID= 7, SNARK:<5.EXEC>EXECCA.MAC.8,  13-Jul-81 17:40:37 by MURPHY
; TCO 5.1410 - BETTER HANDLING OF MACH SIZE EXCEEDED AND OVER QUOTA CONDITIONS
;<HELLIWELL.EXEC.5>EXECCA.MAC.1, 13-May-81 14:49:49, EDIT BY HELLIWELL
;REMOVE CLEAR, LABEL, MAKE, AND TECO COMMANDS
; UPD ID= 1697, SNARK:<5.EXEC>EXECCA.MAC.4,  12-Mar-81 16:27:37 by LYONS
;remove cd abbrev for connect
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
;  OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;COPYRIGHT (C) 1980,1981,1982 BY DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

	SEARCH EXECDE
	TTITLE EXECCA		;CODE SUBJECT TO ASSEMBLY CONDITIONALS

;ASSEMBLY SWITCH FOR MULTI-FORK FEATURES

IFNDEF MFRKSW,<MFRKSW==:0>
DEFINE MFRK<IFN MFRKSW>
DEFINE NOMFRK<IFE MFRKSW>

;ASSEMBLY SWITCH FOR PCL FEATURES

IFNDEF PCLSW,<PCLSW==:0>
DEFINE PCLF,<IFN PCLSW>
DEFINE NOPCLF,<IFE PCLSW>


;READ ONLY STORAGE AREA

;EXTERNS FOR CELLS REFERENCED IN THIS AREA ONLY
; SPECIAL CHARACTER ROUTINES:

;COMMAND TABLES

;FORM:
;       LABEL:  NUMBER OF ENTRIES
;               XWD [VALUE],[ASCIZ @TEXT@]  FOR EACH ENTRY, ALPH ORDER
;   VALUE IS GENERALLY  XWD BITS,ADDRESS
;       SEE "DEFINITIONS" FILE FOR BIT SYMBOLS AND MACRO DEFINITIONS

;MACROS USED TO GENERATE TABLES (DEFINED IN "DEFINITIONS" FILE)
;
;	T TEXT[,BITS[,ADDRESS]]		;HERE []'S MEAN OPTIONAL
;		SETS UP ENTRY. DEFAULTS ADDRESS TO ".TEXT", OR IF
;		THAT IS UNDEFINED, TO "NOT IMPLEMENTED" ERROR ROUTINE
;
;	X TEXT
;		CREATES A SPECIAL FAKE ENTRY, TO MAKE AN OTHERWISE
;		UNIQUE SUBSET AMBIGUOUS (EVEN THE EXACT TEXT GIVEN TO X
;		MACRO WILL BE TREATED AS AMBIGUOUS).  USED WHERE ACTUAL
;		AMBIGUITY IS WITH AN ENTRY IN ANOTHER TABLE SEARCHED
;		LATER.
;
;	TABLE	RESERVES WD FOR # ENTRIES AT TOP OF TABLE
;
;	TEND	FILLS IN # OF ENTRIES SINCE LAST "TABLE" MACRO
;		IN LOCATION RESERVED BY THAT "TABLE" MACRO
;COMMANDS NOT PREFIXED BY ^E.
;CCL COMMANDS ALL DISPATCH TO DOCCL, QUEUE COMMANDS DISPATCH
;TO QCM

;TOP-LEVEL COMMAND TABLE

CTBL1::	TABLE				;PCL
	T ACCESS			;ACCESS (TO DIRECTORY) <NAME>
	T ADVISE			;ADVISE USER/TTY
	T APPEND			;APPEND <FILE> (TO) <FILE>
	T ARCHIVE			;ARCHIVE (FILES), KEYWORD
	T ASSIGN			;ASSIGN <DEVICE> (AS) <NAME>
	T ATTACH,NOLG			;ATTACH (TO JOB) <JOBNO>
   MIC,<
	TA BACK				;BACK MEANS BACKSPACE
   >
.BACK:	T BACKSPACE			;BACKSPACE
   MIC,<
	IT BACKTO			;BACKTO (LABEL)
   >
   NEWF,<
	T BLANK,NOLG			;CLEAR SCREEN
   >
	T BREAK,NOLG			;BREAK (LINKS)
	T BUILD,,.CREAT			;BUILD OR MODIFY DIRECTORY
	TA C,.CON			;C IS CONTINUE
	T CANCEL			;KILL QUEUE REQUEST
	T CLOSE				;CLOSE (JFN) <JFN NUMBER>
	T COMPILE			;COMPILE (FROM
	TA CON				;"CON" MEANS CONTINUE
	T CONNECT			;CONNECT (TO DIRECTORY) <NAME>
.CON:	T CONTINUE			;CONTINUE
	T COPY				;COPY (FROM) <FILE> (TO) <FILE>
	T CREATE,,.EDITC		;CREATE (FILE) <FILE>
	T CREF				;CREF (FILE)
	T CSAVE,EASB			;SAVE ... (ON) <FILE>.
	TA D				;"D" IS DEPOSIT
	T DAYTIME,ONEWRD+NOLG		;DAYTIME
	T DDT,EASB			;START DDT
	T DEASSIGN			;DEASSIGN (DEVICE)
	T DEBUG				;DEBUG (FROM)
   PCLF,<
	T DECLARE			;PCL Declare PCL object
   >
	T DEFINE			;DEFINE (LOGICAL NAME)--(AS)--
	T DELETE			;DELETE <FILE>
.D:	T DEPOSIT			;DEPOSIT INTO MEMORY LOCATION
	T DETACH			;DETACH JOB
	T DIRECTORY			;DIRECTORY.
	TA DIS				;ABBREV FOR DISABLE
.DIS:	T DISABLE			;DISABLE PRIV CMNDS
	T DISCARD			;DISCARD TAPE INFORMATION
	T DISMOUNT			;DISMOUNT TAPE OR STRUCTURE
   MIC,<
	T DO				;DO (FILE)
   >
	TA E				;"E" SAME AS "EXAMINE"
	T EDIT				;EDIT (FILE) <FILE> (OUTPUT AS) <FILE>
	T ENABLE			;ENABLE PRIV CMDS
	T END-ACCESS,,.ENDAC		;END-ACCESS (TO DIRECTORY) <NAME>
	T EOF				;END OF FILE
   MFRK,<
	TA ER				;ABBREV FOR ERUN
   >
   MIC,<
	IT ERROR
   >
   MFRK,<
.ER:	T ERUN				;ERUN (EPHERMERAL)
   >
	TA EX 				;SPECIAL ABBREV FOR EXECUTE
.E:	T EXAMINE			;EXAMINE MEMORY CONTENTS
.EX:	T EXECUTE			;EXECUTE (FROM)
	T EXPUNGE			;EXPUNGE (DELETED FILES)
	T FDIRECTORY 			;DIR, CRAM, EVERYTHING, NO HEADING
	T FORK				;FORK <N>. AFFECTS /, \, ETC.
   MFRK,<
	T FREEZE			;FREEZE (FORK)
   >
	T GET				;GET <FILE>
   MIC,<
	IT GOTO				;GOTO (LABEL)
   >
	T HELP				;HELP COMMAND
;   MIC,<
;	TA I				;I IS ABBREV FOR INFO
;	IT IF,,.MICIF
;   >
.I:	T INFORMATION,NOLG		;INFORMATION COMMANDS
   MFRK,<
	T KEEP				;KEEP (FORK)
   >
   MIC,<
	T KMIC				;KILL MIC PROCESS
   >
	T LOAD				;LOAD (FROM)
	TA LOG				;FUDGE TO RECOG "LOG" AS "LOGIN"
.LOG:	T LOGIN,NOLG			;LOGIN <USER> <PASSWD> <ACCT>
	T LOGOUT,NOLG			;LOGOUT
	T MERGE,EASB			;MERGE <FILE>
	T MODIFY			;MODIFY QUEUE REQUESTS
	T MOUNT				;MOUNT TAPE OR STRUCTURE
   MFRK,<
	T NAME				;NAME (FORK AS)
   >
   MIC,<
	IT NOERROR
	IT NOOPERATOR
	IT OPERATOR
   >
   PCLF,<
	T ORIGINAL			;PCL Original Exec command
   >
	T PLOT				;PUT FILES INTO PLOTTER QUEUE
	T POP				;POP EXEC LEVEL
   PCLF,<
	T PRESERVE			;PCL Preserve PCL enviroment
   >
	T PRINT				;PRINT
	T PUNCH				;PUNCH CARDS/PAPER-TAPE
	T PUSH				;PUSH EXEC LEVEL
   XTND,<
	T QD,				;QFD - DELETED FILES ONLY
   >
	T R				;= RUN SYS:
   XTND,<
	T RDIRECTORY,			;DIR, READ, SIZE, CHRON BY READ
   >
	T RECEIVE			;RECEIVE (LINKS/ADVICE)
	T REENTER			;REENTER
	T REFUSE			;REFUSE (LINKS/ADVICE)
	T REMARK			;ENTER REMARK MODE
	T RENAME			;RENAME (...) -- (TO BE) --
	T RESET				;RESET (FORK) NAME
	T RETRIEVE			;RETRIEVE <FILES>
	T REWIND			;REWIND
	T RUN				;RUN <FILE>. STARTS ENV FILE.
	T SAVE,EASB			;SHARABLE SAVE
	T SET,NOLG			;SET COMMAND
	T SKIP				;SKIP
	T START				;START PROGRAM
	T SUBMIT			;SUBMIT
	T SYSTAT,NOLG,.SISTA		;SYSTEM STATUS PRINTOUT
	T TAKE				;TAKE (EXEC INPUT FROM) FILESPEC
	T TALK				;TALK (TO)
	T TDIRECTORY, 			;DIR, TIME W, CHRON W, REV
	T TERMINAL,NOLG			;TERMINAL TYPE IS N
	T TRANSLATE			;TRANSLATE BETWEEN DIRS AND PPNS
	T TYPE				;LIST FILE TO TTY
	T UNATTACH,NOLG			;DETACH REMOTE JOB
	TA UND				;UND IS ABBREVIATION FOR UNDELETE
   PCLF,<
	T UNDECLARE			;PCL Undefine PCL object
   >
.UND:	T UNDELETE			;UNDELETE <FILE>
   MFRK,<
	T UNKEEP			;UNKEEP (FORK)
   >
	T UNLOAD			;UNLOAD
	T VDIRECTORY, 			;DIR, PROT, SIZ, LEN, TIM W, USER W
   XTND,<
	T WDIRECTORY,			;DIR, SIZE, USER W, USER CRE, CHRON BY WRITE
   >
        TEND

STAT,<IFG .-CTBL1-1000,<PRINTX COMMAND TABLE TO LARGE FOR STATISTICS>>
;PRIVILEGED COMMANDS PREFIXED WITH ^E
;ONLY LEGAL FOR PRIV USERS WHO HAVE "ENABLE"D PRIV COMMANDS

CTBL2::	TABLE
	T CEASE,,ECEASE			;SYSTEM SHUTDOWN
	T CREATE			;CREAT/MODIFY DIRECTORY
	T DEFINE,,EDEFIN		;CREATE LOGICAL NAME
	T EDDT,ONEWRD+WHLU		;GO TO DDT LOOKING AT EXEC
	T PRINT,,EPRINT			;PRINT DIRECTORY INFORMATION
	T QUIT,ONEWRD+WHLU		;QUIT: EXIT TO SUPERIOR EXEC
	T SEND				;SEND (MESSAGE) TO ALL
	T SET,,ESET			;SET DATE AND TIME
	T SPEAK				;SPEAK (TO SYSJOB)
	TEND
;PSEUDO-INTERRUPT SYSTEM TABLES

;IN "SUBRS" ASSEMBLY:

;LEVEL TABLE: WHERE TO STORE PC'S FOR VARIOUS LEVELS

LEVTAB::LEV1PC
	LEV2PC
	LEV3PC

;CHANNEL TABLE
;INDEXED BY CHANNEL NUMBER. XWD LEVEL,ADDRESS FOR EACH.

DEFINE DEFCH (LEVEL,ROUTIN,CHANEL)<
	IFN CHNS&1B<CHANEL>,<PRINTX ?CHANNEL TABLE OVERLAPS ITSELF>
	CHNS==CHNS!1B<CHANEL>
	RELOC CHNTAB+CHANEL
	XWD LEVEL,ROUTIN
>
CHNS==:0
CHNTAB::

NONEWF,<
 DEFCH 1,MALINT,MALCHN			;MAIL-WATCH INTERRUPT
>
NEWF,<
 DEFCH 1,IITPSI,IITCHN			;AUTO MAIL-WATCH & ALERTS
>
 DEFCH LV.IPC,IPCINT,IPCCHN		;IPCF INTERRUPT
 DEFCH LV.IPC,CCPSI,1			;1: ASSIGNED BY PROGRAM TO ^C
			;^C INTERRUPT LEVEL MUST BE KEPT THE SAME AS
			;IPCF INTERRUPT LEVEL TO PREVENT ^C OUT OF IPCF
			;INTERRUPT, WHICH WOULD PREVENT FURTHER IPCF MESSAGES,
			;SINCE THE MONITOR ONLY GENERATES INTERRUPT WHEN NUMBER
			;OF MESSAGES GOES FROM 0 TO 1.
 DEFCH 1,ALOPSI,2			;2: ASSIGNED BY PROGRAM TO AUTO-LOGOUT
 DEFCH 3,USEPSI,3			;3: ASS BY PROG TO CHAR TO PRINT RUNTIME (^T)
 DEFCH 2,TLMPSI,4			;4: TIME LIMIT EXCEEDED TRAP
 DEFCH 2,COBPSI,5			;5: ASS BY PROG TO CLEAR OUTBUF ON ^O
 DEFCH LV.TRP,TRPPSI,TRPCHN		;TRPCHN: JSYS OR UUO TRAP
 DEFCH LV.POV,PDLOV,.ICPOV		;PUSHDOWN OVERFLOW
 DEFCH LV.EOF,EOFPSI,.ICEOF		;END OF FILE
 DEFCH LV.DAT,DATPSI,.ICDAE		;FILE DATA ERROR
 DEFCH LV.QTA,QTAPSI,.ICQTA		;QUOTA EXCEEDED (OR DISK FULL)
 DEFCH LV.ILI,ILIPSI,.ICILI		;I>>, MR>>, MW>>, MX>>
 DEFCH 1,[TRAP (1,<Illegal memory READ>)],.ICIRD
 DEFCH 1,[TRAP (1,<Illegal memory WRITE>)],.ICIWR
 DEFCH 1,INFTRM,.ICIFT			;INFERIOR FORK TERMINATION
 DEFCH 1,MSEPSI,.ICMSE			;MACHINE SIZE EXCEEDED
 DEFCH LV.ESC,ESCPSI,ADVCHN		;ESCAPE CHARACTER FOR ADVISE
 DEFCH LV.PCL,PCMPSI,PCLCHI		;PCL Input ready
 DEFCH LV.PCL,PCMPSO,PCLCHO		;PCL Output ready

RELOC CHNTAB+6*6			;LEAVE ROOM FOR CHANNEL TABLE
;FIELD DESCRIPTOR BLOCKS FOR TOP LEVEL COMMANDS

CM1DBE::
   MFRK,<
	FLDDB. .CMKEY,,CTBL1,<Command,>,,[
	 FLDDB. .CMKEY,,KEPNMS,<kept fork name,>,,[
	  FLDDB. .CMTOK,,<-1,,[ASCIZ //]>,,,[
	   FLDDB. .CMFIL,CM%SDH,,<system program name>,,]]]
   >
   NOMFRK,<
	FLDDB. .CMKEY,,CTBL1,<Command,>,,[
	 FLDDB. .CMTOK,,<-1,,[ASCIZ //]>,,,[
	  FLDDB. .CMFIL,CM%SDH,,<system program name>,,]]
   >

CM1DB::
   MFRK,<
	FLDDB. .CMKEY,,CTBL1,<Command,>,,[
	 FLDDB. .CMKEY,,KEPNMS,<kept fork name,>,,[
	  FLDDB. .CMFIL,CM%SDH,,<system program name>,,]]
   >
   NOMFRK,<
	FLDDB. .CMKEY,,CTBL1,<Command,>,,[
	 FLDDB. .CMFIL,CM%SDH,,<system program name>,,]
   >
;"INFORMATION" FIELD DESCRIPTORS

$INFO::	TABLE
	T ADDRESS-BREAK,ONEWRD,.ADBRK
   NEWF,<
	T ALERTS,,.ALRST
   >
	T ARCHIVE-STATUS,,.ARSTS
	T ARPANET,NOLG,.IARPA
	T AVAILABLE,NOLG
	T BATCH-REQUESTS,,.IBR
;	T CARD-READER-INPUT-SET,ONEWRD,CRDINF
	T COMMAND-LEVEL,NOLG+ONEWRD,.EXECM
	T DECNET,NOLG,.IDECN
	T DEFAULTS,,.INDEF
	T DIRECTORY,,.INDIR		;PRINT DIRECTORY PARAMETERS
	T DISK-USAGE,,.DSKST
   XTND,<
	T DOWNTIME,ONEWRD+NOLG		;ERUN MHALT (E-V 2)
   >
;**;[937]	Modify 1 line		YKT	21-DEC-82
   MFRK,<
	TA F				;[937] ABBREV FOR FILE-STATUS
   >
.F:	T FILE-STATUS,,.FILST
   MFRK,<
	T FORK-STATUS,ONEWRD,.FRKST
   >
	T JOB-STATUS,ONEWRD,.JOBST
	T LOGICAL-NAMES,,.LNLIS
	T MAIL,NOLG,.MALST
	T MEMORY-USAGE,ONEWRD,.MEMST
	T MONITOR-STATISTICS,ONEWRD,MONSTA
	T MOUNT-REQUESTS,,.IMR
	T OUTPUT-REQUESTS,,.IPR
   PCLF,<
	T PCL-OBJECTS,ONEWRD,.PCLOB	;PCL
   >
	T PROGRAM-STATUS,ONEWRD,.RUNST
	T PSI-STATUS,ONEWRD,.PISTA
	T RETRIEVAL-REQUESTS,,.IRR
	T SPOOLED-OUTPUT-ACTION,ONEWRD,SPLINF
	T STRUCTURE,,.STRST
	T SUBSYSTEM-STATISTICS,ONEWRD,SUBSTA
	T SYSTEM-STATUS,ONEWRD,SYSINF
	T TAPE-PARAMETERS,ONEWRD,TAPINF
	T TERMINAL-MODE,NOLG,TRMPNT
   PCLF,<
	T VARIABLE,,.PCLVR		;PCL
   >
	T VERSION,NOLG+ONEWRD
	T VOLUMES,,IVOL
	TEND

;"INFO DEFAULT" FIELD DESCRIPTORS

$DEF::	TABLE
	T ALL,ONEWRD,.IDALL
	T CARDS,ONEWRD,.IDC
	T COMPILE-SWITCHES,ONEWRD,.IDCS
	T PAPER-TAPE,ONEWRD,.IDP
	T PLOT,ONEWRD,.IDPL
	T PRINT,ONEWRD,.IDPRT
   MFRK,<
	T PROGRAM,,.IDPRG
   >
	T SUBMIT,ONEWRD,.IDS
	T TAKE,ONEWRD,.IDTAK
	TEND
;"FORK" FIELD DESCRIPTORS

$FRKNM::
   MFRK,<
	FLDDB. .CMKEY,,FRKNMS,<Fork name,>,,[
	FLDDB. .CMNUM,CM%SDH,10,<Octal fork number>,,[
	FLDDB. .CMCFM,,,,,]]
   >
   NOMFRK,<
	FLDDB. .CMNUM,CM%SDH,10,<Octal fork number>,,[
	FLDDB. .CMCFM,,,,,]
   >
;START OF THE RESET COMMAND. IT'S HERE BECAUSE RESET TAKES ARGUMENTS UNDER
;MULTIFORKING BUT NONE WITHOUT MULTIFORKING. THE PROMPTS AND ERROR MESSAGES
;FOR THE LATTER DON'T LOOK RIGHT WITHOUT THIS CONDITIONAL.

   MFRK,<
.RESST::NOISE <FORK>
	MOVEI B,[FLDDB. .CMKEY,,FRKNMS,<Fork name,>,,[
		 FLDDB. .CMNUM,CM%SDH,10,<Octal fork number>,,[
		 FLDDB. .CMTOK,CM%SDH,<-1,,[ASCIZ "*"]>,<* for all forks>,,[
		 FLDDB. .CMTOK,CM%SDH,<-1,,[ASCIZ "."]>,<. for current fork>,,[
		 FLDDB. .CMCFM,CM%SDH,,<CR for all unkept forks>,,]]]]]
	HRRZ A,FRKNMS		;GET NUMBER OF FORK NAMES
	SKIPN A			;NONE?
	 HRRZ B,.CMFNP(B)	;YUP, SKIP FORKS, START WITH #
	CALL FLDSKP		;PARSE ARG
	 CMERRX <Fork name, number, * or CR required>
	LDB D,[POINT 9,.CMFNP(C),8] ;GET ARG TYPE
	CAIN D,.CMCFM		;JUST CR?
	 JRST RESET0		;YES - GO HANDLE
	CAIE D,.CMTOK		;* := ALL FORKS?
	 JRST .RESE2		;NO - FIND OUT WHICH ONE
	LDB A,[POINT 7,ATMBUF,6] ;YES - LOOK AT TOKEN PARSED
	CONFIRM			;CONFIRM FIRST
	JRST .RESS1
   >
   NOMFRK,<
.RESST::CONFIRM			;JUST CONFIRM THE COMMAND
	JRST RESET0		;AND GO RESET ALL
   >

;"SET" FIELD DESCRIPTORS

$SET0::	TABLE
	T ACCOUNT,,.CHANG		;SET ACCOUNT
	T ADDRESS-BREAK,,.ADDRE	;SET ADDRESS-BREAK
   NEWF,<
	T ALERT				;SET ALERT
	T AUTOMATIC			;SET AUTOMATIC (MAIL-WATCH AND ALERTS)
   >
	T CARD-READER-INPUT-SET,,CRDSET	;SET CARD-READER-INPUT-SET (TO)
   PCLF,<
	T COMMAND-TRACE,,.CTRAC		;PCL Performed command trace
   >
	T CONTROL-C-CAPABILITY,,.CTRLC	;SET ^C ALLOWED
	T DEFAULT,,.SEDEF		;SET DEFAULT (FOR)
	T DIRECTORY,,.SDIR		;SET DIRECTORY
	T ENTRY-VECTOR,,.ENTRY		;SET PROGRAM ENTRY-VECTOR
	T FILE,,.SFILE			;SET FILE
   PCLF,<
	T INTEGER-VARIABLE,,SINVAR	;PCL
   >
   XTND,<
	T KEEP-FORK,,.KFRKC		;SET KEEP-FORK (ON <CTRL-C>)
   >
	T LATE-CLEAR-TYPEAHEAD,NOLG,.CIDLY ;SET (DELAYED CLEAR)
	T LOCATION			;SET LOGICAL LOCATION TO NODE NAME
   NONEWF,<
	T MAIL-WATCH,ONEWRD,.MWATC	;SET MAIL-WATCH
   >
   NEWF,<
	T MAIL-WATCH,,.MWATC		;SET MAIL-WATCH (FOR USER) USRNAM (COUNT) N
   >
	T NO,NOLG,.SETNO		;SET NO
	T PAGE-ACCESS,,.PAC		;SET PAGE-ACCESS
   MFRK,<
	T PROGRAM,,PROG			;SET PROGRAM
   >
	T RETRIEVAL-WAIT,,.OFL		;SET RETRIEVAL-WAIT (FOR OFFLINE FILES)
	T SESSION-REMARK,,SETSRM	;SET SESSION REMARK
	T SPOOLED-OUTPUT,,SPLSET	;SET SPOOLED-OUTPUT (TO)
   PCLF,<
	T STRING-VARIABLE,,SSTVAR	;PCL
   >
	T TAPE				;SET TAPE
	T TIME-LIMIT,NOLG,.STMLM	;TIME (TO) NUMBER
	T TRAP				;SET TRAP
	T TYPEOUT
	T UUO-SIMULATION,,.PAXL		;SET UUOS ALLOWED
	TEND

;"SET NO" FIELD DESCRIPTORS

$SETN::	TABLE
	T ADDRESS-BREAK,,.ADDRE		;SET NO ADDRESS BREAK
   NEWF,<
	T ALERT				;SET NO ALERT
	T AUTOMATIC			;SET NO AUTOMATIC (MAIL-WATCH AND ALERTS)
   >
   PCLF,<
	T COMMAND-TRACE,,.CTRAC		;PCL No Performed command trace
   >
	T CONTROL-C-CAPABILITY,,.CTRLC	;NO ^C ALLOWED
	T DEFAULT,,.NODEF		;SET NO DEFAULT
   XTND,<
	T KEEP-FORK,,.KFRKC		;SET NO KEEP-FORK (ON <CTRL-C>)
   >
	T LATE-CLEAR-TYPEAHEAD,NOLG,.CIDLY ;EARLY CLEAR
   XTND,<
	T LOGIN-MAIL,ONEWRD,.NOLM	;SET NO LOGIN-MAIL
   >
   NONEWF,<
	T MAIL-WATCH,ONEWRD,.MWATC	;SET NO MAIL-WATCH
   >
   NEWF,<
	T MAIL-WATCH,,.MWATC		;SET NO MAIL-WATCH (FOR USER) USRNAM
   >
	T RETRIEVAL-WAIT,,.OFL		;SET NO RETRIEVAL-WAIT (FOR OFFLINE FILES)
	T TIME-LIMIT,NOLG,.NOTIM	;CLEAR TIME LIMIT
	T TRAP,,NTRAP			;SET NO TRAP
	T UUO-SIMULATION,,.PAXL		;NO UUOS ALLOWED
	TEND
;"SET DEFAULT" FIELD DESCRIPTORS

TDEFAU::TABLE
	T CARDS,,.SDC
	T COMPILE-SWITCHES,,.SDCS
   PCLF,<
	T DECLARE,,.SDDCL		;PCL
   >
	T PAPER-TAPE,,.SDT
	T PLOT,,.SDPL			;SET DEFAULTS (FOR) PLOT
	T PRINT,,.SDP
   MFRK,<
	T PROGRAM,,SDPROG		;SET DEFAULT (FOR) PROGRAM
   >
	T SUBMIT,,.SDS			;SET DEFAULT (FOR) SUBMIT
	T TAKE,,.TKD			;SET DEFAULT (FOR) TAKE
	TEND

;"SET NO DEFAULT" FIELD DESCRIPTORS

$NODEF::TABLE
	T CARDS,,.SNDCP
	T COMPILE-SWITCHES,,.SNDCS	;SET NO DEFAULT COMPILE-SWITCHES
	T PAPER-TAPE,,.SNDTP
	T PLOT,,.SNDPL			;SET NO DEFAULTS (FOR) PLOT
	T PRINT,,.SNDP
   MFRK,<
	T PROGRAM,ONEWRD,SNDPRG		;SET NO DEFAULT (FOR) PROGRAM
   >
	T SUBMIT,,.SNDS			;SET NO DEFAULT (FOR) SUBMIT
	TEND

;"SET FILE" FIELD DESCRIPTORS

$SFILE::TABLE
	T ACCOUNT,			;SET FILE ACCOUNT (OF FILE) - (TO) -
   MFRK,<
	T EPHEMERAL,,.EPHM		;SET FILE EPHEMERAL
   >
   XARC <
	T EXPIRED,,.FEXP		;SET FILE EXPIRED
   >
	T GENERATION-RETENTION-COUNT,,.FILEV ;SET FILE VERSION-RETENTION-COUNT
	T INVISIBLE,			;SET FILE INVISIBLE <FILEGROUP>
	T NO,,.SFNO			;SET FILE NO
   XARC <
	T OFFLINE-EXPIRATION,,.FLINX	;SET FILE OFFLINE-EXPIRATION
	T ONLINE-EXPIRATION,,.FLONX	;SET FILE ONLINE-EXPIRATION
   >
	T PROHIBIT,WHLU,.FPROH		;SET FILE PROHIBIT (MIGRATION OF FILES)
	T PROTECTION,			;SET FILE PROTECTION (OF FILE) - (TO) -
   XARC <
	T RESIST,,.FRESI		;SET FILE RESIST (MIGRATION OF FILES)
   >
	T VISIBLE,			;SET FILE VISIBLE <FILEGROUP>
	TEND

;"SET FILE NO" FIELD DESCRIPTORS

$SFNO::	TABLE
   MFRK,<
	T EPHEMERAL,,.EPHM
   >
	T PROHIBIT,WHLU,.FPROH
   XARC <
	T RESIST,,.FRESI
   >
	TEND
;OPTIONS FOR THE "CONTINUE" COMMAND

   MFRK,<
$CONFD::FLDDB. .CMKEY,,$CMODE,,,[
	 FLDDB. .CMKEY,,FRKNMS,<Fork name,>,,[
	  FLDDB. .CMNUM,CM%SDH,10,<Octal fork number>,,[
	   FLDDB. .CMCMA,,,,,[
	    FLDDB. .CMCFM,,,,,]]]]

;AFTER THE FIRST OPTION ONLY THE FOLLOWING ARE ALLOWED:

$CONF1::FLDDB. .CMCMA,,,,,[
	 FLDDB. .CMCFM,,,,,]
   >
   NOMFRK,<
$CONFD::FLDDB. .CMKEY,,$CMODE,,,[
	 FLDDB. .CMCFM,,,,,]

$CONF1::FLDDB. .CMCFM,,,,,
   >
;DUMMY ENTRIES WHEN PCL NOT PRESENT

   NOPCLF,<
PCMXCT::
PCMPSI::
$SDEF::
PCMPSO::
PCMSVP::
PCMSVE::
PCMPOS::
PCMPOP::
PCIGEV::
   >

	END