Trailing-Edge
-
PDP-10 Archives
-
BB-4172G-BM
-
4-sources/c.mac
There are 18 other files named c.mac in the archive. Click here to see a list.
SUBTTL GENERAL CUSP MACROS %10(164) 12-OCT-74
.XCREF
IFNDEF %.C,<XLIST>
;***COPYRIGHT 1971, 1972, 1973, 1974 DIGITAL EQUIPMENT CORP., MAYNARD, MASS.***
;THIS IS A HEADER FILE TO PRODUCE C.MAC GIVEN MACTEN.MAC
;AND UUOSYM.MAC. THE THREE OF THEM CONCATENATED ARE AN EXACT
;REPLACEMENT FOR THE OLD C.MAC. REFERENCES TO C.MAC SHOULD
;GO AWAY IN FAVOR OF "SEARCH MACTEN,UUOSYM".
;DEFINE %.C TO LIST FILE
;DEFINE %.C==-1 TO ASSEMBLE C IN BOTH PASSES
;DEFINE %.C==-2 TO ALSO INCLUDE END STATEMENT
;DEFINE %.C==-3 TO MAKE C A UNIVERSAL FILE
;DETERMINE IF SPECIAL ASSEMBLY NEEDED
IF1,<%..C==1 ;ALWAYS ASSEMBLE PASS1
IFDEF %.C,< IFE %.C+2,<TITLE C -- LISTING OF C.MAC (CUSP PARAMETER FILE)>
IFE %.C+3,<UNIVERSAL C -- CUSP PARAMETER UNIVERSAL SYMBOL TABLE
.DIRECTIVE .NOBIN>
> >
IF2,<IFNDEF %.C,<%..C==0> ;SUPPLY VALUE IF USER DIDN'T
IFDEF %.C,<%..C==%.C ;USE USER'S VALUE FOR PASS2>
>
;DEFINE JOBDAT LOCATIONS WHICH CAN BE LOC-ED TO
IFN %..C+3,<
.CREF
GLOB <.JB41,.JBCST,.JBOPS,.JBREN,.JBVER>
.XCREF
>
.CREF
LIST
SALL ;CLEAN EXPANSION LISTINGS
IFE %..C,<PURGE %.C,%..C
TAPE> ;SKIP REST IF NO ASSEMBLY NEEDED
SUBTTL DEC-10 UNIVERSAL PARAMETERS
.XCREF
IFDEF %..C,<IFE %..C,< .CREF
TAPE >>
IFNDEF %..C,<.DIRECTIVE .NOBIN>
;***Copyright (C) 1971,1972,1973,1974,1975,1977 Digital Equipment Corp., Maynard, Mass.***
;THIS PARAMETER FILE CONTAINS MACRO DEFINITIONS, SYMBOL DEFINITIONS
; AND OPDEFS WHICH ARE OPERATING SYSTEM INDEPENDENT. THIS
; FILE WAS ORIGINALLY PART OF C.MAC THE TOPS-10 CUSP UUO
; PARAMETER FILE.
MACWHO==0 ;LAST PATCHER
MACVER==2 ;MAJOR VERSION
MACMIN==0 ;MINOR VERSION
MACEDT==25 ;EDIT LEVEL
.CREF
SALL
SUBTTL TABLE OF CONTENTS
; SECTION PAGE
; 1. REVISION HISTORY...................................... 3
; 2. INTERESTING SYMBOLS................................... 4
; 3. MACRO DEFINITIONS -- ND, XP, EXT, GLOB................ 5
; 4. MACRO DEFINITIONS -- LISTING CONTROL.................. 7
; 5. MACRO DEFINITIONS -- BYTE MANIPULATION................ 8
; 6. MACRO DEFINITIONS -- INFO/REDEF....................... 9
; 7. MACRO DEFINITIONS -- STACK CONTROL.................... 10
; 8. SIMPLE STRUCTURE AND LOAD/STORE....................... 11
; 9. FLAG DEFINITIONS...................................... 12
; 10. MACRO DEFINITIONS -- GENERATE OP CODES ABCX........... 13
; 11. MACRO DEFINITIONS -- JUMPPT........................... 22
; 12. USEFUL OPDEFS......................................... 23
; 13. SYMBOLS FOR THE CONTROL CHARACTERS.................... 24
; 14. HARDWARE BITS OF INTEREST TO USERS.................... 25
SUBTTL REVISION HISTORY
;BASED UPON C.MAC %7(163) RELEASED MAY, 1974
;VERSIONS RESET WHEN CREATED
;1 CREATION
;2 CLEAN UP AND CORRECT BUGS INTRODUCED IN ORIGINAL SPLIT
;3 (10-14,209) REMOVE PDP-6 TEST IF SAME AS KA IN JUMPPT
;4 MASK DOWN VALUE IN INSVL.
;5 (10-14,209) ADD .SUA?? SYMBOLS
;6 ADD LSTOF., LSTON.
;7 ADD VRSN. AND VR.???
;10 ADD SHOW.
;11 ADD CONT.
;12 ADD DEFST., LOAD., STOR.
;13 ADD FLAG., LFLAG., SFLAG. AND CHANGE TX??
;14 ADD .LHALF, .RHALF, .FWORD
;15 ADD .ZERO5
;16 ADD FRAME.
;17 ADD TY??.
;20 ADD ZERO.
;21 ADD NDS.
;22 SIMPLIFY INSVL.
;23 ADD KL-10 IN JUMPPT
;24 WITHDRAW 13 UNTIL UNDERSTOOD
.DIRECTIVE .NOBIN
;+.CENTER
;TITLE. MACRO
;.SKIP 2
;THE TITLE. MACRO IS DESIGNED TO HANDLE THE PROBLEMS OF
;MAINTAINING VERSION NUMBERS IN PROGRAMS. THE MACRO GENERATES
;A SERIES OF MACROS TO PERFORM VARIOUS FUNCTIONS FOR THE
;MACRO-10 PROGRAMMER. THE GENERAL FORM IS:
;.PARAGRAPH 0
;TITLE. (ABV,PRGNAM,COMMENT)
;.TAB STOPS 8
;.LEFT MARG 8
;.PARAGRAPH -8
;WHERE: ABV=3-CHAR PROGRAM ABBREVIATION, IE. "DRT" FOR DIRECT.
;.BREAK
;PRGNAM=PROGRAM NAME, DIRECT.
;.BREAK
;COMMENT=SHORT STATEMENT STATING PROGRAM'S FUNCTION
;
;.LEFT MARG 0
;.PARA 0
;THE TITLE. MACRO ASSUMES THAT FOUR SYMBOLS ARE DEFINED,
;XXXVER, XXXMIN, XXXWHO AND XXXEDT, WHERE XXX=THE 3-CHARACTER
;PROGRAM ABBREVIATION SUPPLIED TO THE MACRO.
;TWO SYMBOLS ARE DEFINED XXXASC AND XXXSIX WHICH ARE SYMBOLICALLY
;AND RESPECTIVELY DEFINED AS THE ASCII AND SIXBIT VALUES OF THE
;PROGRAM ABBREVIATION SUPPLIED.
;-
SUBTTL TITLE MACRO
;&.SUBTTL TITLE MACRO
; TITLE. (DRT,DIRECT,PROGRAM TO LIST DIRECTORIES)
DEFINE TITLE.(ABV,PRGNAM,COMENT),<
.XCREF
Z==0
IFNDEF ABV'VER,<Z==-1>
IFNDEF ABV'MIN,<Z==-1>
IFNDEF ABV'EDT,<Z==-1>
IFNDEF ABV'WHO,<Z==-1>
IFL Z,<PRINTX ?SYMBOLS ABV'WHO,ABV'VER,ABV'MIN AND ABV'EDT NOT DEFINED
PRINTX ?VERSION SYMBOLS MUST BE DEFINED BEFORE CALLING TITLE. MACRO
END>
.CREF
IF2,<LALL>
ABV'SIX==SIXBIT /ABV/ ; PRGNAM ABBREVIATION IN SIXBIT
ABV'ASC==ASCIZ /ABV/ ; PRGNAM ABBREVIATION IN ASCII
SALL
.XCREF
%FIRST=ABV'MIN/^D26
IFE %FIRST,<%SECON==ABV'MIN
%FIRST==0>
IFG %FIRST,<%SECON=ABV'MIN-<^D26*%FIRST>>
IFE ABV'MIN-^D26,<%SECON==ABV'MIN
%FIRST=0>
IFE ABV'MIN-^D52,<%SECON==^D26
%FIRST=1>
; DEFINE ALL THE MACROS
BUILD$ (PRGNAM,\ABV'VER,\ABV'MIN,\%FIRST,<,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,
T,U,V,W,X,Y,Z>,\%SECON,<,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,
V,W,X,Y,Z>,\ABV'EDT,\ABV'WHO,COMENT,ABV)
IF2,<PURGE %SECON,%FIRST,Z>
.CREF>
SUBTTL BUILD$ MACRO
;+THE TITLE. MACRO GENERATES THE FOLLOWING MACROS TO
;BE OPTIONALLY CALLED BY THE USER.
;.LEFT MARG 8
;-.TAB STOPS 8
DEFINE BUILD$ (PRGNAM,MAJN,MINOR,O1,L1,O2,L2,EDIT,CUS,COMENT,ABV,%TMP,%A,%B),<
%TMP==-1
IRP L1,<%TMP==%TMP+1
IFE O1-%TMP, <%TMP==-1
IRP L2,<%TMP==%TMP+1
IFE O2-%TMP, <
;+.PARA -8
;XXXTTL MACRO TO GENERATE A TITLE STATEMENT OF THE FORM:
;.BREAK
;-TITLE PRGNAM COMMENT VERSION
DEFINE ABV'TTL,<IFG CUS,<
TITLE PRGNAM - COMENT %'MAJN'L1'L2(EDIT)-CUS
>IFE CUS,<
TITLE PRGNAM - COMENT %'MAJN'L1'L2(EDIT)
>>
;+.PARA -8
;XXX137 MACRO TO SETUP LOCATION 137 WITH THE SPECIFIED
;-VERSION NUMBER. NOTE: THE MACRO DOES ITS OWN "LOC" AND "RELOC".
DEFINE ABV'137,<IFG CUS,<
IF2,<LALL>
LOC 137
BYTE (3)ABV'WHO(9)ABV'VER(6)ABV'MIN(18)ABV'EDT ; PRGNAM %'MAJN'L1'L2(EDIT)-CUS
RELOC
SALL
> IFE CUS,<
IF2,<LALL>
LOC 137
BYTE (3)ABV'WHO(9)ABV'VER(6)ABV'MIN(18)ABV'EDT ; PRGNAM %'MAJN'L1'L2(EDIT)
RELOC
SALL
>>
; MACRO TO DEFINE VERSION # AT CURRENT LOCATION
;+.PARA -8
;XXXVRS MACRO TO DEFINE THE VERSION NUMBER AT AN
;-ARBITRARY USER LOCATION.
DEFINE ABV'VRS,<IFG CUS,<
IF2,<LALL>
BYTE (3)ABV'WHO(9)ABV'VER(6)ABV'MIN(18)ABV'EDT ; PRGNAM %'MAJN'L1'L2(EDIT)-CUS
SALL
> IFE CUS,<
IF2,<LALL>
BYTE (3)ABV'WHO(9)ABV'VER(6)ABV'MIN(18)ABV'EDT ; PRGNAM %'MAJN'L1'L2(EDIT)
SALL
>>
; GENERATE A PASS2 PRINTX STATEMENT
;+.PARA -8
;-XXXPTX GENERATES A PASS2 PRINTX STATEMENT.
DEFINE ABV'PTX,<
IF2,<
IFG CUS,<PRINTX PRGNAM %'MAJN'L1'L2(EDIT)-CUS COMENT
> IFE CUS,<PRINTX PRGNAM %'MAJN'L1'L2(EDIT) COMENT
>>>
;+.PARA -8
;XXXSTL THE XXXSTL MACRO GENERATES A NEW PAGE
;VIA THE MACRO PAGE PSEUDO-OP AND OPTIONALLY
;DEFINES A NEW SUBTTL COMMAND. THE CALL IS "XXXSTL (COMMENT)".
;IF THE XXXSTL MACRO IS CALLED WITH A NULL ARGUMENT A COMMENT
; LINE IS GENERATED AT THE BOTTOM OF THE CURRENT PAGE
; AND AT THE TOP OF THE NEXT PAGE INDICATING THAT THE PAGE
;-HAS BEEN CONTINUED.
DEFINE ABV'STL (TEXT),<IFNB <TEXT>,<
SUBTTL TEXT
PAGE
> IFB <TEXT>,<
LALL
PAGE ; CONTINUED TO NEXT PAGE
SALL ; CONTINUED FROM PREVIOUS PAGE
>>
;+.PARA -8
;XXXUNV MACRO TO GENERATE A UNIVERSAL STATEMENT. THE MACRO IN
;EFFECT IS AN EXACT COPY OF THE XXXTTL MACRO EXCEPT THAT THE
;-WORD "UNIVERSAL" REPLACES THE WORD "TITLE".
DEFINE ABV'UNV,<IFG CUS,<
LALL
UNIVERSAL PRGNAM - COMENT %'MAJN'L1'L2(EDIT)-CUS
SALL
>IFE CUS,<
LALL
UNIVERSAL PRGNAM - COMENT %'MAJN'L1'L2(EDIT)
SALL
>>
;+.PARA -8
;XXXERR MACRO TO TYPE A FATAL ERROR MESSAGE ON THE
;USER'S TERMINAL. THE CALL IS OF THE FORM:
;.BREAK
;XXXERR (ZZZ,ERROR MESSAGE,<PDP-10 INSTRUCTION>)
;.BREAK
;ZZZ IS THE 3-CHARACTER ERROR CODE, ERROR MESSAGE IS THE ASCIZ
;STRING TO BE TYPED ON THE TERMINAL AND PDP-10 INSTRUCTION IS
;AN OPTIONAL ARGUMENT INDICATING WHAT THE USER WANTS TO DO
;ABOUT THE ERROR JUST TYPED. IF THE ARGUMENT IS NULL AN
;-EXIT IS EXECUTED.
DEFINE ABV'ERR (COD,MSG,INSTR),<
...'COD: JRST [
OUTSTR [ASCIZ \
? ABV''COD MSG\]
IFNB <INSTR>,<INSTR>
IFB <INSTR>,<EXIT>
]>
;+.PARA -8
;XXXWRN MACRO SIMILAR TO THE XXXERR MACRO EXCEPT THAT A
;WARNING MESSAGE IS ISSUED RATHER THAN A FATAL AND
;-THE DEFAULT PDP-10 INSTRUCTION TO BE EXECUTED IS "JRST .+1".
DEFINE ABV'WRN (COD,MSG,INSTR),<
...'COD: JRST [
OUTSTR [ASCIZ \
% ABV''COD MSG\]
IFNB <INSTR>,<INSTR>
IFB <INSTR>,<JRST .+1>
]>
;; DEFINE NEW MACROS HERE
>>>>;; DELETED RIGHT BRACKET HERE
PURGE %TMP,%A,%B
>
SUBTTL MODSHW MACRO
;+
;.SKIP 2
;.LEFT MARG 0
;.CENTER
;MODSHW MACRO
;.PARA 0
;THE MODSHW MACRO IS DESIGNED TO "SHOW" VERSION VALUES OF RELATED
;MODULES. THE FORM IS "MODSHW (ABV)" WHERE ABV IS THE 3-CHARACTER
;PROGRAM ABBREVIATION. THE SYMBOL "%%ABV" IS DEFINED WITH THAT VALUE.
;-
DEFINE MODSHW (ABV),<
LALL
%%'ABV==BYTE (3)ABV'WHO(9)ABV'VER(6)ABV'MIN(18)ABV'EDT
SALL
>
SUBTTL IDENTITY
TITLE. (MAC,MACTEN,DECSYSTEM-10 COMMON PARAMETER FILE)
IFNDEF %..C,<MACUNV>
MACPTX
SUBTTL INTERESTING SYMBOLS
;VERSION FORMAT COMPONENTS
VR.WHO==7B2 ;WHO EDITTED (0=DEC DEVELOPMENT, 1=OTHER DEC,
; 2-4=CUSTOMER, 5-7=END USER)
VR.VER==777B11 ;MAJOR DEC VERSION
VR.MIN==77B17 ;MINOR DEC VERSION (1=A, ETC.)
VR.EDT==777777 ;EDIT LEVEL
;MACRO TO FORMAT THIS MODULE'S VERSION
; VRSN. PREFIX
;
;ASSUMES SYMBOLS OF FORM PREFIX'CUS, ..VER, ETC.
DEFINE VRSN.(PFX),<BYTE (3)PFX'WHO (9)PFX'VER (6)PFX'MIN (18)PFX'EDT>
;MISC. CONSTANTS
.INFIN==377777,,777777 ;PLUS INFINITY
.MINFI==1B0 ;MINUS INFINITY
LH.ALF==777777B17 ;LEFT HALF WORD
RH.ALF==777777 ;RIGHT HALF WORD
FW.ORD==-1 ;FULL WORD
.ZERO5==0 ;MNEMONIC THAT NO @ OR INDEX POSSIBLE
SUBTTL MACRO DEFINITIONS -- ND, XP, EXT, GLOB
;MACRO TO DEFINE A SYMBOL IF NOT ALREADY DEFINED
; ND SYMBOL,VALUE
DEFINE ND(SYMBOL,VALUE),<
IFNDEF SYMBOL,<SYMBOL==VALUE>
>
;MACRO TO SHOW THE VALUE OF AN ABSOLUTE SYMBOL
; SHOW SYMBOL
;WARNING-- DO NOT USE AS LAST LOCATION IN A SEGMENT
DEFINE SHOW.(ARG$),< .XCREF
EXP <ARG$>
.ORG .-1
.CREF>
;MACRO TO DEFINE A SYMBOL IF NOT ALREADY DEFINED AND SHOW ITS VALUE
;WARNING-- DO NOT USE AS LAST LOCATION IN A SEGMENT
DEFINE NDS.(SYMBOL,VALUE),<
IFNDEF SYMBOL,<SYMBOL==VALUE>
SHOW. (SYMBOL)
>
;MACRO TO DEFINE A SYMBOL AND FORCE IT INTERN
; XP SYMBOL,VALUE,PRINT
; WHERE PRINT IS NON-BLANK TO PRINT OUT FROM DDT
DEFINE XP(SYMBOL,VALUE,PRINT),<
INTERN SYMBOL
IFB <PRINT>,<SYMBOL==VALUE>
IFNB <PRINT>,<SYMBOL=VALUE>
>
;MACRO TO EXTERN A SYMBOL IF NOT DEFINED IN THIS ROUTINE
; EXT SYMBOL
DEFINE EXT(SYMBOL),<
IRP SYMBOL,<
IF2,< IFNDEF SYMBOL,<EXTERN SYMBOL> >>>
;MACRO TO EXTERN OR INTERN A SYMBOL
; GLOB SYMBOL
DEFINE GLOB(SYMBOL),<
IRP SYMBOL,<
IF2,< IFDEF SYMBOL,<INTERN SYMBOL>
IFNDEF SYMBOL,<EXTERN SYMBOL>
SUPPRE SYMBOL>>>
SUBTTL MACRO DEFINITIONS -- LISTING CONTROL
;THIS MACRO IS USED TO FORCE A PAGE OVERFLOW WITH COMMENT
;TO HAVE LISTINGS MATCH THE PROPOSED CODING STANDARD.
;
;IT IS INVOKED WHENEVER A PAGE OVERFLOW WOULD HAVE HAPPENED.
;
;
;ACCORDING TO THE PROPOSED STANDARD, ALL SOURCE FOR A ROUTINE
;MUST OCCUR ON ONE PAGE. HOWEVER, IT IS IMPORTANT FOR THE
;USER TO FIND "SENTENCE" BREAKS TO FORM THE OVERFLOW (EJECT)
;POINTS. WHENEVER OVERFLOW OCCURS, A COMMENT
;TO THAT EFFECT SHOULD APPEAR IN THE LISTING. ALL THIS IS
;ACCOMPLISHED BY THE USER INCLUDING THE MACRO "CONT." IN HIS
;SOURCE AT THE POINT OF THE OVERFLOW. NO BLANKS SHOULD PRECEED
;OR FOLLOW THE MACRO.
DEFINE CONT.<LALL
PAGE ;(CONTINUED ON NEXT PAGE)
SALL ;(CONTINUED FROM PREVIOUS PAGE)
>
;MACROS TO TURN ON AND OFF LISTINGS WHEN NESTING
; LSTOF. TURNS OFF LISTING AND CREF
; LSTOF. X TURNS OFF LISTING
; LSTON. RESTORES LISTING AND CREF IF TOP LEVEL
;IF LSTIN. IS DEFINED AS .MINFI, THEN ALL LISTINGS ON
DEFINE LSTOF.(CREF$),<
IFNDEF LSTIN., LSTIN.==0
IFE LSTIN.,<
IFB <CREF$>, .XCREF
XLIST>
LSTIN.==LSTIN.+1
>
DEFINE LSTON.,<
IFG LSTIN., LSTIN.==LSTIN.-1
IFLE LSTIN.,< .CREF
LIST>
>
SUBTTL MACRO DEFINITIONS -- BYTE MANIPULATION
;MACRO TO COMPUTE THE WIDTH OF A MASK
; "WID" RETURNS THE LENGTH OF THE LEFTMOST STRING OF
; CONSECUTIVE ONES IN THE WORD.
DEFINE WID(MASK),<<^L<-<<MASK>_<^L<MASK>>>-1>>>
;MACRO TO COMPUTE THE POSITION OF A MASK
DEFINE POS(MASK),<<^L<MASK>+^L<-<<MASK>_<^L<MASK>>>-1>-1>>
;MACRO TO BUILD A POINTER TO A MASKED QUANTITY
; POINTR LOCATION,MASK
DEFINE POINTR(LOC,MASK),<<POINT WID(MASK),LOC,POS(MASK)>>
;MACRO TO BUILD A MASK "WID" BITS WIDE, WITH ITS RIGHTMOST BIT
; IN THE BIT POSITION "POS". (I.E. A MASK FOR THE BYTE
; POINTED TO BY THE BYTE POINTER "POINT WID,LOC,POS")
DEFINE MASK.(WID,POS),<<<<1_<WID>>-1>B<POS>>>
;MACRO TO DEFINE A SYMBOL WITH ONLY ONE BIT ON, IN THE SAME POSITION AS
; THE RIGHTMOST BIT IN "MASK" (OR 0, IF "MASK" = 0)
DEFINE RGHBT.(MASK),<<<MASK>&-<MASK>>>
;MACRO TO DEFINE A SYMBOL WITH ONLY ONE BIT ON, IN THE SAME POSITION AS
; THE LEFTMOST BIT IN "MASK" (OR 0, IF "MASK" = 0)
DEFINE LFTBT.(MASK),<<1B<^L<MASK>>>>
; "FILIN." RETURNS A WORD WITH A CONSECUTIVE STRING OF ONES FROM THE
; BIT POSITION OF THE LEFTMOST ONE IN "MASK" THROUGH THE BIT POSITION
; OF THE RIGHTMOST ONE IN "MASK" INCLUSIVE.
DEFINE FILIN.(MASK),<<<MASK>!<<LFTBT.(MASK)>-<RGHBT.(MASK)>>>>
; "ALIGN." RETURNS THE NUMBER OF TRAILING ZEROS IN "MASK"
; (I.E. A VALUE WHICH IS THE RIGHT COUNTERPART OF THE VALUE
; RETURNED BY THE MACRO-10 OPERATOR "^L")
DEFINE ALIGN.(MASK),<<^D35-<^L<RGHBT.(MASK)>>+<^D37*<<^L<RGHBT.(MASK)>>/^D36>>>>
; BTSWP.(AC,BIT-1,BIT-2) SWAPS BITS 1 AND 2 IN AC.
; BIT-1 AND BIT-2 ARE DECIMALS 0-35
DEFINE BTSWP.(AC,BIT1,BIT2),<
REPEAT 3,<
TXCE AC,1B<BIT1>!1B<BIT2>
>>
; "INSVL." POSITIONS VALUE IN MASK
DEFINE INSVL.(VALUE,MASK),<<<<VALUE>B<POS(<MASK>)>>&<MASK>>>
SUBTTL MACRO DEFINITIONS -- INFO/REDEF
;THE FOLLOWING MACROS FACILITATE THE ACCUMULATION OF TEXT BY PERMITTING
;THE USER TO APPEND A LINE OF TEXT TO THE BODY OF TEXT ALREADY
;ACCUMULATED. THE MACROS ARE USED IN THE FOLLOWING WAY:
;1. TO CLEAR THE MECHANISM:
; CINFO.
;2. TO APPEND THE LINE "SAMPLE LINE" (FOLLOWED BY CR-LF) TO THE
;END OF THE TEXT ACCUMULATED SO FAR:
; INFO. REDEF.,"SAMPLE LINE"
;3. TO DEFINE A MACRO "NAME" SO THAT ITS EXPANSION WILL BE THE TEXT
;ACCUMULATED SO FAR, (NOTE-IT ADDS A NULL LINE TO THE END):
; INFO. DEFINE "NAME"
DEFINE CINFO. <
DEFINE INFO.(OPCODE,NEWARG)<
OPCODE NEWARG>>
DEFINE REDEF.(OLDARG)<
DEFINE INFO.(OPCODE,NEWARG)<
OPCODE <OLDARG
NEWARG>>>
SUBTTL MACRO DEFINITIONS -- STACK CONTROL
;MACRO TO DEFINE A BUNCH OF WORDS ON THE STACK.
;EACH ARGUMENT TO THE FRAME. MACRO ALLOCATES 1 WORD ON THE
; STACK AND DEFINES A MACRO WITH THE SAME NAME AS -N(P).
;
;WARNING: THIS MACRO DEFINES THINGS IN TERMS OF (P) AND THEREFOR
; NOTHING ELSE MAY BE PUSHED ON THE STACK!!!
DEFINE FRAME. (LIST,%A),<
OLD%%%==10 ;;SAVE CURRENT RADIX
RADIX 8
N%%%==0 ;;ARGUMENT COUNT
IRP LIST,<
FR%%AM (LIST,\<N%%%+1>) ;;DEFINE SYMBOL MACRO
N%%%==N%%%+1 ;;COUNT ARGS
>
ADD P,[N%%%,,N%%%] ;;ALLOCATE SPACE
PUSHJ P,%A ;;DO THE SUBROUTINE
SKIPA
AOS -N%%%(P) ;;PASS ON SKIP RETURN
SUB P,[N%%%,,N%%%] ;;DEALLOCATE SPACE
POPJ P, ;;RETURN
%A:
RADIX OLD%%%
PURGE N%%%,OLD%%%
>
DEFINE FR%%AM (A,B),<
DEFINE A,<-^O'B(P)>
>
SUBTTL SIMPLE STRUCTURE AND LOAD/STORE
;MACROS TO DEFINE AND LOAD/STORE A BYTE LOCATION
;MACRO DEFST. (BYTE NAME, WORD LOCATION, MASK)
; DEFINES THE LOCATION AND SIZE OF THE BYTE
DEFINE DEFST.(NAM$,LOC$,MASK$),<
..OLD==10
..TYP==3
IFE <MASK$>+1,..TYP==0
IFE <MASK$>-^O777777,..TYP==1
IFE <MASK$>-^O777777B17,..TYP==2
..POS==POS(<MASK$>)
..WID==WID(<MASK$>)
RADIX 10
DF%%ST (\..TYP,NAM$,<LOC$>,\..POS,\..WID)
PURGE ..OLD,..TYP,..POS,..WID>
; THIS IS A HELPER MACRO FOR INTERNAL USE
DEFINE DF%%ST (TYP$,NAM$,LOC$,POS$,WID$),<
RADIX ..OLD
DEFINE NAM$ (OPS,AC,E),<
..C==0
IRP OPS,<
IFE TYP$-..C,<
STOPI
IFN 3-..C, OPS <AC>,LOC$''E
IFE 3-..C, OPS <AC>,[POINT WID$,LOC$''E,POS$]
>
..C==..C+1>
PURGE ..C>
>
;MACRO LOAD. (AC, BYTE NAME, OPTIONAL LOC)
; WILL LOAD AC WITH THE CONTENTS OF THE BYTE. IF AND ONLY
; NO LOCATION WAS GIVEN IN DEFST., GIVE IT IN LOAD.
;MACRO STOR. IS IDENTICAL EXCEPT THE AC IS STORED INTO THE BYTE.
;MACRO ZERO. IS IDENTICAL (FIRST ARG IGNORED) EXCEPT ZERO IS STORED
DEFINE LOAD. (AC$,STR$,E$),< STR$ (<MOVE,HRRZ,HLRZ,LDB>,<AC$>,<E$>)>
DEFINE STOR. (AC$,STR$,E$),< STR$ (<MOVEM,HRRM,HRLM,DPB>,<AC$>,<E$>)>
DEFINE ZERO. (AC$,STR$,E$),< STR$ (<SETZM,HLLZS,HRRZS,<PRINTX ?CAN'T ZERO BYTE>>,<AC$>,<E$>)>
SUBTTL FLAG DEFINITIONS
;MACRO FLAG. DEFINES A LIST OF FLAGS AS BEING IN
;A PARTICULAR REGISTER IN SUCH A FASHION THAT
;THE BITS ARE ASSIGNED AT ASSEMBLY TIME AND THE REGISTER AND
;BITS ARE "REMEMBERED" FOR FUTURE USE IN THE TX?? MACROS.
;;THIS WILL BE DEFINED AT SOME FUTURE TIME AND VERSION.
SUBTTL MACRO DEFINITIONS -- GENERATE OP CODES ABCX
;MACRO TO GENERATE MOVEI, MOVSI, OR MOVE [] AS APPROPRIATE
; ALSO HRLOI, HRROI
DEFINE MOVX (AC,FLAG),<
.XCREF
TEST%%=0
IFE <<FLAG>_-^D18>,<
TEST%%=1
.CREF
MOVEI AC,<FLAG>
.XCREF
>
IFN <FLAG>,<
IFE <<FLAG>_^D18>,<
TEST%%=1
.CREF
MOVSI AC,(FLAG)
.XCREF
>
IFE <<<FLAG>_-^D18>-^O777777>,<
TEST%%=1
.CREF
HRROI AC,<FLAG>
.XCREF
>
IFE TEST%%,<
IFE <<<FLAG>_^D18>-^O777777B17>,<
TEST%%=1
.CREF
HRLOI AC,(<FLAG>-^O777777)
.XCREF
>
IFE TEST%%,<
.CREF
MOVE AC,[FLAG]
>>>
PURGE TEST%%
.CREF>
;STORE (AC,FIRST,LAST,CONSTANT) PUTS CONSTANT IN FIRST THRU LAST.
DEFINE STORE(AC,FIRST,LAST,CONS),<
IFE <CONS>,< SETZM FIRST> ;;IF CONS=0, CLEAR FIRST
IFE <CONS>+1,< SETOM FIRST> ;;IF CONS=-1, SET FIRST TO -1
IFN <CONS>*<<CONS>+1>,<MOVX AC,<CONS> ;;ELSE DO IT
MOVEM AC,FIRST> ;; THE HARD WAY
IFNB <LAST>,< ;;IF MORE THAN ONE LOCATION
MOVE AC,[FIRST,,FIRST+1]
BLT AC,LAST ;;DISTRIBUTE THE CONSTANT
>>
;GENERATE CAI OR CAM AS APPROPRIATE
DEFINE CAX (AC,VAL),<OP%%CA (AC,VAL,)>
DEFINE CAXL (AC,VAL),<OP%%CA (AC,VAL,L)>
DEFINE CAXLE (AC,VAL),<OP%%CA (AC,VAL,LE)>
DEFINE CAXE (AC,VAL),<OP%%CA (AC,VAL,E)>
DEFINE CAXG (AC,VAL),<OP%%CA (AC,VAL,G)>
DEFINE CAXGE (AC,VAL),<OP%%CA (AC,VAL,GE)>
DEFINE CAXN (AC,VAL),<OP%%CA (AC,VAL,N)>
DEFINE CAXA (AC,VAL),<OP%%CA (AC,VAL,A)>
DEFINE OP%%CA (AC,VALUE,CODE),<
.XCREF
IFE <<VALUE>_-^D18>,<
.CREF
CAI'CODE AC,<VALUE>
.XCREF
>
IFN <<VALUE>_-^D18>,<
.CREF
CAM'CODE AC,[VALUE]
.XCREF
>
.CREF>
;GENERATE IMMEDIATE OR MEMORY CONSTANTS
DEFINE ADDX (AC,VAL),<OP%%IA (AC,VAL,ADD,SUB)>
DEFINE SUBX (AC,VAL),<OP%%IA (AC,VAL,SUB,ADD)>
DEFINE MULX (AC,VAL),<OP%%IN (AC,VAL,MUL)>
DEFINE IMULX (AC,VAL),<OP%%IN (AC,VAL,IMUL)>
DEFINE DIVX (AC,VAL),<OP%%IN (AC,VAL,DIV)>
DEFINE IDIVX (AC,VAL),<OP%%IN (AC,VAL,IDIV)>
DEFINE OP%%IA (AC,VALUE,CODE,ALT),<
.XCREF
IFE <<<VALUE>_-^D18>-^O777777>,<
.CREF
ALT'I AC,-<VALUE>
.XCREF
>
IFN <<<VALUE>_-^D18>-^O777777>,<
OP%%IN AC,<VALUE>,CODE
>
.CREF>
DEFINE OP%%IN (AC,VALUE,CODE),<
.XCREF
IFE <<VALUE>_-^D18>,<
.CREF
CODE'I AC,<VALUE>
.XCREF
>
IFN <<VALUE>_-^D18>,<
.CREF
CODE AC,[VALUE]
.XCREF
>
.CREF>
;GENERATE IMMEDIATE OR MEMORY FOR FLOATING POINT
DEFINE FADRX (AC,VAL),<OP%%FA (AC,VAL,FADR,FSBR)>
DEFINE FSBRX (AC,VAL),<OP%%FA (AC,VAL,FSBR,FADR)>
DEFINE FMPRX (AC,VAL),<OP%%FP (AC,VAL,FMPR)>
DEFINE FDVRX (AC,VAL),<OP%%FP (AC,VAL,FDVR)>
DEFINE OP%%FA (AC,VALUE,CODE,ALT),<
.XCREF
IFE <<<VALUE>_^D18>-^O777777B17>,<
.CREF
ALT'I AC,(-<VALUE>)
.XCREF
>
IFN <<<VALUE>_^D18>-^O777777B17>,<
OP%%FP AC,<VALUE>,CODE
>
.CREF
>
DEFINE OP%%FP (AC,VALUE,CODE),<
.XCREF
IFE <<VALUE>_^D18>,<
.CREF
CODE'I AC,(VALUE)
.XCREF
>
IFN <<VALUE>_^D18>,<
.CREF
CODE AC,[VALUE]
.XCREF
>
.CREF>
;MACRO TO GENERATE MACROS OF THE FORM TXYY. THESE MACRO REPLACE
; A TLYY OR A TRYY DEPENDING UPON THEIR ARGUMENT. SEE EXAMPLES:
;
; CALL RESULT
; TXNE F,1B20 TRNE F,1B20
; TXON F,1B0 TLON F,(1B0)
; TXZ F,1B1!1B31 TDZ F,[1B1!1B31]
;
;IF CALLED WITH ONLY ONE ARG, IT IS ASSUMED TO BE DEFINED BY A FLAG. MACRO
.XCREF
DEFINE TX0%% (M,S),<
IRP M,<
IRP S,<
DEFINE TX'M'S (AC,FLAG),<
.XCREF
IFB <FLAG>, OP%%TX <^O37777777&AC>,1B<AC_-^D30>,TL'M'S,TR'M'S,TD'M'S
IFNB <FLAG>, OP%%TX AC,<FLAG>,TL'M'S,TR'M'S,TD'M'S
.CREF
>>>>
TX0%% <N,Z,O,C>,<E,N,A>
PURGE TX0%%
.CREF
DEFINE TXN (AC,FLAG),<
IFB <FLAG>, JFCL 0
IFNB <FLAG>, TRN AC,<,,<FLAG>>
>
DEFINE TXZ (AC,FLAG),<
.XCREF
IFB <FLAG>, TXZ (<^O37777777&AC>,1B<AC_-^D30>)
IFNB <FLAG>,<
IFN <<AC>&^O777777777760>, PRINTX ? AC IS NOT AN ACCUMULATOR
IFE <<<FLAG>_-^D18>-^O777777>,<
.CREF
ANDI AC,<,,-1-<FLAG>>
.XCREF>
IFN <<<FLAG>_-^D18>-^O777777>,<
OP%%TX AC,<FLAG>,TLZ,TRZ,TDZ
>> .CREF>
DEFINE TXO (AC,FLAG),<
.XCREF
IFB <FLAG>, TXO (<^O37777777&AC>,1B<AC_-^D30>)
IFNB <FLAG>,<
IFN <<AC>&^O777777777760>, PRINTX ? AC IS NOT AN ACCUMULATOR
IFE <<<FLAG>_-^D18>-^O777777>,<
.CREF
ORCMI AC,<,,-1-<FLAG>>
.XCREF>
IFN <<<FLAG>_-^D18>-^O777777>,<
OP%%TX AC,<FLAG>,TLO,TRO,TDO
>> .CREF>
DEFINE TXC (AC,FLAG),<
.XCREF
IFB <FLAG>, TXC (<^O37777777&AC>,1B<AC_-^D30>)
IFNB <FLAG>,<
IFN <<AC>&^O777777777760>, PRINTX ? AC IS NOT AN ACCUMULATOR
IFE <<<FLAG>_-^D18>-^O777777>,<
.CREF
EQVI AC,<,,-1-<FLAG>>
.XCREF>
IFN <<<FLAG>_-^D18>-^O777777>,<
OP%%TX AC,<FLAG>,TLC,TRC,TDC
>> .CREF>
DEFINE OP%%TX (AC,FLAG,L,R,D)<
.XCREF
IFN <<AC>&^O777777777760>, PRINTX ? AC IS NOT AN ACCUMULATOR
TEMP%%=0
IFE <<FLAG>_^D18>,<
IFN <FLAG>,<
TEMP%%=1
.CREF
L AC,(FLAG)
.XCREF
>>
IFE <<FLAG>_-^D18>,<
TEMP%%=1
.CREF
R AC,<FLAG>
.XCREF
>
IFE TEMP%%,<
.CREF
D AC,[FLAG]
>
PURGE TEMP%%
.CREF>
;DEFINE MNEMONIC CODES FOR SOME OF ABOVE
DEFINE IORX (AC,FLAG),<TXO AC,<FLAG>>
DEFINE ANDX (AC,FLAG),<TXZ AC,-1-<FLAG>>
DEFINE XORX (AC,FLAG),<TXC AC,<FLAG>>
;MACROS TO TEST AND SET/CLEAR/COMPLEMENT FLAGS WHICH ARE NOT
;IN ACCUMULATORS. BE VERY CAREFUL THAT THESE GENERATE TWO
;INSTRUCTIONS, SO CAN NOT BE SKIPPED OVER.
;THEY EACH HAVE TWO ARGUMENTS, THE FIRST IS A SCRATCH AC
; AND THE SECOND IS THE FLAG WHICH WAS DEFINED IN A FLAG. MACRO.
DEFINE TYNE. (AC,FLAG),<
MOVX AC,1B<FLAG_-^D30>
.XCREF
<TDNE AC,>!<37777777&FLAG>
.CREF
>
DEFINE TYNN. (AC,FLAG),<
MOVX AC,1B<FLAG_-^D30>
.XCREF
<TDNN AC,>!<37777777&FLAG>
.CREF
>
DEFINE TYO. (AC,FLAG),<
MOVX AC,1B<FLAG_-^D30>
.XCREF
<IORM AC,>!<37777777&FLAG>
.CREF
>
DEFINE TYZ. (AC,FLAG),<
MOVX AC,1B<FLAG_-^D30>
.XCREF
<ANDCAM AC,>!<37777777&FLAG>
.CREF
>
DEFINE TYC. (AC,FLAG),<
MOVX AC,1B<FLAG_-^D30>
.XCREF
<XORM AC,>!<37777777&FLAG>
.CREF
>
;NOTE - "TXNI.", "TXND.", "JUMPI." & "JUMPD." MAY ASSEMBLE AS ONE OR MORE
; INSTRUCTIONS, DEPENDING ON THE ACTUAL VALUES OF THEIR ARGUMENTS.
; IN ALL CASES WHERE THE MACRO EXPANSION IS MORE THAN ONE INSTRUCTION
; IT WILL BE TRUE THAT IF CONTROL ARRIVES AT THE SECOND INSTRUCTION
; OF THE MACRO EXPANSION, CONTROL WILL UNCONDITIONALLY BE PASSED TO
; THE INSTRUCTION IMMEDIATELY FOLLOWING THE LAST INSTRUCTION OF THE
; MACRO EXPANSION (WITHOUT HAVING ALTERED ANY PART OF THE MACHINE
; STATE OTHER THAN THE PC). THUS A SKIP TYPE INSTRUCTION IMMEDIATELY
; PRECEEDING A "TXNI.", "TXND.", "JUMPI.", OR "JUMPD." MACRO WILL HAVE
; THE EFFECT OF SKIPPING OVER THE ENTIRE MACRO EXPANSION.
;
;
;TEST (BUT DON'T MODIFY) THE FIELD
; (IN "AC") SPECIFIED BY "MASK" AND SKIP IF IT IS IDENTICAL TO "PATERN"
DEFINE TXNI.(AC,MASK,PATERN),<
IFE <<MASK>_<1+^L<MASK>>>,<
IFE <<MASK>&<PATERN>>,<
TXNE AC,<MASK>
>
IFN <<MASK>&<PATERN>>,<
TXNN AC,<MASK>
>>
IFN <<MASK>_<1+^L<MASK>>>,<
TXCA AC,<<PATERN>&<MASK>>
JRST .+4
TXCE AC,<<PATERN>&<MASK>>
JRST .+2
TXNE AC,<<-<PATERN>-1>&<MASK>>
>>
;TEST (BUT DON'T MODIFY) THE FIELD
; (IN "AC") SPECIFIED BY "MASK" AND SKIP IF IT IS DIFFERENT THAN "PATERN"
DEFINE TXND.(AC,MASK,PATERN),<
IFE <<MASK>_<1+^L<MASK>>>,<
IFE <<MASK>&<PATERN>>,<
TXNN AC,<MASK>
>
IFN <<MASK>&<PATERN>>,<
TXNE AC,<MASK>
>>
IFN <<MASK>_<1+^L<MASK>>>,<
TXCA AC,<<PATERN>&<MASK>>
JRST .+4
TXCE AC,<<PATERN>&<MASK>>
JRST .+3
TXNN AC,<<-<PATERN>-1>&<MASK>>
>>
;JUMP TO "LOCATN" IF THE FIELD
; (IN "AC") SPECIFIED BY "MASK" IS IDENTICAL TO "PATERN"
DEFINE JUMPI.(AC,MASK,PATERN,LOCATN),<
IFE <<MASK>_1>,<
IFE <MASK>,<
JUMPA AC,LOCATN
>
IFN <MASK>,<
IFE <<PATERN>&<MASK>>,<
JUMPGE AC,LOCATN
>
IFN <<PATERN>&<MASK>>,<
JUMPL AC,LOCATN
>>>
IFN <<MASK>_1>,<
TXCA AC,<<PATERN>&<MASK>>
JRST .+5
TXCE AC,<<PATERN>&<MASK>>
JRST .+3
TXNN AC,<<-<PATERN>-1>&<MASK>>
JRST LOCATN
>>
;JUMP TO "LOCATN" IF THE FIELD
; (IN "AC") SPECIFIED BY "MASK" IS DIFFERENT THAN "PATERN"
DEFINE JUMPD.(AC,MASK,PATERN,LOCATN)
<IFE <<MASK>_1>,<
IFE <MASK>,<
JUMP AC,LOCATN
>
IFN <MASK>,<
IFE <<PATERN>&<MASK>>,<
JUMPL AC,LOCATN
>
IFN <<PATERN>&<MASK>>,<
JUMPGE AC,LOCATN
>>>
IFN <<MASK>_1>,<
TXCA AC,<<PATERN>&<MASK>>
JRST .+5
TXCE AC,<<PATERN>&<MASK>>
JRST LOCATN
TXNE AC,<<-<PATERN>-1>&<MASK>>
JRST LOCATN
>>
SUBTTL MACRO DEFINITIONS -- JUMPPT
;MACRO TO JUMP DEPENDING UPON PROCESSOR TYPE
;CALL: JUMPPT TEMPAC,PDP-6 ADDR,KA-10 ADDR,KI-10 ADDR,KL-10 ADDR
; WHERE TEMPAC IS AN AC TO USE AS A TEMP
; BLANK PROCESSORS FALL THROUGH TO NEXT INSTRUCTION
DEFINE JUMPPT (AC,CP166,KA10,KI10,KL10,KX,KY,KZ,%1),<
IFDIF <CP166><KA10>,<
JFCL 1,.+1 ;;CLEAR PC-CHANGE FLAG
JRST .+1 ;;SET PC-CHANGE
IFNB <CP166>,< JFCL 1,CP166
IFNB <KA10>,<IFIDN <KA10><KI10>,<IFIDN <KI10><KL10>,< JRST KA10>>>>
IFB <CP166>,< JFCL 1,%1
IFIDN <KA10><KI10>,<IFIDN <KI10><KL10>,< JRST KA10>>>
>;;END IFDIF <CP166><KA10>
IFDIF <KA10><KI10>,<
HRLOI AC,-2 ;;SET FOR KA/KI TEST
IFNB <KA10>,< AOBJP AC,KA10
IFNB <KI10>,<IFIDN <KI10><KL10>,<JRST KI10>>>
IFB <KA10>,<IFDIF <KI10><KL10>,<AOBJP AC,%1>
IFIDN <KI10><KL10>,<AOBJN AC,KI10>>
>;;END IFDIF <KA10><KI10>
IFDIF <KI10><KL10>,<
IF2,<IFE AC,<PRINTX ? AC MUST BE NON-ZERO IN JUMPPT>>
MOVEI AC,0 ;;SET FOR KI/KL TEST
BLT AC,0 ;;DO TEST
IFNB <KI10>,< JUMPE AC,KI10
IFNB <KL10>,< JRST KL10>>
IFB <KI10>,< JUMPN AC,KL10>
>;;END IFDIF <KI10><KL10>
%1:>
;DEFINE UNITS OF STORAGE ALLOCATION
.SUAP6==^D1024 ;PDP-6
.SUAKA==^D1024 ;KA-10
.SUAKI==^D512 ;KI-10
.SUAKL==^D512 ;KL-10
SUBTTL USEFUL OPDEFS
OPDEF PJRST [JRST] ;PUSHJ/POPJ
OPDEF PJRSTF [JRSTF] ;PUSHJ/POPJ
OPDEF PJSP [JSP] ;MOVEI .+1/PUSHJ/POPJ
OPDEF PJUMPL [JUMPL]
OPDEF PJMPLE [JUMPLE]
OPDEF PJUMPE [JUMPE]
OPDEF PJUMPN [JUMPN]
OPDEF PJUMPG [JUMPG]
OPDEF PJMPGE [JUMPGE]
;OPDEF THE KI-10 CONCEALED PAGE GATE-KEEPER
OPDEF PORTAL [JRST 1,]
SUBTTL SYMBOLS FOR THE CONTROL CHARACTERS
.CHNUL==000 ;NULL
.CHCNA==001
.CHCNB==002
.CHCNC==003
.CHCND==004
.CHCNE==005
.CHCNF==006
.CHBEL==007 ;BELL
.CHCNH==010
.CHTAB==011 ;TAB
.CHLFD==012 ;LINE-FEED
.CHVTB==013 ;VERTICAL TAB
.CHFFD==014 ;FORM FEED
.CHCRT==015 ;CARRIAGE RETURN
.CHCNN==016
.CHCNO==017
.CHCNP==020
.CHCNQ==021
.CHCNR==022
.CHCNS==023
.CHCNT==024
.CHCNU==025
.CHCNV==026
.CHCNW==027
.CHCNX==030
.CHCNY==031
.CHCNZ==032
.CHESC==033 ;ESCAPE
.CHCBS==034 ;CONTROL BACK SLASH
.CHCRB==035 ;CONTROL RIGHT BRACKET
.CHCCF==036 ;CONTROL CIRCONFLEX
.CHCUN==037 ;CONTROL UNDERLINE
.CHALT==175 ;OLD ALTMODE
.CHAL2==176 ;ALTERNATE OLD ALTMODE
.CHDEL==177 ;DELETE
SUBTTL HARDWARE BITS OF INTEREST TO USERS
;PC FLAGS
PC.OVF==1B0 ;OVERFLOW
PC.CY0==1B1 ;CARRY 0
PC.CY1==1B2 ;CARRY 1
PC.FOV==1B3 ;FLOATING OVERFLOW
PC.BIS==1B4 ;BYTE INCREMENT SUPPRESSION
PC.USR==1B5 ;USER MODE
PC.UIO==1B6 ;USER IOT MODE
PC.LIP==1B7 ;LAST INSTRUCTION PUBLIC
PC.AFI==1B8 ;ADDRESS FAILURE INHIBIT
PC.ATN==3B10 ;APR TRAP NUMBER
PC.FUF==1B11 ;FLOATING UNDERFLOW
PC.NDV==1B12 ;NO DIVIDE
SUBTTL
.XCREF
%%MACT==<VRSN. (MAC)>
PURGE MACWHO,MACVER,MACMIN,MACEDT
IF1,< ASUPPRESS>
IFNDEF %..C,<END> ;END UNIVERSAL OF MACTEN
.CREF
SUBTTL UUO PARAMETERS /DAL/BAH 13 FEB 79 V14(431)
.XCREF
IFDEF %..C,<IFE %..C,< .CREF
TAPE >>
IFNDEF %..C,<
UNIVERSAL UUOSYM -- UUO SYMBOLS FOR USER PROGRAMS
SEARCH MACTEN
%%MACT==:%%MACT ;SHOW VERSION
>
;VERSION INFORMATION
UUOWHO==0 ;LAST MODIFIER
UUOVER==14 ;MAJOR VERSION
UUOMIN==0 ;MINOR VERSION
UUOEDT==431 ;EDIT LEVEL
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
; OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;COPYRIGHT (C) 1971,1972,1973,1974,1975,1976,1977,1978,1979 BY DIGITAL EQUIPMENT CORP., MAYNARD, MASS.
;THIS IS THE DEFINITION FILE OF ALL PUBLISHED MONITOR
;UUO PARAMETERS WHICH DO NOT REQUIRE THE JACCT PRIVILEGE. IT
;EXCLUDES VARIOUS PARAMETERS WHICH CAN BE "SPYED" IF THE USER
;HAS SPY PRIVILEGE SINCE THOSE LOCATIONS CHANGE WITH MONITOR
;DEVELOPMENT. THESE SYMBOLS ARE ALL DEFINED IN THE
;MONITOR CALLS MANUAL.
;THIS DERIVES FROM THE OLD C.MAC FILE. IT IS ONLY A UNIVERSAL
.CREF
SALL
SUBTTL TABLE OF CONTENTS
; TABLE OF CONTENTS FOR UUOSYM
;
;
; SECTION PAGE
; 1. TABLE OF CONTENTS......................................... 2
; 2. REVISION HISTORY.......................................... 3
; 3. NAMING CONVENTIONS........................................ 6
; 4. UPDATE AND CHECKOUT INSTRUCTIONS.......................... 7
; 5. ALL JOBDAT SYMBOLS........................................ 8
; 6. GTMSG. MACRO.............................................. 9
; 7. OPDEFS
; 7.1 BASIC UUOS........................................ 10
; 7.2 MTAPE FUNCTIONS................................... 11
; 7.3 TTCALL FUNCTIONS.................................. 11
; 7.4 CALLI FUNCTIONS................................... 12
; 8. GETTAB CONSTITUENTS....................................... 15
; 9. MISC. NON-I/O
; 9.1 TMPCOR............................................ 38
; 9.2 LOCK.............................................. 38
; 9.3 RTTRP............................................. 38
; 9.4 JOBSTS............................................ 39
; 9.5 HIBER............................................. 39
; 9.6 APRENB............................................ 39
; 9.7 UTRP.............................................. 39
; 9.8 SAVE/GET LOCATIONS................................ 40
; 9.9 ALLOC............................................. 40
; 9.10 ERRPT............................................. 40
; 9.11 POKE.............................................. 40
; 9.12 SETUUO............................................ 41
; 9.13 SCHED............................................. 43
; 9.14 ATTACH............................................ 48
; 9.15 ACCT.............................................. 48
; 9.16 JOBPEK............................................ 48
; 10. UNIVERSAL DEVICE INDEX.................................... 48
; 11. .JBINT INTERCEPT BLOCK.................................... 49
; 12. PSI SOFTWARE INTERRUPT SYSTEM............................. 50
; 13. IPCF INTERPROCESS COMMUNICATION FACILITY.................. 53
; 14. PAGE AND VM VIRTUAL MEMORY FACILITY...................... 56
; 15. DAEMON CALLS.............................................. 58
; 16. PERFORMANCE ANALYSIS
; 16.1 METER MONITOR CALL................................ 61
; 16.2 PERF. MONITOR CALL................................ 63
; 16.3 SNOOP. MONITOR CALL............................... 65
; 17. ENQUEUE AND DEQUEUE SYMBOLS
; 17.1 GENERAL FORMAT OF ARG BLOCK....................... 66
; 17.2 FUNCTION CODES.................................... 67
; 17.3 FORMAT OF STATUS BLOCKS........................... 68
; 17.4 FORMAT OF DUMP.................................... 69
; 17.5 ERROR CODES....................................... 71
; 18. FILE DAEMON............................................... 72
; 19. MISC. I/O
; 19.1 DEVCHR............................................ 73
; 19.2 DEVTYP............................................ 74
; 19.3 MTCHR............................................. 75
; 19.4 TAPOP............................................. 76
; 19.5 WHERE............................................. 80
; 19.6 CAL11............................................. 80
; 19.7 DTE............................................... 81
; 19.8 DEVOP............................................. 83
; 19.9 DVPHY............................................. 84
; 19.10 GETLCH AND TRMOP.................................. 85
; 19.11 GETSTS AND SETSTS................................. 88
; 19.12 OPEN AND CLOSE.................................... 89
; 19.13 FILOP............................................. 90
; 19.14 BUFFER HEADER AND BUFFER'S CONTROL BLOCK FORMATS.. 92
; 19.15 MVHDR............................................. 92
; 19.16 CNECT.,SENSE., CLRST.............................. 93
; 19.17 DEVLNM............................................ 94
; 19.18 DEVSIZ............................................ 94
; 19.19 MTAID............................................. 94
; 19.20 SPPRM............................................. 95
; 19.21 NODE.............................................. 96
; 19.22 GTNTN.,GTXTN...................................... 96
; 20. DISK UUOS
; 20.1 DSKCHR............................................ 97
; 20.2 CHKACC............................................ 98
; 20.3 DISK.............................................. 99
; 20.4 JOBSTR............................................ 100
; 20.5 GOBSTR............................................ 100
; 20.6 SUSET............................................. 100
; 20.7 PATH.............................................. 101
; 20.8 STRUUO............................................ 103
; 21. LOOKUP/ENTER/RENAME....................................... 105
; 22. EXTENDED I/O ERRORS....................................... 108
SUBTTL REVISION HISTORY
;%3(67) MAY, 1972
;70 CORRECT MOVX TO INCLUDE <>
;71 ADD MACRO STORE TO GENERATE BLT
;72 MAKE USEABLE AS A UNIVERSAL FILE
;73 CORRECT MOVX, TXYY TO HANDLE RELOCATABLE MASKS
;74 HAVE MOVX GENERATE HRLOI, HRROI
;75 HAVE TXY GENERATE ORCMI, ANDI, EQVI
;76 ADD CAXYY, ADDX, ETC.
;77 ADD PJRSTF
;100 UPDATE TO 50434 (505) BY ADDING ADDITIONAL
; SYMBOLS; CHANGE %LDSXS TO %LDNEW, F%ABLB TO F%APLB
;101 ENHANCE ADDX, ETC., TO NOTICE SMALL NEGATIVES
;102 ADD PATH AREA
;103 ADD METER. BITS AND PIECES
;104 ADD ALL OLD CALLI MNEMONICS FOR DDT.SAV
;105 ADD SUBTITLES AND INDEX
;106 UPDATE RESPONSE SUBTABLE
;107 CORRECT BUGS IN UNIVERSAL SETUP
;110 ADD OPDEF FOR PORTAL
;%4(110) JULY, 1972
;111 CHANGE GL.NEC TO GL.LCP (SPR 10-7553)
;112 CHANGE SY.ERR AND SY.CCO TO %SYERR AND %SYCCO.
;113 CORRECT BUG IN STORE MACRO TO ALLOW MORE GENERAL USE
;114 ADD 5.06 DEFINITIONS
;115 COMPLETE .RBSTS BITS.
;%5(115) NOV 72
;116 SUPPORT DATE75 BY CHANGING RB.ACD AND ADDING RB.CRX
;117 CLEAN UP PAGE 1 LISTING
;120 ADD .STDFL
;121 ADD LKNEM%
;122 (10-9627) ALLOW FLAG=0 IN TX?? MACROS
;123 (10-9725) CHANGE CAXNE TO CAXN
;124 ADD OPEN BLOCK
;125 ADD MACROS MASK. RGHBT. LFTBT. FILIN. ALIGN. TXND. TXNI. JUMPI. JUMPN.
;126 ADD MACRO BTSWP.
;127 ADD INFO-REDEF.
;130 ADD SN%LOK, CORRECT .BFSTS
;131 (10-11609) FIX STORE MACRO FOR RELOC. 0
;%6(131) DEC 73
;132 UPDATE TO 50644 (6.01/5.07) MCO 4072
;133 CORRECT BUG IN %FT??? DEFINITIONS
;134 IF UNIVERSAL, MAKE .JB41, ETC., BE EXTERNAL
;135 ADD ALL 6.01 JOBDAT SYMBOLS
;136 ADD .SGDDT
;137 ADD GTMSG.
;140 UPDATE TO 50645
;141 UPDATE TO 50646
;142 UPDATE TO 50650
;143 CORRECT MISSING .CREF IN TX? MACROS
;144 UPDATE TO 50657
;145 RESERVE Q SYMBOLS TO QPRM.UNV; %DIGITS AND U..??? TO E.UNV
;146 UPDATE TO 50660
;147 ADD LOCK UUO BITS, DEVLNM+DEVSIZ+DISK. ERRORS
;150 UPDATE TO 50662
;151 RESERVE SYMBOLS OF THE FORM ?.???? TO OTHER FILES
;152 RESERVE FS.M??, FX.???, TS.???, AND .FX??? TO SCNMAC.UNV
;153 ADD ST.W??, AND "ALL" BITS SETS: JW.WAL, ST.WAL, JS.PAL, RB.ERR
;154 ADD .SG41
;155 ADD BOXES FOR FUNNY FORMATS; RE-ORDER CL.??? FOR CONSISTENCY
;156 CORRECT DEFINITIONS OF .BFSTS, .BFHDR, AND .BFCNT
;157 OBSOLETE IO.FCS. ADD IO.LEM
;160 ADD .INFIN AND .MINFI
;161 UPDATE TO 50664
;162 UPDATE TO 50666
;163 DEFINE INSVL.
;%7(163) MAY 74
;201 SPLIT INTO MACTEN.MAC AND UUOSYM.MAC
;202 ADD REMAINING 5.07/6.01 SYMBOLS
;203 ADD WORDS IN .FSDEF PRIVILEGED FUNCTION OF STRUUO
;204 UPDATE TO 5.07A/6.01A
;205 CHANGE WAY UUOS ARE DEFINED
;206 CORRECT BUG IN REFERENCE TO VRSN.
;%10(206) MARCH 1975
;207 FIX UP SUBTTL STATEMENTS SO TOC OUTPUT CAN BE USED FOR
; TABLE OF CONTENTS.
;210 DELETE SYMBOLS FOR CHANNEL DATA BLOCK SINCE CDB IS ONLY
; AVAIL. VIA SPY UUO
;211-225 ADD 6.02 SYMBOLS TO MCO 5478
;300 BECOME VERSION 12.
;301 UPDATE SYMBOLS TO 6.03 LOAD 241.
;302 UPDATE SYMBOLS WHEN DAEMON WAS UUOSYMIZED.
;303-306 UPDATE SYMBOLS TO 6.03 LOAD 255
;307 ADD DTE. MONITOR CALL SYMBOLS
;310-313 UPDATE SYMBOLS TO 6.03 LOAD 264
;314 ADD DEVOP. SYMBOLS
;315-340 UPDATE SYMBOLS TO 6.03 LOAD 277
;%12(340) MARCH 77 6.03
;%13(367) FEBRUARY 78 6.03 SCHEDULER LIR
;341-367 UPDATE SYMBOLS TO 6.03 LOAD 352 FOR SCHEDULER LIR RELEASE
;%13A(406) SEPTEMBER 78 603A
;370-406 UPDATE SYMBOLS TO 6.03 LOAD 3AZ FOR 603A RELEASE
;%14(427) JANUARY 79 7.00
;407-427 UPDATE SYMBOLS TO 7.00 LOAD 334 FOR 7.00 RELEASE
SUBTTL NAMING CONVENTIONS
;PATTERN USAGE
; .GGSSS NUMBER OF GENERAL CATEGORY GG, SPECIFIC USE SSS
; GG.SSS BYTE OF GENERAL CATEGORY GG, SPECIFIC USE SSS
; UUUUU. UUO OR FUNCTION OR MACRO
; %GGSSS GETTAB INDEX (WORD,,TABLE)
; GG%SSS BYTE IN A SPECIFIC GETTAB
; GGEEE% ERROR CODE OF CATEGORY GG, SPECIFIC ERROR EEE
;SPECIAL CASES--
;CALL FOR FEATURE TEST TESTING IS
; MOVE T1,[%FTSSS] ;%FTSSS==INDEX,,TABLE
; GETTAB T1,
;GETTAB RETURNS IN
; LH=RELATIVE BIT F%AAAA IS ON IF FEATURE DEFINED
; RH=BIT F%AAAA IS ON IF FEATURE TURNED ON
;RESERVED FOR OTHER THAN C.MAC, C.UNV--
;ALL SYMBOLS CONTAING $ ARE RESERVED TO THE USER
; (CUSTOMER, HIS USER, OR SPECIFIC PROGRAMS)
; ?.???? RESERVED TO OTHER PARAMETER FILES
;ALL SYMBOLS OF THE FORMS: QABCDE, .QABCD, %QABCD
; (I.E, WITH FIRST ALPHABETIC "Q") ARE RESERVED TO
; QPRM.MAC, QPRM.UNV FOR THE QMANGR PARAMETER AREA, ETC.
;ALL SYMBOLS OF THE FORMS: %NNNNN, U..NNN, E..AAA
; ARE RESERVED TO E.MAC, E.UNV FOR THE ERROR HANDLER
;ALL SYMBOLS OF THE FORMS: FS.M??, FX.???, TS.???, AND .FX???
; ARE RESERVED TO SCNMAC.MAC, SCNMAC.UNV FOR SCAN AND WILD
SUBTTL UPDATE AND CHECKOUT INSTRUCTIONS
;1. COMPARE CREFS OF F% IN C VS. FT IN DATMAN
;2. VERIFY NO $ IN CREF IN C AND THAT ONLY LEGAL PATTERNS EXIST
;3. UPDATE CALLI TABLE FROM UUOCON
;4. UPDATE GETTAB LIST OF TABLES (.GTABC) FROM UUOCON. DEFINE
; ENTRIES/BYTES IN NEW TABLES
;5. FIND NEW ENTRIES IN OLD TABLES (ESP. .GTCNF, .GTLVD, .GTSYS,
; .GTC0C, .GTC0V)
;6. FIND NEW BYTES IN OLD WORDS (ESP. .GTPRV, %CNDBG, .GTWCH,
; %CNST2)
;7. FIND NEW ERRORS AND FUNCTIONS FOR UUOS (ESP. DEVTYP, OPEN/CLOSE,
; PATH., LOOKUP)
;8. FIND NEW DAEMON FUNCTIONS, ERRORS, FORMATS.
;9. VERIFY NO DUPLICATES BY SCANNING CREF FOR ONLY SINGLE REFERENCES
;10. VERIFY THAT ALL USER JOBDAT SYMBOLS APPEAR
;11. VERIFY THAT SYMBOLS RESERVED TO OTHER FILES DO NOT APPEAR:
; ?.????
; Q?????, %Q????, .Q????
; %NNNNN, U..NNN, E..???
; FS.M??, FX.???, TS.???, .FX???
SUBTTL ALL JOBDAT SYMBOLS
EXTERN .JBAPR,.JBBLT,.JBCHN,.JBCNI,.JBCOR
EXTERN .JBDA,.JBDDT,.JBERR,.JBFF,.JBH41,.JBHCR,.JBHDA,.JBHGA
EXTERN .JBHGH,.JBHNM,.JBHRL,.JBHRN,.JBHSA,.JBHSM,.JBHVR,.JBINT,.JBOPC
EXTERN .JBOVL,.JBPFH,.JBPFI,.JBREL,.JBSA,.JBSYM,.JBTPC,.JBUSY,.JBUUO
EXTERN .JB41,.JBCST,.JBOPS,.JBREN,.JBVER,.JBEDV
SUBTTL GTMSG. MACRO
;MACRO TO GET ERROR MESSAGE CODE AND CLEAN IT UP
;CALL: GTMSG. AC
; WHERE AC WILL END UP WITH IT IN BYTE JW.WMS
; DEFAULT IS /MESSAGE:(PREFIX,FIRST)
; IF /MESSAGE:CONTINUATION, THEN /MESSAGE:FIRST
; IS ASSUMED
DEFINE GTMSG. (AC),<
.XCREF ;;SUPPRESS REDUNDANT CREF
HRROI AC,.GTWCH ;;IT'S IN THE WATCH TABLE
.CREF
GETTAB AC, ;;GET FROM MONITOR
.XCREF
MOVEI AC,0 ;;DEFAULT TO 0
TXNN AC,JW.WMS ;;IF 0,
TXO AC,.JWWPO_<ALIGN. (JW.WMS)> ;; DEFAULT TO PREFIX,FIRST
TXNE AC,JW.WCN ;;IF /MESSAGE:CONTINUATION
TXO AC,JW.WFL ;; DEFAULT TO /MESSAGE:FIRST
.CREF
>
SUBTTL OPDEFS -- BASIC UUOS
;OPDEF THE UUOS SO THEY APPEAR IN THE OPCODE LISTING
OPDEF HALT [JRST 4,]
;40B8 IS OBSOLETE (CALL)
OPDEF INIT [41B8]
;42-46B8 ARE RESERVED TO CUSTOMERS
OPDEF CALLI [47B8] ;(PURGED LATER)
OPDEF OPEN [50B8]
OPDEF TTCALL [51B8] ;(PURGED LATER)
;52-54B8 ARE RESERVED TO DEC
OPDEF RENAME [55B8]
OPDEF IN [56B8]
OPDEF OUT [57B8]
OPDEF SETSTS [60B8]
OPDEF STATO [61B8]
OPDEF GETSTS [62B8]
OPDEF STATZ [63B8]
OPDEF INBUF [64B8]
OPDEF OUTBUF [65B8]
OPDEF INPUT [66B8]
OPDEF OUTPUT [67B8]
OPDEF CLOSE [70B8]
OPDEF RELEAS [71B8]
OPDEF MTAPE [72B8] ;(PURGED LATER)
OPDEF UGETF [73B8]
OPDEF USETI [74B8]
OPDEF USETO [75B8]
OPDEF LOOKUP [76B8]
OPDEF ENTER [77B8]
OPDEF UJEN [100B8]
SUBTTL OPDEFS -- MTAPE FUNCTIONS
OPDEF MTWAT. [MTAPE 0] ;WAIT FOR POSITIONING
OPDEF MTREW. [MTAPE 1] ;REWIND
OPDEF MTEOF. [MTAPE 3] ;WRITE END OF FILE
OPDEF MTSKR. [MTAPE 6] ;SKIP RECORD
OPDEF MTBSR. [MTAPE 7] ;BACKSPACE RECORD
OPDEF MTEOT. [MTAPE 10] ;SKIP TO END OF TAPE
OPDEF MTUNL. [MTAPE 11] ;REWIND AND UNLOAD
OPDEF MTBLK. [MTAPE 13] ;BLANK TAPE
OPDEF MTSKF. [MTAPE 16] ;SKIP FILE
OPDEF MTBSF. [MTAPE 17] ;BACKSPACE FILE
OPDEF MTDEC. [MTAPE 100] ;DEC 9-CHANNEL
OPDEF MTIND. [MTAPE 101] ;INDUSTRY STANDARD 9-CHANNEL
OPDEF MTLTH. [MTAPE 200] ;LOW THRESHOLD
SUBTTL OPDEFS -- TTCALL FUNCTIONS
OPDEF INCHRW [TTCALL 0,] ;INPUT CHAR AND WAIT
OPDEF OUTCHR [TTCALL 1,] ;OUTPUT CHAR
OPDEF INCHRS [TTCALL 2,] ;INPUT CHAR AND SKIP
OPDEF OUTSTR [TTCALL 3,] ;OUTPUT STRING
OPDEF INCHWL [TTCALL 4,] ;INPUT CHAR WAIT, LINE
OPDEF INCHSL [TTCALL 5,] ;INPUT CHAR SKIP, LINE
OPDEF GETLCH [TTCALL 6,] ;GET LINE CHARS
OPDEF SETLCH [TTCALL 7,] ;SET LINE CHARS
OPDEF RESCAN [TTCALL 10,] ;RESET INPUT LINE
OPDEF CLRBFI [TTCALL 11,] ;CLEAR INPUT BUFFER
OPDEF CLRBFO [TTCALL 12,] ;CLEAR OUTPUT BUFFER
OPDEF SKPINC [TTCALL 13,] ;SKIP IF CHAR IN INPUT
OPDEF SKPINL [TTCALL 14,] ;SKIP IF LINE IN INPUT
OPDEF IONEOU [TTCALL 15,] ;OUTPUT IMAGE CHAR
SUBTTL OPDEFS -- CALLI FUNCTIONS
OPDEF LIGHTS [CALLI -1] ;DISPLAY IN LIGHTS
OPDEF RESET [CALLI 0] ;RESET PROGRAM
OPDEF DDTIN [CALLI 1] ;DDT MODE CONSOLE INPUT
OPDEF SETDDT [CALLI 2] ;SET .JBDDT
OPDEF DDTOUT [CALLI 3] ;DDT MODE CONSOLE OUTPUT
OPDEF DEVCHR [CALLI 4] ;GET DEVICE CHARACTERISTICS
OPDEF DDTGT [CALLI 5] ;(HISTORICAL)
OPDEF GETCHR [CALLI 6] ;SAVE AS 4
OPDEF DDTRL [CALLI 7] ;(HISTORICAL)
OPDEF WAIT [CALLI 10] ;WAIT FOR DEVICE INACTIVE
OPDEF CORE [CALLI 11] ;ALLOCATE CORE
OPDEF EXIT [CALLI 12] ;STOP JOB
OPDEF MONRT. [CALLI 1,12] ;MONITOR RETURN
OPDEF UTPCLR [CALLI 13] ;CLEAR DECTAPE DIRECTORY
OPDEF DATE [CALLI 14] ;GET DATE
OPDEF LOGIN [CALLI 15] ;LOGIN
OPDEF APRENB [CALLI 16] ;ENABLE TRAPS
OPDEF LOGOUT [CALLI 17] ;LOGOUT OR EXIT
OPDEF SWITCH [CALLI 20] ;READ CONSOLE SWITCHES
OPDEF REASSI [CALLI 21] ;REASSIGN DEVICES
OPDEF TIMER [CALLI 22] ;READ TIME OF DAY IN TICKS
OPDEF MSTIME [CALLI 23] ;READ TIME OF DAY IN MSEC.
OPDEF GETPPN [CALLI 24] ;RETURN PPN OF THIS JOB
OPDEF TRPSET [CALLI 25] ;ENABLE I/O MODE
OPDEF TRPJEN [CALLI 26] ;(ILLEGAL)
OPDEF RUNTIM [CALLI 27] ;RETURN MSEC TIME THIS JOB
OPDEF PJOB [CALLI 30] ;RETURN JOB NUMBER
OPDEF SLEEP [CALLI 31] ;SLEEP
OPDEF SETPOV [CALLI 32] ;(HISTORICAL)
OPDEF PEEK [CALLI 33] ;READ ABSOL. CORE ADDRESS
OPDEF GETLIN [CALLI 34] ;GET NAME OF TERMINAL
OPDEF RUN [CALLI 35] ;RUN PROGRAM
OPDEF SETUWP [CALLI 36] ;DIDDLE USER WRITE PROTECT
OPDEF REMAP [CALLI 37] ;REMAP LOW TO HIGH SEG
OPDEF GETSEG [CALLI 40] ;GET NEW HIGH SEG
OPDEF GETTAB [CALLI 41] ;READ MONITOR TABLE
OPDEF SPY [CALLI 42] ;SPY ON MONITOR
OPDEF SETNAM [CALLI 43] ;CHANGE NAME OF PROGRAM
OPDEF TMPCOR [CALLI 44] ;ACCESS TMPCOR
OPDEF DSKCHR [CALLI 45] ;RETURN DISK CHARACTERISTICS
OPDEF SYSSTR [CALLI 46] ;RETURN ALL S/L
OPDEF JOBSTR [CALLI 47] ;RETURN JOB S/L
OPDEF STRUUO [CALLI 50] ;DIDDLE STRS
OPDEF SYSPHY [CALLI 51] ;RETURN ALL DISK UNITS
OPDEF FRECHN [CALLI 52] ;(FUTURE)
OPDEF DEVTYP [CALLI 53] ;RETURN DEVICE PROPERTIES
OPDEF DEVSTS [CALLI 54] ;RETURN LAST CONI
OPDEF DEVPPN [CALLI 55] ;RETURN PPN OF ERSATZ DEVICE
OPDEF SEEK [CALLI 56] ;SEEK DISK
OPDEF RTTRP [CALLI 57] ;CONNECT RT DEVICE
OPDEF LOCK [CALLI 60] ;LOCK IN CORE
OPDEF JOBSTS [CALLI 61] ;RETURN JOB STATUS
OPDEF LOCATE [CALLI 62] ;CHANGE LOGICAL STATION
OPDEF WHERE [CALLI 63] ;RETURN PHYSICAL STATION
OPDEF DEVNAM [CALLI 64] ;RETURN PHYSICAL NAME
OPDEF CTLJOB [CALLI 65] ;RETURN CONTROLLING JOB
OPDEF GOBSTR [CALLI 66] ;RETURN NEXT JOB S/L
OPDEF ACTIVAT [CALLI 67] ;(FUTURE)
OPDEF DEACTI [CALLI 70] ;(FUTURE)
OPDEF HPQ [CALLI 71] ;SET HPQ RUN
OPDEF HIBER [CALLI 72] ;SLEEP ON EVENT
OPDEF WAKE [CALLI 73] ;WAKE SOME JOB
OPDEF CHGPPN [CALLI 74] ;CHANGE PPN
OPDEF SETUUO [CALLI 75] ;GENERAL SET SYS PARAMS
OPDEF DEVGEN [CALLI 76] ;(FUTURE)
OPDEF OTHUSR [CALLI 77] ;CHECK FOR ANOTHER USER
OPDEF CHKACC [CALLI 100] ;VALIDATE FILE ACCESS
OPDEF DEVSIZ [CALLI 101] ;GET BUFFER SIZES
OPDEF DAEMON [CALLI 102] ;REQUEST DAEMON FUNCTION
OPDEF JOBPEK [CALLI 103] ;READ/WRITE ANOTHER JOB
OPDEF ATTACH [CALLI 104] ;ATTACH TTY/JOB
OPDEF DAEFIN [CALLI 105] ;DAEMON INDICATES DONE
OPDEF FRCUUO [CALLI 106] ;FORCE COMMAND ON JOB
OPDEF DEVLNM [CALLI 107] ;SET LOGICAL NAME
OPDEF PATH. [CALLI 110] ;DEAL WITH DIRECTORY PATHS
OPDEF METER. [CALLI 111] ;PERFORMANCE METERING
OPDEF MTCHR. [CALLI 112] ;GET MAG TAPE CHARACTERISTICS
OPDEF JBSET. [CALLI 113] ;SETUUO FOR ARBITRARY JOB
OPDEF POKE. [CALLI 114] ;CHANGE MONITOR
OPDEF TRMNO. [CALLI 115] ;JOB'S TERMINAL NUMBER
OPDEF TRMOP. [CALLI 116] ;TERMINAL OPERATION
OPDEF RESDV. [CALLI 117] ;RESET CHANNEL
OPDEF UNLOK. [CALLI 120] ;UNLOCK A LOCKED JOB
OPDEF DISK. [CALLI 121] ;MISC. DISK FUNCTIONS
OPDEF DVRST. [CALLI 122] ;RESTRICT DEVICE TO OPER
OPDEF DVURS. [CALLI 123] ;UNRESTRICT DEVICE
OPDEF XTTSK. [CALLI 124] ;DA28C FUNCTIONS
OPDEF CAL11. [CALLI 125] ;DL10 MULTI-FUNCTION
OPDEF MTAID. [CALLI 126] ;SET MAG TAPE ID
OPDEF IONDX. [CALLI 127] ;RETURN UNIVERSAL DEVICE INDEX
OPDEF CNECT. [CALLI 130] ;CONNECT TO MPX
OPDEF MVHDR. [CALLI 131] ;MOVE BUFFER HEADER
OPDEF ERLST. [CALLI 132] ;ERROR LIST
OPDEF SENSE. [CALLI 133] ;SENSE
OPDEF CLRST. [CALLI 134] ;CLEAR STATUS
OPDEF PIINI. [CALLI 135] ;INITIALIZE SOFT. PI SYS
OPDEF PISYS. [CALLI 136] ;MANIPULATE SOFT. PI SYS
OPDEF DEBRK. [CALLI 137] ;DISMISS SOFT. PI INTER.
OPDEF PISAV. [CALLI 140] ;SAVE SOFT. PI SYS
OPDEF PIRST. [CALLI 141] ;RESTORE SOFT. PI SYS
OPDEF IPCFR. [CALLI 142] ;IPCF READ
OPDEF IPCFS. [CALLI 143] ;IPCF SEND
OPDEF IPCFQ. [CALLI 144] ;IPCF QUERY
OPDEF PAGE. [CALLI 145] ;PAGING UUO
OPDEF SUSET. [CALLI 146] ;SUPER USETI/O
OPDEF COMPT. [CALLI 147] ;CALL COMPATABILITY PACKAGE
OPDEF SCHED. [CALLI 150] ;SCHEDULING UUO
OPDEF ENQ. [CALLI 151] ;ENQUEUE
OPDEF DEQ. [CALLI 152] ;DEQUEUE
OPDEF ENQC. [CALLI 153] ;ENQ/DEQ CONTROL
OPDEF TAPOP. [CALLI 154] ;MAG TAPE OPERATIONS
OPDEF FILOP. [CALLI 155] ;FILE OPERATION
OPDEF CAL78. [CALLI 156] ;DAS-78 FUNCTIONS (OBSOLETE)
OPDEF NODE. [CALLI 157] ;NODE FUNCTIONS
OPDEF ERRPT. [CALLI 160] ;FOR DAEMON ERROR REPORTING
OPDEF ALLOC. [CALLI 161] ;ALLOCATE A DEVICE
OPDEF PERF. [CALLI 162] ;KL10 PERFORMANCE ANALYSIS
OPDEF DIAG. [CALLI 163] ;DIAGNOSTIC UUO
OPDEF DVPHY. [CALLI 164] ;RETURN PHYSICAL DEVICE NAME
OPDEF GTNTN. [CALLI 165] ;GET NETWORK TTY NUMBER
OPDEF GTXTN. [CALLI 166] ;GET -10 TTY NAME
OPDEF ACCT. [CALLI 167] ;READ/SET ACCOUNT STRING
OPDEF DTE. [CALLI 170] ;DTE. FUNCTIONS FOR FRONT END
OPDEF DEVOP. [CALLI 171] ;MISC. DEVICE OPERATIONS
OPDEF SPPRM. [CALLI 172] ;SPOOL PARAMETERS
OPDEF MERGE. [CALLI 173] ;MERGE AN EXE FILE WITH CURRENT CORE IMAGE
OPDEF UTRP. [CALLI 174] ;IMMEDIATE CONTROL ON TRAPS
OPDEF PIJBI. [CALLI 175] ;CAUSE CROSS JOB INTERRUPT
OPDEF SNOOP. [CALLI 176] ;INSERT/DELETE BREAKPOINTS IN RUNNING MONITOR
SUBTTL GETTAB CONSTITUENTS
.GTSTS==0 ;JOB STATUS
.GTADR==1 ;JOB RELOCATION AND PROTECTION
.GTPPN==2 ;PROJ-PROG NUMBER
.GTPRG==3 ;PROGRAM NAME
.GTTIM==4 ;TOTAL RUN TIME IN TICKS
.GTKCT==5 ;KILO-CORE TICKS
.GTPRV==6 ;PRIV WORD
JP.IPC==1B0 ;IPCF PRIVILEGED FUNCTIONS
JP.DPR==3B2 ;HIGHEST DISK PRIORITY
JP.MET==1B3 ;METER UUO
JP.POK==1B4 ;POKE MONITOR
JP.CCC==1B5 ;CHANGE CPU SPECIFICATION
JP.HPQ==17B9 ;HI PRIORITY QUEUE
JP.NSP==1B10 ;UNSPOOL DEVICES
JP.ENQ==1B11 ;ENQ./DEQ. PRIVS
JP.RTT==1B13 ;RTTRP UUO
JP.LCK==1B14 ;LOCK UUO
JP.TRP==1B15 ;TRAPSET UUO
JP.SPA==1B16 ;SPY ON ALL CORE
JP.SPM==1B17 ;SPY ON MONITOR
.GTSWP==7 ;SWAPPING POINTERS
.GTTTY==10 ;TTY TABLE
.GTCNF==11 ;CONFIGURATION
%CNFG0==0,,11 ;NAME OF SYSTEM
%CNFG1==1,,11 ; ..
%CNFG2==2,,11 ; ..
%CNFG3==3,,11 ; ..
%CNFG4==4,,11 ; ..
%CNDT0==5,,11 ;DATE OF SYSTEM
%CNDT1==6,,11 ; ..
%CNTAP==7,,11 ;NAME OF SYSTEM DEVICE
%CNTIM==10,,11 ;TIME OF DAY
%CNDAT==11,,11 ;DATE IN BINARY
%CNSIZ==12,,11 ;SYSTEM MEMORY SIZE
%CNOPR==13,,11 ;NAME OF OPR TTY
%CNDEV==14,,11 ;LH = DDB CHAIN
%CNSJN==15,,11 ;LH=-SEGN, RH=JOBN NUMBERS
%CNTWR==16,,11 ;NON-ZERO IS DUAL SEGMENTS
%CNSTS==17,,11 ;SYSTEM STATES
ST%DSK==1B0 ;DISK SYSTEM
ST%SWP==1B1 ;SWAPPING SYSTEM
ST%LOG==1B2 ;LOGIN
ST%FTT==1B3 ;FULL DUPLEX TTY SOFTWARE
ST%PRV==1B4 ;PRIVILEGES
ST%TWR==1B5 ;DUAL SEGMENT SOFTWARE
ST%CYC==1B6 ;50 HERTZ CLOCK
ST%TDS==7B9 ;TYPE OF DISK SYSTEM
ST%IND==1B10 ;IND. PPNS ON DISK
ST%IMG==1B11 ;IMAGE MODE TTYS
ST%DUL==1B12 ;DUAL PROCESSOR SYSTEM
ST%MRB==1B13 ;MULTIPLE RIBS SUPPORTED
ST%HPT==1B14 ;HIGH PRECISION TIME ACCOUNTING
ST%EMO==1B15 ;EXCLUDE OVERHEAD FROM TIME ACCOUNTING
ST%RTC==1B16 ;REAL TIME CLOCK
ST%MBF==1B17 ;MADE FOR FOROTS
ST%NDL==1B26 ;NO DOWN-LINE-LOAD OF DC7X REMOTE STATION
ST%NOP==1B27 ;NO OPERATOR IN ATTENDANCE
ST%NSP==1B28 ;UNSPOOL DEVICES
ST%ASS==1B29 ;ASSIGN/INIT DEVICES
ST%NRT==1B32 ;NO REMOTE TTY'S
ST%BON==1B33 ;BATCH ONLY
ST%NRL==1B34 ;NO REMOTE LOGINS
ST%NLG==1B35 ;NO LOGINS EXCEPT CTY/OPR
%CNSER==20,,11 ;APR SERIAL NUMBER
%CNNSM==21,,11 ;NANO-SECS PER MEMORY CYCLE
%CNPTY==22,,11 ;LH=NUMBER FIRST INV. TTY, RH=NUMBER PTYS
%CNFRE==23,,11 ;POINTER FOR BIT MAP OF CORE BLOCKS
%CNLOC==24,,11 ;LOCATION OF LOW CORE CORE BLOCKS
%CNSTB==25,,11 ;POINTER TO STATION BLOCK CHAIN
%CNOPL==26,,11 ;OPR LDB ADDRESS
%CNTTF==27,,11 ;POINTER TO TTY FREE CHUNKS
%CNTTC==30,,11 ;LH=NUMBER OF TTY CHUNKS, RH=ADDR OF FIRST
%CNTTN==31,,11 ;NUMBER OF FREE CHUNKS
%CNLNS==32,,11 ;POINTER TO CURRENT COMMAND TTY
%CNLNP==33,,11 ;POINTER TO TTY LINE TABLE
%CNVER==34,,11 ;MONITOR VERSION
%CNDSC==35,,11 ;POINTER TO DATA SET CONTROL TABLE
%CNDLS==36,,11 ;LAST RECIEVE INT. FROM DC10 (PRE 5.07)
%CNCCI==37,,11 ;LAST RECIEVE INT. FROM 680I (PRE 5.07)
%CNSGT==40,,11 ;LAST DORM. SEG THROWN AWAY
%CNPOK==41,,11 ;ADDRESS OF LAST POKED LOCATION
%CNPUC==42,,11 ;LH=JOB, RH=COUNT OF POKES
%CNWHY==43,,11 ;REASON FOR LAST RELOAD
%CNTIC==44,,11 ;NUMBER OF TICKS PER SECOND
%CNPDB==45,,11 ;POINTER TO PDB POINTER TABLES
%CNRTC==46,,11 ;RESOLUTION OF RUNTIME CLOCK (UNITS/SEC)
%CNCHN==47,,11 ;LH=PTR TO CHANNEL D.B. LIST,RH=UNUSED
%CNLMX==50,,11 ;LOGMAX (MAX JOBS TO BE LOGGED IN)
%CNBMX==51,,11 ;BATMAX (MAX BATCH JOBS)
%CNBMN==52,,11 ;BATMIN (MIN JOBS RESERVED FOR BATCH)
%CNDTM==53,,11 ;INTERNAL FORMAT DATE,,TIME
%CNLNM==54,,11 ;NUMBER OF JOBS LOGGED IN
%CNBNM==55,,11 ;NUMBER OF BATCH JOBS LOGGED IN
%CNYER==56,,11 ;LOCAL YEAR
%CNMON==57,,11 ;LOCAL MONTH
%CNDAY==60,,11 ;LOCAL DAY OF MONTH
%CNHOR==61,,11 ;LOCAL HOUR
%CNMIN==62,,11 ;LOCAL MINUTES
%CNSEC==63,,11 ;LOCAL SECONDS
%CNGMT==64,,11 ;TIME FROM GMT IN INTERNAL FORMAT
%CNDBG==65,,11 ;DEBUGGING STATUS WORD
ST%DBG==1B0 ;SYSTEM DEBUGGING
ST%RDC==1B1 ;RELOAD ON DEBUF STOPCD
ST%RJE==1B2 ;RELOAD ON JOB STOPCD
ST%NAR==1B3 ;NO AUTO RELOADS
ST%CP1==1B4 ;IF SECOND CPU STOPS, STOP CPU0
%CNFRU==66,,11 ;MONITOR FREE CORE USED
%CNTCM==67,,11 ;MAX TTY CHUNKS
%CNCVN==70,,11 ;CUSTOMER VERSION (136)
%CNDVN==71,,11 ;DEC VERSION (137)
%CNDFC==72,,11 ;NUMBER OF DF10 DATA CHANS
%CNRTD==73,,11 ;NUMBER OF RT DEVICES
%CNHPQ==74,,11 ;NUMBER OF HPQ'S
%CNLDB==75,,11 ;TTY DDB WORD POINTING TO LDB
%CNMVO==76,,11 ;MAX VECTOR OFFSET FOR PISYS.
%CNMIP==77,,11 ;MAX PRIORITY FOR PISYS.
%CNMER==100,,11 ;OFFSET OF MTA ERR RPT WORD,,ADDR OF MTA
%CNET1==101,,11 ;USER ADDRESS OF EXEC'S AC T1
%CNLSD==102,,11 ;LENGTH OF SHORT DDB
%CNLLD==103,,11 ;LENGTH OF LONG DDB
%CNLDD==104,,11 ;LENGTH OF DISK DDB
%CNEXM==105,,11 ;ADDRESS IN JOBDAT OF LAST E/D COMMAND
%CNST2==106,,11 ;MORE CONFIGURATION FEATURE INDICATORS
ST%LSC==1B13 ;LOW SEGMENT OF MONITOR IS CACHED
ST%ACV==1B14 ;SYSTEM DOES ACCOUNT VALIDATION
ST%NER==1B15 ;MONITOR SUPPORTS 6.03 ERROR REPORTING
ST%NCS==1B16 ;SCHEDULER IS NOT A CLASS SYSTEM SCHEDULER
ST%ITA==1B17 ;INTERVAL TIMER AVAILABLE
ST%NDN==1B18 ;NETWORK DEVICE NAMES (GGGNNU)
ST%XPI==1B19 ;EXCLUDE PI TIME FROM RUNTIME
ST%ERT==1B20 ;EBOX/MBOX RUNTIME (KL10 ONLY)
ST%EXE==1B21 ;SAVE AND SSAVE WRITE .EXE FILES
ST%NJN==1B22 ;SYSTEM USES 9 BIT JOB NUMBERS
ST%EER==1B23 ;EXTENDED ERROR REPORTING
ST%TAP==1B24 ;TAPSER INCLUDED
ST%MBE==1B25 ;MASS BUS ERROR REPORTS
ST%GAL==1B26 ;GALAXY-10 SUPPORT INCLUDED
ST%ENQ==1B27 ;ENQ./DEQ. IS INCLUDED
ST%SHC==1B28 ;SCHEDULER HAS CLASSES
ST%NSE==1B29 ;NON-SUPERSEDING ENTER
ST%MSG==1B30 ;MSGSER INCLUDED
ST%PSI==1B31 ;PSISER INCLUDED
ST%IPC==1B32 ;IPCF INCLUDED
ST%VMS==1B33 ;VMSER INCLUDED
ST%MER==1B34 ;MTA ERROR REPORTING
ST%SSP==1B35 ;SWAP SPACE IN PAGES
%CNPIM==107,,11 ;MINIMUM CONDITION IN PISYS
%CNPIL==110,,11 ;LENGTH OF INTERNAL PIT'S
%CNPIA==111,,11 ;ADDRESS OF JBTPIA
%CNMNT==112,,11 ;MONITOR TYPE
CN%MNX==1B0 ;STRANGE MONITOR
CN%MNT==77B23 ;DEC-KNOWN TYPE
.CNT10==1 ;TOPS-10
.CNITS==2 ;ITS
.CNTNX==3 ;TENEX
.CNT20==4 ;TOPS-20
CN%MNS==77B29 ;DEC SUB TYPE
CN%MNC==77 ;CUSTOMER SUBSUB TYPE
%CNOCR==113,,11 ;FIRST CDR DDB,,OFFSET TO CARD COUNT
%CNOCP==114,,11 ;DITTO FOR CDP
%CNPGS==115,,11 ;UNIT OF CORE ALLOCATION
%CNMMX==116,,11 ;MINIMUM LEGAL CORMAX
%CNNSC==117,,11 ;NUMBER OF SCHEDULER CLASSES
%CNUTF==120,,11 ;EXPONENTIAL USER TIME FACTOR
%CNHSO==121,,11 ;START OF MONITORS HISEG
%CNHSL==122,,11 ;LENGTH OF MONITORS HISEG
%CNNWC==123,,11 ;NUMBER OF WORDS OF CORE
%CNNXM==124,,11 ;AOBJN POINTER TO NXMTAB USED TO SCAN FOR ZEROES
%CNNDB==125,,11 ;POINTER TO FIRST NODE BLOCK
%CNTKB==126,,11 ;POINTER FROM KDB TO CDB FOR MAGTAPES
%CNDDC==127,,11 ;OFFSET INTO TTY DDB'S WHERE CHARACTER COUNTS ARE STORED
%CNHDL==130,,11 ;POTENTIALLY HUNG DEVICE LIST
%CNBTX==131,,11 ;ADDRESS OF RELOAD CCL TEXT FOR BOOTS
%CNTDB==132,,11 ;OFFSET OF DDB PTRS IN TUB
%CNMTK==133,,11 ;FIRST MAGTAPE CONTROLLER DATA BLOCK IN SYSTEM
%CNCPU==134,,11 ;NUMBER OF CPUS MONITOR WAS BUILT FOR
%CNDJB==135,,11 ;BYTE POINTER TO JOB # IN DDB (A LA "PJOBN")
%CNSUP==136,,11 ;SYSTEM UP TIME
%CNBCP==137,,11 ;BOOTSTRAP CPU NUMBER
%CNBCL==140,,11 ;BOOTSTRAP CTY LINE NUMBER
%CNNCR==141,,11 ;NUMBER OF CPU'S ALLOWED TO RUN
%CNMBS==142,,11 ;MONITOR BOOTSTRAP FILE STRUCTURE (FROM BOOTS)
%CNMBF==143,,11 ;MONITOR BOOTSTRAP FILE NAME
%CNMBX==144,,11 ;MONITOR BOOTSTRAP EXTENSION
%CNMBD==145,,11 ;MONITOR BOOTSTRAP DIRECTORY
%CNBPM==146,,11 ;MAXIMUM NUMBER OF SNOOP. BREAKPOINTS WHICH CAN BE DEFINED
%CNMXF==147,,11 ;FIRST FREE VIRTUAL ADDRESS ABOVE THE MONITOR
%CNLVO==150,,11 ;VIRTUAL ORIGIN OF LDBS
%CNHXC==151,,11 ;MAXIMUM NUMBER OF FILOP. EXTENDED CHANNELS
.GTNSW==12 ;NON-SWAPPING DATA TABLE
%NSCMX==10,,12 ;SYSTEM CORMAX (LARGEST USER JOB+1)
%NSCLS==11,,12 ;BYTE POINTER TO LAST FREE CORE AREA
%NSCTL==12,,12 ;VIRTUAL CORE TALLY
%NSSHW==13,,12 ;JOB NUMBER STOPPED BY SHUFFLER
%NSHLF==14,,12 ;ADDRESS OF LOWEST HOLE IN SYSTEM
%NSUPT==15,,12 ;UPTIME (TICKS)
%NSSHF==16,,12 ;WORDS SHUFFLED BY SYSTEM
%NSSTU==17,,12 ;SYSTEM TAPE USER
%NSHJB==20,,12 ;HIGHEST JOB NUMBER IN USE
%NSCLW==21,,12 ;WORDS CLEARED BY SYSTEM
%NSLST==22,,12 ;LOST TIME
%NSMMS==23,,12 ;MEMORY SIZE
%NSTPE==24,,12 ;TOTAL MEMEORY PARITY ERRORS
%NSSPE==25,,12 ;SPURIOUS MEMORY PARITY ERRORS
%NSMPC==26,,12 ;MULTIPLE MEMORY PARITY ERRORS
%NSMPA==27,,12 ;LAST MEMORY PARITY ADDRESS
%NSMPW==30,,12 ;LAST MEMORY PARITY WORD
%NSMPP==31,,12 ;LAST MEMORY PARITY PC
%NSEPO==32,,12 ;NUMBER OF EXEC PDL OVERFLOWS NOT RECOVERED
%NSEPR==33,,12 ;NUMBER OF EXEC PDL OVERFLOWS RECOVERED
%NSMXM==34,,12 ;MAX VALUE OF CORMAX
%NSKTM==35,,12 ;KSYS TIMER
%NSCMN==36,,12 ;CORMIN
%NSABC==37,,12 ;COUNT OF ADDRESS BREAKS
%NSABA==40,,12 ;ADDRESS OF ADDRESS BREAKS
%NSLJR==41,,12 ;LAST JOB RUN
%NSACR==42,,12 ;ACCUMULATED CPU RESPONSE
%NSNCR==43,,12 ;NUMBER OF CPU RESPONSES
%NSSCR==44,,12 ;ACCUMULATED SQUARE OF CPU RESPONSE
;*** NO MORE GROWTH--SEE .GTC0V
.GTSDT==13 ;SWAPPING DATA TABLE
%SWBGH==0,,13 ;BIG HOLE
%SWFIN==1,,13 ;FINISH
%SWFRC==2,,13 ;FORCE
%SWFIT==3,,13 ;FIT
%SWVRT==4,,13 ;VIRTAL
%SWERC==5,,13 ;SWAP ERROR COUNT
%SWPIN==6,,13 ;-1 IF SWAP IN AND FTPDBS=1
.GTSGN==14 ;SEGMENT NUMBERS
SN%SPY==1B0 ;IF 0 THEN REGULAR HIGH SEGMENT
; RH = HIGH SEG INDEX NO.
;IF 1 THEN JOB IS SPYING
; RH = MAX PHYSICAL ADR SPYING
SN%SHR==1B1 ;HIGH SEGMENT IS SHARABLE
SN%UWP==1B2 ;HIGH SEGMENT IS WRITE-ENABLED
SN%MDL==1B3 ;HIGH SEGMENT HAS BEEN MEDDLED
SN%LOK==1B5 ;HIGH SEGMENT IS LOCKED IN MEMORY
SN%NCS==1B6 ;HIGH SEGMENT IS NOT CACHED
SN%GTS==1B10 ;HIGH SEGMENT OBTAINED VIA GETSEG
.GTODP==15 ;ONCE ONLY DISK PARAMETERS
%ODSWP==0,,15 ;HIGHEST SWAPPING IN 4-SERIES
%ODK4S==1,,15 ;K FOR SWAPPING
%ODPRT==2,,15 ;IN CORE PROTECT TIME MULTIPLIER
%ODPRA==3,,15 ;IN CORE PROTECT TIME OFFSET
%ODPMN==4,,15 ;MINIMUM ICPT AFTER REQUEUE TO BACK OF PQ2
%ODPMX==5,,15 ;MAXIMUM VALUE OF ICPT
.GTLVD==16 ;LEVEL-D PARAMETERS
%LDMFD==0,,16 ;MFD PPN [1,1]
%LDSYS==1,,16 ;SYS PPN [1,4]
%LDFFA==2,,16 ;FULL FILE ACCESS PPN [1,2]
%LDHLP==3,,16 ;UNLOGGED IN PPN [2,5]
%LDQUE==4,,16 ;QUE AREA PPN [3,3]
%LDSPB==5,,16 ;FIRST PPB,,NEXT PPB TO SCAN
%LDSTR==6,,16 ;FIRST STR DATA BLOCK,,OFFSET TO NEXT
%LDUNI==7,,16 ;FIRST UNIT DATA BLOCK,,OFFSET TO NEXT
%LDSWP==10,,16 ;FIRST SWAP UNIT,,OFFSET TO NEXT
%LDCRN==11,,16 ;NUMBER OF CORE BLOCKS
%LDSTP==12,,16 ;STANDARD FILE PROTECTION
%LDUFP==13,,16 ;STANDARD UFD PROTECTION
%LDMBN==14,,16 ;NUMBER OF MONITOR BUFFERS
%LDQUS==15,,16 ;QUE STRUCTURE NAME
%LDCRP==16,,16 ;CRASH PPN [10,1]
%LDSFD==17,,16 ;MAX DEPTH OF SFDS TO WRITE
%LDSPP==20,,16 ;SPOOLED FILE PROTECTION
%LDSYP==21,,16 ;STANDARD SYS: PROTECTION
%LDSSP==22,,16 ;STANDARD SYS:.SYS PROTECTION
%LDMNU==23,,16 ;MAX. NEGATIVE USETI WHICH READS EXTENDED RIBS
%LDMXT==24,,16 ;MAX. BLOCKS TO TRANSFER
%LDNEW==25,,16 ;EXPERIMENTAL SYS PPN [1,5]
%LDOLD==26,,16 ;OLD SYS PPN [1,3]
%LDUMD==27,,16 ;USER MODE DIAGNOSTICS PPN [6,6]
%LDNDB==30,,16 ;DEFAULT DISK BUFFERS IN RING
%LDMSL==31,,16 ;MAX UNITS IN A.S.L.
%LDALG==32,,16 ;ALGOL LIBRARY PPN [5,4]
%LDBLI==33,,16 ;BLISS LIBRARY PPN [5,5]
;CONTINUE .GTLVD
%LDFOR==34,,16 ;FORTRAN LIBRARY PPN [5,6]
%LDMAC==35,,16 ;MACRO LIBRARY PPN (SOURCE NOT UNIVERSALS) [5,7]
%LDUNV==36,,16 ;UNIVERSAL LIBRARY PPN [5,17]
%LDPUB==37,,16 ;PUBLIC USER SOFTWARE LIBRARY PPN [1,6]
%LDTED==40,,16 ;TEXT EDITOR LIBRARY PPN [5,10]
%LDREL==41,,16 ;REL FILE LIBRARY PPN [5,11]
%LDRNO==42,,16 ;RUNOFF LIBRARY PPN [5,12]
%LDSNO==43,,16 ;SNOBOL LIBRARY PPN [5,13]
%LDDOC==44,,16 ;DOC FILE LIBRARY PPN [5,14]
%LDFAI==45,,16 ;FAIL LIBRARY PPN [5,15]
%LDMUS==46,,16 ;MUSIC LIBRARY PPN [5,16]
%LDDEC==47,,16 ;STANDARD DEC SOFTWARE [10,7]
%LDSLP==50,,16 ;POINTER TO ACTIVE SWAP LIST
%LDBAS==51,,16 ;BASIC LIB PPN [5,1]
%LDCOB==52,,16 ;COBOL LIB PPN [5,2]
%LDMXI==53,,16 ;PDP-11 LIB PPN [5,3]
%LDNEL==54,,16 ;NELIAC LIB PPN [5,20]
%LDDMP==55,,16 ;DUMP PPN [5,21]
%LDPOP==56,,16 ;POP2 LIB PPN [5,22]
%LDTST==57,,16 ;TEST LIB PPN [5,23]
%LDLSO==60,,16 ;LOG SOFT OVERRUNS (CALL DAEMON) IF OVERRUN
; IS RECOVERED ON 1 RETRY AND %LDLSO .NE. 0
%LDMBR==61,,16 ;MASS-BUSS REG. LH=OFFSET INTO KDB OF # OF
; REGISTER. RH=OFFSET INTO UDB OF REGS.
%LDBBP==62,,16 ;LH=POINTER TO BYTE POINTER TO # LEFT IN BAT
;RH=OFFSET (IN UDB) OF CHAN TERM FAIL CNT
%LDDBS==63,,16 ;DBMS LIB PPN [5,24]
%LDEXP==64,,16 ;OFFSET OF EXPECTED CHANNEL TERM. WORD IN
; CHANNEL DATA BLOCK
%LDMIC==65,,16 ;MIC MACRO LIB PPN [5,25]
%LDTPS==66,,16 ;TEXT PROCESSING SYSTEM LIB PPN [5,26]
%LDCTL==67,,16 ;CTL FILE LIB PPN [5,27]
%LDGAM==70,,16 ;GAMES LIB PPN [5,30]
%LDACT==71,,16 ;SYSTEM ACCOUNTING PPN [1,7]
%LDAPL==72,,16 ;APL LIB PPN [5,31]
%LDECT==73,,16 ;RIB ERROR THRESHOLD
%LDTOT==74,,16 ;TOTAL RIB ERRORS
%LDDOR==75,,16 ;DORMANT ACCESS-TABLE POINTER
%LDCOR==76,,16 ;FREE CORE (FILSER) POINTER
%LDINT==77,,16 ;DISK INTERFERENCE - COUNT
%LDD60==100,,16 ;D60 LIB PPN [5,32]
%LDERT==101,,16 ;STARTING LOCATION OF QUEUE TABLE FOR DAEMON ERROR REPORTING
%LDPT1==102,,16 ;PNTR TO EXTRACT ENTRIES FOR DAEMON QUEUE TABLE
%LDPT2==103,,16 ;PNTR TO INSERT ENTRIES FOR DAEMON QUEUE TABLE
%LDLTH==104,,16 ;LENGTH OF DAEMON QUEUE TABLE
%LDCDA==105,,16 ;OFFSET OF UNICDA IN UDB
%LDDES==106,,16 ;OFFSET OF UNIDES IN UDB
%LDPTR==107,,16 ;POINTER TO IN-CORE COPIES OF RETRIEVAL POINTERS
%LDMSS==110,,16 ;MAX STRS IN SYSTEM SEARCH LIST,,MAX STRS IN JOB SEARCH LIST
.GTRCT==17 ;DISK BLOCKS READ
RC.INC==7777B11 ;INCREMENTAL DISK READS
RC.TTL==77777777 ;TOTAL DISK READS
.GTWCT==20 ;DISK BLOCKS WRITTEN
WC.INC==7777B11 ;INCREMENTAL DISK WRITES
WC.TTL==77777777 ;TOTAL DISK WRITES
.GTDBS==21 ;OBSOLETE
.GTTDB==22 ;OBSOLETE
.GTSLF==23 ;GETTAB IMMEDIATE THE GETTAB TABLE (SELF)
SL.MAX==777B8 ;MAXIMUM ITEM NUMBER IN TABLE
SL.TYP==7B11 ;TYPE OF TABLE IDENTIFIER
.SLNIC==0 ;NOT INCLUDED IN THIS CONFIGURATION
.SLIXI==1 ;INDEX BY ITEM NUMBER
.SLIXJ==2 ;INDEX BY JOB NUMBER
.SLIXS==3 ;INDEX BY JOB NUMBER OR SEGMENT NUMBER
.SLIXP==4 ;INDEX BY JOB NUMBER (DATA IN PDB)
.SLIXR==5 ;INDEX BY NEGATIVE AND POSITIVE OFFSETS
;BITS 12,13 RESERVED FOR DEC
SL.MAC==17B17 ;A MONITOR AC NUMBER
SL.ADR==0,,-1 ;EXECUTIVE MODE ADDRESS OF TABLE, IF SL.TYP=1,2,3
;OFFSET TO PDB IF SL.TYP=4
.GTDEV==24 ;DEVICE OR STRUCTURE (SEGMENTS ONLY)
.GTWSN==25 ;NAMES OF WAIT STATES
.GTLOC==26 ;REMOTE STATION NUMBER
.GTCOR==27 ;CORE TABLE
.GTCOM==30 ;MONITOR COMMAND NAMES
.GTNM1==31 ;USER NAME
.GTNM2==32 ; ..
.GTCNO==33 ;CHARGE NUMBER
.GTTMP==34 ;TMPCOR POINTERS (OBSOLETE IN 7.01)
.GTWCH==35 ;WATCH BITS
JW.WDY==1B1 ;DAYTIME AT START
JW.WRN==1B2 ;RUN TIME
JW.WWT==1B3 ;WAIT TIME
JW.WDR==1B4 ;DISK READS
JW.WDW==1B5 ;DISK WRITES
JW.WVR==1B6 ;VERSIONS
JW.WMT==1B7 ;MTA STATISTICS
JW.WAL==376B8 ;WATCH ALL
JW.WMS==7B11 ;/MESSAGE LEVEL
.JWWPR==1 ;PREFIX
.JWWOL==2 ;ONE LINE
.JWWPO==3 ;PREFIX,FIRST
.JWWLG==6 ;LONG, NO PREFIX
.JWWPL==7 ;PREFIX AND LONG
JW.WCN==1B9 ;/MESSAGE:CONTINUATION
JW.WFL==1B10 ;/MESSAGE:FIRST
JW.WPR==1B11 ;/MESSAGE:PREFIX
.GTSPL==36 ;SPOOLING CONTROL
JS.PRI==7B26 ;DISK PRIORITY
JS.DFR==1B27 ;DEFERED SPOOLING (MPB-I STYLE)
JS.PCR==1B31 ;SPOOL CDR
JS.PCP==1B32 ;SPOOL CDP
JS.PPT==1B33 ;SPOOL PTP
JS.PPL==1B34 ;SPOOL PLT
JS.PLP==1B35 ;SPOOL LPT
JS.PAL==37 ;SPOOL ALL
.GTRTD==37 ;REAL TIME STATUS
.GTLIM==40 ;TIME AND BATCH STATUS
JB.LCR==777B9 ;CORE LIMIT
JB.LBT==1B10 ;BATCH JOB
JB.LSY==1B11 ;GOTTEN FROM SYS:
JB.LTM==77777777 ;TIME LIMIT TO GO IN JIFFIES
.GTQQQ==41 ;OBSOLETE
.GTQJB==42 ;OBSOLETE
.GTCM2==43 ;MONITOR SET COMMAND NAMES
.GTCRS==44 ;HARDWARE STATUS FROM CRASH
CR.SAP==0,,44 ;APR CONI
CR.SPI==1,,44 ;PI CONI
CR.SSW==2,,44 ;APR DATAI (SWITCHES)
.GTISC==45 ;SWAP IN SCAN TABLES
.GTOSC==46 ;SWAP OUT SCAN
.GTSSC==47 ;SCHEDULER SCAN
.GTRSP==50 ;RESPONSE COUNTER TABLE
.GTSYS==51 ;SYSTEM WIDE DATA
%SYERR==0,,51 ;SYSTEM WIDE HARDWARE ERROR COUNT
%SYCCO==1,,51 ;NUMBER OF TIMES COMCNT WAS OFF
%SYDEL==2,,51 ;DISABLED HARDWARE ERROR COUNT
%SYSPC==3,,51 ;LH=3 LETTER CODE OF LAST STOPCD,RH=ADDRESS+1 OF LAST STOPCD
%SYNDS==4,,51 ;NUMBER OF DEBUG STOPCDS
%SYNJS==5,,51 ;NUMBER OF JOB STOPCDS (INCLUDING DEBUG
; STOPCD'S IF A JOB IS STOPPED)
%SYNCP==6,,51 ;NUMBER OF COMMANDS PROCESSED
%SYSJN==7,,51 ;LAST STOPCD--JOB NUMBER
%SYSTN==10,,51 ;LAST STOPCD--TTY NAME
%SYSPN==11,,51 ;LAST STOPCD--PROGRAM NAME
%SYSUU==12,,51 ;LAST STOPCD--UUO
%SYSUP==13,,51 ;LAST STOPCD--USER PC
%SYSPP==14,,51 ;LAST STOPCD--USER PPN
.GTWHY==52 ;OPERATOR WHY COMMENTS IN ASCIZ
.GTTRQ==53 ;TOTAL TIME IN RUN QUEUES WHETHER OR NOT RUNNING
.GTSPS==54 ;SECOND PROCESSOR STATUS
SP.SC0==1B29 ;SET CPU COMMAND (OK TO USE)
SP.CR0==1B35 ;SET CPU UUO (OK TO USE)
;OTHERS BY SHIFTING LEFT 1 BIT/PROCESSOR
;CPU DATA BLOCKS CONSTANTS AND VARIABLES
.GTC0C==55 ;CPU0 CDB CONSTANTS
.GTC0V==56 ;CPU0 CDB VARIABLES
.GTC1C==57 ;CPU1 CDB CONSTANTS
.GTC1V==60 ;CPU1 CDB VARIABLES
.GTC2C==61 ;CPU2 CDB CONSTANTS
.GTC2V==62 ;CPU2 CDB VARIABLES
.GTC3C==63 ;CPU3 CDB CONSTANTS
.GTC3V==64 ;CPU3 CDB VARIABLES
.GTC4C==65 ;CPU4 CDB CONSTANTS
.GTC4V==66 ;CPU4 CDB VARIABLES
.GTC5C==67 ;CPU5 CDB CONSTANTS
.GTC5V==70 ;CPU5 CDB VARIABLES
;ENTRIES IN CDB CONSTANTS TABLE
%CCPTR==0,,55 ;LH=POINTER TO NEXT CDB
%CCSER==1,,55 ;APR SERIAL NUMBER
%CCOKP==2,,55 ;CPU OK IF LE 0, JIFFIES DEAD IF GT 0
%CCTOS==3,,55 ;TRAP OFFSET FOR KA10 INTERRUPT LOCATIONS (ADDRESS OF EPT KI/KL/KS)
%CCLOG==4,,55 ;LOGICAL NAME (CPUN)
%CCPHY==5,,55 ;PHYSICAL NAME (CPXN)
%CCTYP==6,,55 ;TYPE OF PROCESSOR (LH-DEC, RH-CUST)
.CC166==1 ;PDP-6 (OBSOLETE IN 7.01)
.CCKAX==2 ;KA-10 (OBSOLETE IN 7.01)
.CCKIX==3 ;KI-10
.CCKLX==4 ;KL-10
.CCKSX==5 ;KS-10
%CCMPT==7,,55 ;REL. GETTAB POINTER TO BAD ADDRESS TABLE
CC%BLN==777B8 ;LENGTH-1 OF BAD ADDRESS SUBTABLE
CC%BRA==777777B35 ;RELATIVE ADDRESS OF FIRST WORD IN SUBTABLE
%CCRTC==10,,55 ;REAL TIME CLOCK (DK10) DDB
%CCRTD==11,,55 ;REAL TIME CLOCK DDB IF HI PREC. TIME ACCT.
%CCPAR==12,,55 ;REL. GETTAB POINTER TO PARITY SUMMARY
CC%PLN==777B8 ;LENGTH-1 OF PARITY SUBTABLE
CC%PRA==777777B35 ;RELATIVE ADDRESS OF FIRST WORD IN SUBTABLE
%CCRSP==13,,55 ;REL. GETTAB POINTER TO RESPONSE SUMMARY
CC%RLN==777B8 ;LENGTH-1 OF RESPONSE SUBTABLE
CC%RRA==777777B35 ;RELATIVE ADDRESS OF FIRST WORD IN SUBTABLE
%CCDKX==14,,55 ;NUMBER OF DK10'S ON THIS CPU
%CCEBS==15,,55 ;NUMBER OF EBOX TICKS PER SECOND ON KL10
%CCMBS==16,,55 ;NUMBER OF MBOX TICKS PER SECOND ON KL10
%CCNXT==17,,55 ;POINTER TO NXM SUBTABLE IN VARIABLES AREA
CC%NLN==777B8 ;LENGTH-1 OF NXM SUBTABLE
CC%NRA==777777B35 ;RELATIVE ADDRESS OF FIRST WORD IN SUBTABLE
%CCCSB==20,,55 ;POINTER TO CPU STATUS BLOCK SUBTABLE IN VARIABLES AREA
CC%CLN==777B8 ;LENGTH-1 OF CPU STATUS BLOCK
CC%CRA==777777B35 ;RELATIVE ADDRESS OF FIRST WORD IN SUBTABLE
%CCDSB==21,,55 ;POINTER TO DEVICE STATUS BLOCK IN VARIABLES AREA
CC%DLN==777B8 ;LENGTH-1 OF DEVICE STATUS BLOCK
CC%DRA==777777B35 ;RELATIVE ADDRESS OF FIRST WORD IN SUBTABLE
%CCSDP==22,,55 ;POINTER TO SBDIAG SUBTABLE IN VARIABLES AREA
CC%SLN==777B8 ;LENGTH-1 OF SBDIAG SUBTABLE
CC%SRA==777777B35 ;RELATIVE ADDRESS OF FIRST WORD IN THE SUBTABLE
%CCBPA==23,,55 ;POINTER TO PERF. COUNTS IN VARIABLE SUBTABLE
;ENTRY IN CDB VARIABLES TABLE
%CVUPT==5,,56 ;UPTIME
%CVLST==12,,56 ;LOST TIME
%CVTPE==14,,56 ;TOTAL MEMORY PARITY ERRORS
%CVSPE==15,,56 ;SPURIOUS MEMORY PARITY ERRORS
%CVMPC==16,,56 ;MULTIPLE MEMORY PARITY ERRORS
%CVMPA==17,,56 ;MEMORY PARITY ADDRESS
%CVMPW==20,,56 ;MEMORY PARITY WORD
%CVMPP==21,,56 ;MEMORY PARITY PC
;HOLES ABOVE HERE BECAUSE OF .GTNSW COMPATABILITY
%CVABC==27,,56 ;ADDRESS BREAK COUNT
%CVABA==30,,56 ;ADDRESS BREAK ADDRESS
%CVLJR==31,,56 ;LAST JOB RUN
;(OBSOLETE)
%CVSTS==35,,56 ;STOP TIME-SHARING THIS CPU
%CVRUN==36,,56 ;OPERATOR CONTROLLED SCHEDULING
CV%RUN==1B0 ;DON'T RUN JOBS
%CVNUL==37,,56 ;NULL TIME
%CVEDI==40,,56 ;LH=PC,RH=COUNT OF EXEC DON'T CARE INTERRUPTS.
%CVJOB==41,,56 ;CURRENT JOB
%CVOHT==42,,56 ;OVERHEAD TIME IN JIFFIES (EXC. UUOS)
%CVEVM==43,,56 ;MAX EVM FOR LOCK UUO MAPPING
%CVEVU==44,,56 ;USED EVM FOR LOCK UUO MAPPING
%CVLLC==45,,56 ;LOCK LOOP COUNT
%CVTUC==46,,56 ;TOTAL UUO COUNT
%CVTJC==47,,56 ;TOTAL JOB CONTEXT SWITCH COUNT
%CVTNE==50,,56 ;TOTAL NXM ERRORS
%CVSNE==51,,56 ;TOTAL NON-REPRODUCIBLE NXM ERRORS
%CVNJA==52,,56 ;NUMBER OF JOBS AFFECTED BY THIS NXM
%CVMNA==53,,56 ;FIRST MEMORY ADDRESS WITH NXM
%CVETJ==54,,56 ;EBOX TICKS PER JIFFY (COMPUTED)
%CVNTJ==55,,56 ;MBOX TICKS PER JIFFY (COMPUTED BY ONCE)
%CVBPA==56,,56 ;PHYS ADR OF WORD WITH BAD PARITY ON LAST AR/ARX TRAP (KL)
%CVTBD==57,,56 ;BAD DATA ON LAST AR/ARX TRAP
%CVTGD==60,,56 ;GOOD DATA AFTER RECOV FROM AR/ARX TRAP
%CVNPT==61,,56 ;NUMBER OF AR/ARX TRAPS SINCE RELOAD
%CVAER==62,,56 ;RDERA RESULTS AFTER UNUSUAL APR INTERRUPT
%CVPCN==63,,56 ;CONI APR AFTER PARITY INTERRUPT
%CVSB0==64,,56 ;SBUS DIAG FUNCTION 0 - WORD 0
%CVS0A==65,,56 ;SBUS DIAG FUNCTION 0 - WORD 1
%CVSB1==66,,56 ;SBUS DIAG FUNCTION 1 - WORD 0
%CVS1A==67,,56 ;SBUS DIAG FUNCTION 1 - WORD 1
%CVPPC==70,,56 ;PC ON AR/ARX TRAP
%CVPFW==71,,56 ;PAGE-FAULT WORD ON LAST AR/ARX TRAP
%CVHPT==72,,56 ;NUMBER OF HARD AR/ARX TRAPS
%CVSPT==73,,56 ;NUMBER OF SOFT AR/ARX TRAPS
%CVPTP==74,,56 ;NUMBER OF PAGE TABLE PARITY ERRORS
%CVCSN==75,,56 ;NUMBER OF CACHE SWEEPS SINCE RELOAD
%CVCLN==76,,56 ;NUMBER OF TIMES A JOB COULDNT RUN DUE TO CACHE STATE
%CVCLT==77,,56 ;LOST TIME ACCRUED DUE TO (%CVCLN ABOVE)
%CVCSD==100,,56 ;INCR'ED IF SWAPPER WAITS FOR ANOTHER CPU TO SWEEP CACHE
%CVCRN==101,,56 ;CACHE SWEEP REQUEST COUNT (SEE COMMON.MAC)
%CVCEC==102,,56 ;COUNT NON-RECOVERABLE AR/ARX PARITY ERRORS WHICH INVOLVED CACHE
%CVPTR==103,,56 ;RETRY WORD FOR AR/ARX PARITY ERROR TRAP ROUTINE
%CVTSD==104,,56 ;AR/ARX TRAP ROUTINE HAS SAVED APR.ERA.SB
; DIAGS FOR ERROR REPORTING
%CVREP==105,,56 ;USED BY NXM/PARITY RECOVERY ROUTINES TO
; DETERMINE TYPES OF ERRORS LISTED
%CVNDB==106,,56 ;NUMBER OF TIMES THIS CPU'S DOORBEL WAS RUNG
%CVSBR==107,,56 ;STATUS BLOCKS READ ON THIS CPU
%CVBPF==110,,56 ;.LE. 0 IF PERFORMANCE COUNTS BEING KEPT (%CCBPA)
;RESPONSE SUBTABLE
%CVRSO==0 ;(REL.) SUM TTY OUT UUO RESPONSE
%CVRNO==1 ;(REL.) NUMBER TTY OUT UUO RESPONSE
%CVRHO==2 ;(REL.) HI-SUM SQ TTY OUT UUO RESPONSE
%CVRLO==3 ;(REL.) LO-SUM SQ TTY OUT UUO RESPONSE
%CVRSI==4 ;(REL.) SUM TTY INP UUO RESPONSE
%CVRNI==5 ;(REL.) NUMBER TTY INP UUO RESPONSE
%CVRHI==6 ;(REL.) HI-SUM SQ TTY INP UUO RESPONSE
%CVRLI==7 ;(REL.) LO-SUM SQ TTY INP UUO RESPONSE
%CVRSR==10 ;(REL.) SUM QUANTUM REQ RESPONSE
%CVRNR==11 ;(REL.) NUMBER QUANTUM REQ RESPONSE
%CVRHR==12 ;(REL.) HI-SUM SQ QUANTUM REQ RESPONSE
%CVRLR==13 ;(REL.) LO-SUM SQ QUANTUM REQ RESPONSE
%CVRSX==14 ;(REL.) SUM ONE OF ABOVE RESPONSE
%CVRNX==15 ;(REL.) NUMBER ONE OF ABOVE RESPONSE
%CVRHX==16 ;(REL.) HI-SUM SQ ONE OF ABOVE RESPONSE
%CVRLX==17 ;(REL.) LO-SUM SQ ONE OF ABOVE RESPONSE
%CVRSC==20 ;(REL.) SUM CPU RESPONSE
%CVRNC==21 ;(REL.) NUMBER CPU RESPONSE
%CVRHC==22 ;(REL.) HI-SUM SQ CPU RESPONSE
%CVRLC==23 ;(REL.) LO-SUM SQ CPU RESPONSE
;ENTRIES 24-31 (KA10 LONG FLOATING POINT INSTRUCTIONS) ARE OBSOLETE IN 7.02
%CVUFA==24 ;UFA'S SIMULATED
%CVDFN==25 ;DFN'S SIMULATED
%CVFAD==26 ;FADL'S SIMULATED
%CVFSB==27 ;FSBL'S SIMULATED
%CVFMP==30 ;FMPL'S SIMULATED
%CVFDV==31 ;FDVL'S SIMULATED
;PARITY SUBTABLE
%CVPLA==0 ;(REL.) HIGHEST ADDRESS OF PARITY ERROR
%CVPMR==1 ;(REL.) ADDRESS IN SEGMENT OF PARITY ERROR
%CVPTS==2 ;(REL.) NUMBER OF PARITIES THIS SWEEP
%CVPSC==3 ;(REL.) NUMBER OF PARITY SWEEPS
%CVPUE==4 ;(REL.) NUMBER OF USER ENABLED PARITY ERRORS
%CVPAA==5 ;(REL.) AND OF BAD ADDRESS THIS SWEEP
%CVPAC==6 ;(REL.) AND OF BAD CONTENTS THIS SWEEP
%CVPOA==7 ;(REL.) IOR OF BAD ADDRESS THIS SWEEP
%CVPOC==10 ;(REL.) IOR OF BAD CONTENTS THIS SWEEP
%CVPCS==11 ;(REL.) NUMBER OF SPURIOUS CHANNEL ERRORS
;NXM SUBTABLE
%CVNLA==0 ;(REL.) LAST NXM ADDRESS
%CVNMR==1 ;(REL.) LAST NXM RELATIVE ADDRESS
%CVNTS==2 ;(REL.) NUMBER OF NXM'S FOUND THIS SWEEP
%CVNSC==3 ;(REL.) NUMBER OF NXM SWEEPS DONE
%CVNUE==4 ;(REL.) NUMBER OF USER ENABLED NXM'S
%CVNAA==5 ;(REL.) LOGICAL AND OF BAD ADDRESSES
%CVNOA==6 ;(REL.) INCLUSIVE OR OF BAD ADDRESSES
%CVNCS==7 ;(REL.) NUMBER OF SPURIOUS CHANNEL NXM'S
;CPU STATUS SUBTABLE
%CVSAI==0 ;APR ID
%CVSAP==1 ;CONI APR,
%CVSPI==2 ;CONI PI,
%CVSPD==3 ;DATAI PAG,
%CVSPC==4 ;CONI PAG,
;END OF LOCATIONS COLLECTED ON KI10
%CVSER==11 ;RDERA
%CVSRD==12 ;CONI RH20, FOR ALL 8 RH'S
%CVSDT==22 ;CONI DTEN,
%CVSE0==26 ;EPT LOCS 0-37
%CVSE1==66 ;EPT LOCS 140-177
%CVSU1==126 ;UPT LOCS 500-503
%CVSA6==132 ;AC BLOCK 6, REGS 0-3 AND 12
%CVSA7==136 ;AC BLOCK 7, REGS 0-2
%CVSSB==141 ;START OF SBDIAG DATA (MAXIMUM LENGTH = 50 WORDS)
;KL10 BACKGROUND PERFORMANCE ANALYSIS FIGURES SUBTABLE
%CVCH0==0 ;RH20 #0 USAGE
%CVCH1==4 ;RH20 #1 USAGE
%CVCH2==10 ;RH20 #2 USAGE
%CVCH3==14 ;RH20 #3 USAGE
%CVCH4==20 ;RH20 #4 USAGE
%CVCH5==24 ;RH20 #5 USAGE
%CVCH6==30 ;RH20 #6 USAGE
%CVCH7==34 ;RH20 #7 USAGE
%CVPI0==40 ;PI LEVEL 0 (DTE) USAGE
%CVPI1==44 ;PI LEVEL 1 USAGE
%CVPI2==50 ;PI LEVEL 2 USAGE
%CVPI3==54 ;PI LEVEL 3 USAGE
%CVPI4==60 ;PI LEVEL 4 USAGE
%CVPI5==64 ;PI LEVEL 5 USAGE
%CVPI6==70 ;PI LEVEL 6 USAGE
%CVPI7==74 ;PI LEVEL 7 USAGE
.GTFET==71 ;FEATURE TEST SETTINGS
%FTUUO==0,,71 ;UUOS
F%MDA==00,,1B19 ;MOUNTABLE DEVICE ALLOCATOR
F%MLOG==0,,1B20 ;MIC LOG FILE SUPPORT
F%MIC==00,,1B21 ;MACRO COMMAND PROCESSOR
F%EQDQ==0,,1B22 ;ENQ./DEQ.
F%GALA==0,,1B23 ;GALAXY-10 FEATURES
F%PI==000,,1B24 ;SOFT. PI SYS
F%IPCF==0,,1B25 ;IPCF
F%CCIN==0,,1B26 ;CONTROL-C INTERCEPT
F%PTYU==0,,1B27 ;JOBSTS AND CNTLJOB UUOS
F%PEEK==0,,1B28 ;PEEK UUO
F%POKE==0,,1B29 ;POKE. UUO
F%JCON==0,,1B30 ;JOB CONTINUE
F%SPL==00,,1B31 ;SPOOLING
F%PRV==00,,1B32 ;JOB PRIVS
F%DAEM==0,,1B33 ;DAEMON FUNCTIONS, ETC.
F%GETT==0,,1B34 ;GETTAB UUO
F%2REL==0,,1B35 ;2-REGISTER RELOCATION
%FTRTS==1,,71 ;REAL TIME AND SCHEDULER
F%CMSR==1,,1B23 ;COMMUNICATION MEASUREMENT CODE
F%PSCD==1,,1B24 ;SCHEDULER PERFORMANCE GATHERING
F%NSCH==1,,1B25 ;NEW SCHEDULER
F%VM==001,,1B26 ;VIRTUAL MEMORY
F%SWAP==1,,1B27 ;SWAPPER (DEFINED IN S)
F%SHFL==1,,1B28 ;SHUFFLER
F%RTC==01,,1B29 ;DK10 SERVICE
F%LOCK==1,,1B30 ;LOCK UUO
F%TRPS==1,,1B31 ;TRPSET UUO
F%RTTR==1,,1B32 ;RTTRAP UUO
F%SLEE==1,,1B33 ;SLEEP UUO
F%HIBW==1,,1B34 ;HIBER/WAKE UUOS
F%HPQ==01,,1B35 ;HIGH PRIORITY RUN QUEUES
%FTCOM==2,,71 ;COMMANDS
F%PJOB==2,,1B19 ;EXTENDED PJOB COMMAND
F%EXE==02,,1B20 ;.EXE FORMAT FILES SUPPORTED
F%MOFF==2,,1B21 ;SET MEMORY OFF LINE
F%MONL==2,,1B22 ;SET MEMORY ON LINE
F%CCL==02,,1B23 ;COMPIL COMMANDS (DEFINED IN S)
F%CCLX==2,,1B24 ;COMPIL-CLASS
F%QCOM==2,,1B25 ;QUEUE AND FRIENDS
F%SET==02,,1B26 ;SET UUO/COMMAND
F%VERS==2,,1B27 ;VERSION
F%BCOM==2,,1B28 ;BATCH CONTROL FILE
F%SEDA==2,,1B29 ;SET DAYTIME AND SET DATE
F%WATC==2,,1B30 ;WATCH
F%FINI==2,,1B31 ;FINISH AND CLOSE
F%REAS==2,,1B32 ;REASSIGN UUO/COMMAND
F%EXAM==2,,1B33 ;E AND D
F%TALK==2,,1B34 ;SEND
F%ATTA==2,,1B35 ;ATTACH COMMAND/UUO
%FTACC==3,,71 ;ACCOUNTING INFO
F%ACCT==3,,1B28 ;ACCOUNTING SUPPORT
F%EMRT==3,,1B29 ;KL10 EBOX/MBOX USER RUNTIME CAPABILITY
F%FDAE==3,,1B30 ;FILE DAEMON SUPPORT
F%TLIM==3,,1B31 ;TIME/CORE LIMITS, ETC.
F%CNO==03,,1B32 ;CHARGE NUMBER
F%UNAM==3,,1B33 ;USER NAME
F%KCT==03,,1B34 ;KILO-CORE-TICKS
F%TIME==3,,1B35 ;RUN TIME
%FTERR==4,,71 ;ERROR CONTROL AND OPTIONS
F%KS10==4,,1B21 ;THIS IS A KS10
F%MNXM==4,,1B22 ;NXM ERROR RECOVERY CODE
F%KL10==4,,1B23 ;THIS IS A KL10
F%KA10==4,,1B24 ;THIS IS A KA10
F%22BI==4,,1B25 ;22 BIT CHANNEL (DF10C)
F%PDBS==4,,1B26 ;SWAPPING PDB
F%KI10==4,,1B27 ;THIS IS A KI10
F%METR==4,,1B28 ;METER. UUO
F%EXON==4,,1B29 ;EXECUTE ONLY FILES (ALWAYS 1 SINCE 5.06)
F%KII==04,,1B30 ;KI-10 INSTR CHECK ON KA10
F%BOOT==4,,1B31 ;BOOTS BOOTSTRAP
F%2SWP==4,,1B32 ;MULT. SWAPPING DEVICES
F%EL==004,,1B33 ;DAEMON ERROR LOGGING
F%MS==004,,1B34 ;MULTI-PROCESSORS
F%MEMP==4,,1B35 ;MEMORY PARITY RECOVERY CODE
%FTDEB==5,,71 ;DEBUGGING FEATURES
F%2SEG==5,,1B27 ;2 SEGMENT MONITOR
F%RSP==05,,1B28 ;RESPONSE TIME
F%WHY==05,,1B29 ;WHY RELOAD
F%PATT==5,,1B30 ;PATCH SPACE IN TABLES
F%TRAC==5,,1B31 ;BACK TRACKING FEATURES
F%HALT==5,,1B32 ;HALTS IN MONITOR
F%RCHK==5,,1B33 ;INTERNAL REDUNDANCY CHECKS
F%MONP==5,,1B34 ;MONITOR WRITE PROTECTED
F%CHEC==5,,1B35 ;MONITOR CHECKSUMMED
%FTSTR==6,,71 ;FILE STRUCTURE PARAMS
F%DHIA==6,,1B19 ;HIGH AVAIL. FEATURES
F%DSIM==6,,1B20 ;MULTI. ACCESS UPDATE
F%NUL==06,,1B21 ;NUL
F%LIB==06,,1B22 ;LIB/SYS/OLD/NEW ETC.
F%DPRI==6,,1B23 ;DISK PRIORITY TRANSFERS
F%APLB==6,,1B24 ;APPEND TO LAST BLOCK
F%AIR==06,,1B25 ;APPEND IMPLIES READ
F%GSRC==6,,1B26 ;GENERIC DEVICE SEARCH
F%DRDR==6,,1B27 ;RENAME ACROSS DIRECTORIES
F%DSEK==6,,1B28 ;SEEK UUO
F%DSUP==6,,1B29 ;SUPER USETI/O
F%DQTA==6,,1B30 ;DISK QUOTAS
F%STR==06,,1B31 ;MULTIPLE STRUCTURES
F%5UUO==6,,1B32 ;MISC. 5-SERIES UUOS
F%PHYO==6,,1B33 ;PHYSICAL ONLY
F%SFD==06,,1B34 ;SUB FILE DIRECTORIES
F%MOUN==6,,1B35 ;STRUUO FUNCTIONS
%FTDSK==7,,71 ;INTERNAL DISK PARAMS
F%SLCK==7,,1B19 ;DEBUG SEARCH LIST CODE
F%2ATB==7,,1B20 ;2 PART ACCESS BLOCKS
F%CBDB==7,,1B21 ;DEBUG CB INTERLOCK
F%LOGI==7,,1B22 ;LOGIN (DEFINED IN S)
F%DISK==7,,1B23 ;DISK SYSTEM (DEFINED IN S)
F%FFRE==7,,1B24 ;PREVENT RACES IN FILFND
F%SWPE==7,,1B25 ;SWAP READ ERROR RECOVERY
F%DBBK==7,,1B26 ;BAD BLOCK MARKING
F%DUFC==7,,1B27 ;UFD COMPRESSOR
F%DETS==7,,1B28 ;DISK ERROR SIMULATOR
F%DMRB==7,,1B29 ;MULTI RIBS
F%DSMC==7,,1B30 ;SMALLER ALLOC. OF DISK CORE BLOCKS
F%DALC==7,,1B31 ;ALLOCATION OPTIMISATIONS
F%DSTT==7,,1B32 ;DISK USAGE STATISTICS
F%DHNG==7,,1B33 ;HUNG DISK RECOVERY
F%DBAD==7,,1B34 ;DISK OFF-LINE RECOVERY
F%DOPT==7,,1B35 ;LATENCY OPTIMIZATION
%FTSCN==10,,71 ;SCANNER OPTIONS
F%RP04==10,,1B20 ;INCLUDE RP04 SUPPORT
F%RDX==010,,1B21 ;REMOTE DATA ENTRY SERVICE
F%DCXH==10,,1B22;DC10-H (2741 ON DC10) SUPPORTED
F%TVP==010,,1B23;FANCY VERTICAL POSITIONING
F%TYPE==10,,1B24;TYPESET-10 FEATURES IN DC76
F%2741==10,,1B25;SUPPORT 2741-LIKE TERMINALS
F%CAFE==10,,1B26;DC76
F%TBLK==10,,1B27;TTY BLANK COMMAND
F%TPAG==10,,1B28;PAGE AND DISPLAY KNOWLEDGE
F%DIAL==10,,1B29;AUTO DIALER
F%SCLC==10,,1B30;SPECIAL LINE CONTROL
F%SCNR==10,,1B31;HARDWARE SCANER
F%MODM==10,,1B32;MODEM CONTROL
F%630H==10,,1B33;SINGLE SCANNER 630
F%GPO2==10,,1B34;U.K. MODEM SUPPORT
F%HDPX==10,,1B35;TRULY HALF DUPLEX TERMINALS
%FTPER==11,,71 ;I/O PARAMS
F%RDBA==11,,1B19;READ BACKWARDS ON TU70
F%TAPO==11,,1B20;TAPOP. UUO
F%TLAB==11,,1B21;TAPE LABEL SUPPORT
F%TASK==11,,1B22;TASK TO TASK NETWORK SUPPORT
F%DAS7==11,,1B23;DAS78 (REMOTE 360/370/2780) SUPPORT
F%XTC==011,,1B24;DA28-C NETWORK SUPPORT
F%MSGS==11,,1B25;MSGSER (MPX DEVICE)
F%HSLN==11,,1B26;HIGH-SPEED LOGICAL DEVICE SEARCH
F%CPTR==11,,1B27;CDP TROUBLE INTERCEPT
F%CRTR==11,,1B28;CDR TROUBLE INTERCEPT
F%CTY1==11,,1B29;SUPPORT CTY1
F%NET==011,,1B30;NETWORK SOFTWARE
F%REM==011,,1B30;REMOTE STATION SOFTWARE
F%LPTR==11,,1B31;LPT DEVICE ERROR RECOVERY
F%OPRE==11,,1B32;DEVICE ERRS TO OPER
F%CDRS==11,,1B33;CDR SUPER IMAGE MODE
F%MTSE==11,,1B34;MTA DENSITY/BLOCK COMMANDS
F%TMP==011,,1B35;TMPCOR AREA
%FTPE2==12,,71 ;I/O PARAMS (SECOND WORD)
F%DX10==12,,1B35 ;DX10 DEVICE - CHAINING (MAGTAPES)
%FTDS2==13,,71 ;INTERNAL DISK PARAMS
F%DUAL==13,,1B35 ;DUAL-PORTED DISKS (RP04,RP06)
%FTST2==14,,71 ;FILE STRUCTURE PARAMS
F%PSTR==14,,1B35 ;PRIVATE FILE STRUCTURE
%FTUU2==15,,71 ;UUOS
F%MPB==15,,1B35 ;OLD VBATCH CODE
.GTEDN==72 ;ERSATZ DEVICE NAMES
.GTSCN==73 ;SCANNER DATA
%SCNRI==0,,73 ;NUMBER OF RCV INTERRUPTS
%SCNXI==1,,73 ;NUMBER OF XMT INTERRUPTS
%SCNEI==2,,73 ;NUMBER OF ECHO INTERRUPTS (IN XI)
%SCNMB==3,,73 ;MAX BUFFER SIZE
%SCNAL==4,,73 ;NUMBER OF ACTIVE LINES
%SCNPS==5,,73 ;SIZE OF BUFFER FOR PIM MODE
%SCNRA==6,,73 ;ADDRESS OF RECINT
%SCNXA==7,,73 ;ADDRESS OF XMTINT
%SCNTA==10,,73 ;ADDRESS OF TYPE
.GTSNA==74 ;LAST SEND ALL IN 9-BIT
%SCNAE==0,,74 ;BYTE POINTER TO END BYTE IN MESSAGE
%SCNAS==1,,74 ;BYTE POINTER TO FIRST-1 BYTE IN MESSAGE
%SCNAM==2,,74 ;FIRST WORD OF DATA IN MESSAGE
.GTCMT==75 ;SET TTY COMMAND NAMES
.GTPID==76 ;PROCESS COMMUNICATION ID (IPCF)
.GTIPC==77 ;IPCF MISC. DATA
%IPCML==0,,77 ;MAX. PACKET LENGTH
%IPCSI==1,,77 ;PID OF SYSTEM-WIDE [SYSTEM]INFO
%IPCDQ==2,,77 ;DEFAULT QUOTA
%IPCTS==3,,77 ;TOTAL PACKETS SENT
%IPCTO==4,,77 ;TOTAL PACKETS OUTSTANDING
%IPCCP==5,,77 ;PID OF [SYSTEM]IPCC
%IPCPM==6,,77 ;PID MASK
%IPCMP==7,,77 ;LENGTH OF PID TABLE
%IPCNP==10,,77 ;NUMBER OF PID'S NOW DEFINED
%IPCTP==11,,77 ;TOTAL PID'S DEFINED SINCE RELOAD
%IPCIC==12,,77 ;NUMBER OF IPCF PAGES CURRENTLY IN CORE
%IPCSP==13,,77 ;PID OF [SYSTEM]GOPHER
.GTUPM==100 ;USER PAGE MAP PAGE
.GTCMW==101 ;SET WATCH COMMAND NAMES
.GTCVL==102 ;CURRENT VIRT LIMIT,,CURRENT PHY LIMIT
.GTMVL==103 ;MAXIMUM VIRT LIMIT,,MAXIMUM PHY LIMIT
.GTIPA==104 ;IPCF STATISTICS PER JOB
IP.CQD==-1,,0 ;COUNT OF SENDS SINCE LOGIN
IP.CQC==0,,-1 ;COUNT OF RECEIVES SINCE LOGIN
.GTIPP==105 ;IPCF POINTERS AND COUNTS
IP.CQP==777B26 ;OUTSTANDING SENDS
IP.CQO==777 ;OUTSTANDING RECEIVES
.GTIPI==106 ;PID FOR THIS JOB'S [SYSTEM]INFO
.GTIPQ==107 ;IPCF FLAGS AND QUOTAS PER JOB
IP.CQX==1B0 ;DISABLED
IP.CQQ==1B1 ;QUOTA SET
IP.CQS==777B26 ;SEND QUOTA
IP.CQR==777 ;RECEIVE QUOTA
.GTDVL==110 ;POINTER TO THIS JOB'S LOGICAL NAME TABLE
.GTABS==111 ;ADDRESS BREAK WORD (DATAO PTR,)
.GTCMP==112 ;OBSOLETE
%CMPMT==0,,112 ;OBSOLETE
%CMPCV==1,,112 ;OBSOLETE
%CMPDV==2,,112 ;OBSOLETE
.GTVM==113 ;GENERAL VIRTUAL MEMORY DATA
%VMSWP==0,,113 ;SWAP COUNT
%VMSCN==1,,113 ;SCAN COUNT
%VMSIP==2,,113 ;SWAPS IN PROGRESS
%VMSLE==3,,113 ;SWAP LIST ENTRIES
%VMTTL==4,,113 ;TOTAL VM IN USE
%VMCMX==5,,113 ;MAX VALUE OF %VMTTL ALLOWED
%VMRMX==6,,113 ;PAGING RATE MAX FOR SYSTEM (OBSOLETE)
%VMCON==7,,113 ;CONSTANT USED IN SWAP RATE COMPUTATION
%VMQJB==10,,113 ;JOB TO REQUE TO PQV (-1 IF ALL) (OBSOLETE)
%VMRMJ==11,,113 ;PAGING RATE MAX PER JOB (OBSOLETE)
%VMTLF==12,,113 ;TIME OF LAST FAULT
%VMSPF==13,,113 ;SYSTEM PAGE FAULT COUNTS: NOT IN WS,,IN WS
%VMSW1==14,,113 ;ADDRESS OF SWPLST
%VMSW2==15,,113 ;ADDRESS OF SW2LST
%VMSW3==16,,113 ;ADDRESS OF SW3LST
%VMEXP==17,,113 ;TIME CONSTANT EXPONENT
%VMDIF==20,,113 ;%VMEXP - %VMCON
%VMMXI==21,,113 ;MAX. INTERVAL FOR FAULT-RATE CALCULATION
%VMIPC==22,,113 ;COUNT OF IPCF PAGES BEING SWAPPED OUT
%VMUPJ==23,,113 ;OFFSET OF JOB NUMBER IN UPMP
%VMUPR==24,,113 ;OFFSET OF END OF LOW SEG IN UPMP
%VMLST==25,,113 ;OFFSET OF POINTER TO SWAPPABLE DDBS IN UPMP
%VMUPM==26,,113 ;VIRTUAL ADDRESS OF UPMP
%VMLNM==27,,113 ;OFFSET OF POINTER TO LOGICAL NAMES IN UPMP
.GTVRT==114 ;PER JOB PAGING RATE
.GTSST==115 ;SCHEDULER STATISTICS
%SSOSO==0,,115 ;NUMBER OF JOBS RUN OUT OF ORDER TO ALLOW
; THEM TO GIVE UP RESOURCE FOR SWAP OUT.
%SSORJ==1,,115 ;NUMBER OF JOBS RUN OUT OF ORDER TO ALLOW
; THEM TO GIVE UP RESOURCE REQUIRED TO RUN A JOB
%SSNUL==2,,115 ;SWAPPER NULL TIME
%SSLOS==3,,115 ;SWAPPER LOST TIME
%SSRQC==4,,115 ;TOTAL NUMBER OF REQUEUES
%SSICM==5,,115 ;OBSOLETE
%SSMSI==6,,115 ;MEDIUM TERM SCHEDULING INTERVAL
%SSAJS==7,,115 ;AVERAGE JOB SIZE
%SSTQT==10,,115 ;TOTAL QUOTA TIME
%SSEAF==11,,115 ;OBSOLETE
%SSEAT==12,,115 ;OBSOLETE
%SSRSS==13,,115 ;TOTAL USER RUNTIME SINCE SCHED. UUO
; SET CLASS PARAMETERS
%SSCLS==14,,115 ;DEFUALT CLASS FOR NEW JOBS
%SSJIL==15,,115 ;% OF TIME SCHED SCANS SWAPPED IN QUEUE BEFORE SUBQUEUES
%SSSWP==16,,115 ;MINIMUM # OF TICKS SWAPPER SCANS THE SAME PRIMARY SUBQUEUE
%SSBBQ==17,,115 ;BACKGROUND BATCH SUBQUEUE
%SSBBS==20,,115 ;# OF TICKS BETWEEN BACKGROUND BATCH SWAPS
%SSIOF==21,,115 ;% OF TIME SWAPER SCANS PQ2 INCORE CHAIN BEFORE OUTCORE CHAIN
%SSSET==22,,115 ;=0 IF ROUND ROBIN SCHEDULING, =DATE/TIME
; WHEN CLASS RUNTIME TABLE INITIALIZED IF CLASS SCHEDULING
%SSFLG==23,,115 ;=0 IF ROUND ROBIN SCHEDULING
;=COUNT OF CPU CLASSES WITH NON-ZERO QUOTA IF SCHEDULING
%SSCOR==24,,115 ;SECONDS TO WAIT AFTER SWAPPING OUT A RUNNABLE JOB BEFORE IGNORING
; INCORE PROTECT TIME
.GTDCF==116 ;DESIRED CHAN. USE FRACTION (INDEX BY CHAN)
.GTST2==117 ;SECOND JOB STATUS WORD
.GTJTC==120 ;JOB TYPE AND SCHEDULER CLASS
.GTCQP==121 ;CLASS QUOTA IN PERCENT (INDEX BY CLASS)
.GTCQJ==122 ;OBSOLETE
.GTSQP==122 ;SECONDARY QUOTA PERCENTAGE (6.03A SCHEDULER)
.GTCRT==123 ;CLASS RUNTIME SINCE QUOTAS SET (INDEX BY CLASS)
.GTSQH==124 ;OBSOLETE
.GTSQ==125 ;OBSOLETE
.GTSID==126 ;SPECIAL PID TABLE
%SIIPC==0,,126 ;[SYSTEM]IPCC
%SIINF==1,,126 ;[SYSTEM]INFO
%SIQSR==2,,126 ;[SYSTEM]QUASAR
%SIMDA==3,,126 ;MOUNTABLE DEVICE ALLOCATOR
%SITLP==4,,126 ;MAGTAPE LABELING PROCESS
%SIFDA==5,,126 ;FILE DAEMON
%SIMDC==6,,126 ;MOUNTABLE DEVICE COORDINATOR (HISTORICAL)
%SITOL==6,,126 ;TAPE AVR PROCESS
%SIACT==7,,126 ;[SYSTEM]ACCOUNTING
%SIOPR==10,,126 ;OPERATOR INTERFACE
%SISEL==11,,126 ;SYSTEM ERROR LOGGER
%SIDOL==12,,126 ;DISK AVR PROCESS
.GTENQ==127 ;ENQ./DEQ. STATISTICS
%EQMSS==0,,127 ;MAXIMUM STRING SIZE
%EQNAQ==1,,127 ;NUMBER OF ACTIVE QUEUES
%EQESR==2,,127 ;TOTAL ENQ. SINCE RELOAD
%EQDSR==3,,127 ;TOTAL DEQ. SINCE RELOAD
%EQAPR==4,,127 ;ACTIVE POOLED RESOURCES
%EQDEQ==5,,127 ;DEFAULT ENQ. QUOTA
%EQMMS==6,,127 ;MAXIMUM PIE-SLICE LOCK MASK BLOCK SIZE
%EQMTS==7,,127 ;MAXIMUM LOCK-ASSOCIATED TABLE SIZE
.GTJLT==130 ;JOB LOGIN TIME IN UNIVERSAL FORMAT
.GTEBT==131 ;JIFFIES OF KL10 EBOX TIME
.GTEBR==132 ;JIFFY REMAINDER MOD RTUPS OF 131
.GTMBT==133 ;JIFFIES OF KL10 MBOX TIME
.GTMBR==134 ;JIFFY REMAINDER MOD RTUPS OF 133
.GTRDV==135 ;DEVICE PROGRAM IS RUN FROM
.GTRDI==136 ;DIRECTORY PROGRAM IS RUN FROM
.GTRFN==137 ;FILE PROGRAM IS RUN FROM
.GTDFL==140 ;USER'S DEFAULTS
JD.PRT==777B8 ;DEFAULT PROTECTION
JD.SDP==1B9 ;SET IF USER SET DEFAULT PROTECTION
.GTNTP==141 ;NETWORK PERFORMANCE ANALYSIS DATA
%NTCOR==0,,141 ;NUMBER OF WORDS OF FREE SPACE NOW IN USE
%NTMAX==1,,141 ;MAXIMUM VALUE %NTCOR HAS REACHED
%NTAVG==2,,141 ;EXPONENTIAL AVERAGE OF %NTCOR (*10^4)
%NTBAD==3,,141 ;NUMBER OF BAD MESSAGES RECEIVED AND IGNORED
;THE FOLLOWING SUBTABLE POINTERS ARE OF THE FORM:
; <MAX_ENTRY>B8 + <OFFSET_IN_.GTNTP>
%NTRTP==4,,141 ;RECEIVED NCL MESSAGE TYPES
%NTRMT==5,,141 ;RECEIVED NCL NUMBERED MESSAGE TYPES
%NTRDL==6,,141 ;RECEIVED NCL DATA MESSAGE LENGTHS BY POWERS OF 2
;0 = 0 BYTES AND MESSAGES TOO LONG
;1 = 1 BYTE
;2 = 2-3 BYTES
;3 = 4-7 BYTES ...
%NTXTP==7,,141 ;XMITTED NCL MESSAGE TYPES
%NTXMT==10,,141 ;XMITTED NCL NUMBERED MESSAGE TYPES
%NTXDL==11,,141 ;XMITTED NCL DATA MESSAGE LENGTHS BY POWERS OF 2
%NTBLC==12,,141 ;RH - PDB ADDRESS OF LAST BAD MESSAGE
;LH - PC OF DETECTION
.GTSPA==142 ;SCHEDULER PERFORMANCE ANALYSIS DATA
%SPDGS==0,,142 ;DTA GENERATED SLEEPS
%SPMGS==1,,142 ;MTA GENERATED SLEEPS
%SPEWS==2,,142 ;EVENT WAIT SATISFIED
%SPTIS==3,,142 ;TTY INPUT SATISFIED
%SPTOS==4,,142 ;TTY OUTPUT SATISFIED
%SPPIS==5,,142 ;PTY INPUT SATISFIED
%SPPOS==6,,142 ;PTY OUTPUT SATISFIED
%SPRS1==7,,142 ;REQUEUES FROM SS INTO PQ1
%SPRW1==10,,142 ;REQUEUES FROM WAKE INTO PQ1
%SPRD1==11,,142 ;REQUEUES FROM DAEMON SATISFIED INTO PQ1
%SPRO1==12,,142 ;OTHER REQUEUES INTO PQ1
%SPQR1==13,,142 ;PQ1 JOBS WHICH EXPIRED QUANTUM RUNTIME
%SPQR2==14,,142 ;PQ2 JOBS WHICH EXPIRED QUANTUM RUNTIME
%SPQRH==15,,142 ;HPQ JOBS WHICH EXPIRED QUANTUM RUNTIME
%SPIP1==16,,142 ;PQ1 JOBS WHICH EXPIRED INCORE PROTECT TIME
%SPIP2==17,,142 ;PQ2 JOBS WHICH EXPIRED INCORE PROTECT TIME
%SPIPH==20,,142 ;HPQ JOBS WHICH EXPIRED INCORE PROTECT TIME
%SPKS1==21,,142 ;K SWAPPED IN FOR PQ1 JOBS
%SPKS2==22,,142 ;K SWAPPED IN FOR PQ2 JOBS
%SPKSH==23,,142 ;K SWAPPED IN FOR HPQ JOBS
%SPNJ1==24,,142 ;NUMBER OF PQ1 JOBS SWAPPED IN
%SPNJ2==25,,142 ;NUMBER OF PQ2 JOBS SWAPPED IN
%SPNJH==26,,142 ;NUMBER OF HPQ JOBS SWAPPED IN
%SPTC1==27,,142 ;TICS CHARGED TO PQ1
%SPTC2==30,,142 ;TICS CHARGED TO PQ2
%SPTCH==31,,142 ;TICS CHARGED TO HPQ
%SPNRS==32,,142 ;NUMBER OF RESPONSES FOR PQ1/CMQ SWAP IN
%SPNTS==33,,142 ;TOTAL TICS OF RESPONSE FOR PQ1/CMQ SWAP IN
%SPSSS==34,,142 ;SUM SQUARES OF PQ1/PQ2 SWAP IN (2 WORD INTEGER)
%SPMWC==36,,142 ;NUMBER OF MEASUREMENTS OF WASTED CORE
%SPSWC==37,,142 ;SUM OF WASTED CORE IN PAGES
%SPSSC==40,,142 ;SUM SQUARES OF WASTED CORE (2 WORD INTEGER)
.GTVKS==143 ;VIRTUAL KILO-CORE TICKS
.GTUUC==144 ;COUNT OF UUOS DONE PER JOB
.GTRS0==145 ;FIRST SFD IN PATH PROGRAM WAS RUN FROM
.GTRS1==146 ;SECOND SFD IN PATH PROGRAM WAS RUN FROM
.GTRS2==147 ;THIRD SFD IN PATH PROGRAM WAS RUN FROM
.GTRS3==150 ;FOURTH SFD IN PATH PROGRAM WAS RUN FROM
.GTRS4==151 ;FIFTH SFD IN PATH PROGRAM WAS RUN FROM
.GTPC==152 ;I/O WAIT DDB,,USER PC
.GTCAP==153 ;JOB'S CAPABILITY WORD (MAXIMUM PRIVILEGES)
.GTIDX==154 ;MINIMUM AND MAXIMUM RANGE OF SPECIFIED GETTAB TABLE
ID.MIN==777777B17 ;MINIMUM. PROGRAMS SHOULD DO A HLRE IN CASE NEGATIVE
ID.MAX==777777B35 ;MAXIMUM. PROGRAMS SHOULD DO A HRRE IN CASE NEGATIVE
.GTGTB==155 ;GETTAB IMMEDIATE THE GETTAB TABLE USING THE RANGE TABLE
; SEE .GTSLF
.GTTNM==156 ;SIXBIT NAMES OF TERMINALS SUPPORTED IN TRMOP.
; .TOTRM(1041)
.GTOBI==157 ;OPERATOR/BATCH INFO
OB.WTO==3B1 ;WRITE TO OPERATOR CAPABILITIES
.OBALL==0 ;WTO AND WTOR ALLOWED
.OBNWR==1 ;NO WTOR ALLOWED (WTO ONLY)
.OBNOM==2 ;NO MESSAGES TO OPERATOR ALLOWED
OB.BSS==1B10 ;BATCH STREAM NUMBER SET
OB.BSN==177B17 ;BATCH STREAM NUMBER
.GTDCD==160 ;CONI/DATAI CORRESPONDING TO DEVICE STATUS BLOCK (SEE %CCDSB)
.GTNDB==161 ;BYTE POINTERS INTO NODE DATA BLOCK
;(**NOTE** AC FIELDS NON-ZERO)
%NDLEN==0,,161 ;LENGTH OF NDB (NOT A BYTE POINTER)
%NDNXT==1,,161 ;ADDRESS OF NEXT NDB
%NDNNM==2,,161 ;NODE NUMBER
%NDSNM==3,,161 ;ADDRESS OF SIXBIT STATION NAME
%NDTIM==4,,161 ;TIMER
%NDNGH==5,,161 ;FIRST NEIGHBOR ENTRY
%NDNGL==6,,161 ;LAST NEIGHBOR ENTRY
%NDNGN==7,,161 ;NODE NUMBER FROM %NDNGH (ADDRESS FIELD=0)
%NDOPR==10,,161 ;ADDRESS OF OPR LDB
%NDCTJ==11,,161 ;STATION CONTROL JOB NUMBER
%NDLAR==12,,161 ;LAST ACK RECEIVED
%NDLAP==13,,161 ;LAST OUTPUT MESSAGE ACK'ED
%NDLMS==14,,161 ;LAST MESSAGE SENT
%NDLMA==15,,161 ;LAST MESSAGE NUMBER ASSIGNED
%NDLAS==16,,161 ;LAST ACK SENT
%NDLMR==17,,161 ;LAST MESSAGE RECEIVED
%NDLMP==20,,161 ;LAST MESSAGE PROCESSED
SUBTTL MISC. NON-I/O -- TMPCOR
.TCRFS==0 ;COUNT OF FREE SPACE
.TCRRF==1 ;READ FILE
.TCRDF==2 ;DELETE FILE
.TCRWF==3 ;WRITE FILE
.TCRRD==4 ;READ DIRECTORY
.TCRDD==5 ;DELETE DIRECTORY
SUBTTL MISC. NON-I/O -- LOCK
LK.HLC==1B14 ;HI-SEG LOCK WITH CACHE BIT ON(KL10)
LK.HNP==1B15 ;HI-SEG DON'T LOCK PHYSICALLY CONTIGUOUS
LK.HNE==1B16 ;HI-SEG DON'T MAP IN EXEC VM
LK.HLS==1B17 ;HI-SEG LOCK SEGMENT
LK.LLC==1B32 ;LO-SEG LOCK WITH CACHE BIT SET
LK.LNP==1B33 ;LO-SEG DON'T LOCK PHYSICALLY CONTIGUOUS
LK.LNE==1B34 ;LO-SEG DON'T MAP IN EXEC VM
LK.LLS==1B35 ;LO-SEG LOCK SEGMENT
.LKPPN==0 ;PHYSICAL PAGE NUMBER
;LOCK UUO ERRORS
LKNIS%==0 ;NOT IMPLEMENTED IN THIS SYSTEM
LKNLP%==1 ;NO LOCKING PRIVS
LKNCA%==2 ;NOT ENOUGH CORE TO CONTINUE CURRENT JOBS
LKNCM%==3 ;NOT ENOUGH CORE TO GUARANTEE CORMIN
LKNEM%==4 ;NOT ENOUGH EXEC VIRT MEM
LKNIA%==5 ;ILLEGAL SUB-FUNCTION ARGUMENT
LKNPU%==6 ;PAGE UNAVAILABLE
LKNAL%==7 ;ATTEMPT TO MOVE LOCKED SEGMENT
SUBTTL MISC. NON-I/O -- RTTRP
;RTTRP UUO ERROR CODES
RTNEC%==1B23 ;NON-EXISTENT CPU
RTJNP%==1B24 ;JOB DOESN'T HAVE PRIVS
RTNC0%==1B25 ;NOT RUNNABLE ON CPU0
RTDIU%==1B26 ;DEVICE IN USE BY ANOTHER JOB
RTIAU%==1B27 ;ILLEGAL AC USED DURING RTTRP AT INTERRUPT
RTJNL%==1B28 ;JOB NOT LOCKED (OR NOT PRIVILEGED)
RTSLE%==1B29 ;SYSTEM LIMIT EXCEEDED FOR RT DEVICES
RTILF%==1B30 ;ILLEGAL FORMAT OF I/O INSTRUCTION
RTPWI%==1B31 ;POINTER WORD ILLEGAL
RTEAB%==1B32 ;ERROR ADDRESS OUT OF BOUNDS
RTTAB%==1B33 ;TRAP ADDRESS BAD
RTPNB%==1B34 ;PI CHANNEL NOT CURRENTLY AVAILABLE FOR BLKI/O
RTPNA%==1B35 ;PI CHANNEL NOT AVAILABLE
SUBTTL MISC. NON-I/O -- JOBSTS
JB.UJA==1B0 ;JOB NUMBER ASSIGNED
JB.ULI==1B1 ;JOB IS LOGGED IN
JB.UML==1B2 ;TTY IS AT MONITOR LEVEL
JB.UOA==1B3 ;OUTPUT IS AVAILABLE
JB.UDI==1B4 ;TTY IS DEMANDING INPUT
JB.UJC==1B5 ;JACCT IS SET
JB.URN==1B6 ;JOB IS RUNNING
JB.UJN==777777 ;JOB NUMBER
SUBTTL MISC. NON-I/O -- HIBER
HB.SWP==1B0 ;FORCE IMMEDIATE SWAP OUT - OBSOLETE
HB.IPC==1B10 ;IPCF
HB.RIO==1B11 ;I/O
HB.RPT==1B12 ;PTY ACTIVITY
HB.RTL==1B13 ;TTY LINE ACTIVITY
HB.RTC==1B14 ;TTY CHARACTER ACTIVITY
HB.RWJ==1B15 ;THIS JOB
HB.RWP==1B16 ;THIS PROGRAMMER
HB.RWT==1B17 ;THIS PROJECT
SUBTTL MISC. NON-I/O -- APRENB
AP.REN==1B18 ;REPETITIVE ENABLE
AP.POV==1B19 ;PUSH DOWN OVERFLOW
AP.ABK==1B21 ;(FUTURE)ADDRESS BREAK
AP.ILM==1B22 ;ILLEGAL MEMORY
AP.NXM==1B23 ;NON-EXISTENT MEMORY
AP.PAR==1B24 ;PARITY ERROR FLAG
AP.CLK==1B26 ;CLOCK
AP.FOV==1B29 ;FLOATING OVERFLOW
AP.AOV==1B32 ;ARITHMETIC OVERFLOW
;APRENB ERRORS
APRAC%==1 ;ADDRESS CHECK
APRIF%==2 ;ILLEGAL FUNCTION CODE
APRBT%==3 ;BAD TRAP NUMBER
SUBTTL MISC. NON-I/O -- UTRP.
.UTAOF==1 ;ARITHMETIC OVERFLOW TRAP
.UTPOV==2 ;PUSHDOWN LIST OVERFLOW TRAP
;UTRP. ERRORS
UTIAD%==1 ;ILLEGAL ADDRESS
UTUKF%==2 ;UNKNOWN FUNCTION
UTITN%==3 ;ILLEGAL TRAP NUMBER
SUBTTL MISC. NON-I/O -- SAVE/GET LOCATIONS
.SGNAM==0 ;FILE NAME FROM RUN UUO
.SGPPN==7 ;DIRECTORY FROM RUN UUO
.SGDEV==11 ;DEVICE FROM RUN UUO
.SGLOW==17 ;EXTENSION OF LOW SEG FROM RUN UUO
.SG41==122 ;LOCATION IN SAVE FILE CONTAINING COPY OF .JB41
.SGDDT==114 ;LOCATION IN SAVE FILE CONTAINING COPY OF .JBDDT
;BLOCK TYPES IN .EXE FILE DIRECTORY
.SVEND==1777 ;END OF DIRECTORY
.SVDIR==1776 ;DIRECTORY BLOCK
;.EXE FILE DIRECTORY ENTRIES
.SVFPF==0 ;FILE PAGE AND FLAGS
SV%HIS==1B0 ;PAGE IS PART OF HISEG
SV%SHR==1B1 ;PAGE IS SHARABLE
SV%WRT==1B2 ;PAGE IS WRITABLE
SV%CON==1B3 ;PAGE IS CONCEALED
SV%SYM==1B4 ;PAGE IS PART OF SYMBOL TABLE
SV%FPN==1777 ;FILE PAGE NUMBER
.SVPPC==1 ;PROCESS PAGE AND REPEAT COUNT
SV%REP==777B8 ;REPEAT COUNT
SV%PPN==777 ;PROCESS PAGE NUMBER
SUBTTL MISC. NON-I/O -- ALLOC.
.ALLAD==1 ;ALLOCATE THE DEVICE TO THE JOB
.ALLFD==2 ;FREES THE DEVICE
;ALLOC. ERRORS
ALLIS%==1 ;NOT PRIVILEGED
ALLIF%==2 ;ILLEGAL FUNCTION CODE
ALLID%==3 ;ILLEGAL DEVICE
ALLIJ%==4 ;ILLEGAL JOB NUMBER
ALLIA%==5 ;ILLEGAL ARG LIST LENGTH
SUBTTL MISC. NON-I/O -- ERRPT.
.ERPT0==0 ;ADDRESS, JOB NUMBER, ERROR CODE
ER.PAD==777777B17 ;ADDRESS USED BY DAEMON
ER.PJN==777B26 ;JOB NUMBER
ER.PCD==777B35 ;ERROR CODE
.ERPT1==1 ;DDB, UDB ADDRESSES
ER.PDA==777777B17 ;DDB ADDRESS
ER.PUA==777777B35 ;UDB ADDRESS
SUBTTL MISC. NON-I/O -- POKE
PKNPV%==0 ;NOT PRIVILEGED
PKDIF%==1 ;NEW VALUE DOESN'T MATCH EXISTING MONITOR WORD
PKBAD%==2 ;NOT A LEGAL MONITOR ADDRESS
SUBTTL MISC. NON-I/O -- SETUUO
.STCMX==0 ;CORE MAX
.STCMN==1 ;CORE MIN
.STDAY==2 ;DAYTIME
.STSCH==3 ;SCHED WORD (SAME AS %CNSTS)
.STCDR==4 ;CDR SPOOL NAME
.STSPL==5 ;SPOOLING BITS (SAME AS .GTSPL)
.STWTC==6 ;WATCH BITS
ST.WCN==1B9 ;/MESSAGE:CONTINUATION
ST.WFL==1B10 ;/MESSAGE:FIRST
ST.WPR==1B11 ;/MESSAGE:PREFIX
ST.WMS==7B11 ;/MESSAGE:ALL
ST.WDY==1B19 ;WATCH DAYTIME AT START
ST.WRN==1B20 ;WATCH RUN TIME
ST.WWT==1B21 ;WATCH WAIT TIME
ST.WDR==1B22 ;WATCH DISK READS
ST.WDW==1B23 ;WATCH DISK WRITES
ST.WVR==1B24 ;WATCH VERSIONS
ST.WMT==1B25 ;WATCH MTA STATISTICS
ST.WAL==376B26 ;WATCH ALL
.STDAT==7 ;DATE
.STOPR==10 ;OPR DEVICE
.STKSY==11 ;KSYS TIMER
.STCLM==12 ;CORE LIMIT
.STTLM==13 ;TIME LIMIT
.STCPU==14 ;CPU SPECIFICATION
.STCRN==15 ;CPU RUNABILITY
SP.CR5==1B30 ;CPU5
SP.CR4==1B31 ;CPU4
SP.CR3==1B32 ;CPU3
SP.CR2==1B33 ;CPU2
SP.CR1==1B34 ;CPU1
;SP.CR0==1B35 ;CPU0 (SAME BIT DEFINED EARLIER)
.STLMX==16 ;LOGMAX
.STBMX==17 ;BATMAX
.STBMN==20 ;BATMIN
.STDFL==21 ;DSKFUL
.DFPSE==0 ;PAUSE
.DFERR==1 ;ERROR
.STMVM==22 ;MAX VM
.STMVR==23 ;(OBSOLETE)
.STUVM==24 ;USER VM MAXIMA (VIRT,,PHY)
.STCVM==25 ;USER CURRENT VM MAXIMA (VIRT,,PHY)
ST.VSG==1B18 ;SET IF PHYS LIMIT IS GUIDELINE
.STTVM==26 ;USER VIRT TIME INTERRUPTS
.STABK==27 ;ADDRESS BREAK (HDWR FORMAT; 1B3 BREAKS UUO REFERENCES)
ST.AEX==1B0 ;BREAK CONDITION INSTRUCTION FETCH
ST.ARD==1B1 ;BREAK CONDITION DATA FETCH
ST.AWR==1B2 ;BREAK CONDITION
ST.AUU==1B3 ;BREAK CONDITION MUUO (SOFTWARE BIT)
ST.ACT==777B17 ;# OF TIMES ADDRESS BREAK MUST OCCUR BEFORE PSI INTERRUPT
ST.ADR==777777 ;ADDRESS BREAK ADDRESS
.STPGM==30 ;SET PROGRAM TO RUN
.STDFR==31 ;SET DEFERED SPOOLING
.STHST==32 ;SET HOST SYSTEM
.STDEF==33 ;SET DEFAULT VALUES
ST.PCD==0 ;SET DEFAULT PROTECTION CODE
.STPRV==34 ;SET PRIVILEGE WORDS
ST.CPW==0 ;SET WHOLE PRIVILEGE
ST.CPS==1 ;SET SPECIFIED BITS OF PRIVILEGE WORD
ST.CPC==2 ;CLEAR SPECIFIED BITS
ST.CCW==3 ;SET WHOLE CAPABILITY WORD (MAX PRIVS ALLOWED)
ST.CCS==4 ;SET SPECIFIED BITS OF CAPABILITY WORD
ST.CCC==5 ;CLEAR SPECIFIED BITS
.STBSN==35 ;SET BATCH STREAM NUMBER (SET ONLY ONCE)
.STWTO==36 ;SET WRITE TO OPERATOR VALUES
; FOR VALUES SEE .GTOBI (OB.WTO)
.STCDN==37 ;SET CPU UP/DOWN STATUS
.STCSB==40 ;SET/CLEAR CACHE BITS
.STFPS==41 ;SET/CLEAR FLOATING POINT SIMULATION
SUBTTL MISC. NON-I/O -- SCHED.
;;AC CONTAINS N,,ADDR WHERE ADDR CONTAINS:
;; !=======================================================!
;; ! FUNCTION 1 ! BLOCK 1 !
;; !-------------------------------------------------------!
;; ! FUNCTION 2 ! BLOCK 2 !
;; !-------------------------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------------------------!
;; ! FUNCTION N ! BLOCK N !
;; !=======================================================!
;FUNCTION CODES:
.SCRSI==000000 ;READ SCHEDULING INTERVAL
.SCSSI==400000 ;SET SCHEDULING INTERVAL
;BLOCK CONTAINS:
.SCBSI==0 ;SCHEDULING INTERVAL
.SCRMI==000001 ;READ MCU INTERVAL
.SCSMI==400001 ;SET MCU INTERVAL
;BLOCK CONTAINS:
.SCBMI==0 ;MCU INTERVAL
.SCRCQ==000002 ;READ CLASS QUOTAS AND FLAGS
.SCSCQ==400002 ;SET CLASS QUOTAS AND FLAGS
;;BLOCK CONTAINS:
;; !=====================================!
;; ! SIZE OF BLOCK !
;; !-------------------------------------!
;; ! BITS+CLASS ! QUOTA !
;; !-------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------!
;; ! BITS+CLASS ! QUOTA !
;; !=====================================!
.SCBCT==0 ;WORD COUNT
.SCBCQ==1 ;CLASS QUOTA
SC.FCQ==1B0 ;QUOTA IS FIXED
SC.CLN==377777B17 ;CLASS NUMBER
SC.CLQ==777777B35 ;CLASS QUOTA
;CONTINUED ON NEXT PAGE
.SCRTS==000003 ;READ TIME SLICE
.SCSTS==400003 ;SET TIME SLICE
;;BLOCK CONTAINS:
;.SCBCT==0 ;WORD COUNT
.SCBP1==1 ;TIME SLICE FOR PQ1
.SCBP2==2 ;TIME SLICE FOR PQ2
.SCRUF==000004 ;READ DESIRED CHAN USE FRACTION
.SCSUF==400004 ;SET DESIRED CHAN USE FRACTION
;;BLOCK CONT
;; !=====================================!
;; ! WORD COUNT !
;; !-------------------------------------!
;; ! CHAN # ! DCUF !
;; !-------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------!
;; ! CHAN # ! DCUF !
;; !=====================================!
;.SCBCT==0 ;WORD COUNT
.SCBUF==1 ;CHAN,,USE FRACTION IN %
.SCRJC==000005 ;READ JOB'S CLASS
.SCSJC==400005 ;SET JOB'S CLASS
;;BLOCK CONTAINS:
;; !=====================================!
;; ! WORD COUNT !
;; !-------------------------------------!
;; ! JOB # ! CLASS !
;; !-------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------!
;; ! JOB # ! CLASS !
;; !=====================================!
;.SCBCT==0 ;WORD COUNT
.SCBJC==1 ;JOB,,CLASS
;CONTINUED ON NEXT PAGE
.SCRMC==000006 ;READ MCU CONSTANT
.SCSMC==400006 ;SET MCU CONSTANT
;BLOCK CONTAINS
.SCBMC==0 ;MCU CONSTANT
.SCRCU==000007 ;READ CLASS USAGE
;;BLOCK CONTAINS:
;; !=====================================!
;; ! WORD COUNT !
;; !-------------------------------------!
;; ! CLASS 0 RUNTIME !
;; !-------------------------------------!
;; ! CLASS 1 RUNTIME !
;; !-------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------!
;; ! CLASS N RUNTIME !
;; !=====================================!
;SCBCT==0 ;WORD COUNT
.SCBCU==1 ;CLASS 0 USED
.SCREF==000010 ;READ EXPONENTIAL FACTOR (OBSOLETE)
.SCSEF==400010 ;SET EXPONENTIAL FACTOR (OBSOLETE)
;BLOCK CONTAINS:
.SCBEF==0 ;EXPONENTAIL FACTOR (OBSOLETE)
.SCRMM==000011 ;READ MCU MULTIPLIER
.SCSMM==400011 ;SET MCU MULTIPLIER
;BLOCK CONTAINS:
.SCBMM==0 ;MCU MULTIPLIER
.SCRDC==000012 ;READ THE DEFAULT CLASS FOR NEW JOBS
.SCSDC==400012 ;SET THE DEFAULT CLASS FOR NEW JOBS
;BLOCK CONTAINS:
.SCBDC==0 ;DEFAULT CLASS
.SCRRC==000013 ;READ THE MCU REQUEUE CONSTANT
.SCSRC==400013 ;SET THE MCU REQUEUE CONSTANT
;BLOCK CONTAINS:
.SCBRC==0 ;VALUE OF MCU REQUEUE CONSTANT (MICROSECONDS)
.SCRPM==000014 ;READ VALUE OF MCU MAXIMUM
.SCSPM==400014 ;SET VALUE OF MCU MAXIMUM
;BLOCK CONTAINS:
.SCBPM==0 ;VALUE OF MCU MAXIMUM (MICROSECONDS)
.SCRML==000015 ;READ QUANTUM MULTIPLIERS FOR PQ1, PQ2 AND SCALE FACTOR
.SCSML==400015 ;SET QUANTUM MULTIPLIERS FOR PQ1, PQ2 AND SCALE FACTOR
;;BLOCK CONTAINS:
;; !=====================================!
;; ! WORD COUNT !
;; !-------------------------------------!
;; ! QUEUE # ! QUANTUM MULT. !
;; !-------------------------------------!
;; ! QUEUE # ! QUANTUM MULT. !
;; !-------------------------------------!
;; ! 3 ! SCALE FACTOR !
;; !=====================================!
;.SCBCT==0 ;WORD COUNT
.SCBMP==1 ;QUEUE #,,QUANTUM MULTIPLIER (IN MILLISECONDS)
.SCBMQ==2 ;QUEUE #,,QUANTUM MULTIPLIER (IN MILLISECONDS)
.SCBMR==3 ;3,,SCALE FACTOR
SC.BMR==3,,0 ;LH MUST BE 3
.SCRMX==000016 ;READ MAXIMUM QUANTUM RUN FOR PQ1 AND/OR PQ2
.SCSMX==400016 ;SET MAXIMUM QUANTUM RUN FOR PQ1 AND/OR PQ2
;;BLOCK CONTAINS:
;; !=====================================!
;; ! WORD COUNT !
;; !-------------------------------------!
;; ! QUEUE # ! MAX. TIME SLICE !
;; !-------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------!
;; ! QUEUE # ! MAX. TIME SLICE !
;; !=====================================!
;.SCBCT==0 ;WORD COUNT
.SCBMX==1 ;QUEUE NUMBER,,MAXIMUM TIME SLICE (IN MILLISECONDS)
.SCRSQ==000017 ;READ SECONDARY CLASS QUOTAS
.SCSSQ==400017 ;SET SECONDARY QUOTAS FOR CLASS
;;BLOCK CONTAINS:
;; !=====================================!
;; ! WORD COUNT !
;; !-------------------------------------!
;; ! CLASS ! QUOTA !
;; !-------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------!
;; ! CLASS ! QUOTA !
;; !=====================================!
;.SCBCT==0 ;WORD COUNT
.SCBSQ==1 ;CLASS,,QUOTA
.SCRIQ==000020 ;READ TIME PERCENTAGE TO SCAN JUST SWAPPED IN QUEUE BEFORE SUBQUEUES
.SCSIQ==400020 ;SET TIME PERCENTAGE TO SCAN JUST SWAPPED IN QUEUE BEFORE SUBQUEUES
;BLOCK CONTAINS:
.SCBIQ==0 ;PERCENTAGE TO SCAN JUST SWAPPED IN QUEUE
.SCRSS==000021 ;READ SWAP SCAN TIME
.SCSSS==400021 ;SET SWAP SCAN TIME
;BLOCK CONTAINS:
.SCBSS==0 ;VALUE OF SCAN SWAP TIME (TICKS)
.SCRBB==000022 ;READ NUMBER FOR BACKGROUND BATCH SUBQUEUE
.SCSBB==400022 ;SET NUMBER FOR BACKGROUND BATCH SUBQUEUE
;BLOCK CONTAINS:
.SCBBB==0 ;SUBQUEUE FOR BACKGROUND BATCH
.SCRBS==000023 ;READ BACKGROUND BATCH SWAP TIME INTERVAL
.SCSBS==400023 ;SET BACKGROUND BATCH SWAP TIME INTERVAL
;BLOCK CONTAINS:
.SCBBS==0 ;NUMBER OF TICKS BETWEEN BACKGROUND BATCH SWAP INS.
.SCRSF==000024 ;READ SCHEDULER FAIRNESS FACTOR
.SCSSF==400024 ;SET SCHEDULER FAIRNESS FACTOR
;BLOCK CONTAINS:
.SCBSF==0 ;VALUE OF SCHEDULER FAIRNESS FACTOR
.SCRSW==000025 ;READ SWAPPER FAIRNESS FACTOR
.SCSSW==400025 ;SET SWAPPER FAIRNESS FACTOR
;BLOCK CONTAINS:
.SCBSW==0 ;VALUE OF SWAPPER FAIRNESS FACTOR
.SCRIO==000026 ;READ IN-CORE FAIRNESS
.SCSIO==400026 ;SET IN-CORE FAIRNESS
;BLOCK CONTAINS:
.SCBIO==0 ;PERCENTAGE TO SCAN IN-CORE QUEUES FIRST
.SCRSC==000027 ;READ SCDCOR
.SCSSC==400027 ;SET SCDCOR
;BLOCK CONTAINS:
.SCBSC==0 ;VALUE OF SCDCOR
;SCHED. UUO ERROR CODES
SCHAC%==1 ;ADDRESS CHECK
SCHUF%==2 ;UNKNOWN FUNCTION
SCHUJ%==3 ;UNKNOWN JOB
SCHNP%==4 ;NOT PRIVILEGED
SCHUC%==5 ;UNKNOWN CLASS
SCHUQ%==6 ;UNKNOWN QUEUE
SCHNC%==7 ;NON-EXISTANT CHANNEL
SCHEB%==10 ;EXPONENTIAL FACTOR BAD
SCHMI%==11 ;ATTEMPT TO SET PROT WHEN MCUINT NON-ZERO
;SCHNS%==12 ;OBSOLETE
SCHNH%==13 ;NOT 100%
SCHFN%==14 ;FAIRNESS NOT POSITIVE
SUBTTL MISC. NON-I/O -- ATTACH
AT.UMM==1B0 ;PLACE IN MONITOR MODE
AT.UUM==1B1 ;PLACE IN USER MODE
SUBTTL MISC. NON-I/O -- ACCT.
;ACCT. FUNCTIONS
.ACTCH==0 ;CHANGE THE ACCOUNT STRING
.ACTRD==1 ;READ THE ACCOUNT STRING
;ACCT. ERROR CODES
ACTTL%==1 ;ACCOUNT STRING TOO LONG
ACTAC%==2 ;ADDRESS CHECK ERROR
ACTIL%==3 ;ILLEGAL ARGUMENT SPECIFIED
ACTNJ%==4 ;NON-EXISTANT JOB SPECIFIED
ACTPS%==5 ;PRIVILEGED ACCOUNT STRING
SUBTTL MISC. NON-I/O -- JOBPEK
JK.WRT==1B0 ;1=WRITE OTHER JOB'S CORE, 0=READ
JK.UPM==1B1 ;READ OTHER JOB'S UPMP (JK.WRT MUST BE 0)
JK.EVA==1B2 ;SOURCE ADDRESS IS BETWEEN 340000 AND 377777. TREAT
;AS IF IT WERE AN EXEC VIRTUAL ADDRESS MAPPED THROUGH
;THE SPECIFIED JOB'S UPMP. (JK.WRT AND JK.UPM MUST BE 0)
SUBTTL MISC. NON I/O -- RUNTIM
RN.PCN==1B0 ;RETURN PRECISION RUNTIME IN TEN-MICROSECOND UNITS
SUBTTL UNIVERSAL DEVICE INDEX
.UXCHN==0 ;I/O CHANNEL NUMBER
;001000-077777 ARE PHYSICAL DEVICES
UX.TYP==77B26 ;DEVICE TYPE (SAME AS DEVTYP)
UX.UNT==777 ;UNIT WITHIN TYPE
.UXTRM==200000 ;TERMINALS
.UXPRC==300000 ;PROCESS
SUBTTL .JBINT INTERCEPT BLOCK
;; !=======================================================!
;; ! BLOCK LENGTH ! NEW PC !
;; !-------------------------------------------------------!
;; !M! !E!T!Q!F!O!C!D!
;; !-------------------------------------------------------!
;; ! OLD PC AND FLAGS !
;; !-------------------------------------------------------!
;; ! CLASS OF INTERRUPT ! CHANNEL NUMBER !
;; !=======================================================!
.ERNPC==0 ;LH=LENGTH, RH=NEW PC FOR INTERRUPT
.ERCLS==1 ;CLASSES OF ERROR INTERCEPTING
ER.MSG==1B0 ;SUPPRESS ERROR MESSAGE
ER.EIJ==1B29 ;ERROR IN JOB
ER.TLX==1B30 ;TIME LIMIT EXCEEDED
ER.QEX==1B31 ;QUOTA EXHAUSTED
ER.FUL==1B32 ;FILE STRUCTURE FULL
ER.OFL==1B33 ;DISK UNIT OFF-LINE
ER.ICC==1B34 ;CONTROL-C INTERCEPT
ER.IDV==1B35 ;"PROBLEM ON DEVICE" ERRORS
.EROPC==2 ;OLD PC
.ERCCL==3 ;RH=CHANNEL, LH=CLASS OF INTERRUPT
SUBTTL PSI SOFTWARE INTERRUPT SYSTEM
;INTERRUPT VECTOR
; SETS OF 4-WORD BLOCKS
;; !=======================================================!
;; ! NEW PC AND FLAGS !
;; !-------------------------------------------------------!
;; ! OLD PC AND FLAGS !
;; !-------------------------------------------------------!
;; ! !O!R!A!D!M!I! ! I/O REASON !
;; !-------------------------------------------------------!
;; ! INTERRUPT STATUS !
;; !=======================================================!
.PSVNP==0 ;NEW PC AND FLAGS
.PSVOP==1 ;OLD PC AND FLAGS
.PSVFL==2 ;FLAGS
PS.VPO==1B1 ;TURN PERMANENTLY OFF, NO RESTORE
PS.VTO==1B2 ;TURN OFF, RESTORE ON DEBRK.
PS.VAI==1B3 ;ALLOW ADDITIONAL INTERRUPT
PS.VDS==1B4 ;DISCARD SUCCESSIVE INTERRUPTS WHILE INTERRUPTED
PS.VPM==1B5 ;PRINT STANDARD MESSAGE
PS.VIP==1B6 ;INTERRUPTS IN PROGRESS FOR THIS BLOCK
; (USED BY PSISER)
PS.RID==1B19 ;REASON--INPUT DONE
PS.ROD==1B20 ;REASON--OUTPUT DONE
PS.REF==1B21 ;REASON--END FILE
PS.RIE==1B22 ;REASON--INPUT ERROR
PS.ROE==1B23 ;REASON--OUTPUT ERROR
PS.RDO==1B24 ;REASON--DEVICE OFF-LINE
PS.RDF==1B25 ;REASON--DEVICE FULL
PS.RQE==1B26 ;REASON--QUOTA EXCEEDED
PS.RWT==1B27 ;REASON--IO WAIT
PS.ROL==1B28 ;REASON--DEVICE ON-LINE
PS.RRC==1B29 ;REASON--RIB HAS CHANGED
.PSVIS==3 ;INTERRUPT STATUS (AUX. WORD)
; I/O DEVICES RETURN UDX,,GETSTS
;NON-DEVICE CONDITIONS
.PCTLE==-1 ;TIME LIMIT EXCEEDED (NON-BATCH ONLY)
.PCABT==-2 ;ABORT (^A); RETURNS 1B0=1 IF TI WAIT; (FUTURE)
.PCSTP==-3 ;STOP (^C); RETURNS 1B0=1 IF TI WAIT
.PCUUO==-4 ;ANY MUUO; RETURNS UUO
.PCIUU==-5 ;ILLEGAL UUO; RETURNS UUO
.PCIMR==-6 ;ILLEGAL MEMORY REFERENCE
.PCACK==-7 ;ADDRESS CHECK; RETURNS DEVICE NAME
.PCARI==-10 ;ARITHMETIC EXCEPTION
.PCPDL==-11 ;PDL OVERFLOW
.PCTT3==-12 ;TRAP TYPE 3 (FUTURE)
.PCNXM==-13 ;NON-EXISTENT MEMORY
.PCAPC==-14 ;APR CLOCK; RETURNS MSTIME
.PCUEJ==-15 ;USER INDUCED ERROR IN JOB
.PCXEJ==-16 ;EXTERNAL ERROR IN JOB
.PCKSY==-17 ;KSYS WARNING; RETURNS MINS TO KSYS
.PCDSC==-20 ;DATA-SET CHANGE; RETURNS NEW STATUS
.PCDAT==-21 ;DETACH/ATTACH; RETURNS -1 OR TTY UDX
.PCWAK==-22 ;WAKE UUO; RETURNS JOB NUMBER OF WAKER
.PCABK==-23 ;ADDRESS BREAK
.PCIPC==-24 ;IPCF RECEIVE; RETURNS LENGTH,,FLAGS
.PCRMC==-25 ;REMOTE COMPUTER CONDITION
.PCQUE==-26 ;ENQ/DEQ RESOURCE AVAILABLE
.PCNET==-27 ;NETWORK TOPOLOGY CHANGED
.PCJBI==-30 ;CROSS JOB INTERRUPTS
;INTERRUPT ENABLE REQUEST BLOCK
; SETS OF 3-WORD BLOCKS
.PSECN==0 ;CONDITION OR DEVICE
.PSEOR==1 ;OFFSET,,REASON BITS
.PSEPR==2 ;PRIORITY,,RESERVED
;PISYS. FUNCTION BITS
PS.FOF==1B1 ;TURN OFF
PS.FON==1B2 ;TURN ON
PS.FCP==1B3 ;CLEAR ALL PENDING INTERRUPTS
PS.FCS==1B4 ;CLEAR SELECTED INTERRUPT
PS.FRC==1B5 ;REMOVE CONDITION OR DEVICE
PS.FAC==1B6 ;ADD CONDITION OR DEVICE
;PISAV./PIRST. FLAGS
.PSSFC==0 ;FLAGS,,COUNT
PS.SON==1B0 ;SYSTEM IS ON
.PSSIV==1 ;ADDRESS OF INTERRUPT VECTOR
.PSSBL==2 ;START OF 3-WORD BLOCKS
;PISYS. ERRORS
PSTMA%==0 ;TOO MANY ARGUMENTS
PSNFS%==1 ;NO FUNCTION SUPPLIED
PSUKF%==2 ;UNKNOWN FUNCTION REQUESTED
PSOOF%==3 ;ON AND OFF IN SAME FUNCTION
PSUKC%==4 ;UNKNOWN CONDITION OR DEVICE REQUESTED
PSDNO%==5 ;DEVICE NOT OPEN
PSPRV%==6 ;PRIVILEGE FAILURE
PSIVO%==7 ;INVALID VECTOR OFFSET
PSUKR%==10 ;UNKNOWN REASON ENABLED
PSPTL%==11 ;PRIORITY TOO LARGE
PSNRW%==12 ;NON-ZERO RESERVED WORD
PSPND%==13 ;PIINI. NOT DONE
PSARF%==14 ;ADD AND REMOVE IN SAME FUNCTION
;PISAV. ERRORS
PSBTS%==0 ;BLOCK TOO SMALL
;PIRST. ERRORS
PSNRS%==0 ;NOT RESTORING WHAT WAS SAVED
SUBTTL IPCF INTERPROCESS COMMUNICATION FACILITY
;PACKET FORMAT
;; !=========================================================================!
;; !BB!IS!R!O!T! !P!V! ! ERROR !SENDR!RETRN!
;; !-------------------------------------------------------------------------!
;; ! SENDER'S PID !
;; !-------------------------------------------------------------------------!
;; ! RECEIVER'S PID !
;; !-------------------------------------------------------------------------!
;; ! WORD LENGTH OF DATA ! START OF DATA (WORD/PAGE) !
;; !-------------------------------------------------------------------------!
;; ! SENDER'S PPN (SUPPLIED BY MONITOR) !
;; !-------------------------------------------------------------------------!
;; !J!L!X!P!I! !SENDERS JOB NUMBER!
;; !=========================================================================!
.IPCFL==0 ;FLAGS
IP.CFB==1B0 ;DON'T BLOCK READ
IP.CFS==1B1 ;INDIRECT SENDER'S PID
IP.CFR==1B2 ;INDIRECT RECEIVER'S PID
IP.CFO==1B3 ;OVERDRAW SEND
IP.CFT==1B4 ;TRUNCATE READ
IP.CFL==1B5 ;PACKET LONGER THAN SYSTEM MAX (PRIV'D)
IP.CRP==1B6 ;RECEIVE FOR A PARTICULAR PID
IP.CFP==1B18 ;SENDER IS PRIVILEGED AND IS INVOKING THEM
IP.CFV==1B19 ;VM PAGE TRANSFER MODE
IP.CFZ==1B20 ;PACKET WITH NO DATA JUST
; DESCRIPTOR BLOCK
IP.CFA==1B21 ;ACKNOWLEDGEMENT REQUESTED
IP.CFE==77B29 ;ERROR FIELD (NOT PRIV.)
IP.CFC==7B32 ;SYSTEM SENDER CODE (PRIV.)
.IPCCC==1 ;SENT BY [SYSTEM]IPCC
.IPCCF==2 ;SENT BY SYSTEM-WIDE [SYSTEM]INFO
.IPCCP==3 ;SENT BY RECEIVER'S [SYSTEM]INFO
IP.CFM==7B35 ;SPECIAL MESSAGE RETURN FIELD (PRIV.)
.IPCFN==1 ;MESSAGE WAS NOT DELIVERED
.IPCFS==1 ;SENDER'S PID
.IPCFR==2 ;RECEIVER'S PID
.IPCFP==3 ;LENGTH,,START OF DATA IN PACKET
.IPCFU==4 ;SENDER'S PPN (SUPPLIED BY MONITOR)
.IPCFC==5 ;SENDER'S CAPABILITIES WORD. (SUPPLIED BY MONITOR)
IP.JAC==1B0 ;SENDER HAS JACCT SET
IP.JLG==1B1 ;SENDER IS LOGGED-IN
IP.SXO==1B2 ;SENDER IS EXECUTE ONLY
IP.POK==1B3 ;SENDER HAS JS.POK PRIV
IP.IPC==1B4 ;SENDER HAS IPCF PRIVS
IP.SJN==777B35 ;SENDERS JOB NUMBER
;IPCC AND INFO ERROR CODES
IPCAC%==1 ;ADDRESS CHECK
IPCNL%==2 ;NOT LONG ENOUGH
IPCNP%==3 ;NO PACKET IN RECEIVE QUEUE
IPCIU%==4 ;(UNUSED)
IPCTL%==5 ;DATA TOO LONG FOR USER'S BUFFER
IPCDU%==6 ;DESTINATION UNKNOWN (RECEIVER'S PID)
IPCDD%==7 ;DESTINATION DISABLED
IPCRS%==10 ;NO ROOM IN SENDER'S QUOTA
IPCRR%==11 ;NO ROOM IN RECEIVER'S QUOTA
IPCRY%==12 ;NO ROOM IN SYSTEM STORAGE
IPCUP%==13 ;UNKNOWN PAGE ON SEND; DUPLICATE PAGE ON RECEIVE (VM)
IPCIS%==14 ;INVALID SEND PID
IPCPI%==15 ;PRIV INSUFFICIENT
IPCUF%==16 ;UNKNOWN FUNCTION
IPCBJ%==17 ;BAD JOB NUMBER
IPCPF%==20 ;PID TABLE FULL
IPCPR%==21 ;PAGE REQUESTED, NORMAL NEXT
IPCIE%==22 ;PAGING I/O ERROR
IPCBI%==23 ;BAD INDEX SPECIFIED FOR SYSTEM PID TABLE
IPCUI%==24 ;UNDEFINED ID IN SYSTEM PID TABLE
IPCRU%==25 ;RECEIVER PID UNKNOWN OR DOES NOT BELONG TO JOB
IPCFU%==70 ;[SYSTEM]INFO HAS AN UNKNOWN, INTERNAL ERROR
IPCCF%==71 ;[SYSTEM]IPCC REQUEST FROM [SYSTEM]INFO FAILED
IPCFF%==72 ;[SYSTEM]INFO FAILED TO COMPLETE AN ASSIGN
IPCQP%==73 ;PID QUOTA EXCEEDED
IPCBP%==74 ;BAD (UNKNOWN) PID
IPCDN%==75 ;DUPLICATE NAME
IPCNN%==76 ;NO SUCH NAME
IPCBN%==77 ;NAME HAS ILLEGAL CHARACTERS
;MESSAGES TO AND FROM [SYSTEM]IPCC
.IPCS0==0 ;LH=CALLER'S IDENTIFIER, RH=FUNCTION
.IPCSE==1 ;ENABLE (ME OR (1)=PID)
.IPCSD==2 ;DISABLE (ME OR (1)=PID)
.IPCSI==3 ;TELL PID OF [SYSTEM]INFO FOR (ME OR (1)=PID); (2) GETS PID
.IPCSF==4 ;MAKE [SYSTEM]INFO OF (1) (2)=FOR WHOM (0=SYSTEM)
.IPCSZ==5 ;ZAP PID IN (1)
.IPCSC==6 ;CREATE PID FOR JOB IN (1); (2) GETS PID
.IPCSQ==7 ;SET QUOTA (2) FOR (1)=PID
.IPCSO==10 ;CHANGE OWNER OF (1)=PID, (2)=NEW JOB NUMBER
.IPCSJ==11 ;GIVE JOB OF PID IN (1); (2) GETS JOB NO
.IPCSP==12 ;GIVE PID LIST FOR JOB (1) STARTING AT (2)
.IPCSR==13 ;READ QUOTA OF JOB (1); INTO (2)
.IPCSW==14 ;WAKE JOB (1) SLEEPING FROM .IPCSS
.IPCSS==15 ;(ANSWER ONLY) IF LH(1)=0, JOB RH(1) IS RESETTING
; IF LH(1)=-1, JOB RH(1) IS LOGGING OUT
.IPCWP==24 ;WRITE SYSTEM PID TABLE
.IPCRP==25 ;READ SYSTEM PID TABLE
.IPCSU==26 ;SPOOLED FILE CLOSED (SENT TO [SYSTEM]QUASAR)
.IPCSL==27 ;LOGOUT MESSAGE SEND TO [SYSTEM]QUASAR
.IPCTL==30 ;TAPE LABELLING MESSAGE
.IPCUO==31 ;MOUNTABLE UNIT ON-LINE
.IPCON==32 ;LOGON MESSAGE SENT TO QUASAR
.IPCAC==33 ;ACCOUNTING MESSAGES
.IPCS1==1 ;FIRST ARGUMENT
.IPCS2==2 ;SECOND ARGUMENT
.IPCS3==3 ;THIRD ARGUMENT
;SPECIAL SYSTEM PID TYPES (READ/WRITE .GTSID VIA .IPCRP AND .IPCWP)
.IPCPS==0 ;[SYSTEM]IPCC
.IPCPI==1 ;[SYSTEM]INFO
.IPCPQ==2 ;[SYSTEM]QUASAR
.IPCPM==3 ;MOUNTABLE DEVICE ALLOCATOR
.IPCPT==4 ;TAPE LABEL PROCESS
.IPCPF==5 ;FILE DAEMON
.IPCPC==6 ;TAPE AVR PROCESS
.IPCPA==7 ;[SYSTEM]ACCOUNTING
.IPCPO==10 ;OPERATOR INTERFACE
.IPCPL==11 ;SYSTEM ERROR LOGGER
.IPCPD==12 ;DISK AVR PROCESS
;MESSAGES TO AND FROM [SYSTEM]INFO
.IPCI0==0 ;LH=CALLER'S IDENTIFIER, RH=FUNCTION
.IPCIW==1 ;WHAT IS PID, ASCIZ IN (2+)
.IPCIG==2 ;GET NAME OF (2)=PID
.IPCII==3 ;ASSIGN NAME UNTIL RESET (FORMAT=.IPCIW)
.IPCIJ==4 ;ASSIGN NAME UNTIL LOGOUT (FORMAT=.IPCIW)
.IPCID==5 ;DROP SPECIFIC PID (2)
.IPCIR==6 ;DROP NAMES SET BY .IPCII, (2)=JOB NUMBER
.IPCIL==7 ;DROP NAMES SET BY .IPCIJ, (2)=JOB NUMBER
.IPCIS==15 ;RESET JOB RH(1) IF LH(1)=0, OR LOGOUT IF LH=-1
.IPCI1==1 ;FIRST ARGUMENT (ALWAYS 0 OR PID TO GET DUPLICATE OF ANSWER)
.IPCI2==2 ;SECOND ARGUMENT
SUBTTL PAGE AND VM VIRTUAL MEMORY FACILITY
;PAGE. UUO FUNCTIONS
.PAGIO==0 ;PAGE IN/OUT (OUT IF PA.GAF IN LIST)
PA.GAF==1B0 ;ALTERNATE FUNCTION (GOOD FOR MOST FUNCTIONS)
PA.GSL==1B1 ;PAGE TO SLOW SWAPPING SPACE
.PAGCD==1 ;PAGE CREATE/DESTROY (DESTROY IF PA.GAF)
PA.GCD==1B1 ;CREATE PAGE ON DISK
.PAGEM==2 ;PAGE EXCHANGE/MOVE (EXCH IF PA.GAF)
.PAGAA==3 ;CLEAR/SET ACCESS ALLOWED (CLEAR IF PA.GAF)
PA.GSA==1B1 ;AUTOMATALLY SET AA ON AA PAGE FAULT
.PAGWS==4 ;GET WORKING SET
.PAGGA==5 ;GET ACCESS ALLOWED
.PAGCA==6 ;CHECK ACCESS LEGAL
PA.GNE==1B0 ;DOES NOT EXIST
PA.GWR==1B1 ;WRITABLE
PA.GRD==1B2 ;READABLE
PA.GAA==1B3 ;ACCESS ALLOWED
PA.GAZ==1B4 ;ALLOCATED BUT ZERO
PA.GCP==1B5 ;CAN'T BE PAGED OUT
PA.GPO==1B6 ;IS PAGED OUT
PA.GHI==1B7 ;PAGE IS IN HIGH SEGMENT
PA.GSH==1B8 ;PAGE IS SHARABLE
PA.GSP==1B9 ;PAGE IS SPYING (MAPPED ONTO RUNNING MONITOR)
PA.GLK==1B10 ;PAGE IS LOCKED IN MEMORY
PA.GNC==1B11 ;PAGE IS NOT CACHED (KL'S ONLY)
.PAGCH==7 ;CREATE A HISEG (GENERAL REMAP)
.PAGCB==10 ;CACHE BIT (SET IF PA.GAF)
.PAGSP==11 ;ADD/DELETE PHYSICAL OR VIRTUAL PAGES FROM MONITOR ADDRESS
; TO/FROM PROGRAM'S ADDRESS SPACE (DELETE IF PA.GAF)
;PAGE. UUO ERRORS
PAGUF%==0 ;UNIMPLEMENTED FUNCTION
PAGIA%==1 ;ILLEGAL ARGUMENT
PAGIP%==2 ;ILLEGAL PAGE NUMBER
PAGCE%==3 ;PAGE CAN'T EXIST BUT DOES
PAGME%==4 ;PAGE MUST EXIST BUT DOESN'T
PAGMI%==5 ;PAGE MUST BE IN CORE BUT ISN'T
PAGCI%==6 ;PAGE CAN'T BE IN CORE BUT IS
PAGSH%==7 ;PAGE IS IN A SHARABLE HI-SEG
PAGIO%==10 ;PAGING I/O ERROR
PAGNS%==11 ;NO SWAPPING SPACE AVAILABLE
PAGLE%==12 ;CORE LIMIT EXCEEDED
PAGIL%==13 ;ILLEGAL IF LOCKED
PAGNX%==14 ;CAN NOT CREATE ALLOCTED BUT ZERO PAGE
; WITH VIRTUAL LIMIT EQUAL TO ZERO.
PAGNP%==15 ;NOT PRIVILEGED
;.JBPFH REGION
.PFHJS==0 ;JRST .+.PFHST
.PFHOP==1 ;OLD PC AND FLAGS
.PFHFC==2 ;FAULT WORD
PF.HCB==1B0 ;WORKING SET CHANGED BEHIND BACK
PF.HPN==777B17 ;PAGE NUMBER
PF.HFC==0,,-1 ;FAULT CODE
.PFHNA==1 ;PAGE NOT ACCESSABLE
.PFHNI==2 ;PAGE NOT IN CORE
.PFHUU==3 ;PAGE FAULT IN UUO ARGS
.PFHTI==4 ;VIRTUAL TIMER
.PFHZI==5 ;ALLOCATED BUT ZERO FROM USER
.PFHZU==6 ;ALLOCATED BUT ZERO DURING UUO
.PFHVT==3 ;VIRTUAL TIME
.PFHPR==4 ;PAGING RATE
.PFHPV==5 ;HIGHEST PSI VECTOR IN USE,,ADDRESS OF PSI VECTOR
;6-10 RESERVED
.PFHST==11 ;FIRST INSTRUCTION OF PFH
SUBTTL DAEMON CALLS
;DAEMON UUO FUNCTIONS
.DCORE==1 ;DUMP CORE
.CLOCK==2 ;ENTER A CLOCK REQUEST
.FACT==3 ;MAKE A FACT FILE ENTRY
.DMQUE==4 ;(UNIMPLEMENTED)
.DMERR==5 ;ERROR LOGGING
.DMCTL==6 ;(UNIMPLEMENTED)
;DAEMON UUO ERRORS
DMILF%==1 ;ILLEGAL FUNCTION
DMACK%==2 ;ADDRESS CHECK
DMWNA%==3 ;WRONG NUMBER OF ARGUMENTS
DMSNH%==4 ;IMPOSSIBLE UUO FAILURE (SHOULD NEVER HAPPEN)
DMCWF%==5 ;CAN'T WRITE FILE
DMNPV%==6 ;NO PRIVILEGES
DMFFB%==7 ;FACT FORMAT BAD
DMPTH%==10 ;INVALID PATH SPECIFICATION
;DCORE DUMP CATEGORIES
.CAJOB==1 ;JOB TABLES (SEE BELOW)
.CACNF==2 ;CONFIGURATION TABLES (.GTCNV)
.CADDB==3 ;JOB'S DDBS
.CACOR==4 ;USER'S CORE IMAGE (COMPRESSED)
.CAFET==5 ;FET GETTAB
.CAMAX==5 ;HIGHEST LEGAL CATEGORY NUMBER
;CODES IN ERROR.SYS
.ESWHY==1 ;WHY RELOAD WITH COMMENTS, IF ANY
.ESMSE==2 ;CONTINUABLE STOPCD
.ESMPE==3 ;KI MEM PAR ERROR
.ESNXM==4 ;KI NON-EX MEM
.ESCIN==5 ;INFORMATION EXTRACTED FROM A CRASH
.ESCPE==6 ;CHANNEL-DETECTED MEM PAR ERROR OR NXM
.ESDRE==7 ;DAEMON RESTARTED
.ESHDE==10 ;HARDWARE-DETECTED DEVICE ERROR
.ESMDE==11 ;MASSBUS DEVICE ERROR
.ESDXE==12 ;DX20 DEVICE ERROR
.ESSWE==14 ;SOFTWARE EVENT OF INTEREST
.SWEPK==1 ;EVENT WAS A POKE
.SWESN==2 ;EVENT WAS A SNOOP.
.SWETP==3 ;EVENT WAS A TRPSET
.SWERT==4 ;EVENT WAS A RTTRAP
.SWMS1==5 ;MISC EVENT 1 (FOR DEBUGGING)
.SWMS2==6 ;MISC EVENT 2 (FOR DEBUGGING)
.ESCSC==15 ;CONFIGUATION STATUS CHANGE
.ESSLM==16 ;SYSTEM LOG MESSAGE
.ESDEB==17 ;SOFTWARE REQUESTSD DATA
.ESTAP==21 ;MAGTAPE ERROR (TAPSER)
.ESKLE==30 ;KL10 PROCESSOR ERROR DATA FROM RSX20 FRONT END
.ESFER==31 ;FRONT END RELOAD
.ESHSB==33 ;KS10 HALT STATUS BLOCK
.ESTPS==42 ;MAGTAPE PERFORMANCE STATISTICS CODE(TAPSER)
.ESCFG==43 ;MAX CONFIGURATION IN AVAIL.SYS
.ESMRV==44 ;MONITOR RUN VALUES IN AVAIL.SYS
.ESDSC==45 ;DISK STATISTICS (USUALLY FROM A CRASH)
.ESDLE==50 ;DL10 HARWARE ERROR
.ESKDT==61 ;KL10 DATA PARITY TRAP
.ESMOT==62 ;KL DATA PARITY INTERRUPT
.ESCSB==63 ;CPU STATUS BLOCK
.ESDSB==64 ;DEVICE STATUS BLOCK
.ESKAE==67 ;KL ADDRESSING FAILURE
.ESLPT==71 ;LPT ERROR
.ESHCC==72 ;HARD COPY CONTROLLER ENTRY
.ESDTC==100 ;DATE/TIME CHANGE (OBSOLETE)
.ESHIA==377 ;HIATUS IN ERROR.SYS
.ESOFF==775 ;MARKER FOR FIRST WORD OF BLOCK AS POINTER TO START OF FIRST ENTRY
.ESEOF==777 ;END OF FILE FLAG
;DCORE JOB TABLE ENTRIES
.DJVER==0 ;DAEMON VERSION (137)
.DJDAT==1 ;DATE (FROM DATE UUO)
.DJMST==2 ;TIME IN MILLISEC. (FROM MSTIME UUO)
.DJJSN==3 ;JOB,,SEGMENT NUMBERS
.DJLIN==4 ;???,,LINE NUMBER (TTY)
.DJSTS==5 ;.GTSTS(JOB)
.DJHTS==6 ;.GTSTS(HISEG)
.DJPPN==7 ;.GTPPN(JOB)
.DJHPN==10 ;.GTPPN(HISEG)
.DJPRG==11 ;.GTPRG(JOB)
.DJHRG==12 ;.GTPRG(HISEG)
.DJTIM==13 ;.GTTIM(JOB)
.DJKCT==14 ;.GTKCT(JOB)
.DJPRV==15 ;.GTPRV(JOB)
.DJSWP==16 ;.GTSWP(JOB)
.DJHWP==17 ;.GTSWP(HISEG)
.DJRCT==20 ;.GTRCT(JOB)
.DJWCT==21 ;.GTWCT(JOB)
.DJTDB==22 ;.GTTDB(JOB)
.DJDEV==23 ;.GTDEV(HISEG)
.DJNM1==24 ;.GTNM1(JOB)
.DJNM2==25 ;.GTNM2(JOB)
.DJCNO==26 ;.GTCNO(JOB)
.DJTMP==27 ;.GTTMP(JOB)
.DJWCH==30 ;.GTWCH(JOB)
.DJSPL==31 ;.GTSPL(JOB)
.DJRTD==32 ;.GTRTD(JOB)
.DJLIM==33 ;.GTLIM(JOB)
.DJSPS==34 ;.GTSPS(JOB)
.DJRSP==35 ;.GTRSP(JOB)
.DJTRQ==36 ;.GTTRQ(JOB)
.DJUPM==37 ;.GTUPM(JOB)
.DJHPM==40 ;.GTUPM(HISEG)
.DJCVL==41 ;.GTCVL(JOB)
.DJMVL==42 ;.GTMVL(JOB)
.DJIPA==43 ;.GTIPA(JOB)
.DJIPC==44 ;.GTIPC(JOB)
.DJIPI==45 ;.GTIPI(JOB)
.DJIPQ==46 ;.GTIPQ(JOB)
.DJDVL==47 ;.GTDVL(JOB)
.DJABS==50 ;.GTABS(JOB)
.DJVRT==51 ;.GTVRT(JOB)
.DJHRT==52 ;.GTVRT(HISEG)
.DJMAX==52 ;HIGHEST LEGAL JOB TABLE
SUBTTL PERFORMANCE ANALYSIS -- METER MONITOR CALL
;METER. FUNCTIONS
.MEFCI==0 ;INITIALIZE METER CHANNEL
.MEFCS==1 ;READ METER CHANNEL STATUS
.MEFCR==2 ;RELEASE METER CHANNEL
.MEFPI==3 ;INITIALIZE METER POINT
.MEFPS==4 ;READ METER POINT STATUS
.MEFPR==5 ;RELEASE METER POINT
;METER. ERRORS
MEILF%==1 ;ILLEGAL FUNCTION
MENPV%==2 ;NOT PRIVILEGED USER
MEIMA%==3 ;ILLEGAL MEMORY ADDRESS
MEPDL%==4 ;PDL OVERFLOW
MEIAL%==5 ;ILLEGAL ARG LIST
MEIAV%==6 ;ILLEGAL ARG VALUE
MENFC%==7 ;NOT ENOUGH FREE CORE
MEICT%==10 ;ILLEGAL CHANNEL TYPE
MEIPT%==11 ;ILLEGAL POINT ROUTINE TYPE
MENXP%==12 ;NON-EXISTENT POINT NAME
MENXC%==13 ;NON-EXISTENT CHANNEL
MEPNA%==14 ;POINT NOT AVAILABLE
;STANDARD CHANNEL ARGUMENT BLOCK LOCATIONS
.MCFUN==0 ;UUO FUNCTION CODE
.MCCID==1 ;USER CHANNEL ID
.MCTYP==2 ;CHANNEL TYPE
.MCTYN==0 ;NULL CHANNEL
.MCTYD==1 ;DISPLAY CHANNEL
.MCTYT==2 ;TRACE CHANNEL
.MCSTS==3 ;CHANNEL STATUS
MC.STS==17777B12 ;STATUS MASK
MC.USA==1B1 ;USER SEGMENT ADDRESSED
.MCJOB==4 ;CHANNEL JOB NUMBER
;DISPLAY CHANNEL ARGS
.MCTCN==5 ;AVERAGING TIME CONSTANT
.MCPTR==6 ;DEPOSIT BYTE POINTER
;TRACE CHANNEL ARGS
.MCFLG==5 ;USER ADDRESS OF FLAG AND STATUS WORD
MC.WAK==1B0 ;ENABLED FOR WAKEUP
.MCBUF==6 ;USER ADDRESS OF TRACE BUFFER
.MCIOX==7 ;USER ADDRESS OF BUFFER INDEX
.MCCNT==10 ;USER ADDRESS OF WAKEUP COUNTER
.MCBFL==11 ;BUFFER LENGTH
;ARGUMENT BLOCK FOR METER. POINT FUNCTIONS
.MPFUN==0 ;UUO FUNCTION CODE
.MPAPP==1 ;NUM ARGS PER POINT IN LIST
.MPNUM==2 ;NUMBER OF POINTS IN LIST
.MPADR==3 ;ADDRESS OF POINT LIST
.MPERR==4 ;ADDRESS OF ERROR POINT
;ARGUMENT OFFSETS PER POINT IN POINT LIST
.MPNAM==0 ;POINT NAME
.MPPID==1 ;USER POINT ID
.MPPAR==2 ;POINT PARAMETER
.MPJOB==3 ;JOB NUMBER
.MPSTS==4 ;POINT STATUS
MP.STS==17777B12 ;POINT STATUS MASK
MP.ENB==1B0 ;POINT IS ENABLED
MP.USA==1B1 ;USER SEGMENT ADDRESSED
.MPPRT==5 ;POINT ROUTINE TYPE
.MPRN==00 ;NULL ROUTINE
.MPRV==01 ;INTRINSIC VALUE
.MPRT==02 ;TIME INTERVAL
.MPRVI==3 ;INTRINSIC VALUE+POINT ID
.MPRTI==4 ;TIME+POINT ID
.MPPRP==6 ;POINT ROUTINE PARAMETER
.MPCID==7 ;USER CHANNEL ID
SUBTTL PERFORMANCE ANALYSIS -- PERF. MONITOR CALL
;PERF. FUNCTION CODES
.PRSET==1 ;SET UP PERFORMANCE METER
.PRSTR==2 ;START PERFORMANCE METER
.PRRED==3 ;READ PERFORMANCE METER
.PRSTP==4 ;STOP PERFORMANCE METER
.PRRES==5 ;RELEASE PERFORMANCE METER
.PRBPF==6 ;BACKGROUND PERF ANALYSIS OFF
.PRBPN==7 ;BACKGROUND PERF ANALYSIS ON
;ARGUMENT OFFSETS -- .PRSET
.PMLEN==0 ;LENGTH OF ARGUMENT BLOCK
.PMCPU==1 ;CPU TYPE
PM.PD6==1B0 ;PDP-6
PM.KA==1B1 ;KA10
PM.KI==1B2 ;KI10
PM.KL==1B3 ;KL10
.PMMOD==2 ;PROCESSOR NUMBER AND MODE
PM.CPN==777777B17 ;CPU NUMBER
PM.MOD==1B18 ;INTERVAL MODE
PM.CLR==1B19 ;CLEAR PERFORMANCE METER COUNTS
.PMCSH==3 ;CACHE ENABLES
PM.CCR==1B0 ;COUNT REFERENCES
PM.CCF==1B1 ;COUNT FILLS
PM.EWB==1B2 ;COUNT EBOX WRITEBACKS
PM.SWB==1B3 ;COUNT SWEEP WRITEBACKS
PM.SYN==1B4 ;SYNCHRONIZE PERFORMANCE AND ACCOUNTING METERS
.PMPIE==4 ;PRIORITY INTERRUPT ENABLES
PM.PI0==1B0 ;ENABLE FOR CHANNEL 0
PM.PI1==1B1 ;ENABLE FOR CHANNEL 1
PM.PI2==1B2 ;ENABLE FOR CHANNEL 2
PM.PI3==1B3 ;ENABLE FOR CHANNEL 3
PM.PI4==1B4 ;ENABLE FOR CHANNEL 4
PM.PI5==1B5 ;ENABLE FOR CHANNEL 5
PM.PI6==1B6 ;ENABLE FOR CHANNEL 6
PM.PI7==1B7 ;ENABLE FOR CHANNEL 7
PM.NPI==1B8 ;ENABLE FOR NO PI IN PROGRESS
.PMPCE==5 ;PC ENABLES
PM.UPC==1B0 ;USER MODE ENABLE
PM.XPC==1B1 ;EXEC MODE ENABLE
.PMMPE==6 ;MICROCODE PROBE ENABLES
PM.MPE==1B0 ;MICROCODE PROBE ENABLED
.PMHPE==7 ;HARDWARE PROBE ENABLES
PM.P0L==1B0 ;PROBE ZERO LOW
PM.P0H==1B1 ;PROBE ZERO HIGH
.PMJOB==10 ;JOB ENABLES
.PMSLF==-1 ;ENABLE FOR CALLING JOB
.PMNUL==-2 ;ENABLE FOR NULL JOB
.PMCHN==11 ;CHANNEL ENABLES
PM.EC0==1B0 ;ENABLE FOR CHANNEL 0
PM.EC1==1B1 ;ENABLE FOR CHANNEL 1
PM.EC2==1B2 ;ENABLE FOR CHANNEL 2
PM.EC3==1B3 ;ENABLE FOR CHANNEL 3
PM.EC4==1B4 ;ENABLE FOR CHANNEL 4
PM.EC5==1B5 ;ENABLE FOR CHANNEL 5
PM.EC6==1B6 ;ENABLE FOR CHANNEL 6
PM.EC7==1B7 ;ENABLE FOR CHANNEL 7
;ARGUMENT OFFSETS -- .PRSTR
.PMCPN==1 ;CPU NUMBER
.PMHTB==2 ;HIGH ORDER PART OF TIME BASE
.PMLTB==3 ;LOW ORDER PART OF TIME BASE
.PMHPM==4 ;HIGH ORDER PART OF PERFORMANCE COUNTER
.PMLPM==5 ;LOW ORDER PART OF PERFORMANCE COUNTER
.PMHMC==6 ;HIGH ORDER MBOX REFERENCE COUNT
.PMLMC==7 ;LOW ORDER MBOX REFERENCE COUNT
;ARGUMENT OFFSETS -- .PRRED
; SAME AS FOR .PRSTR
;ARGUMENT OFFSETS -- .PRSTP
; SAME AS FOR .PRSTR
;ARGUMENT OFFSETS -- .PRRES
; SAME AS FOR .PRSTR
;ARGUMENT OFFSETS -- .PRBPF
;.PMLEM==-0 ;LENGTH OF ARG BLOCK
;.PMCPU==1 ;CPU TYPE (SAME AS .PRSET)
;.PMMOP==2 ;CPU AND FLAGS (SAME AS .PRSET)
.PMBPI==3 ;SAMPLE INTERVAL IN TICKS
;ARGUMENT OFFSETS -- .PRBPN
; SAME AS .PRBPF
;PERF. ERRORS
PRCPU%==1 ;INCORRECT CPU SPECIFICATION
PRNXC%==2 ;NON-EXISTENT CPU
PRMOD%==3 ;IMPROPER MODE
PRSET%==4 ;METER NOT SET UP
PRUSE%==5 ;METER IN USE
PRRUN%==6 ;METER IS RUNNING
PRJOB%==7 ;BAD JOB NUMBER
PRNRN%==10 ;METER NOT RUNNING
PRNIM%==11 ;FUNCTION NOT IMPLEMENTED
PRFUN%==12 ;INCORRECT FUNCTION CODE
PRPRV%==13 ;REQUIRES PRIVILEGES
SUBTTL PERFORMANCE ANALYSIS -- SNOOP. MONITOR CALL
;SNOOP. FUNCTION CODES
.SODBP==0 ;DEFINE BREAKPOINTS (ILLEGAL IF BREAKPOINTS HAVE BEEN INSERTED)
.SOLEN==0 ;LENGTH OF THE DEFINE BREAKPOINT BLOCK
.SOMSC==1 ;MONITOR SYMBOL TABLE CHECKSUM
.SOIBP==1 ;INSERT BREAKPOINTS WHICH HAVE BEEN DEFINED (.SODBP)
; (ILLEGAL IF PROGRAM IS NOT LOCKED CONTIGUOUSLY IN EVM)
.SORBP==2 ;REMOVE BREAKPOINTS WHICH HAVE BEEN INSERTED
.SOUBP==3 ;UNDEFINED BREAKPOINTS (ILLEGAL IF BREAKPOINTS HAVE NOT BEEN REMOVED)
;FORMAT OF BREAKPOINT BLOCK FOR .SODBP (REPEATED <(.SOLEN)-1>/2 TIMES)
.SOMVA==0 ;MONITOR VIRTUAL ADDRESS WHERE BREAKPOINT IS TO BE INSERTED
.SOBPI==1 ;BREAKPOINT INSTRUCTION TO BE INSERTED AT CONTENTS OF .SOMVA
;ERROR CODES
SOIAL%==1 ;ILLEGAL ARGUMENT LIST
SONPV%==2 ;NOT PRIVILEGED
SOSAS%==3 ;SOMEONE IS ALREADY SNOOP.'ING
SOMBX%==4 ;MAXIMUM NUMBER OF BREAKPOINTS ALLOWED EXCEEDED
SOIBI%==5 ;FUNCTION ILLEGAL BECAUSE BREAKPOINTS ARE INSERTED
SONFS%==6 ;NO MONITOR FREE CORE
SOADC%==7 ;ADDRESS CHECK
SOINL%==10 ;FUNCTION ILLEGAL IF NOT LOCKED CONTIGUOUSLY IN EVM
SOWMS%==11 ;MONITOR SYMBOL TABLE CHECKSUMS DO NOT MATCH
SUBTTL ENQUEUE AND DEQUEUE SYMBOLS -- GENERAL FORMAT OF ARG BLOCK
;;GENERAL FORMAT FOR ENQ./DEQ./ENQC.
;;!=======================================================!
;;!LEN! # OF LOCKS ! LENGTH OF THIS BLOCK !
;;!-------------------------------------------------------!
;;! RESERVED ! REQUEST ID !
;;!=======================================================!
;;!S!B! RESERVED ! LEVEL # ! CHAN #/-1/-2/-3 !
;;!-------------------------------------------------------!
;;! BYTE POINTER TO STRING OR 5B2+USER CODE !
;;!-------------------------------------------------------!
;;! # OF RES. IN POOL ! # WANTED OR GROUP # !
;;!-------------------------------------------------------!
;;/ /
;;/ 3 TO 5 WORDS FOR EACH LOCK /
;;/ /
;;!-------------------------------------------------------!
;;!S!B! RESERVED ! LEVEL # ! CHAN #/-1/-2/-3 !
;;!-------------------------------------------------------!
;;! POINTER TO STRING OR 5B2+USER CODE !
;;!-------------------------------------------------------!
;;! # OF RES IN POOL ! # WANTED OR GROUP # !
;;!=======================================================!
.ENQLL==0 ;NUMBER OF LOCKS AND LENGTH
EQ.BHS==77B5 ;BLOCK HEADER SIZE
EQ.LNL==7777B17 ;NUMBER OF LOCKS
EQ.LLB==777777B35 ;LENGTH OF BLOCK
.ENQRI==1 ;REQUEST I.D.
;FOR EACH LOCK:
.ENQFL==0 ;FLAGS, LEVEL, CHAN
EQ.FSR==1B0 ;SHARED REQUEST
EQ.FBL==1B1 ;BYPASS LEVEL CHECKING
EQ.FLT==1B2 ;LONG TERM LOCK
EQ.FLV==777B17 ;LEVEL #
EQ.FCC==777777 ;CHAN. NUMBER OR CODE
.EQFJB==777777 ;CODE FOR THIS JOB ONLY
.EQFGL==777776 ;GLOBAL LOCK
.EQFPL==777775 ;PRIV. GLOBAL LOCK
.ENQBP==1 ;BYTE POINTER OR USER CODE
EQ.BUC==5B2 ;SET IF 33 BIT USER CODE IS USED
.ENQPS==2 ;POOL SIZE
EQ.PPS==777777B17 ;TOTAL SIZE OF POOL
EQ.PPR==777777B35 ;NUMBER REQUESTED FROM POOL
.ENQMS==3 ;MASK FOR MULTIPLE RESOURCE LOCK
EQ.MSK==777777B35 ;ADDRESS OF BLOCK
EQ.MBL==777777B17 ;MASK BLOCK LENGTH
.ENQTB==4 ;LOCK ASSOCIATED TABLE BLOCK
EQ.TLN==777777B17 ;LENGTH OF TABLE BLOCK
EQ.TBL==777777B35 ;ADDRESS OF TABLE BLOCK
SUBTTL ENQUEUE AND DEQUEUE SYMBOLS -- FUNCTION CODES
;ENQ. FUNCTION CODES
.ENQBL==0 ;ENQ. BLOCK TILL AVAILABLE
.ENQAA==1 ;ENQ. ALLOCATE ONLY IF AVAILABLE
.ENQSI==2 ;ENQ. SOFTWARE INTERRUPT WHEN AVAIL.
.ENQMA==3 ;ENQ. MODIFY ACCESS
;DEQ. FUNCTION CODES
.DEQDR==0 ;DEQ. RESOURCE
.DEQDA==1 ;DEQ. ALL
.DEQID==2 ;DEQ. BY REQUEST I.D.
;ENQC. FUNCTION CODES
.ENQCS==0 ;RETURN STATUS
.ENQCG==1 ;GET USER'S QUOTA
.ENQCC==2 ;CHANGE USERS QUOTA
.ENQCD==3 ;DUMP THE DATA BASE
SUBTTL ENQUEUE AND DEQUEUE SYMBOLS -- FORMAT OF STATUS BLOCKS
;;FORMAT OF ENQC. STATUS BLOCKS (FUNCTION 1)
;;!=========================================================================!
;;!I !O !Q!X! ! LEVEL # ! JOB # OF OWNER OR ERROR # !
;;!-------------------------------------------------------------------------!
;;! TIME-STAMP OF LOCK !
;;!-------------------------------------------------------------------------!
;;! NUMBER OF REQUESTS ! REQUEST ID OF CALLER/OWNER !
;;!-------------------------------------------------------------------------!
;;/ /
;;/ TWO WORDS FOR EACH LOCK IN ENQC. REQUEST /
;;/ /
.ENQCF==0 ;FLAG WORD
EQ.CFI==1B0 ;LOCK IS INVALID
EQ.CFO==1B1 ;THIS USER IS THE OWNER
EQ.CFQ==1B2 ;THIS USER IS IN THE QUEUE
EQ.CFX==1B3 ;THE OWNER HAS EXCLUSIVE ACCESS
EQ.CFL==777B17 ;LEVEL NUMBER
EQ.CFJ==777777 ;JOB # OF OWNER (OR ERROR CODE)
.ENQCT==1 ;TIME-STAMP (TIME LOCK WAS GRANTED TO OWNER
; IN UNIVERSAL FORMAT)
.ENQCI==2 ;NUMBER OF REQUESTS,,REQUEST ID OF OWNER/CALLER
EQ.CIQ==777777B17 ;NUMBER OF REQUESTS QUEUED
EQ.CID==777777 ;REQUEST ID OF OWNER/CALLER
SUBTTL ENQUEUE AND DEQUEUE SYMBOLS -- FORMAT OF DUMP
;;FORMAT FOR ENQC. DUMP
;;!=======================================================!
;;! NUMBER OF WORDS IN THIS BLOCK !
;;!=======================================================!
;;! !
;;! !
;;! LOCK-BLOCK FOR LOCK # 1 !
;;! !
;;!-------------------------------------------------------!
;;! QUEUE BLOCK FOR FIRST ENTRY OF LOCK 1 !
;;! !
;;!-------------------------------------------------------!
;;! !
;;! QUEUE BLOCK FOR SECOND ENTRY OF LOCK 1 !
;;!-------------------------------------------------------!
;;/ /
;;/ TWO WORD QUEUE-BLOCK FOR EACH WAITER FOR LOCK 1 /
;;/ /
;;!=======================================================!
;;! !
;;! !
;;! LOCK BLOCK FOR LOCK #2 !
;;! !
;;!-------------------------------------------------------!
;;! QUEUE-BLOCK FOR FIRST WAITER FOR LOCK #2 !
;;! !
;;!-------------------------------------------------------!
;;! !
;;! QUEUE-BLOCK FOR SECOND WAITER FOR LOCK #2 !
;;!-------------------------------------------------------!
;;/ /
;;/ /
;;/ LOCK-BLOCKS AND QUEUE BLOCKS FOR THE ENTIRE /
;;/ ENQ./DEQ. DATA BASE /
;;/ /
;;/ /
;;FORMAT OF EACH LOCK-BLOCK
;;!=========================================================================!
;;! 1! 0!T!0!0! ! LEVEL # ! LOCK I.D. !
;;!-------------------------------------------------------------------------!
;;! # IN POOL OR 0 ! # REMAINING OR 0 !
;;!-------------------------------------------------------------------------!
;;! TIME-STAMP !
;;!-------------------------------------------------------------------------!
;;! ASCIZ STRING (MAY BE SEVERAL WORDS) OR USER CODE !
;;!=========================================================================!
;;FORMAT OF EACH QUEUE-BLOCK
;;!=========================================================================!
;;! 0!LO!0!X!B! ! JOB # !
;;!-------------------------------------------------------------------------!
;;! GROUP # OR # REQUESTED ! REQUEST I.D. !
;;!=========================================================================!
;FLAGS IN FIRST WORD OF EACH BLOCK TYPE:
EQ.DLB==1B0 ;THIS IS A LOCK BLOCK
EQ.DLO==1B1 ;THIS IS THE LOCK OWNER (QUEUE-BLOCK ONLY)
EQ.DLT==1B2 ;THIS LOCK HAS TEXT (LOCK-BLOCK ONLY)
EQ.DXA==1B3 ;EXCLUSIVE ACCESS (QUEUE-BLOCK ONLY)
EQ.DJW==1B4 ;THIS JOB IS BLOCKED WAITING FOR LOCK (QUEUE-BLOCK ONLY)
;FORMAT OF LOCK-BLOCK
.EQDFL==0 ;FLAGS AND LEVEL
EQ.DFL==777B17 ;LEVEL #
EQ.DFI==777777 ;LOCK I.D.
.EQDPR==1 ;POOLED REQUEST COUNTS
EQ.DPS==777777B17 ;SIZE OF POOL
EQ.DPL==777777B35 ;NUMBER LEFT
.EQDTS==2 ;TIME-STAMP
.EQDSU==3 ;STRING OR USER CODE
;FORMAT OF A QUEUE-BLOCK
.EQDFJ==0 ;FLAGS AND JOB #
EQ.DJN==777B35 ;JOB NUMBER
.EQDGI==1 ;GROUP # AND REQUEST I.D.
EQ.DGR==777777B17 ;GROUP OR # REQUESTED
EQ.DRI==777777B35 ;REQUEST I.D.
SUBTTL ENQUEUE AND DEQUEUE SYMBOLS -- ERROR CODES
;ENQ./DEQ./ENQC. ERROR CODES
ENQRU%==1 ;SOME RESOURCE(S) REQUEST WERE UNAVAILABLE
ENQBP%==2 ;ILLEGAL # OF RESOURCES REQUESTED (POOLED RESOURCES)
ENQBJ%==3 ;BAD JOB NUMBER
ENQBB%==4 ;BAD BYTE SIZE IN TEXT STRING
ENQST%==5 ;STRING TOO LONG
ENQBF%==6 ;BAD FUNCTION CODE
ENQBL%==7 ;ILLEGAL ARGUMENT BLOCK LENGTH
ENQIC%==10 ;ILLEGAL NUMBER OF LOCKS SPECIFIED
ENQBC%==11 ;BAD CHANNEL NUMBER
ENQPI%==12 ;OPERATOR/JACCT PRIVILEGE REQUIRED
ENQNC%==13 ;NO CORE AVAILABLE
ENQFN%==14 ;FILE NOT OPEN ON SPECIFIED CHANNEL, OR DEVICE NOT A DISK
ENQIN%==15 ;INDIRECT OR INDEXED BYTE POINTER NOT ALLOWED
ENQNO%==16 ;NO RESOURCES WERE OWNED
ENQLS%==17 ;LEVEL SEQUENCING ERROR (LEVEL # TOO LOW)
ENQCC%==20 ;CAN'T CHANGE ACCESS TO EXCLUSIVE ACCESS
ENQQE%==21 ;QUOTA EXCEEDED
ENQPD%==22 ;# OF RESOURCES IN POOL NOT SAME AS IN LOCK
ENQDR%==23 ;DUPLICATE REQUEST FOR RESOURCE (LOCK ALREADY REQUESTED)
ENQNE%==24 ;NOT ENQ'ED ON THIS LOCK
ENQLD%==25 ;LEVEL # IN REQUEST DOES NOT MATCH LOCK
ENQED%==26 ;ENQ/DEQ PRIVILEGES REQUIRED
ENQME%==27 ;PIE SLICE MASK TOO LONG, OR LENGTHS DON'T MATCH
ENQTE%==30 ;LOCK ASSOCIATED TABLE TOO LONG
SUBTTL FILE DAEMON
;FILE DAEMON
.FLDCA==1 ;ACCESS
.FLDIC==2 ;INPUT CLOSE
.FLDOC==3 ;OUTPUT CLOSE
.FLDXT==4 ;EXIT
.FLDPG==5 ;RUN
.FLDDA==6 ;DIRECTORY
FL.DAA==1B0 ;CALL THE FILE DAEMON ON EVERY ACCESS TO THE FILE
FL.DCL==1B1 ;CALL THE FILE DAEMON ON CLOSE
FL.DXT==1B2 ;CALL THE FILE DAEMON ON PROGRAM EXECUTION TERMINATED
FL.DSP==1B3 ;FILE DAEMON IS SPECIFING THE PROTECTION CODE
FL.DPT==777B17 ;PROTECTION CODE SUPPLIED BY THE FILE DAEMON
FL.DHA==777777B35 ;HIGHEST ACCESS ALLOWED
SUBTTL MISC. I/O -- DEVCHR
DV.DRI==1B0 ;DTA WITH DIRECTORY IN CORE
DV.DSK==1B1 ;DEVICE IS A FILE STRUCTURE
DV.CDR==1B2 ;IF DVOUT=1 DEVICE IS A CDP
; IF DVIN=1 DEVICE IS A CDR
DV.LPT==1B3 ;DEVICE IS A LINE PRINTER
DV.TTA==1B4 ;DEVICE IS A TTY CONTROLING A JOB
DV.TTU==1B5 ;TTY DDB IS IN USE
DV.TTB==1B6 ;FREE BIT LEFT FROM SCNSRF
DV.DIS==1B7 ;DEVICE IS A DISPLAY
DV.LNG==1B8 ;DEVICE HAS A LONG DISPATCH TABLE
DV.PTP==1B9 ;DEVICE IS A PAPER TAPE PUNCH
DV.PTR==1B10 ;DEVICE IS A PAPER TAPE READER
DV.DTA==1B11 ;DEVICE IS A DEC TAPE
DV.AVL==1B12 ;DEVICE IS AVAILABLE TO THIS JOB
DV.MTA==1B13 ;DEVICE IS A MAG TAPE
DV.TTY==1B14 ;DEVICE IS A TTY
DV.DIR==1B15 ;DEVICE HAS A DIRECTORY
DV.IN==1B16 ;DEVICE CAN DO INPUT
DV.OUT==1B17 ;DEVICE CAN DO OUTPUT
DV.ASC==1B18 ;DEVICE ASSIGNED BY ASSIGN COMMAND
DV.ASP==1B19 ;DEVICE ASSIGNED BY INIT OR OPEN UUO
DV.M17==1B20 ;DEVICE CAN DO MODE 17
DV.M16==1B21 ;DEVICE CAN DO MODE 16
DV.M15==1B22 ;DEVICE CAN DO MODE 15
DV.M14==1B23 ;DEVICE CAN DO MODE 14
DV.M13==1B24 ;DEVICE CAN DO MODE 13
DV.M12==1B25 ;DEVICE CAN DO MODE 12
DV.M11==1B26 ;DEVICE CAN DO MODE 11
DV.M10==1B27 ;DEVICE CAN DO MODE 10
DV.M7==1B28 ;DEVICE CAN DO MODE 7
DV.M6==1B29 ;DEVICE CAN DO MODE 6
DV.M5==1B30 ;DEVICE CAN DO MODE 5
DV.M4==1B31 ;DEVICE CAN DO MODE 4
DV.M3==1B32 ;DEVICE CAN DO MODE 3
DV.M2==1B33 ;DEVICE CAN DO MODE 2
DV.M1==1B34 ;DEVICE CAN DO MODE 1
DV.M0==1B35 ;DEVICE CAN DO MODE 0
SUBTTL MISC. I/O -- DEVTYP
;FIRST THE TYPE CODES
.TYDSK==0 ;DEVICE IS A DISK
.TYDTA==1 ;DEVICE IS A DEC TAPE
.TYMTA==2 ;DEVICE IS A MAG TAPE
.TYTTY==3 ;DEVICE IS A TTY
.TYPTR==4 ;DEVICE IS A PTR
.TYPTP==5 ;DEVICE IS A PTP
.TYDIS==6 ;DEVICE IS A DISPLAY
.TYLPT==7 ;DEVICE IS A LINE PRINTER
.TYCDR==10 ;DEVICE IS A CARD READER
.TYCDP==11 ;DEVICE IS A CARD PUNCH
.TYPTY==12 ;DEVICE IS A PTY
.TYPLT==13 ;DEVICE IS A PLOTTER
.TYEXT==14 ;EXTERNAL TASK (DA28C)
.TYMPX==15 ;MULTIPLEXOR
.TYPAR==16 ;PA611R ON DC44
.TYPCR==17 ;PC11(R) ON DC44
.TYPAP==20 ;PA611P ON DC44
.TYLPC==21 ;LPC-11 ON DC44
.TYPCP==22 ;PC-11(P) ON DC44
.TYWTY==23 ;WTY DEVICE ON DC44
.TYTSK==24 ;NETWORK TASK
.TYD78==25 ;DAS78 DEVICE
.TYRDA==26 ;REMOTE DATA ENTRY DEVICE
.TYMCR==27 ;MONITOR COMMAND ROUTINE
.TYDRA==30 ;DTR01/DR01 DEVICE
;NOW THE CHARACTERISTICS
TY.MAN==1B0 ;LOOKUP/ENTER IS REQUIRED
TY.MDA==1B9 ;DEVICE IS CONTROLLED BY MOUNTABLE DEVICE
; ALLOCATOR
TY.EHF==1B10 ;EXTENDED HARDWARE FEATURES:
;IF LPT THEN HAS LOWER CASE
TY.MPX==1B11 ;DEVICE CAN BE USED VIA MPX:
TY.AVL==1B12 ;DEVICE IS FREE
TY.SPL==1B13 ;DEVICE IS SPOOLED
TY.INT==1B14 ;DEVICE IS INTERACTIVE
TY.VAR==1B15 ;DEVICE HAS VARIABLE BUFFER SIZE
TY.IN==1B16 ;DEVICE CAN DO INPUT
TY.OUT==1B17 ;DEVICE CAN DO OUTPUT
TY.JOB==777B26 ;JOB NUMBER OWNING DEVICE
TY.RAS==1B29 ;RESTRICTED DEVICE
TY.DEV==77B35 ;DEVICE TYPE
SUBTTL MISC. I/O -- MTCHR.
MT.AWC==777777B17 ;ACTUAL WORD COUNT
MT.CRC==777B26 ;CRC LAST READ
MT.NCR==7B29 ;NUMBER CHARACTERS READ IN LAST WORD
MT.7TR==1B31 ;7 TRACK
MT.WLK==1B32 ;WRITE LOCKED
MT.DEN==7B35 ;DENSITY
.MTDN2==1 ;200
.MTDN5==2 ;556
.MTDN8==3 ;800
.MTD16==4 ;1600
.MTD62==5 ;6250
.MTCHN==0 ;CHANNEL NUMBER SET IN CALL
.MTRID==1 ;REEL ID
.MTWRD==2 ;WORDS READ (CHARS IN 6.02)
.MTREC==3 ;NUMBER OF RECORDS FROM LAST EOF
.MTCRD==4 ;NUMBER CHARACTERS READ SINCE LAST SYSTEM RELOAD
.MTCWR==5 ;NUMBER CHARACTERS WRITTEN SINCE LAST SYSTEM RELOAD
.MTSRE==6 ;NUMBER SOFT-READ ERRORS SINCE LAST SYSTEM RELOAD
.MTHRE==7 ;NUMBER HARD-READ ERRORS SINCE LAST SYSTEM RELOAD
.MTSWE==10 ;NUMBER SOFT-WRITE ERRORS SINCE LAST SYSTEM RELOAD
.MTHWE==11 ;NUMBER HARD-WRITE ERRORS SINCE LAST SYSTEM RELOAD
.MTTME==12 ;NUMBER TOTAL MEDIA ERRORS SINCE LAST SYSTEM RELOAD
.MTTDE==13 ;NUMBER DEVICE ERRORS SINCE LAST SYSTEM RELOAD
.MTTUN==14 ;NUMBER OF UNLOADS SINCE LAST SYSTEM RELOAD
.MTRTY==15 ;NUMBER OF RETRIES TO RESOLVE LAST ERROR
.MTCCR==16 ;CHARACTER COUNT OF LAST RECORD READ OR WRITTEN
.MTPBE==17 ;POSITION BEFORE LAST ERROR OF FILE,,RECORD NUMBER
.MTFES==20 ;FINAL ERROR STATE (SEE SYSERR SPECIFICATION)
SUBTTL MISC. I/O -- TAPOP.
;;TAPOP. UUO TAKES N,,BLOCK IN AC WHERE BLOCK CONTAINS:
;; !=======================================================!
;; ! FUNCTION CODE !
;; !-------------------------------------------------------!
;; ! DEVICE NAME, CHAN. OR UDX !
;; !-------------------------------------------------------!
;; ! ARGUMENT 0 !
;; !-------------------------------------------------------!
;; ! ARGUMENT 1 !
;; !-------------------------------------------------------!
;; / /
;; / /
;; / /
;; !-------------------------------------------------------!
;; ! ARGUMENT N-2 !
;; !=======================================================!
;TAPOP. FUNCTIONS:
.TFWAT==1 ;WAIT FOR I/O TO STOP
.TFREW==2 ;REWIND TO LOAD POINT
.TFUNL==3 ;REWIND AND UNLOAD
.TFFSB==4 ;SKIP FORWARD 1 BLOCK
.TFFSF==5 ;SKIP FORWARD 1 FILE
.TFSLE==6 ;SKIP TO LOGICAL END OF TAPE
.TFBSB==7 ;SKIP BACKWARD 1 BLOCK
.TFBSF==10 ;SKIP BACKWARD 1 FILE
.TFWTM==11 ;WRITE TAPE MARK
.TFWLG==12 ;WRITE 3" OF BLANK TAPE
.TFDSE==13 ;DATA SECURITY ERASE (BLANK WHOLE TAPE) TU70
.TFWLE==14 ;WRITE LOGICAL END OF TAPE (WTM, WTM, BSB)
.TFLBG==15 ;LABEL GET (FOR TAPE LABEL MGR.)
.TFLRL==16 ;LABEL RELEASE (FOR TAPE LABEL MGR.)
.TFLSU==17 ;SWAP UNITS (FOR TAPE LABEL MGR.)
.TFLDD==20 ;DESTROY LABEL DDB (FOR TAPE LABEL MGR.)
.TFFEV==21 ;FORCE END OF VOLUME PROCESSING
.TFURQ==22 ;USER REQUEST
.TFSMM==23 ;SET MAINTENANCE MODE
.TFCMM==24 ;CLEAR MAINTENANCE MODE
;READ PARAMETERS. RESULT TO AC.
.TFTRY==1000 ;RETRIES ON LAST ERROR
.TFDEN==1001 ;DENSITY
.TFD00==0 ;UNIT DEFAULT
.TFD20==1 ;200 BPI
.TFD55==2 ;556 BPI
.TFD80==3 ;800 BPI
.TFD16==4 ;1600 BPI
.TFD62==5 ;6250 BPI
.TFKTP==1002 ;CONTROLLER TYPE
.TFKTA==0 ;TM10A
.TFKTB==1 ;TM10B
.TFKTC==2 ;TC10C
.TFKTX==3 ;TX01
.TFKTM==4 ;TM02/TU16
.TFKRH==5 ;TM02/3 ON RH11
.TFKD2==6 ;DX20/TX02
.TFRDB==1003 ;READ BACKWARDS (TU70 ONLY)
.TFLTH==1004 ;LOW THRESHOLD READ (TM10 ONLY)
.TFPAR==1005 ;EVEN PARITY (7TRK ONLY)
.TFBSZ==1006 ;BLOCK SIZE
.TFMOD==1007 ;MODE
.TFMDD==0 ;DEC COMPAT. CORE DUMP
.TFMID==1 ;INDUSTRY COMPAT. CORE DUMP
.TFM8B==2 ;8-BIT MODE (4 BYTES/WORD)
.TFM6B==3 ;6-BIT MODE (9-TRACK TU70 ONLY)
.TFM7B==4 ;7-BIT MODE (TU70 ONLY)
.TFM7T==5 ;7-TRACK CORE DUMP (SIXBIT)
.TFTRK==1010 ;7-TRACK BIT
.TFWLK==1011 ;WRITE LOCK (1=YES, 0=NO)
.TFCNT==1012 ;CHAR. COUNT OF LAST RECORD
.TFRID==1013 ;REELID
.TFCRC==1014 ;LAST CRC (9-TRACK NRZI ONLY)
.TFSTS==1015 ;UNIT STATUS
TF.UNS==1B18 ;UNIT IS NOT TO BE SCHEDULED
TF.BOT==1B19 ;BOT
TF.WLK==1B20 ;WRITE LOCK
TF.REW==1B21 ;UNIT IS REWINDING
TF.STA==1B33 ;UNIT IS STARTED
TF.SEL==1B34 ;UNIT IS SELECTED
TF.OFL==1B35 ;UNIT IS OFF-LINE
.TFSTA==1016 ;UNIT STATISTICS TO ARGS 0 TO 12
.TSFUN==0 ;FUNCTION CODE
.TSDEV==1 ;DEVICE, CHAN, OR UDX
.TSRID==2 ;SIXBIT REEL IDENTIFIER
.TSFIL==3 ;NUMER OF FILES SINCE BOT (FILE #)
.TSREC==4 ;NUMBER OF RECORDS SINCE EOF (RECORD #)
.TSCRD==5 ;TOTAL CHARS. READ SINCE SYSTEM RELOAD
.TSCWR==6 ;TOTAL CHARS. WRITTEN SINCE SYSTEM RELOAD
.TSSRE==7 ;SOFT READ ERRORS SINCE SYSTEM RELOAD
.TSHRE==10 ;HARD READ ERRORS SINCE SYSTEM RELOAD
.TSSWE==11 ;SOFT WRITE ERRORS SINCE SYSTEM RELOAD
.TSHWE==12 ;HARD WRITE ERRORS SINCE SYSTEM RELOAD
.TSTME==13 ;TOTAL ERRORS SINCE UNLOAD (MOUNT)
.TSTDE==14 ;TOTAL DEVICE ERRORS SINCE SYSTEM STARTUP
.TSTUN==15 ;TOTAL UNLOADS SINCE SYSTEM RELOAD
.TSRTY==16 ;NUMBER OF RETRIES TO RESOLVE LAST ERROR
.TSCCR==17 ;CHARACTER COUNT OF LAST RECORD READ OR WRITTEN
.TSPBE==20 ;POSITION BEFORE LAST ERROR OF FILE,,RECORD NUMBER
.TSFES==21 ;FINAL ERROR STATE (SEE SYSERR SPECIFICATION)
.TFIEP==1017 ;INITIAL ERROR POINTER
.TFFEP==1020 ;FINAL ERROR POINTER
.TFIER==1021 ;INITIAL ERROR STATUS
.TFFER==1022 ;FINAL ERROR STATUS
.TFFED==1023 ;NUMBER OF RETRIES
.TFLBL==1024 ;TYPE OF LABEL PROCESSING
.TFLBP==0 ;BYPASS LABEL PROCESSING
.TFLAL==1 ;ANSI LABELS
.TFLAU==2 ;ANSI LABELS WITH USER LABELS
.TFLIL==3 ;IBM LABELS
.TFLIU==4 ;IBM LABELS WITH USER LABELS
.TFLTM==5 ;LEADING TAPE MARK
.TFLNS==6 ;NON-STANDARD LABELS
.TFLNL==7 ;NO LABELS
.TFPLT==1025 ;SAME AS .TFLBL EXCEPT PRIV SET. USED TO
; SET .TFLBP AND .TFLNL.
.TFLTC==1026 ;LABEL TERMINATION CODE (SEE EXTENDED I/O ERROR)
;THIS FUNCTION WILL BE OBSOLETE IN 7.01
.TFTCP==1 ;CONTINUE PROCESSING
.TFTRE==2 ;RETURN EOF
.TFTLT==3 ;LABEL TYPE ERROR
.TFTHL==4 ;HEADER LABEL ERROR
.TFTTL==5 ;TRAILER LABEL ERROR
.TFTVL==6 ;VOLUME LABEL ERROR
.TFTDV==7 ;DEVICE ERROR
.TFTDE==10 ;DATA ERROR
.TFTWL==11 ;WRITE LOCK ERROR
.TFPSE==12 ;POSITIONING ERROR
.TFBOT==13 ;BOT
.TFIOP==14 ;ILLEGAL OPERATION
.TFDMS==1027 ;DIAGNOSTIC MODE SET IF 1 (TU70 ON DX10 ONLY)
.TFFSO==1030 ;FORCE SENSE OPERATIONS IF 1 (TU70 ONLY)
.TFMFC==1031 ;READ/SET MAXIMUM FRAME COUNT
.TFPDN==1032 ;POSSIBLE DENSITY
TF.DN1==1B35 ;200 BPI
TF.DN2==1B34 ;550 BPI
TF.DN3==1B33 ;800 BPI
TF.DN4==1B32 ;1600 BPI
TF.DN5==1B31 ;6250 BPI
.TFLPR==1033 ;READ/SET LABEL PARAMETERS
.TFSET==1000 ;OFFSET FROM READ TO SET
;TAPOP. ERROR CODES
TPACS%==-1 ;ADDRESS CHECK STORING ANSWER
TPIFC%==0 ;ILLEGAL FUNCTION CODE
TPPRV%==1 ;NOT ENOUGH PRIVS.
TPNMT%==2 ;NOT A MAGTAPE
TPVOR%==3 ;VALUE OUT OF RANGE
TPACR%==4 ;ADDRESS CHECK READING ARGUMENTS
TPCBS%==5 ;PARAMETER CAN NOT BE SET
TPNIA%==6 ;TAPE NOT INITED OR ASSIGNED
TPNLP%==7 ;THERE IS NO LABEL PROCESS
TPETC%==10 ;TERMINATION CODE ERROR
TPIJN%==11 ;WRONG JOB NUMBER
TPLRF%==12 ;DIDN'T DO LABEL RELEASE FUNCTION
TPLSI%==13 ;LABEL PARAMETER SET ILLEGAL AFTER FIRST OUTPUT
SUBTTL MISC. I/O -- WHERE
RM.SUP==17B17 ;STATION UP STATUS
.RMSUN==1 ;NOT IN CONTACT
.RMSUD==2 ;DOWN
.RMSUG==4 ;LOADING
.RMSUL==10 ;LOADED
RM.SDU==1B13 ;DIAL-UP
SUBTTL MISC. I/O -- CAL11.
.C11FC==0 ;FUNCTION WORD
C1.1NO==777777B17 ;WHICH -11
C1.1NT==777B8 ;TYPE
C1.1NN==777B17 ;NUMBER
.C11DL==0 ;DL-10
.C11DT==1 ;DTE-20
C1.1FC==777777 ;WHICH FUNCTION
.C11DP==0 ;DEPOSIT FUNCTION
.C11EX==1 ;EXAMINE FUNCTION
.C11QU==2 ;QUEUE A REQUEST
.C11NM==3 ;RETURN NAME OF FRONT END PROG
.C11UP==4 ;RETURN 0 IF DOWN, 1 IF UP
.C11SM==5 ;SEND MESSAGE
.C11RM==6 ;RECEIVE MESSAGE
.C11TY==7 ;RETURN TYPE/NODE NUMBER
.C1D76==1 ;DC76
.C1D75==2 ;DC75/DN87
.C1D60==3 ;DN60
.C1D8S==4 ;DN87S
.C1CFE==5 ;CONSOLE FRONT END
.C11AD==1 ;ADDRESS OF EXAMINE/DEPOSIT
.C11CN==2 ;CONTENTS TO DEPOSIT
.C11EN==1 ;START OF QUEUE ENTRY
;CAL11. ERROR CODES
C11NP%==1 ;NOT PRIVILEGED
C11UF%==2 ;UNKNOWN FUNCTION
C11ND%==3 ;NOT DC76
C11IU%==4 ;EXAM/DEP IN USE
C11NA%==5 ;NO ANSWER TO EXAM/DEP
C11TS%==6 ;QUEUE ENTRY TOO SHORT
C11NE%==7 ;NOT ENOUGH ARGS
SUBTTL MISC. I/O -- DTE.
;DTE. UUO FUNCTION CODES, BITS
.DTECL==0 ;CLEAR AN 11 ON A DTE
.DTEST==1 ;START PRIMARY PROTOCOL ON AN 11
.DTETB==2 ;SET TO-10 BYTE POINTER FOR A DTE
.DTEEB==3 ;SET TO-11 BYTE POINTER FOR A DTE
.DTERW==4 ;GET ROM RELOAD WORD
DT.RP4==200 ;IF SET, 11 GOT CODE FROM THE RP04
.DTEMN==5 ;GET MASTER DTE NUMBER
.DTEPR==6 ;PRESS RELOAD BUTTON ON A DTE
.DTEGS==7 ;GET DTE STATUS
DT.DTX==1B6 ;DTE EXISTS
DT.DTM==1B7 ;DTE IS THE MASTER
DT.PPC==1B8 ;DTE IS RUNNING PRIMARY PROTOCOL
DT.SPC==1B9 ;DTE IS RUNNING SECONDARY PROTOCOL
DT.RLD==1B10 ;DTE NEEDS TO BE RELOADED
.DTERJ==10 ;SET RELOAD JOB NUMBER
.DTEGF==11 ;GET FRONT END DEVICE
.DTEIF==12 ;INPUT FROM FRONT END DEVICE
.DTEOF==13 ;OUTPUT TO FRONT END DEVICE
.DTEFG==14 ;GET FRONT END DEVICE STATUS
DT.FER==1B28 ;FATAL ERROR
DT.EOF==1B30 ;END OF FILE
DT.IOP==1B31 ;I/O IN PROGRESS
DT.SER==1B32 ;SOFT ERROR
DT.HER==1B33 ;HARD ERROR
DT.OFL==1B34 ;OFF LINE
DT.NXD==1B35 ;NON-EXISTANT DEVICE
.DTEFS==15 ;SET FRONT END DEVICE STATUS
;(BITS SAME AS IN GET FRONT END DEVICE STATUS)
.DTEFR==16 ;RELEASE FRONT END DEVICE
.DTERC==17 ;RELEASE KL ERROR CORE
.DTERT==20 ;RESET TIMER FOR KL ERROR CORE SO
; DAEMON IS SURE THAT THE CORE IS THERE.
.DTEDT==21 ;DTE TO TTY LINE CONVERSION
;DTE. UUO ERROR CODES
DTENP%==1 ;NOT PRIVILEGED
DTEUF%==2 ;UNKNOWN FUNCTION CODE
DTEDC%==3 ;UNKNOWN CPU NUMBER OR DTE NUMBER
DTEAP%==4 ;ALREADY RUNNING PRIMARY PROTOCOL
DTEPT%==5 ;POWER FAIL TIMEOUT ERROR
DTEDE%==6 ;DEAD 11 - ROM DID NOT CLEAR TO-11 DOORBELL
; DURING BOOTSTRAP SEQUENCE.
DTTTE%==7 ;TO-10 ERROR AFTER BOOT SEQUENCE
DTEDD%==10 ;NO RESPONSE FROM 11 AFTER BOOT SEQUENCE
DTEIJ%==11 ;ILLEGAL JOB NUMBER SPECIFIED.
DTEIB%==12 ;ILLEGAL BYTE COUNT TO FRONT END DEVICE
DTENI%==13 ;FAILURE TO DO INITIALIZE FUNCTION ON FRONT END
; DEVICE BEFORE USING IT
DTEFB%==14 ;FRONT END DEVICE BUSY FOR ANOTHER JOB
DTENF%==15 ;NON-EXISTANT FRONT END DEVICE
DTEFE%==16 ;FATAL ERROR ON FRONT END DEVICE
DTESE%==17 ;ERROR AFTER TRYING TO START PRIMARY PROTOCOL
DTENC%==20 ;NO FREE CORE FOR FRONT END DEVICE BUFFERS
DTETE%==21 ;TIMER EXPIRED FOR KL ERROR DATA CORE
DTECM%==22 ;DTE TO-11 QUEUE ROUTINE COULD NOT SEND
; A MESSAGE FOR FRONT END DEVICE
SUBTTL MISC. I/O -- DEVOP.
;DEVOP. FUNCTION CODES
.DFLLV==1 ;LOAD STANDARD VFU
.DFENV==2 ;ENABLE FOR LOADING NON-STANDARD VFU
.DFDVL==3 ;DISABLE VFU LOAD
.DFLR2==11 ;LOAD TRANSLATION RAM INTO LP20
.DFLV2==12 ;LOAD VFU THROUGH LP20
;DEVOP. READ/SET PARAMETERS
.DFSET==1000 ;OFFSET FROM READ TO SET FUNCTIONS (E.G.,
;TO SET PAGE COUNTER USE .DFPCT+.DFSET)
.DFPCT==1000 ;PAGE COUNTER
.DFHCW==1002 ;Hardware Characteristics Word
;LINEPRINTER CHARACTERISTICS
DF.LCP==1B0 ;LOWER CASE
DF.PGC==1B1 ;PAGE COUNTER
DF.VFT==7B5 ;VFU TYPE
.DFVTO==0 ;PAPER TAPE
.DFVTD==1 ;DAVFU
.DFVTN==2 ;NO VFU
DF.TYP==7B8 ;CHARACTER SET
.DFC64==0 ;64 CHARACTERS
.DFC95==1 ;95 CHARACTERS
.DFC28==2 ;128 CHARACTERS
.DFVAR==3 ;VARIABLE CHARACTER SET
DF.CLS==7B11 ;LPT CLASS
.DFSUK==0 ;UNKNOWN
.DFSBX==1 ;BA10
.DFSLC==2 ;LP100
.DFS20==3 ;LP20
DF.CSN==777777 ;SIXBIT CHARACTER SET NAME
;CARD READER CHARACTERISTICS
; DF.CLS==7B11 ;DEVICE CLASS
; .DFSUK==0 ;UNKNOWN
; .DFSBX==1 ;BA10
; .DFS20==3 ;CD20
.DFRES==1003 ;READ ERROR STATUS (SEE EXTENDED I/O ERRORS)
.DFRDS==1004 ;READ DEVICE STATUS
;DEVICE STATUS BITS TO DEVICE INDEPENDENT (BITS 0-17)
DF.OFL==1B0 ;OFFLINE
;DEVICE DEPENDENT LINEPRINTER (BITS 18-35)
DF.LLE==1B34 ;VFU LOAD ENABLED
DF.LVE==1B35 ;VFU ERROR
;DEVOP. ERROR CODES
DFACS%==-1 ;AN ADDRESS CHECK OCCURRED
DFIFC%==0 ;AN ILLEGAL FUNCTION CODE WAS SPECIFIED
DFPRV%==1 ;THE FUNCTION CODE SPECIFIED REQUIRES SPECIAL PRIVILEGES
DFIFD%==2 ;FUNCTION IS INVALID FOR SPECIFIED DEVICE
DFNLR%==3 ;THE VALUE SPECIFIED IS NOT IN THE LEGAL RANGE
DFNXD%==4 ;A NON-EXISTANT DEVICE WAS SPECIFIED
DFNDV%==5 ;THERE IS NO DAVFU (LPT ONLY)
DFNIA%==6 ;THE SPECIFIED DEVICE HAS NOT BEEN INITIALIZED
DFDOL%==7 ;THE SPECIFIED DEVICE IS OFF-LINE
DFCNS%==10 ;AN ATTEMPT WAS MADE TO READ A PAGE COUNTER THAT
; WAS NEVER SET (LPT ONLY)
DFNPC%==11 ;THE SPECIFIED DEVICE DOES NOT HAVE A PAGE COUNTER (LPT ONLY)
DFENI%==12 ;EXTENDED ERROR RECOVERY HAS NOT BEEN IMPLEMENTED
DFNVC%==13 ;A NON-VARIABLE CHARACTER SET WAS SPECIFIED
SUBTTL MISC. I/O -- DVPHY.
DVPIA%==1 ;ILLEGAL ARG LENGTH
DVPIT%==2 ;ILLEGAL DEVICE TYPE
DVPNP%==3 ;NONEXISTENT PHYSICAL DEVICE
DVPNT%==4 ;NONEXISTENT DEVICE TYPE
SUBTTL MISC. I/O -- GETLCH AND TRMOP.
;GETLCH BITS
GL.ITY==1B0 ;INVISIBLE TTY (PTY)
GL.CTY==1B1 ;SYSTEM CTY
GL.DSP==1B2 ;DISPLAY CONSOLE
GL.DSL==1B3 ;DATASET DATA LINE
GL.HDP==1B5 ;HALF-DUPLEX
GL.REM==1B6 ;REMOTE TTY
GL.RBS==1B7 ;REMOTE BATCH TTY
GL.LIN==1B11 ;LINE HAS BEEN TYPED
GL.LCM==1B13 ;LOWER CASE MODE
GL.TAB==1B14 ;TABS
GL.LCP==1B15 ;LOCAL COPY
GL.PTM==1B16 ;PAPER TAPE MODE
;TRMOP. ERRORS
TOILF%==0 ;ILLEGAL (UNIMPLEMENTED) FUNCTION
TOPRC%==1 ;PROTECTION CHECK
TORGB%==2 ;RANGE BAD
TOADB%==3 ;ADDRESS BAD
TOIMP%==4 ;LINE NOT A DATA SET LINE
TODIL%==5 ;ERROR IN DIALLER
TOTNA%==6 ;TERMINAL NOT AVAILABLE
;TRMOP. FUNCTIONS
.TOSIP==1 ;SKIP IF INPUT PRESENT
.TOSOP==2 ;SKIP IF OUTPUT PRESENT
.TOCIB==3 ;CLEAR INPUT BUFFER
.TOCOB==4 ;CLEAR OUTPUT BUFFER
.TOOUC==5 ;OUTPUT CHARACTER
.TOOIC==6 ;OUTPUT IMAGE CHARACTER
.TOOUS==7 ;OUTPUT STRING
.TOINC==10 ;INPUT CHARACTER
.TOIIC==11 ;INPUT IMAGE CHARACTER
.TODSE==12 ;DATA SET ENABLE
.TODSC==13 ;DATA SET CALL
.TODSF==14 ;DATA SET OFF
.TORSC==15 ;RESCAN
.TOELE==16 ;SET ELEMENT
.TOEAB==17 ;ENABLE AUTO BAUD DETECT
.TOISC==20 ;INPUT CHARACTER;
;WAIT IN CHARACTER MODE
.TOTYP==21 ;TYPE INTO TTY INPUT BUFFER
.TOGMS==22 ;GET TTY'S MIC STATUS BITS
TO.CHK==1B0 ;SOME BIT 1-14 IS SET
TO.CCT==1B1 ;CONTROL-C TYPED
TO.OCS==1B2 ;OPERATOR CHARACTER SEEN
TO.ECS==1B3 ;ERROR CHARACTER SEEN
TO.CPT==1B4 ;CONTROL-P TYPED
TO.CBT==1B5 ;CONTROL-B TYPED
TO.STL==1B6 ;SILENCE THIS LINE
TO.LMM==1B7 ;LINE IN MONITOR MODE
TO.LUM==1B8 ;LINE IN USER MODE
TO.C1O==1B9 ;LINE IS IN COLUMN 1 ON OUTPUT
TO.CAT==1B10 ;CONTROL-A TYPED
TO.TOA==1B11 ;TTY OUTPUT IS AVAILABLE
TO.AOC==177B21 ;ASCII OPERATOR CHARACTER
TO.AEC==177B28 ;ASCII ERROR CHARACTER
TO.MMJ==177B35 ;MIC MASTER JOB NUMBER
.TOSMS==23 ;SET TTY'S MIC STATUS BITS
.TOCLR==24 ;CLEAR STATUS
.TODSP==25 ;DISPLAY ON TTY
.TOGMR==26 ;MIC RESPONSE
.TOLOG==27 ;MIC LOG
.TODSS==30 ;CARRIER PRESENT
.TOOIP==1000 ;OUTPUT IN PROGRESS
.TOCOM==1001 ;AT COMMAND LEVEL
.TOXON==1002 ;PAPER TAPE MODE
.TOLCT==1003 ;LOWER CASE TRANSLATE TO UPPER
.TOSLV==1004 ;SLAVE
.TOTAB==1005 ;ACCEPTS TABS
.TOFRM==1006 ;ACCEPTS FF AND LF
.TOLCP==1007 ;LOCAL COPY (NO ECHO)
.TONFC==1010 ;NO FREE CARRIAGE RETURN
.TOHPS==1011 ;HORIZONTAL POSITION
.TOWID==1012 ;WIDTH
.TOSND==1013 ;SEND ALLOWED (NO GAG)
.TOHLF==1014 ;HALF DUPLEX
.TORMT==1015 ;REMOTE NON-DATA SET
.TODIS==1016 ;DISPLAY CONSOLE
.TOFLC==1017 ;FILLER CLASS
.TOTAP==1020 ;PAPER TAPE ENABLED
.TOPAG==1021 ;PAGE COMMAND GIVEN
.TOSTP==1022 ;OUTPUT STOPPED (XOFF OR PAGE LIMIT)
.TOPSZ==1023 ;PAGE SIZE (HEIGHT IN LINES)
.TOPCT==1024 ;LINE COUNT IN PAGE
.TOBLK==1025 ;SUPPRESS BLANK LINES
.TOALT==1026 ;CONVERT ALTMODE (175,176) TO ESCAPE
.TOAPL==1027 ;APL MODE
.TORSP==1030 ;RECIEVE SPEED
.TOTSP==1031 ;TRANSMIT SPEED
.TODBK==1032 ;HAS DEBREAK
.TO274==1033 ;2741
.TOTDY==1034 ;TIDY MODE
.TOACR==1035 ;AUTO CRLF
.TORTC==1036 ;^R ^T COMPATIBLE MODE (DISABLED)
.TOPBS==1037 ;PIM MODE BREAK SET (4 9-BIT BYTES)
.TODEM==1040 ;DEFERRED ECHO MODE
.TOTRM==1041 ;TERMINAL TYPE
.TOSET==1000 ;OFFSET FROM GET TO SET
SUBTTL MISC. I/O -- GETSTS AND SETSTS
IO.IMP==1B18 ;IMPROPER MODE -- SOFTWARE DETECTECTED ERROR
IO.DER==1B19 ;DEVICE ERROR
IO.DTE==1B20 ;DATA ERROR
IO.BKT==1B21 ;BLOCK TOO LARGE
IO.ERR==17B21 ;I/O ERROR BITS
IO.EOF==1B22 ;END OF FILE
IO.ACT==1B23 ;DEVICE IS ACTIVE
IO.D29==1B29 ;DEC029 MODE (CDP ONLY)
IO.SIM==1B29 ;SUPER-IMAGE MODE (CDR ONLY)
IO.WHD==1B29 ;WRITE DISK PACK HEADERS (DSK ONLY)
IO.SSD==1B28 ;SEMI-STANDARD MODE (DTA ONLY)
IO.NSD==1B29 ;NON-STANDARD MODE (DTA ONLY)
IO.SFF==1B29 ;SUPPRESS FORM FEEDS (LPT ONLY)
IO.BOT==1B24 ;BEGINNING OF TAPE (MAG TAPE ONLY)
IO.EOT==1B25 ;END OF TAPE (MAG TAPE ONLY)
IO.PAR==1B26 ;PARITY 1=EVEN 0=ODD (MAG TAPE ONLY)
IO.DEN==3B28 ;DENSITY 0-STD 1-200 2-556 3-800 (MAG TAPE ONLY)
IO.NRC==1B29 ;READ WITH NO REREAD CHECK (MAG TAPE ONLY)
IO.PTI==1B24 ;SUBJOB IN TTY INPUT WAIT (PTY ONLY)
IO.PTO==1B25 ;SUBJOB HAS TTY OUTPUT AVAILABLE (PTY ONLY)
IO.PTM==1B26 ;SUBJOB IS IN MONITOR MODE (PTY ONLY)
IO.TEC==1B27 ;TRUTH IN ECHOING MODE (TTY ONLY)
IO.SUP==1B28 ;SUPPRESS ECHOING (TTY ONLY)
IO.FCS==1B29 ;FULL CHARACTER SET (TTY ONLY) -- OBSOLETE SYMBOL
IO.LEM==1B29 ;LINE EDITOR MODE (TTY ONLY)
IO.SYN==1B30 ;SYNCRONOUS MODE I/O
IO.UWC==1B31 ;USE USER'S WORD COUNT
IO.MOD==17B35 ;DATA MODE
;I/O MODES
.IOASC==0 ;ASCII
.IOASL==1 ;ASCII LINE
.IOPIM==2 ;PACKED IMAGE MODE
.IOBYT==3 ;BYTE MODE
.IOIMG==10 ;IMAGE
.IOIBN==13 ;IMAGE BINARY
.IOBIN==14 ;BINARY
.IOIDP==15 ;IMAGE DUMP
.IODPR==16 ;DUMP RECORDS
.IODMP==17 ;DUMP
SUBTTL MISC. I/O -- OPEN AND CLOSE
;CLOSE BITS
CL.DAT==1B29 ;DELETE ACCESS TABLE FROM DISK DATA BASE
CL.RST==1B30 ;INHIBIT CREATING A NEW FILE (OR SUPERSEDING
; AN OLD ONE) ON OUTPUT CLOSE
CL.NMB==1B31 ;INHIBIT DELETING NAME BLOCK ON A
; CLOSE WITH ONLY A LOOKUP DONE
CL.ACS==1B32 ;INHIBIT UPDATING ACCESS DATE
CL.DLL==1B33 ;INHIBIT DEALLOCATION OF ALLOCATED
; BUT UNWRITTEN BLOCKS
CL.IN==1B34 ;INHIBIT CLOSING INPUT
CL.OUT==1B35 ;INHIBIT CLOSING OUTPUT
;OPEN BLOCK
.OPMOD==0 ;MODE, ETC.
.OPDEV==1 ;DEVICE NAME
.OPBUF==2 ;BUFFER HEADER ADDRESSES
;OPEN AND PHYSICAL BITS
UU.PHY==1B19 ;BIT 19 .NE. BIT 18 OF CALLI IMPLIES
; PHYSICAL DEVICE SEARCH
UU.PHS==1B0 ;SIGN BIT IN OPEN BLOCK IMPLIES PHYSICAL
; DEVICE SEARCH
UU.DEL==1B1 ;DISABLE ERROR LOGGING
UU.DER==1B2 ;DISABLE ERROR RETRY
UU.BJP==UU.DER ;BATCH JOB PTYS
UU.AIO==1B3 ;ASYNCHRONOUS I/O
UU.IBC==1B4 ;ENABLE INHIBITING OF BUFFER CLEAR
UU.SOE==1B5 ;STOP OUTPUT ON ERROR. DISALLOW OUTPUT WITH ANY
; ERROR BITS SET.
UU.RRC==1B6 ;AUTOMATIC REWRITE OF RIB ON CHANGE
UU.DEC==377B14 ;RESERVED FOR DEC
UU.CUS==7B17 ;RESERVED FOR CUSTOMER
SUBTTL MISC. I/O -- FILOP.
;ARGUMENT BLOCK FOR FILOP.
;; !=========================================================================!
;; !UP! ! FUNCTION CODE !
;; !-------------------------------------------------------------------------!
;; ! I/O MODE !
;; !-------------------------------------------------------------------------!
;; ! DEVICE NAME OR UDX !
;; !-------------------------------------------------------------------------!
;; ! OUTPUT BUFFER HEADER ! INPUT BUFFER HEADER !
;; !-------------------------------------------------------------------------!
;; ! NUMBER OF OUTPUT BUFFERS ! NUMBER OF INPUT BUFFERS !
;; !-------------------------------------------------------------------------!
;; ! PTR TO RENAME BLOCK ! PTR TO LOOKUP BLOCK !
;; !-------------------------------------------------------------------------!
;; ! LENGTH OF PATH BLOCK ! PTR TO PATH BLOCK !
;; !-------------------------------------------------------------------------!
;; ! PROJECT NUMBER ! PROGRAMMER NUMBER !
;; !=========================================================================!
;OFFSETS IN ARGUMENT BLOCK
.FOFNC==0 ;FUNCTION (AND FLAGS)
FO.PRV==1B0 ;JOB IS JACCT OR [1,2] AND WANT TO USE PRIVS
FO.ASC==1B1 ;ASSIGN AN EXTENDED CHANNEL
FO.CHN==777B17 ;CHANNEL NUMBER
.FOIOS==1 ;I/O STATUS (OPEN MODE)
.FODEV==2 ;DEVICE
.FOBRH==3 ;BUFFER RING HEADER POINTERS
.FONBF==4 ;NUMBER OF BUFFER TO BUILD
.FOLEB==5 ;PTR TO RENAME,,LOOKUP/ENTER BLOCK (SEE .RB??? SYMBOLS)
.FOPAT==6 ;PTR TO PATH BLOCK (SEE .PT??? SYMBOLS)
.FOPPN==7 ;(PRIVILEGED) IN-YOUR-BEHALF PPN
;FUNCTION CODES
.FORED==1 ;READ ONLY
.FOCRE==2 ;CREATE (NEW FILE ONLY)
.FOWRT==3 ;WRITE (CREATE OR SUPERSEDE)
.FOSAU==4 ;SINGLE ACCESS UPDATE
.FOMAU==5 ;MULTI-ACCESS UPDATE
.FOAPP==6 ;APPEND
.FOCLS==7 ;CLOSE (OPTIONAL FLAGS IN .FOIOS, SEE CL.???)
.FOURB==10 ;UPDATE RIB
.FOUSI==11 ;USETI
.FOUSO==12 ;USETO
.FORNM==13 ;RENAME
.FODLT==14 ;DELETE
.FOPRE==15 ;PREALLOCATE
.FOSIO==16 ;OPEN FOR SUPER I/O
.FOINP==17 ;INPUT
.FOOUT==20 ;OUTPUT
.FOSET==21 ;SETSTS
.FOGET==22 ;GETSTS
.FOREL==23 ;RELEASE
.FOWAT==24 ;WAIT FOR I/O TO STOP
.FOSEK==25 ;SEEK
SUBTTL MISC. I/O -- BUFFER HEADER AND BUFFER'S CONTROL BLOCK FORMATS
;BUFFER HEADER FORMATS
;BUFFER'S CONTROL BLOCK
;; !=======================================================!
;; !VR!I! !ADDRESS OF CURRENT BUFFER !
;; !-------------------------------------------------------!
;; ! BYTE POINTER TO DATA !
;; !-------------------------------------------------------!
;; ! BYTE COUNTER !
;; !=======================================================!
;; ! (MPX: ONLY) UNIVERSAL INDEX OF THIS DEVICE !
;; !=======================================================!
.BFADR==0 ;ADDRESS OF BUFFER RING
BF.VBR==1B0 ;VIRGIN BUFFER RING
BF.IBC==1B1 ;INHIBIT BUFFER CLEAR
.BFPTR==1 ;BYTE POINTER TO DATA
.BFCTR==2 ;ITEM BYTE COUNT
.BFUDX==3 ;UNIVERSAL DEVICE INDEX (MPX: ONLY)
;INDIVIDUAL BUFFER HEADER
;; !=======================================================!
;; ! ! FILE STATUS !
;; !-------------------------------------------------------!
;; !US! DATA SIZE ! NEXT BUFFER ADDRESS !
;; !-------------------------------------------------------!
;; ! (MPX:) UNIV.DEV. INDEX ! WORD COUNT !
;; !=======================================================!
;; / /
;; / /
;; ! DATA !
;; / /
;; / /
;; !=======================================================!
.BFSTS==0 ;FILE STATUS WORD
BF.STS==0,,-1 ;FILE STATUS THIS BUFFER
.BFHDR==1 ;BUFFER CONTROL THIS BUFFER
BF.IOU==1B0 ;BUFFER IN USE
BF.SIZ==377777B17 ;SIZE OF BUFFER
BF.NBA==777777 ;NEXT BUFFER ADDRESS
.BFCNT==2 ;WORD COUNT OF DATA (SOMEWHAT DEVICE DEPENDENT)
SUBTTL MISC. I/O -- MVHDR.
MVHDR%==1 ;CHANNEL NOT OPEN
SUBTTL MISC. I/O -- CNECT.,SENSE., CLRST.
;CNECT. FUNCTIONS
.CNCCN==1 ;CONNECT DEVICE
.CNCDC==2 ;CLOSE AND DISCONNECT
.CNCDR==3 ;RESET AND DISCONNECT
;CNECT. ERRORS
CNCNM%==1 ;NOT MPX: CHANNEL
CNCUD%==2 ;UNKNOWN DEVICE
CNCCM%==3 ;CAN'T MULTIPLEX THIS DEVICE
CNCNF%==4 ;NO FREE STORAGE
CNCNC%==5 ;NOT CONNECTED
CNCNO%==6 ;CHANNEL NOT OPEN
CNCII%==7 ;INVALID UNIVERSAL DEVICE INDEX
CNCUF%==10 ;UNKNOWN FUNCTION
CNCDU%==11 ;DEVICE UNAVAILABLE
CNCSD%==12 ;SPOOLED DEVICE
;SENSE. SUB-BLOCK
.SNSDV==0 ;DEVICE NAME IN SIXBIT
.SNSST==1 ;GETSTS
.SNSDS==2 ;DEVSTS
;SENSE. ERRORS
SNSBD%==1 ;BAD DEVICE
;ERLST. ERRORS
ERLBC%==1 ;BAD CHANNEL
ERLNM%==2 ;NOT MPX: CHANNEL
;CLRST. BLOCK
.CLRSX==0 ;UDX
.CLRST==1 ;SETSTS
;CLRST. ERRORS
CLRID%==1 ;ILLEGAL DEVICE
CLRNO%==2 ;NOT OWN DEVICE
SUBTTL MISC. I/O -- DEVLNM
DVLNX%==-1 ;NON-EXISTENT DEVICE
DVLIU%==-2 ;LOGICAL NAME IN USE
DVLNA%==-3 ;DEVICE NOT ASSIGNED OR OPEN
SUBTTL MISC. I/O -- DEVSIZ
DVSDM%==0 ;DUMP MODE
DVSNX%==-1 ;NON-EXISTENT DEVICE
DVSIM%==-2 ;ILLEGAL MODE
SUBTTL MISC. I/O -- MTAID.
MTINX%==-1 ;DEVICE DOES NOT EXIST OR NOT A MAG TAPE
MTINA%==-2 ;DEVICE IS NOT AVAILABLE TO THIS JOB
;REMOVED (NEED TO SPY TO GET THIS INFO)
;HARDWARE CHANNEL DATA BLOCK WORDS
;.CNBSY==0 ;BUSY IF POSITIVE
;.CNSYS==1 ;LH=ADDRESS OF NEXT BLOCK
;.CNLUE==1 ;RH=ADDRESS OF UNIT WITH LAST ERROR
;.CNICW==2 ;INITIAL C.W. ON LAST ERROR
;.CNFCW==3 ;FINAL C.W. ON LAST ERROR
;.CNCW2==4 ;COMMAND WORD-2 OF ERROR
;.CNCW1==5 ;-1
;.CNCW0==6 ;-0
;.CNDW2==7 ;DATA WORD-2
;.CNDW1==10 ;DATA WORD-1
;.CNDW0==11 ;DATA WORD-0
;.CNMPE==12 ;NO. CHANNEL MEMORY PARITY ERRORS
;.CNDPE==13 ;NO. DATA PARITY ERRORS
;.CNNXM==14 ;NO. CHANNEL NXM
;.CNCSR==15 ;LH=BITS TO REQUEST CPU SWEEP OF CORE
;.CNLDE==15 ;RH=LAST DDB ADDR
;.CNCBL==16 ;LENGTH OF DATA BLOCK
SUBTTL MISC. I/O -- SPPRM.
;SPPRM. ARGUMENT BLOCK
.SPPFN==0 ;FUNCTION WORD
.SPSFP==1 ;SET SPOOLED FILE PARAMETERS
.SPSPR==2 ;SPOOLED PARAMETER RENAME
.SPPDN==1 ;DEVICE NAME OR CHANNEL NUMBER
;
;ADDITIONAL ARGS FOR FUNCTION 1 AND 2
;
.SPPCP==2 ;NUMBER OF COPIES
.SPPFM==3 ;FORMS NAME
.SPPLM==4 ;LIMIT
.SPPSF==5 ;SPOOLING FLAGS
SP.DFR==3B2 ;DEFERED/IMMEDIATE FLAG
.SPDFD==1 ;DEFERED
.SPDFI==2 ;IMMEDIATE
SP.TYP==77 ;TYPE OF DEVICE (FUNCTION 2)
; DEVTYP FLAGS
.SPPDA==6 ;DEVICE ATTRIBUTES
SP.UPC==1B0 ;UPPER CASE (LPT)
SP.LWC==1B1 ;LOWER CASE (LPT)
SP.PHY==1B18 ;PHYSICAL UNIT GIVEN IN SP.UNI
SP.UNI==77B35 ;PHYSICAL UNIT NUMBER IF SP.PHY SET
.SPPND==7 ;NODE
.SPPAF==10 ;AFTER PARAMETER
;SPPRM. ERROR CODES
SPPAC%==-1 ;ADDRESS CHECK
SPPIA%==0 ;ILLEGAL LEN FOR ARG LIST
SPPID%==1 ;ILLEGAL DEVICE
SPPNA%==2 ;DEVICE NOT ASSIGNABLE
SPPNS%==3 ;DEVICE NOT SPOOLED
SPPNC%==4 ;NO FREE CORE FOR SPB
SPPIF%==5 ;ILLEGAL FUNCTION CODE
SUBTTL MISC. I/O -- NODE.
;FUNCTION CODES
.NDALN==1 ;ASSIGN LOGICAL NAME
.NDRNN==2 ;RETURN NODE NUMBER
.NDSSM==3 ;SPECIAL STATION CONTROL MESSAGES
.NDRBM==4 ;REQUEST BOOTSTRAP MESSAGES
.NDRCI==5 ;RETURN CONFIGURATION INFORMATION
.NDOUT==6 ;DO OUTPUT WITH END OF RECORD CONTROL
.NDIN==7 ;DO INPUT WITH END OF RECORD NOTIFICATION
;ERROR CODES
NDIAL%==1 ;ILLEGAL ARGUMENT LIST
NDINN%==2 ;ILLEGAL NODE NAME/NUMBER
NDPRV%==3 ;CALLER NOT PRIVILEGED
NDNNA%==4 ;NODE NOT AVAILABLE
NDNLC%==5 ;JOB NOT LOCKED IN CORE
NDTOE%==6 ;TIME OUT ERROR
NDRNZ%==7 ;RESERVED WORD NON-ZERO
NDNND%==10 ;IO CHANNEL NOT OPEN TO OR NOT NETWORK DEVICE
NDIOE%==11 ;IO ERROR OCCURRED, LH IS GETSTS INFO
SUBTTL MISC. I/O -- GTNTN.,GTXTN.
;GTNTN. ERRORS
NTNSD%==0 ;NO SUCH DEVICE
NTNAT%==1 ;NOT A TTY
NTTNC%==2 ;TTY NOT CONNECTED
;GTXTN. ERRORS
XTUNT%==0 ;UNKNOWN NETWORK TTY
XTNLT%==1 ;NOT LOCAL TTY
SUBTTL DISK UUOS -- DSKCHR
;DSKCHR STATUS BITS
;; !=======================================================================!
;; !R!O!H!S!A!Z! !STS!M!N!L! ! TYP ! DCN ! CNT-TYP ! CNN ! UNT ! UNN !
;; !=======================================================================!
DC.RHB==1B0 ;READ HOME BLOCK
DC.OFL==1B1 ;UNIT IS OFF-LINE
DC.HWP==1B2 ;HARDWARE WRITE PROTECT
DC.SWP==1B3 ;SOFTWARE WRITE PROTECT
DC.SAF==1B4 ;SINGLE ACCESS FILE STRUCTURE
DC.ZMT==1B5 ;ZERO MOUNT COUNT
DC.PRV==1B6 ;UNIT IN PRIVATE FILE STRUCTURE
DC.STS==3B8 ;UNIT STATUS
.DCSTP==0 ;PACK IS MOUNTED
.DCSTN==2 ;NO PACK IS MOUNTED
.DCSTD==3 ;UNIT IS DOWN
DC.MSB==1B9 ;MULTIPLE SAT BLOCKS
DC.NNA==1B10 ;NO NEW ACCESSES
DC.AWL==1B11 ;WRITE LOCKED FOR ALL JOBS
DC.ALT==1B14 ;DUAL PORTS
DC.TYP==7B17 ;TYPE OF ARGUMENT
.DCTDS==0 ;GENERIC DSK
.DCTAB==1 ;SUBSET DUE TO ABBREVIATIONS
.DCTFS==2 ;FILE STRUCTURE NAME
.DCTUF==3 ;UNIT WITHIN F/S
.DCTCN==4 ;CONTROLLER CLASS NAME
.DCTCC==5 ;CONTROLLER CLASS
.DCTPU==6 ;PHYSICAL UNIT
DC.DCN==7B20 ;DATA CHANNEL NUMBER
DC.CNT==77B26 ;CONTROLLER TYPE
.DCCFH==1 ;RC-10
.DCCDP==2 ;RP-10
.DCCFS==4 ;RH-10 FOR FH DISK (RS04)
.DCCRP==5 ;RH10/RH20/RH11 FOR MH DISK (RP04, ETC.)
DC.CNN==7B29 ;CONTROLLER NUMBER
DC.UNT==7B32 ;UNIT TYPE
.DCUFD==0 ;RD10 (DC.CNT=1)
.DCUS4==0 ;RS04 (DC.CNT=4)
.DCUR4==0 ;RP04 (DC.CNT=5)
.DCUFM==1 ;RM10-B (DC.CNT=1)
.DCUD2==1 ;RP02 (DC.CNT=2)
.DCUD3==2 ;RP03 (DC.CNT=2)
.DCUR6==1 ;RP06 (DC.CNT=5)
.DCUR3==2 ;RM03 (DC.CNT=5)
.DCUR7==3 ;RP07 (DC.CNT=5)
DC.UNN==7B35 ;PHYSICAL UNIT NUMBER
;DSKCHR LOCATIONS
.DCNAM==0 ;ARGUMENT NAME
.DCUFT==1 ;LOGGED IN BLOCKS REMAINING
DC.NPA==1B0 ;NO PREVIOUS ACCESS
.DCFCT==2 ;PHYSICAL FCFS BLOCKS REMAINING
.DCUNT==3 ;PHYSICAL UNIT BLOCKS REMAINING
.DCSNM==4 ;STRUCTURE NAME
.DCUCH==5 ;CHARACTERISTIC SIZES
DC.UCC==777B8 ;BLOCKS/CLUSTER
DC.UCT==777B17 ;BLOCKS/TRACK
DC.UCY==777777 ;BLOCKS/CYLINDER
.DCUSZ==6 ;UNIT SIZE IN BLOCKS
.DCSMT==7 ;STRUCTURE MOUNT COUNT
.DCWPS==10 ;WORDS/SAT
.DCSPU==11 ;SATS/UNIT
.DCK4S==12 ;K FOR SWAPPING
.DCSAJ==13 ;SINGLE ACCESS JOB
.DCULN==14 ;UNIT LOGICAL NAME
.DCUPN==15 ;UNIT PHYSICAL NAME
.DCUID==16 ;UNIT ID
.DCUFS==17 ;UNIT FIRST BLOCK FOR SWAPPING
.DCBUM==20 ;BLOCKS PER UNIT INCL. MAINT CYLS.
.DCCYL==21 ;CURRENT CYLINDER
.DCBUC==22 ;BLOCKS PER UNIT IN PDP-11 COMPAT. MODE
.DCLPQ==23 ;LENGTH OF POSITION WAIT QUEUE
.DCLTQ==24 ;LENGTH OF TRANSFER WAIT QUEUE
.DCALT==25 ;UNIT NAME FOR ALTERNATE PORT
.DCOWN==26 ;OWNER PPN OF STRUCTURE
SUBTTL DISK UUOS -- CHKACC
.ACCPR==0 ;CHANGE PROTECTION
.ACREN==1 ;RENAME
.ACWRI==2 ;WRITE
.ACUPD==3 ;UPDATE
.ACAPP==4 ;APPEND
.ACRED==5 ;READ
.ACEXO==6 ;EXECUTE
.ACCRE==7 ;CREATE
.ACSRC==10 ;SEARCH DIRECTORY
SUBTTL DISK UUOS -- DISK.
.DUPRI==0 ;SET PRIORITY
.DUSEM==1 ;SET PDP-11 (22-SECTOR) MODE ON RP04
.DUSTM==2 ;SET PDP-10 (20-SECTOR) MODE ON RP04
.DUUNL==3 ;UNLOAD RP04
.DUOLS==4 ;CHAN./CONTROLLER WILL BE OFF LINE SOON
.DUOLN==5 ;CHAN./CONTROLLER IS OFF LINE NOW
.DUONL==6 ;CHAN./CONTROLLER IS BACK ON LINE
.DUUFD==7 ;CALL UFD COMPRESSOR
.DUSWP==10 ;REMOVE A SWAPPING UNIT
;DISK. ERRORS
;.DUPRI FUNCTION - ERROR CODES
DUPIP%==1 ;PRIORITY HIGHER THAN PRIVILEGES ALLOWED
DUPNO%==2 ;CHANNEL NOT OPEN
DUPIA%==3 ;ILLEGAL ARGUMENT
;.DUSEM AND .DUSTM FUNCTION - ERROR CODES
DUSID%==1 ;ILLEGAL DEVICE
DUSCM%==2 ;DEVICE DOES NOT HAVE COMPATIBILITY MODE
;.DUUNL FUNCTION - ERROR CODES
DUUIU%==1 ;ILLEGAL UNIT NAME
DUUNI%==2 ;NOT IDLE OR NOT A FILE STRUCTURE
DUUNU%==3 ;DEVICE NOT UNLOADABLE
;.DUOLS, .DUOLN, .DUONL, .DUSWP FUNCTION - ERROR CODES
DUOIP%==1 ;CHAN./CONTROLLER OFF-LINE ALREADY IN PROGRESS
DUOSK%==2 ;NO SUCH CONTROLLER
DUOSS%==3 ;NOT ENOUGH SWAPPING SPACE IF CONTROLLER OFF-LINE
DUOIS%==4 ;UNIT IN A FILE STRUCTURE CANNOT BE PUT OFF-LINE
DUOES%==5 ;NOT ENOUGH SPACE FOR IOWDS
;GENERAL DISK. UUO ERRORS
DUILF%==-1 ;ILLEGAL FUNCTION
DUINP%==-2 ;NOT PRIVILEGED
SUBTTL DISK UUOS -- JOBSTR
.DFJNM==0 ;STR NAME
.DFJDR==1 ;DIRECTORY
.DFJST==2 ;STATUS
DF.SWL==1B0 ;WRITE LOCKED
DF.SNC==1B1 ;NO CREATE
.DFJBL==3 ;LENGTH OF THIS BLOCK (FOR USE WITH FUNCTION WHICH
;TAKES MULTIPLE BLOCKS - SEE STRUUO)
SUBTTL DISK UUOS -- GOBSTR
.DFGJN==0 ;JOB NUMBER
.DFGPP==1 ;JOB P,PN
.DFGNM==2 ;STR NAME
.DFGDR==3 ;DIRECTORY
.DFGST==4 ;STATUS (SAME AS .DFJST)
;GOBSTR ERRORS
DFGIF%==3 ;ILLEGAL STR
DFGPP%==6 ;INCORRECT PPN
DFGNP%==10 ;NOT PRIV.
DFGLN%==12 ;INCORRECT LENGTH
SUBTTL DISK UUOS -- SUSET.
SU.SOT==1B1 ;OUTPUT
SU.SMN==1B2 ;MAINTENANCE CYLINDER
SU.SCH==777B12 ;CHANNEL
SU.SBL==37,,777777 ;BLOCK NUMBER
;SUSET. ERRORS
SUSNP%==-1 ;NOT PRIVILEGED
SUBTTL DISK UUOS -- PATH.
.PTFCN==0 ;JOB #,,FUNCTION OR ARGUMENT CHANNEL OR DEVICE
PT.JBN==777777B17 ;JOB NUMBER
PT.FCN==777777B35 ;FUNCTION
.PTFRD==-1 ;READ DEFAULT
.PTFSD==-2 ;SET DEFAULT PATH
.PTFSL==-3 ;SET LIB, NEW, SYS
.PTFRL==-4 ;READ LIB, NEW, SYS
.PTFSN==-5 ;SET LOGICAL NAME
.PTFRN==-6 ;READ LOGICAL NAME
.PTSTR==0 ;ANSWER HAS STR NAME
.PTSWT==1 ;SWITCHES AND FLAGS
PT.DLN==1B26 ;DEVICE OR CHANNEL ARGUMENT WAS LOGICAL NAME
PT.SLT==7B29 ;TYPE OF SEARCH LIST
.PTSLN==0 ;NO SEARCH LIST
.PTSLJ==1 ;JOB
.PTSLA==2 ;ALL
.PTSLS==3 ;SYS
PT.IPP==1B30 ;IMPLIED PPN (FORCED)
PT.DTL==1B30 ;DON'T ALTER THE STATUS OF /LIB ON .PTFSL
PT.LIB==1B31 ;/LIB
PT.NEW==1B32 ;/NEW
PT.SYS==1B33 ;/SYS
PT.SCN==3B35 ;SCAN SWITCH
.PTSCN==1 ;NO (OFF)
.PTSCY==2 ;YES (ON)
PT.SNW==1B34 ;/NEW ON .PTFSL/.PTFRL
PT.SSY==1B35 ;/SYS ON .PTFSL/.PTFRL
.PTPPN==2 ;PPN (UFD) OF PATH
.PTSFD==3 ;START OF LIST OF SFD'S
.PTMAX==11 ;LAST POSSIBLE 0 AFTER LAST SFD +1 (IE, LENGTH OF PATH BLOCK)
;THE LOGICAL NAME PATH. BLOCKS (.PTFSN/.PTFRN) HAVE A DIFFERENT
; FORMAT AS FOLLOWS:
;.PTFCN==.PTFCN ;FUNCTION WORD STAYS THE SAME
.PTLNF==1 ;LOGICAL NAME FLAGS
PT.SEA==1B0 ;/SEARCH
PT.UDF==1B1 ;"UNDEFINE" THIS LOGICAL NAME
PT.RCN==1B2 ;RETURN INFO ABOUT CURRENT NAME ON .PTFRN
.PTLNM==2 ;SIXBIT LOGICAL NAME TO DEFINE OR READ
.PTLSB==3 ;THE REST OF THE BLOCK CONSISTS OF ONE OR MORE
; GROUPS OF THE FOLLOWING FORMAT. NOTE THAT THE
; FOLLOWING SYMBOLS ARE RELATIVE TO THE START OF
; THE GROUP, AND THAT THIS SYMBOL GIVES THE OFFSET
; TO THE START OF THE FIRST GROUP
.PTLSL==0 ;SIXBIT SEARCH LIST (DSKB, ALL, DSK, ETC.)
.PTLPP==1 ;PPN
.PTLSF==2 ;START OF SFD LIST
.PTLEL==7 ;LAST POSSIBLE ZERO WORD TO TERMINATE SFD LIST
.PTLZT==10 ;LAST POSSIBLE ZERO WORD TO TERMINATE PATH. BLOCK
;(RELATIVE TO THIS GROUP)
.PTLNN==77 ;MAXIMUM NUMBER OF LOGICAL NAMES THAT MAY BE DEFINED
; AT ONE TIME
.PTLLB==100 ;MAXIMUM NUMBER OF WORDS IN A LOGICAL NAME PATH. BLOCK
;PATH. ERRORS FOR FUNCTIONS .PTFSN AND .PTFRN
PTTME%==1 ;TOO MANY ENTRIES IN PATH. BLOCK
PTTMN%==2 ;TOO MANY LOGICAL NAMES DEFINED
PTNSN%==3 ;ATTEMPT TO "UNDEFINE" A NON-EXISTENT NAME
PTNFS%==4 ;NO PER-PROCESS MONITOR-FREE-CORE
PTANE%==5 ;ASSIGNED NAME ALREADY EXISTS
SUBTTL DISK UUOS -- STRUUO
.FSFCN==0 ;STRUUO FUNCTION WORD - ALWAYS FIRST WORD OF FOLLOWING FUNCTIONS
.FSSRC==0 ;UPDATE THIS SEARCH LIST (SEE .DFJXX)
.FSCSO==1 ;OFFSET TO FIRST BLOCK OF STR NAM,DIR,STS (SEE .DFJXX)
.FSDSL==1 ;UPDATE SYSTEM/JOB SEARCH LIST
.FSDJN==1 ;JOB# (0=SYS)
.FSDPP==2 ;PPN
.FSDFL==3 ;FLAGS
DF.SRM==1B35 ;REMOVE FROM S/L COMPLETELY
.FSDSO==4 ;OFFSET TO FIRST BLOCK OR STR NAM,DIR,STS (SEE .DFJXX)
.FSDEF==2 ;DEFINE NEW F/S
.FSNST==1 ;POINTER TO STR PARAMS
.FSNUN==2 ;FIRST POINTER TO UNIT PARAMS
;STR PARAM BLOCK
.FSSNM==0 ;NAME OF STRUCTURE
.FSSNU==1 ;NUMBER OF UNITS
.FSSHL==2 ;HIGHEST LOGICAL BLOCK
.FSSSZ==3 ;SIZE OF STR
.FSSRQ==4 ;RESERVED QUOTA
.FSSRF==5 ;RESERVED FREE
.FSSTL==6 ;TALLY OF FCFS FREE
.FSSOD==7 ;BLOCKS FOR OVERDRAW
.FSSMP==10 ;MFD FIRST RETRIEVAL POINTER
.FSSML==11 ;-1 IF .FSSMP IS ONLY POINTER
.FSSUN==12 ;MFD UNIT
.FSSTR==13 ;NUMBER OF RETRIES ON ERROR
.FSSBU==14 ;LARGEST BLOCK ON UNIT
.FSSBC==15 ;BLOCKS PER SUPER-CLUSTER
.FSSSU==16 ;SUPER-CLUSTERS PER UNIT
.FSSIG==17 ;(IGNORED)
.FSSCC==20 ;BYTE POINTER TO CLUSTER COUNT
.FSSCK==21 ;BYTE POINTER TO CHECKSUM
.FSSCA==22 ;BYTE POINTER TO CLUSTER ADDRESS
.FSPVT==23 ;-1 IF PRIVATE FILE STR
.FSPPN==24 ;PPN OF OWNER (EACH HALF -1 IF WILD)
;UNIT DATA BLOCK
.FSUNM==0 ;UNIT NAME
.FSUID==1 ;PACK ID
.FSULN==2 ;LOGICAL NAME
.FSULU==3 ;NUMBER WITHIN STR
.FSUDS==4 ;STATUS BITS
FS.UWL==1B0 ;SOFTWARE WRITE-LOCK
FS.USA==1B1 ;SINGLE ACCESS
.FSUGP==5 ;NUMBER BLOCKS TO ALLOCATE
.FSUTL==6 ;FREE BLOCK TALLY
.FSUBC==7 ;BLOCKS PER CLUSTER
.FSUCS==10 ;CLUSTERS PER SAT
.FSUWS==11 ;WORDS PER SAT
.FSUSC==12 ;SATS IN CORE
.FSUSU==13 ;SATS PER UNIT
.FSUSP==14 ;POINTER TO SPT TABLE
;(CONT.) OF STRUUO FUNCTIONS
.FSRDF==3 ;CHANGE F/S STATUS
.FSRJN==1 ;JOB NUMBER
.FSRPP==2 ;JOB P,PN
.FSRNM==3 ;STR NAME
.FSRST==4 ;NEW STATUS
FS.RWL==1B0 ;WRITE LOCK ALL USERS
FS.RSA==1B1 ;SINGLE ACCESS
.FSLOK==4 ;LOCK F/S
.FSLNM==1 ;STR NAME
.FSREM==5 ;REMOVE F/S
.FSMNM==1 ;STR NAME
.FSULK==6 ;TEST/SET UFD INTERLOCK
.FSINM==1 ;STR NAME
.FSIPP==2 ;PPN
.FSUCL==7 ;CLEAR UFD INTERLOCK
.FSGNM==1 ;STR NAME
.FSGPP==2 ;PPN
.FSETS==10 ;SIMULATE ERROR
.FSEUN==1 ;UNIT
.FSEGT==2 ;NUMBER OF TRANSFERS BEFORE ERROR
.FSEDB==3 ;NUMBER OF DATAI'S TO RUIN
.FSEDO==4 ;OR TO DATAI
.FSEDA==5 ;ANDCAM TO DATAI
.FSECB==6 ;NUMBER OF CONI'S TO RUIN
.FSECO==7 ;OR TO CONI
.FSECA==10 ;ANDCAM TO CONI
.FSMNW==11 ;MODIFY NOCREATE AND WRITE LOCK
.FSMFS==1 ;FILE STRUCTURE
.FSMFL==2 ;FLAGS
FS.MWL==1B0 ;WRITE LOCK
FS.MNC==1B1 ;NO CREATE
;STRUUO ERRORS
FSILF%==0 ;ILLEGAL FUNCTION CODE
FSSNF%==1 ;STR NOT FOUND
FSSSA%==2 ;STR IS SINGLE ACCESS
FSILE%==3 ;ILLEGAL ENTRY IN LIST
FSTME%==4 ;TOO MANY ENTRIES IN S/L
FSUNA%==5 ;UNIT NOT AVAILABLE
FSPPN%==6 ;PPN DOES NOT MATCH
FSMCN%==7 ;MOUNT COUNT GREATER THAN ONE
FSNPV%==10 ;NOT PRIVILEGED USER
FSFSA%==11 ;STRUCTURE ALREADY EXISTS
FSILL%==12 ;ILLEGAL ARGUMENT LIST LENGTH
FSUNC%==13 ;UNABLE TO COMPLETE UUO
FSNFS%==14 ;SYSTEM FULL OF STRS
FSNCS%==15 ;INSUFFICIENT FREE CORE FOR DATA BLOCKS
FSUNF%==16 ;ILLEGAL UNIT
FSRSL%==17 ;STR REPEATED IN S/L
SUBTTL LOOKUP/ENTER/RENAME
;DEFINE RIB LOCATIONS (IE, INDEX IN EXTENDED LOOKUP/ENTER BLOCK)
.RBCNT==0 ;COUNT OF ARGS FOLLOWING
RB.NSE==1B18 ;(ENTER ONLY) NON-SUPERSEDING ENTER
.RBPPN==1 ;DIRECTORY NAME OR POINTER
.RBNAM==2 ;FILENAME
.RBEXT==3 ;EXTENSION, ACCESS DATE, ERROR CODE
RB.CRX==7B20 ;EXTENSION OF RB.CRD
RB.ACD==77777 ;ACCESS DATE
.RBPRV==4 ;PRIVILEGE, MODE, CREATION TIME AND DATE
RB.PRV==777B8 ;PRIVILEGE
RB.MOD==17B12 ;MODE
RB.CRT==3777B23 ;CREATION TIME
RB.CRD==7777B35 ;CREATION DATE
.RBSIZ==5 ;LENGTH
.RBVER==6 ;VERSION
.RBSPL==7 ;SPOOLED FILE NAME
.RBEST==10 ;ESTIMATED LENGTH
.RBALC==11 ;ALLOCATION
.RBPOS==12 ;POSITION TO ALLOCATE
.RBFT1==13 ;FUTURE DEC ARGUMENT
.RBUFW==13 ;UNITS FILE WAS WRITTEN ON
RB.UNI==377B17 ;UNIT
RB.CON==7B20 ;CONTROLLER
RB.APR==77777B35;APR SERIAL NUMBER
.RBNCA==14 ;NON-PRIV. CUSTOMER ARG
.RBMTA==15 ;TAPE LABEL
.RBDEV==16 ;LOGICAL UNIT NAME
.RBSTS==17 ;FILE STATUS BITS
RP.LOG==1B0 ;LOGGED IN
RP.UCE==1B9 ;CHECKSUM ERROR
RP.UWE==1B10 ;WRITE ERROR
RP.URE==1B11 ;READ ERROR
RP.UER==7B11 ;ALL UFD ERRORS
RP.DIR==1B18 ;DIRECTORY
RP.NDL==1B19 ;NO DELETES
RP.NFS==1B21 ;DON'T FAILSAFE
RP.ABC==1B22 ;ALWAYS BAD CHECKSUM
RP.CBS==1B23 ;RP.CMP SET ON ENTRY TO UFD COMPRESSOR
RP.ABU==1B24 ;ALWAYS BACK UP
RP.NQC==1B25 ;NON-QUOTA CHECKED FILE
RP.CMP==1B26 ;UFD COMPRESSING
RP.FCE==1B27 ;CHECKSUM ERROR
RP.FWE==1B28 ;WRITE ERROR
RP.FRE==1B29 ;READ ERROR
RP.PAL==1B31 ;THIS IS A PREALLOCATED FILE
RP.BFA==1B32 ;BAD BY FAILSA RESTORE
RP.CRH==1B33 ;CLOSED AFTER CRASH
RP.BDA==1B35 ;BAD BY DAMAGE ASSESSMENT
RP.ERR==715 ;ALL FILE ERRORS
.RBELB==20 ;ERROR LOGICAL BLOCK
.RBEUN==21 ;ERROR UNIT AND LENGTH
.RBQTF==22 ;FCFS LOGGED-IN QUOTA (UFD'S ONLY)
.RBQTO==23 ;LOGGED-OUT QUOTA (UFD'S ONLY)
.RBQTR==24 ;RESERVED QUOTA (UFD'S ONLY)
.RBUSD==25 ;NUMBER OF BLOCKS ALLOCATED TO FILES IN THIS UFD (UFD'S ONLY)
.RBAUT==26 ;AUTHOR
.RBNXT==27 ;CONTINUED STR
.RBPRD==30 ;PREDECESSOR STR
.RBPCA==31 ;PRIV. CUSTOMER ARG
.RBUFD==32 ;POINTER BACK TO UFD
.RBFLR==33 ;RELATIVE BLOCK IN FILE COVERED BY THIS RIB
.RBXRA==34 ;POINTER TO NEXT RIB IN CHAIN
.RBTIM==35 ;CREATION DATE,,TIME IN INTERNAL SYSTEM FORMAT
.RBLAD==36 ;LAST ACCOUNTING DATE (UFD)
.RBDED==37 ;DIRECTORY EXPIRATION DATE (UFD)
.RBACT==40 ;ACCOUNT STRING WORD 1
.RBAC2==41 ;ACCOUNT STRING WORD 2
.RBAC3==42 ;ACCOUNT STRING WORD 3
.RBAC4==43 ;ACCOUNT STRING WORD 4
.RBAC5==44 ;ACCOUNT STRING WORD 5
.RBAC6==45 ;ACCOUNT STRING WORD 6
.RBAC7==46 ;ACCOUNT STRING WORD 7
.RBAC8==47 ;ACCOUNT STRING WORD 8
;LOOKUP/ENTER/RENAME/GETSEG/RUN ERROR CODES
ERFNF%==0 ;FILE NOT FOUND
ERIPP%==1 ;INCORRECT PPN
ERPRT%==2 ;PROTECTION FAILURE
ERFBM%==3 ;FILE BEING MODIFIED
ERAEF%==4 ;ALREADY EXISTING FILE NAME
ERISU%==5 ;ILLEGAL SEQUENCE OF UUOS
ERTRN%==6 ;TRANSMISSION ERROR
ERNSF%==7 ;NOT A SAVE FILE
ERNEC%==10 ;NOT ENOUGH CORE
ERDNA%==11 ;DEVICE NOT AVAILABLE
ERNSD%==12 ;NO SUCH DEVICE
ERILU%==13 ;ILLEGAL MONITOR CALL FOR GETSEG A FILOP
ERNRM%==14 ;NO ROOM
ERWLK%==15 ;WRITE-LOCKED
ERNET%==16 ;NOT ENOUGH TABLE SPACE
ERPOA%==17 ;PATIAL ALLOCATION
ERBNF%==20 ;BLOCK NOT FREE
ERCSD%==21 ;CAN'T SUPERSEDE A DIRECTORY
ERDNE%==22 ;CAN'T DELETE NON-EMPTY DIRECTORY
ERSNF%==23 ;SFD NOT FOUND
ERSLE%==24 ;SEARCH LIST EMPTY
ERLVL%==25 ;SFD NEST LEVEL TOO DEEP
ERNCE%==26 ;NO-CREATE FOR ALL S/L
ERSNS%==27 ;SEGMENT NOT ON SWAP SPACE
ERFCU%==30 ;CAN'T UPDATE FILE
ERLOH%==31 ;LOW SEG OVERLAPS HI SEG (GETSEG)
ERNLI%==32 ;NOT LOGGED IN (RUN)
ERENQ%==33 ;FILE STILL HAS OUTSTANDING LOCKS SET
ERBED%==34 ;BAD .EXE FILE DIRECTORY (GETSEG,RUN)
ERBEE%==35 ;BAD EXTENSION FOR .EXE FILE(GETSEG,RUN)
ERDTB%==36 ;.EXE DIRECTORY TOO BIG(GETSEG,RUN)
ERENC%==37 ;TSK - EXCEEDED NETWORK CAPACITY
ERTNA%==40 ;TSK - TASK NOT AVAILABLE
ERUNN%==41 ;TSK - UNDEFINED NETWORK NODE
;FILE PROTECTION CODES
.PTCPR==0 ;CHANGE PROTECTION
.PTREN==1 ;RENAME
.PTWRI==2 ;WRITE
.PTUPD==3 ;UPDATE
.PTAPP==4 ;APPEND
.PTRED==5 ;READ
.PTEXO==6 ;EXECUTE
.PTNON==7 ;NO-ACCESS
;DIRECTORY PROTECTION CODES
PT.LOK==4 ;ALLOW LOOKUPS
PT.CRE==2 ;ALLOW CREATES
PT.SRC==1 ;SEARCH DIRECTORY
SUBTTL EXTENDED I/O ERRORS
;CODES RETURNED BY DEVOP. FUNCTION 3
IOPLE%==1 ;PAGE LIMIT EXCEEDED (LPT)
IOVFE%==2 ;VFU FORMAT ERROR (LPT)
IOLTE%==3 ;LABEL TYPE ERROR (MTA)
IOHLE%==4 ;HEADER LABEL ERROR (MTA)
IOTLE%==5 ;TRAILER LABEL ERROR (MTA)
IOVLE%==6 ;VOLUME LABEL ERROR (MTA)
IODER%==7 ;HARD DEVICE ERROR
IOPAR%==10 ;PARITY ERROR
IOWLE%==11 ;WRITE LOCK ERROR
IOIPO%==12 ;ILLEGAL POSITIONING OPERATION (MTA)
IOBOT%==13 ;BEGINNING OF TAPE (MTA)
IOIOP%==14 ;ILLEGAL OPERATION (MTA)
IODEC%==15 ;RESERVED FOR TAPE LABELING
IODE1%==16 ;RESERVED FOR TAPE LABELING
IODE2%==17 ;RESERVED FOR TAPE LABELING
IONND%==20 ;NETWORK NODE DOWN
IOUNC%==21 ;UNDEFINED CHARACTER INTERRUPT (LP20)
IORPE%==22 ;RAM PARITY ERROR (LP20)
SUBTTL EXEC DATA VECTOR
;BLOCK POINTED TO BY .JBEDV
;IN UUOSYM FOR LIBRARY REL FILES LOADED WITH THE MONITOR
.EDCNT==0 ;'EDV',,COUNT (INCLUDES THIS WORD)
.EDHSB==1 ;POINTER TO HIDDEN SYMBOL MAP SWITCHING BLOCK
.EDSYM==2 ;.JBSYM IN SYMBOL SPACE
.EDUSY==3 ;.JBUSY IN SYMBOL SPACE
.EDHSF==4 ;POINTER TO SYMBOLS HIDDEN FLAG WORD
.XCREF
%%UUOS==<VRSN. (UUO)>
PURGE UUOWHO,UUOVER,UUOMIN,UUOEDT,%%MACT,CALLI,MTAPE,TTCALL
IFDEF %..C,< %%C==%%UUOS >
IF1,< ASUPPRESS>
IFNDEF %..C,<PURGE VRSN.
END> ;END UNIVERSAL OF UUOSYM
IFDEF %.C,<IFLE %.C+2,<
IF2,<PURGE %.C,%..C>
END>> ;BIND OFF TO GET CLEAN LISTING
.CREF
LIST