; ; COPYRIGHT (C) DATA GENERAL CORPORATION 1977,1978,1979,1980,1982,1983, ; 1984,1985. ; ALL RIGHTS RESERVED. ; LICENSED MATERIAL-PROPERTY OF DATA GENERAL CORPORATION. ; THIS SOFTWARE IS MADE AVAILABLE SOLELY PURSUANT TO THE TERMS OF A ; DGC LICENSE AGREEMENT WHICH GOVERNS ITS USE. ;==================================== ; RDOS REVISION 07.50 USER PARAMETERS ;==================================== .TITL PARU ; ; USER FILE TABLE (UFT) TEMPLATE ; ; USER FILE DEFINITION (UFD) OF UFT .DUSR UFTFN=0 ;FILE NAME .DUSR UFTEX=5 ;EXTENSION .DUSR UFTAT=6 ;FILE ATTRIBUTES .DUSR UFTLK=7 ;LINK ACCESS ATTRIBUTES .DUSR UFLAD=7 ;LINK ALTERNATE DIRECTORY .DUSR UFTBK=10 ;NUMBER OF LAST BLOCK IN FILE .DUSR UFTBC=11 ;NUMBER OF BYTES IN LAST BLOCK .DUSR UFTAD=12 ;DEVICE ADDRESS OF FIRST BLOCK (0 UNASSIGNED) .DUSR UFTAC=13 ;YEAR-DAY LAST ACCESSED .DUSR UFTYD=14 ;YEAR-DAY CREATED .DUSR UFLAN=14 ;LINK ALIAS NAME .DUSR UFTHM=15 ;HOUR-MINUTE CREATED .DUSR UFTP1=16 ;UFD TEMPORARY .DUSR UFTP2=17 ;WORDS/BLOCK .STAT.RSTA.CHST .DUSR UFTUC=20 ;USER COUNT .DUSR UFTDL=21 ;DCT LINK (RH) HIGH-ORDER DEVICE ADDRESS (LH) ; DEVICE CONTROL BLOCK (DCB) OF UFT .DUSR UFTDC=22 ;DCT ADDRESS .DUSR UFTUN=23 ;UNIT NUMBER .DUSR UFCA1=24 ;CURRENT BLOCK ADDRESS (HIGH ORDER) .DUSR UFTCA=25 ;CURRENT BLOCK ADDRESS (LOW ORDER) .DUSR UFTCB=26 ;CURRENT BLOCK NUMBER .DUSR UFTST=27 ;FILE STATUS .DUSR UFEA1=30 ;ENTRY'S BLOCK ADDRESS (HIGH ORDER) .DUSR UFTEA=31 ;ENTRY'S BLOCK ADDRESS (LOW ORDER) .DUSR UFNA1=32 ;NEXT BLOCK ADDRESS (HIGH ORDER) .DUSR UFTNA=33 ;NEXT BLOCK ADDRESS (LOW ORDER) .DUSR UFLA1=34 ;LAST BLOCK ADDRESS (HIGH ORDER) .DUSR UFTLA=35 ;LAST BLOCK ADDRESS (LOW ORDER) .DUSR UFTDR=36 ;SYS.DR DCB ADDRESS .DUSR UFFA1=37 ;FIRST ADDRESS (HIGH ORDER) .DUSR UFTFA=40 ;FIRST ADDRESS (LOW ORDER) ; DCB EXTENSION .DUSR UFTBN=41 ;CURRENT FILE BLOCK NUMBER .DUSR UFTBP=42 ;CURRENT FILE BLOCK BYTE POINTER .DUSR UFTCH=43 ;DEVICE CHARACTERISTICS .DUSR UFTCN=44 ;ACTIVE REQ COUNT ;B0 INDICATES Q, 0=DSQ1,1=DSQ2 .DUSR UFTEL=UFTCN-UFTFN+1 ;UFT ENTRY LENGTH .DUSR UFDEL=UFTDL-UFTFN+1 ;UFD ENTRY LENGTH .DUSR UDBAT=UFTAT-UFTDC ;NEGATIVE DISP. TO ATTRIBUTES .DUSR UDDL=UFTDL-UFTDC ;NEGATIVE DISP. TO FIRST ADDRESS (HIGH ORDER) .DUSR UDBAD=UFTAD-UFTDC ;NEGATIVE DISP. TO FIRST ADDRESS (LOW ORDER) .DUSR UDBBK=UFTBK-UFTDC ;NEGATIVE DISP. TO LAST BLOCK .DUSR UDBBN=UFTBN-UFTDC ;POSITIVE DISP. TO CURRENT BLOCK ; FILE ATTRIBUTES (IN UFTAT) .DUSR ATRP =1B0 ;READ PROTECTED .DUSR ATCHA=1B1 ;CHANGE ATTRIBUTE PROTECTED .DUSR ATSAV=1B2 ;SAVED FILE .DUSR ATNRS=1B7 ;CANNOT BE A RESOLUTION ENTRY .DUSR ATUS1=1B9 ;USER ATTRIBUTE # 1 .DUSR ATUS2=1B10 ;USER ATTRIBUTE # 2 .DUSR ATPER=1B14 ;PERMANENT FILE .DUSR ATWP =1B15 ;WRITE PROTECTED ; FILE CHARACTERISTICS (IN UFTAT) .DUSR ATLNK=1B3 ;LINK ENTRY .DUSR ATPAR=1B4 ;PARTITION ENTRY .DUSR ATDIR=1B5 ;DIRECTORY ENTRY .DUSR ATRES=1B6 ;LINK RESOLUTION (TEMPORARY) .DUSR ATCON=1B12 ;CONTIGUOUS FILE .DUSR ATRAN=1B13 ;RANDOM FILE .DUSR ATMSK=377B7 ; MASK TO GET HIGH ORDER DISK ADDRESS FROM ; LEFT BYTE OF OFFSET UFTDL ; ; DCT PARAMETERS. ; .DUSR DCTBS=0 ;1B0=1 => DEVICE USES DATA CHANNEL .DUSR DCTMS=1 ;MASK OF LOWER PRIORITY DEVICES .DUSR DCTIS=2 ;ADDRESS OF INTERRUPT SERVICE ROUTINE ; DEVICE CHARACTERISTICS (IN UFTCH) .DUSR DC100= 1B15 ; CONSOLE INPUT DEVICE IS D100 OR D200 ; TERMINAL (SET BY INIT1) .DUSR DCSTB= 1B15 ; SUPPRESS TRAILING BLANKS $CDR ONLY .DUSR DCCPO= 1B15 ; DEVICE REQUIRING LEADER/TRAILER .DUSR DCSTO= 1B15 ; USER SPECIFIED TIME OUT CONSTANT (MCA) .DUSR DCCGN= 1B14 ; GRAPHICAL OUTPUT DEVICE WITHOUT TABBING ; HARDWARE .DUSR DCIDI= 1B13 ; INPUT DEVICE REQUIRING OPERATOR INTERVENTION .DUSR DCLCD= 1B12 ; INPUT DEVICE IS 6053-TYPE TERMINAL .DUSR DCCNF= 1B12 ; OUTPUT DEVICE WITHOUT FORM FEED HARDWARE .DUSR DCTO= 1B11 ; TELETYPE OUTPUT DEVICE .DUSR DCKEY= 1B10 ; KEYBOARD DEVICE .DUSR DCNAF= 1B09 ; OUTPUT DEVICE REQUIRING NULLS AFTER FORM FEEDS .DUSR DCRAT= 1B08 ; RUBOUTS AFTER TABS REQUIRED .DUSR DCPCK= 1B07 ; DEVICE REQUIRING PARITY CHECK .DUSR DCLAC= 1B06 ; REQUIRES LINE FEEDS AFTER CARRIAGE RTN .DUSR DCSPO= 1B05 ; SPOOLABLE DEVICE .DUSR DCFWD= 1B04 ; FULL WORD DEVICE (ANYTHING GREATER THAN .DUSR MSK37=377 .DUSR MSK17=177 .DUSR DCLT8= 1B04 ; LESS THAN 8 BITS / CHARACTER (BYTE DEVICES). .DUSR DCFFO= 1B03 ; FORM FEEDS ON OPEN .DUSR DCLTU= 1B02 ; CHANGE LOWER CASE ASCII TO UPPER .DUSR DCC80= 1B01 ; READ 80 COLUMS .DUSR DCDIO= 1B00 ; SUSPEND PROTOCOL ON TRANSMIT (MCA) .DUSR DCBDK= 1B00 ; DISK CHARACTERISTIC (SET NON-PARAMETRICALLY) ; SET MEANS ITS 3330 .DUSR DCSPC= 1B00 ; SPOOL CONTROL ; SET = SPOOLING ENABLED ; RESET = SPOOLING DISABLED .DUSR DCBIM= 1B12+1B15 ;ABSOLUTE BINARY I/O KEY. ;CHARACTERISTICS WORD FOR MY DCT'S .DUSR TTOCH=DCCGN+DCCNF+DCTO+DCPCK+DCLAC+DCC80+DCSPO+DCSPC .DUSR TTICH=DCKEY+DCLTU ; ; DEVICE CHARACTERISTICS FOR QTY, ULM, AND ALM (PARU.SR) ; .DUSR DCNI= 1B15 ;(MASKING ENABLES) CONSOLE INTERRUPTS ;.DUSR DCCGN= 1B14 ;(MASKING DISABLES) TAB EXPANSION .DUSR DCLOC= 1B13 ;LOCAL LINE (MASKING MAKES MODEM LINE) ;.DUSR DCTO= 1B11 ;_ FOR RUBOUT (MASKING GIVES BACKSPACE) ;IGNORE LINEFEED (MASKING CONVERTS ; LF/NL TO CR) ;.DUSR DCKEY= 1B10 ;(MASKING DISABLES) INPUT ECHOING. ;MASKING ALSO DISABLES LINE EDIT ;(^Z,ESC,DEL,\), ;UNLESS "DCEDT" ALSO MASKED. ;.DUSR DCNAF= 1B9 ;(MASKING DISABLES) 20 NULLS AFTER FORM FEED .DUSR DCXON= 1B8 ;(MASKING ENABLES) XON/XOFF FOR $TTR ; 1B7 ;SAVE FOR FUTURE USE ;.DUSR DCLAC= 1B6 ;(MASKING DISABLES) LINE FEED AFTER ; CARRIAGE RETURN ;.DUSR DCSPO= 1B5 ;(MUST BE OFF) SPOOLING .DUSR DCCRE= 1B4 ;CARRIAGE RETURN ECHO (MASKING DISABLES) .DUSR DCEDT= 1B0 ;LINE EDIT (ESC,^Z,DEL,\) DISABLED IF ; MASK THIS BIT OR "DCKEY", BUT NOT BOTH. ; ; .WRL TO QTY:64 ; ; AC0= CODE+LINE # ; AC1= DATA .DUSR W64DC= 0B7 ;NEW DEVICE CHARACTERISTIC MASK ;FOR OPEN CHANNEL, AC1 AS ABOVE. .DUSR W64LS= 1B7 ;CHANGE LINE SPEED FOR DG/CS, ; AC1 RIGHT-JUSTIFIED CLOCK SELECT. .DUSR W64MS= 2B7 ;CHANGE DG/CS MODEM STATE, AC1= .DUSR W64DTR= 1B15 ; RAISE DATA TERMINAL READY ; ELSE LOWER .DUSR W64RTS= 1B14 ; RAISE REQUEST TO SEND ; ELSE LOWER .DUSR W64CH= 3B7 ;CHANGE CHARACTERISTICS FOR LINE ;AC1 SAME AS DG/CS HARDWARE SPEC. ; JAWA CONTROLLER BOARD ; --------------------------- ; THE FOLLOWING VALUES WILL BE PLACED IN PARU.SR AND SPECIFY ; THE VARIOUS FIELDS USED BY THE JAWA CONTROLLER TO DETERMINE ITS ; CURRENT STATE AND TYPE OF MEDIA BEING USED. ; MODE OF OPERATION (USED EXTERNALLY) ; ----------------- .DUSR CMODE = 0B7 ; DON'T USE BITS 8-15 FOR MODE .DUSR SMODE = 1B7 ; SET MODE USING BITS 8-15 ; TRACKS PER INCH (USED EXTERNALLY) ; ---------------- .DUSR TPI48 = 1B8 ; 2 STEP PULSES TO NEXT TRACK (48) .DUSR TPI96 = 0B8 ; 1 STEP PULSE TO NEXT TRACK (96) ; NUMBER OF HEADS (USED EXTERNALLY) ; --------------- .DUSR NHED1 = 0B9 ; 1 HEAD (SINGLE SIDED MEDIA) .DUSR NHED2 = 1B9 ; 2 HEADS (DOUBLE SIDED MEDIA) ; SECTORS PER TRACK (USED EXTERNALLY) ; ----------------- .DUSR SPT01 = 01B6 ; 1 SECTOR PER TRACK .DUSR SPT02 = 02B6 ; 2 SECTORS PER TRACK .DUSR SPT03 = 03B6 ; 3 SECTORS PER TRACK .DUSR SPT04 = 04B6 ; 4 SECTORS PER TRACK .DUSR SPT05 = 05B6 ; 5 SECTORS PER TRACK .DUSR SPT06 = 06B6 ; 6 SECTORS PER TRACK .DUSR SPT07 = 07B6 ; 7 SECTORS PER TRACK .DUSR SPT08 = 10B6 ; 8 SECTORS PER TRACK .DUSR SPT09 = 11B6 ; 9 SECTORS PER TRACK .DUSR SPT10 = 12B6 ; 10 SECTORS PER TRACK .DUSR SPT11 = 13B6 ; 11 SECTORS PER TRACK .DUSR SPT12 = 14B6 ; 12 SECTORS PER TRACK .DUSR SPT13 = 15B6 ; 13 SECTORS PER TRACK .DUSR SPT14 = 16B6 ; 14 SECTORS PER TRACK .DUSR SPT15 = 17B6 ; 15 SECTORS PER TRACK .DUSR SPT16 = 20B6 ; 16 SECTORS PER TRACK .DUSR SPT17 = 21B6 ; 17 SECTORS PER TRACK .DUSR SPT18 = 22B6 ; 18 SECTORS PER TRACK .DUSR SPT19 = 23B6 ; 19 SECTORS PER TRACK .DUSR SPT20 = 24B6 ; 20 SECTORS PER TRACK .DUSR SPT21 = 25B6 ; 21 SECTORS PER TRACK .DUSR SPT22 = 26B6 ; 22 SECTORS PER TRACK .DUSR SPT23 = 27B6 ; 23 SECTORS PER TRACK .DUSR SPT24 = 30B6 ; 24 SECTORS PER TRACK .DUSR SPT25 = 31B6 ; 25 SECTORS PER TRACK .DUSR SPT26 = 32B6 ; 26 SECTORS PER TRACK .DUSR SPT27 = 33B6 ; 27 SECTORS PER TRACK .DUSR SPT28 = 34B6 ; 28 SECTORS PER TRACK .DUSR SPT29 = 35B6 ; 29 SECTORS PER TRACK .DUSR SPT30 = 36B6 ; 30 SECTORS PER TRACK .DUSR SPT31 = 37B6 ; 31 SECTORS PER TRACK .DUSR SPT32 = 40B6 ; 32 SECTORS PER TRACK .DUSR SPT33 = 41B6 ; 33 SECTORS PER TRACK .DUSR SPT34 = 42B6 ; 34 SECTORS PER TRACK .DUSR SPT35 = 43B6 ; 35 SECTORS PER TRACK .DUSR SPT36 = 44B6 ; 36 SECTORS PER TRACK .DUSR SPT37 = 45B6 ; 37 SECTORS PER TRACK .DUSR SPT38 = 46B6 ; 38 SECTORS PER TRACK .DUSR SPT39 = 47B6 ; 39 SECTORS PER TRACK .DUSR SPT40 = 50B6 ; 40 SECTORS PER TRACK .DUSR SPT41 = 51B6 ; 41 SECTORS PER TRACK .DUSR SPT42 = 52B6 ; 42 SECTORS PER TRACK .DUSR SPT43 = 53B6 ; 43 SECTORS PER TRACK .DUSR SPT44 = 54B6 ; 44 SECTORS PER TRACK .DUSR SPT45 = 55B6 ; 45 SECTORS PER TRACK .DUSR SPT46 = 56B6 ; 46 SECTORS PER TRACK .DUSR SPT47 = 57B6 ; 47 SECTORS PER TRACK .DUSR SPT48 = 60B6 ; 48 SECTORS PER TRACK .DUSR SPT49 = 61B6 ; 49 SECTORS PER TRACK .DUSR SPT50 = 62B6 ; 50 SECTORS PER TRACK ; SECTOR DESCRIPTOR (USED INTERNALLY ONLY) ; ----------------- .DUSR SD00 = 0B13 ; 8 SECTORS, 512 BYTES .DUSR SD02 = 2B13 ; 9 SECTORS, 512 BYTES .DUSR SD04 = 4B13 ; 10 SECTORS, 512 BYTES .DUSR SD12 = 14B13 ; 50 SECTORS, 128 BYTES .DUSR SD13 = 15B13 ; 50 SECTORS, 256 BYTES .DUSR SD14 = 16B13 ; 50 SECTORS, 512 BYTES .DUSR SD15 = 17B13 ; 50 SECTORS, 1024 BYTES ; SECTOR SIZE (USED EXTERNALLY) ; ----------- .DUSR S0128 = 0B13 ; 128 BYTES PER SECTOR .DUSR S0256 = 1B13 ; 256 BYTES PER SECTOR .DUSR S0512 = 2B13 ; 512 BYTES PER SECTOR .DUSR S1024 = 3B13 ; 1024 BYTES PER SECTOR ; HEAD SWAP (USED EXTERNALLY) ; --------- .DUSR HEAD0 = 0B14 ; HEAD 0 IS ON THE BOTTOM (CP/M) .DUSR HEAD1 = 1B14 ; HEAD 1 IS ON THE TOP (REST OF WORLD) ; BYTE SWAP (USED EXTERNALLY) ; --------- .DUSR HBYTF = 0B15 ; HIGH ORDER BYTE FIRST .DUSR LBYTF = 1B15 ; LOW ORDER BYTE FIRST ; IT WILL BE DETERMINED AT SOME POINT IN TIME WHETHER ANY UNUSUAL ; COMBINATIONS ARE ILLEGAL OR SIMPLY DO NOT EXIST ON THE MARKET. ; SINCE IT WILL BE UP TO THE USER TO DEFINE THE COMBINATIONS, THERE ; SHOULD BE A VALIDITY CHECK. ; CERTAIN COMBINATIONS WILL BE DEFINED IN PARU.SR FOR CERTAIN TYPES ; OF EQUIPMENT. FOR EXAMPLE, THE IBM PC, TRS-80, DATA GENERAL MPT, ; APPLE, ETC. NEEDLESS TO SAY, THESE WILL HAVE TO BE CAREFULLY ; DOCUMENTED. ; DEFAULT SETTINGS ; ---------------- ; <--- RDOS ---> ; ---- .DUSR RDOSSS = SMODE+TPI48+NHED2+SPT09+S0512+HEAD0+HBYTF ; <--- MPT ---> ; --- .DUSR MPTDEF = SMODE+TPI48+NHED2+SPT10+S0512+HEAD1+LBYTF ; <--- IBM/PC ---> ; ------ .DUSR IBMPC = SMODE+TPI48+NHED2+SPT08+S0512+HEAD0+HBYTF ; <--- IBM/XT ---> ; ------ .DUSR IBMXT = SMODE+TPI48+NHED2+SPT09+S0512+HEAD0+HBYTF ; PHYSICAL I/O PACKET .DUSR PISB1= 0 ; FILE START BLOCK - HI ORDER .DUSR PIOSB= PISB1+1 ; FILE START BLOCK - LO ORDER .DUSR PIOFL= PIOSB+1 ; FILE LENGTH ; ; SWITCHES ; .DUSR A.SW= 1B00 .DUSR B.SW= 1B01 .DUSR C.SW= 1B02 .DUSR D.SW= 1B03 .DUSR E.SW= 1B04 .DUSR F.SW= 1B05 .DUSR G.SW= 1B06 .DUSR H.SW= 1B07 .DUSR I.SW= 1B08 .DUSR J.SW= 1B09 .DUSR K.SW= 1B10 .DUSR L.SW= 1B11 .DUSR M.SW= 1B12 .DUSR N.SW= 1B13 .DUSR O.SW= 1B14 .DUSR P.SW= 1B15 .DUSR Q.SW= 1B00 .DUSR R.SW= 1B01 .DUSR S.SW= 1B02 .DUSR T.SW= 1B03 .DUSR U.SW= 1B04 .DUSR V.SW= 1B05 .DUSR W.SW= 1B06 .DUSR X.SW= 1B07 .DUSR Y.SW= 1B08 .DUSR Z.SW= 1B09 ; ; SYSTEM CONSTANTS ; .DUSR SCWPB=255. ;WORDS PER BLOCK .DUSR SCDBS=256. ;SIZE OF DISK BLOCK .DUSR SCRRL=64. ;WORDS PER RANDOM RECORD .DUSR SCLLG=132. ;MAX LINE LENGTH .DUSR SCAMX=24. ;MAX ARGUMENT LENGTH IN BYTES .DUSR SCFNL=UFTEX-UFTFN+1 ;FILE NAME LENGTH .DUSR SCEXT=UFTEX-UFTFN ;EXTENSION OFFSET IN NAME AREA .DUSR SCMER=10. ;MAX ERROR RETRY COUNT .DUSR SCSTR=16 ;SAVE FILE STARTING ADDRESS .DUSR SCTIM=-80. ;RINGIO 1 MS. LOOP TIME (SN) .DUSR SCPPL=0 ;PRIMARY PARTITION LEVEL .DUSR SCPPA=6 ;PRIMARY PARTITION BASE ADDRESS .DUSR SCDSK=3 ;ABSOLUTE ADDRESS OF DISK INFORMATION BLOCK .DUSR SCCHK=245. ;NUMBER OF WORDS TO CHECKSUM AS OF 7.50 .DUSR SCBAD=4 ;ABSOLUTE ADDRESS OF BAD BLOCK TABLE BLOCK .DUSR SCSYS=0 ;SYS.DR ADDRESS OFFSET .DUSR SCPSH=1 ;PUSH DIRECTORY OFFSET .DUSR SCPNM=4 ;MAX NUMBER OF PUSH LEVELS .DUSR SCMAP=SCPNM*2+SCPSH ;RELATIVE BASE ADDRESS OF MAP.DR .DUSR SCBPB=1 ;RELATIVE BACKROUND PUSH BASE .DUSR SCFPB=SCBPB+SCPNM+1 ;RELATIVE FOREGROUND PUSH BASE .DUSR SCFZW=SCPNM*4+SCBPB ;FRAME SIZE WORD (SKIP DOUBLE WORD PUSH INDICES) .DUSR SCNVW=SCFZW+1 ;NUMBER-OF-SYSTEM-OVERLAYS WORD .DUSR SFINT=1B0 ;INTERRUPT FLAG .DUSR SFBRK=1B15 ;BREAK FLAG .DUSR SCNSO=64. ;NUMBER OF SYSTEM OVERLAYS .DUSR SNSOU=75 ;NUMBER OF SYSTEM OVERLAYS IN USE .DUSR SCSOP=SNSOU+3/4 ;NUMBER OF MEMORY PAGES TO HOLD SYSTEM OVERLAYS ; SYSTEM BOOTSTRAP CONSTANTS .DUSR SCTBP=0 ;TEXT STRING BYTE POINTER .DUSR SCINS=1 ;SWITCHED FULL/PARTIAL-OVERLAYS ADDRESS .DUSR SCPSA=2 ;PROGRAM START ADDRESS .DUSR SCPAR=SCPSA ;PARTIAL INIT ADDRESS .DUSR SCINT=3 ;FULL/PARTIAL-OVERLAYS INIT ADDRESS .DUSR SCCLI=SCINT+1 ;ADDRESS OF END OF CLI .DUSR SCZMX=SCCLI+1 ;SQUASHED/UNSQUASHED FLAG .DUSR SCCPL=SCZMX+1 ;CURRENT PARTITION LEVEL .DUSR SCPBA=SCCPL+1 ;PARTITION BASE ADDRESS (LOW ORDER) .DUSR SCOFA=SCPBA+1 ;OVERLAY BASE ADDRESS (LOW ORDER) .DUSR SCPB1=SCOFA+1 ;PARTITION BASE ADDRESS (HIGH ORDER) .DUSR SCOF1=SCPB1+1 ;OVERLAY BASE ADDRESS (HIGH ORDER) .DUSR SCBAS=SCOF1+1 ;BASE OF INFORMATION BLOCK .DUSR SCSWC=SCBAS ;SWITCH FOR SCINS ENTRY .DUSR SCIDV=20 ;INITIAL DEVICE CODE .DUSR SCAUN=0 ;ASCII UNIT NUMBER .DUSR SCUN=1 ;UNIT (DEVICE CODE) .DUSR SCGO=2 ;ENTRY TO PASS FILENAME .DUSR SCNGO=4 ;ENTRY TO ASK FROM CONSOLE ; SYSTEM ERROR CODES .DUSR ERFNO= 0 ; ILLEGAL CHANNEL NUMBER .DUSR ERFNM= 1 ; ILLEGAL FILE NAME .DUSR ERICM= 2 ; ILLEGAL SYSTEM COMMAND .DUSR ERICD= 3 ; ILLEGAL COMMAND FOR DEVICE .DUSR ERSV1= 4 ; NOT A SAVED FILE .DUSR ERWR0= 5 ; ATTEMPT TO WRITE AN EXISTENT FILE .DUSR EREOF= 6 ; END OF FILE .DUSR ERRPR= 7 ; ATTEMPT TO READ A READ PROTECTED FILE .DUSR ERWPR= 10 ; WRITE PROTECTED FILE .DUSR ERCRE= 11 ; ATTEMPT TO CREATE AN EXISTENT FILE .DUSR ERDLE= 12 ; A NON-EXISTENT FILE .DUSR ERDE1= 13 ; ATTEMPT TO ALTER A PERMANENT FILE .DUSR ERCHA= 14 ; ATTRIBUTES PROTECTED .DUSR ERFOP= 15 ; FILE NOT OPENED .DUSR ERFUE= 16 ; FATAL UTILITY ERROR .DUSR EREXQ= 17 ; EXECUTE CLI.CM (NO ERROR) .DUSR ERNUL= 20 ; INVISIBLE ERROR CODE .DUSR ERUFT= 21 ; ATTEMPT TO USE A UFT ALREADY IN USE .DUSR ERLLI= 22 ; LINE LIMIT EXCEEDED O .DUSR ERRTN= 23 ; ATTEMPT TO RESTORE A NON-EXISTENT IMAGE .DUSR ERPAR= 24 ; PARITY ERROR ON READ LINE .DUSR ERCM3= 25 ; TRYING TO PUSH TOO MANY LEVELS .DUSR ERMEM= 26 ; NOT ENUF MEMORY AVAILABLE .DUSR ERSPC= 27 ; OUT OF FILE SPACE .DUSR ERFIL= 30 ; FILE READ ERROR .DUSR ERSEL= 31 ; UNIT NOT PROPERLY SELECTED .DUSR ERADR= 32 ; ILLEGAL STARTING ADDRESS .DUSR ERRD= 33 ; ATTEMPT TO READ INTO SYSTEM AREA .DUSR ERDIO= 34 ; FILE ACCESSIBLE BY DIRECT I/O ONLY .DUSR ERDIR= 35 ; FILES SPECIFIED ON DIFF. DIRECTORIES .DUSR ERDNM= 36 ; DEVICE NOT IN SYSTEM .DUSR EROVN= 37 ; ILLEGAL OVERLAY NUMBER .DUSR EROVA= 40 ; FILE NOT ACCESSIBLE BY DIRECT I/O .DUSR ERTIM= 41 ; USER SET TIME ERROR .DUSR ERNOT= 42 ; OUT OF TCB'S .DUSR ERXMT= 43 ; SIGNAL TO BUSY ADDR .DUSR ERSQF= 44 ; FILE ALREADY SQUASHED ERROR .DUSR ERIBS= 45 ; DEVICE ALREADY IN SYSTEM .DUSR ERICB= 46 ; INSUFFICENT CONTIGUOUS BLOCKS .DUSR ERSIM= 47 ; SIMULTANEOUS READ OR WRITE TO MUX LINE .DUSR ERQTS= 50 ; ERROR IN USER TASK QUEUE TABLE .DUSR ERNMD= 51 ; NO MORE DCB'S .DUSR ERIDS= 52 ; ILLEGAL DIRECTORY SPECIFIER .DUSR ERDSN= 53 ; DIRECTORY SPECIFIER NOT KNOWN .DUSR ERD2S= 54 ; DIRECTORY IS TOO SMALL .DUSR ERDDE= 55 ; DIRECTORY DEPTH EXCEEDED .DUSR ERDIU= 56 ; DIRECTORY IN USE .DUSR ERLDE= 57 ; LINK DEPTH EXCEEDED .DUSR ERFIU= 60 ; FILE IS IN USE .DUSR ERTID= 61 ; TASK ID ERROR .DUSR ERCMS= 62 ; COMMON SIZE ERROR .DUSR ERCUS= 63 ; COMMON USAGE ERROR .DUSR ERSCP= 64 ; FILE POSITION ERROR .DUSR ERDCH= 65 ; INSUFFICIENT ROOM IN DATA CHANNEL MAP .DUSR ERDNI= 66 ; DIRECTORY NOT INITIALIZED .DUSR ERNDD= 67 ; NO DEFAULT DIRECTORY .DUSR ERFGE= 70 ; FOREGROUND ALREADYS EXISTS .DUSR ERMPT= 71 ; ERROR IN PARTITON SET .DUSR EROPD= 72 ; DIRECTORY IN USE BY OTHER PROGRAM .DUSR ERUSZ= 73 ; NO ROOM FOR UFTS ON EXEC/EXFG .DUSR ERMPR= 74 ; ADDR ERROR ON .SYSTM PARAM .DUSR ERNLE= 75 ; NOT A LINK ENTRY .DUSR ERNTE= 76 ; CURRENT BG IS NOT CHECKPOINTABLE .DUSR ERSDE= 77 ; SYS.DR ERROR .DUSR ERMDE= 100 ; MAP.DR ERROR .DUSR ERDTO= 101 ; DEVICE TIME OUT .DUSR ERENA= 102 ; ENTRY NOT ACCESSIBLE VIA LINK .DUSR ERMCA= 103 ; MCA REQUEST OUTSTANDING .DUSR ERSRR= 104 ; INCOMPLETE TRANSMISSION CAUSED BY RECIEVER .DUSR ERSDL= 105 ; SYSTEM DEADLOCK .DUSR ERCLO= 106 ; I/O TERMINATED BY CHANNEL CLOSE .DUSR ERSFA= 107 ; SPOOL FILE(S) ACTIVE .DUSR ERABT= 110 ; TASK NOT FOUND FOR ABORT .DUSR ERDOP= 111 ; DEVICE PREVIOUSLY OPENED .DUSR EROVF= 112 ; SYSTEM STACK OVERFLOW .DUSR ERNMC= 113 ; NO MCA RECEIVE REQUEST OUTSTANDING .DUSR ERNIR= 114 ; NO INIT/RELEASE ON OPENED DEVICE (MAG TAPE) .DUSR ERXMZ= 115 ; .XMT & .IXMT MESSAGES MUST BE NON-ZERO .DUSR ERCANT= 116 ; 'YOU CAN'T DO THAT' .DUSR ERQOV= 117 ; .TOVLD NOT LOADED FOR QUEUED OVERLAY TASKS .DUSR EROPM= 120 ; OPERATOR MESSAGE MODULE NOT SYSGENED .DUSR ERFMT= 121 ; DISK FORMAT ERROR .DUSR ERBAD= 122 ; DISK HAS INVALID BAD BLOCK TABLE .DUSR ERBSPC= 123 ; INSUFFICIENT SPACE IN BAD BLOCK POOL (CORE) .DUSR ERZCB= 124 ; ATTEMPT TO CREATE CONTIG OF ZERO LENGTH .DUSR ERNSE= 125 ; PROGRAM IS NOT SWAPPABLE .DUSR ERBLT= 126 ; BLANK TAPE .DUSR ERRDY= 127 ; LINE NOT READY .DUSR ERINT= 130 ; CONSOLE INTERRUPT RECEIVED .DUSR EROVR= 131 ; CHARACTER OVER RUN ERROR .DUSR ERFRM= 132 ; CHARACTER FRAMING ERROR .DUSR ERSPT= 133 ; TOO MANY SOFT ERRORS (DOS ONLY) .DUSR ERSOF= 134 ; QTY BUFFER OVERFLOW .DUSR EREMP= 135 ; ILLEGAL BLOCK NUMBER ON WINDOW MAPPING ; CLI ERROR CODES .DUSR CNEAR= 300 ; NOT ENOUGH ARGUMENTS .DUSR CILAT= 301 ; ILLEGAL ATTRIBUTE .DUSR CNDBD= 302 ; NO DEBUG ADDRESS .DUSR CCLTL= 303 ; COMMAND LINE TOO LONG .DUSR CNSAD= 304 ; NO STARTING ADDRESS .DUSR CCKER= 305 ; CHECKSUM ERROR .DUSR CNSFS= 306 ; NO SOURCE FILE SPECIFIED .DUSR CNACM= 307 ; NOT A COMMAND .DUSR CILBK= 310 ; ILLEGAL BLOCK TYPE .DUSR CSPER= 311 ; NO FILES MATCH SPECIFIER .DUSR CPHER= 312 ; PHASE ERROR .DUSR CTMAR= 313 ; TOO MANY ARGUMENTS .DUSR CTMAD= 314 ; TOO MANY ACTIVE DEVICES .DUSR CILNA= 315 ; ILLEGAL NUMERIC ARGUMENT .DUSR CSFUE= 316 ; FATAL SYSTEM UTILITY ERROR .DUSR CILAR= 317 ; ILLEGAL ARGUMENT .DUSR CCANT= 320 ; IMPROPER OR MALICIOUS INPUT .DUSR CTMLI= 321 ; TOO MANY LEVELS OF INDIRECT FILES .DUSR CSYER= 322 ; SYNTAX ERROR .DUSR CBKER= 323 ; BRACKET ERROR .DUSR CPARE= 324 ; PAREN ERROR .DUSR CCART= 325 ; < WITHOUT > OR > WITHOUT < .DUSR CCAR1= 326 ; ILLEGAL NESTING OF <> AND () .DUSR CINDE= 327 ; ILLEGAL INDIRECT FILENAME .DUSR CPAR1= 330 ; ILLEGAL NESTING OF () AND [] .DUSR CIVAR= 331 ; ILLEGAL VARIABLE .DUSR CILTA= 332 ; ILLEGAL TEXT ARGUMENT .DUSR CTATL= 333 ; TEXT ARGUMENT TOO LONG .DUSR CCMAX= CTATL ; MAX CLI ERROR CODE .DUSR ERML= 30. ; MAXIMUM ERROR MESSAGE LENGTH ; EXCEPTIONAL SYSTEM STATUS CODES .DUSR PNMPE= @1 ; MAP.DR ERROR .DUSR PNSDE= @2 ; SYSTEM DIRECTORY ERROR .DUSR PNCSO= @3 ; SYSTEM STACK FAULT .DUSR PNIDA= @4 ; INCONSISTENT SYSTEM DATA .DUSR PNMDD= @5 ; MASTER DEVICE DATA ERROR .DUSR PNMDT= @6 ; MASTER DEVICE TIME OUT .DUSR PNDPE= @7 ; MOVING HEAD DISK ERROR .DUSR PNCUI= @10 ; UNCLEARABLE UNDEFINED INTERRUPT .DUSR PNCBK= @12 ; INSUFFICENT CONTIGUOUS BLOCKS TO BUILD ; PUSH SPACE INDICES .DUSR PNILL= @11 ; ILLEGAL EXTENDED INSTRUCTION .DUSR PNPSH= @13 ; RTN BEYOND TOP OF WORLD .DUSR PNIPB= @14 ; INCONSISTENT OR IMPOSSIBLE CONDITION ; RELATED TO DUAL PROCESSORS (IPB) .DUSR PNITR= @15 ; INT WORLD TRAPPED .DUSR PNERC= @16 ; MULTIBIT MEMORY ERROR .DUSR PNPAR= @17 ; MEMORY PARITY ERROR .DUSR PNMEM= @20 ; INFOS INSUFFICIENT MEMORY (INIT TIME) .DUSR PNSPL= @21 ; SPOOLER .DUSR PNEMT= @22 ; MICRO-ECLIPSE EMULATOR TRAP ; PANIC -- UNMAPPED RDOS ONLY !!!! .DUSR PNPSF= @23 ; POWER SUPPLY FAULT-UPSC .DUSR PNUTR= @24 ; UNICORN DISK TRESPASS PANIC ;PANIC CODES MADE FROM GENERIC EXCEPTIONAL SYSTEM STATUS CODES ;#R013 ED6 8/31/79 ; ; PANIC STAT MODULE .DUSR P1SDE = 1B3!PNSDE ;WDBLK .DUSR P1CSO = 1B3!PNCSO ;GSUB .DUSR P2CSO = 2B3!PNCSO ;INTD .DUSR P3CSO = 3B3!PNCSO ;GSUB .DUSR P4CSO = 4B3!PNCSO ;GSUB .DUSR P5CSO = 5B3!PNCSO ;GSUB .DUSR P1IDA = 1B3!PNIDA ;FILIO .DUSR P2IDA = 2B3!PNIDA ;BLKIO .DUSR P3IDA = 3B3!PNIDA ;IOBUF .DUSR P4IDA = 4B3!PNIDA ;OPPRO .DUSR P1MDD = 1B3!PNMDD ;OVLAY .DUSR P2MDD = 2B3!PNMDD ;INIT3 .DUSR P3MDD = 3B3!PNMDD ;SOV3 .DUSR P4MDD = 4B3!PNMDD ;SOV6 .DUSR P5MDD = 5B3!PNMDD ;SOV7 .DUSR P6MDD = 6B3!PNMDD ;SOV3 .DUSR P7MDD = 7B3!PNMDD ;FILIO .DUSR P1MDT = 1B3!PNMDT ;INIT3 .DUSR P2MDT = 2B3!PNMDT ;OVLAY .DUSR P3MDT = 3B3!PNMDT ;SOV3 .DUSR P4MDT = 4B3!PNMDT ;SOV6 .DUSR P5MDT = 5B3!PNMDT ;SOV7 .DUSR P6MDT = 6B3!PNMDT ;SOV3 .DUSR P1DPE = 1B3!PNDPE ;DZPDR .DUSR P1CUI = 1B3!PNCUI ;INTD .DUSR P1CBK = 1B3!PNCBK ;FINIT2 .DUSR P2CBK = 2B3!PNCBK ;INIT2 .DUSR P1ILL = 1B3!PNILL ;GSUB .DUSR P1PSH = 1B3!PNPSH ;SOV12 .DUSR P2PSH = 2B3!PNPSH ;SOV27 .DUSR P1IPB = 1B3!PNIPB ;DPMOD .DUSR P2IPB = 2B3!PNIPB ;DPMOD .DUSR P3IPB = 3B3!PNIPB ;DPMOD .DUSR P4IPB = 4B3!PNIPB ;DPMOD .DUSR P1ITR = 1B3!PNITR ;MAPZ .DUSR P2ITR = 2B3!PNITR ;MAPZ .DUSR P1ERC = 1B3!PNERC ;INTD .DUSR P1PAR = 1B3!PNPAR ;INTD .DUSR P1SPL = 1B3!PNSPL ;SPOLR .DUSR P1EMT = 1B3!PNEMT ;PANIC .DUSR P1PSF = 1B3!PNPSF ;UPSC .DUSR P1UTR = 1B3!PNUTR ;TRES (TRESPASS MODULE) ; ; USER STATUS TABLE (UST) TEMPLATE ; .DUSR UST= 400 ; START OF BACKGROUND USER STATUS AREA .DUSR USTP=12 ; PZERO LOC FOR UST POINTER ; NOTE- USTP MUST CORRESPOND TO PARS PZERO ALLOCATIONS .DUSR USTPC= 0 ; 0=>BACKGROUND, 1=>FOREGROUND ; (WHEN NOT IN SCHED STATE) .DUSR USTZM= 1 ; ZMAX .DUSR USTSS= 2 ; START OF SYMBOL TABLE .DUSR USTES= 3 ; END OF SYMBOL TABLE .DUSR USTNM= 4 ; NMAX .DUSR USTSA= 5 ; STARTING ADDRESS .DUSR USTDA= 6 ; DEBUGGER ADDRESS .DUSR USTHU= 7 ; HIGHEST ADDRESS USED .DUSR USTCS= 10 ; FORTRAN COMMON AREA SIZE .DUSR USTIT= 11 ; INTERRUPT ADDRESS .DUSR USTBR= 12 ; BREAK ADDRESS .DUSR USTCH= 13 ; # TASKS (LEFT), # CHANS (RIGHT) .DUSR USTCT= 14 ; CURRENTLY ACTIVE TCB .DUSR USTAC= 15 ; START OF ACTIVE TCB CHAIN .DUSR USTFC= 16 ; START OF FREE TCB CHAIN .DUSR USTIN= 17 ; INITIAL START OF NREL .DUSR USTOD= 20 ; OVLY DIRECTORY ADDR .DUSR USTSV= 21 ; FORTRAN STATE VARIABLE SAVE ROUTINE (OR 0) .DUSR USTRV= 22 ; REVISION ; ENVIRONMENT STATE WORD WHEN EXECUTING .DUSR USTIA= 23 ; TCB ADDR OF INT OR BREAK PROC .DUSR USTEN= USTIA ; LAST ENTRY .DUSR UFPT= 30 ; SAVE SOS ; ENVIRONMENT STATUS BITS (IN USTRV DURING EXECUTION) .DUSR ENMAP= 1B0 ;MAPPED MACHINE .DUSR ENMIC= 1B1 ;MICRO-ECLIPSE (S/20 OR DESKTOP) .DUSR ENUEC= 1B2 ;UNMAPPED ECLIPSE .DUSR ENMEC= 1B3 ;MAPPED ECLIPSE .DUSR ENUNV= 1B4 ;UNMAPPED NOVA .DUSR ENMNV= 1B5 ;MAPPED NOVA .DUSR ENUN3= 1B6 ;UNMAPPED NOVA 3 .DUSR ENMN3= 1B7 ;MAPPED NOVA 3 .DUSR ENUMN= 1B8 ;UNMAPPED MICRO NOVA .DUSR ENCTD= 1B9 ;#MSB# ^D FROM TTY FOR ICOS SYSTEMS .DUSR ENDOS= 1B11 ;DOS SYSTEM .DUSR ENINFO= 1B12 ;INFOS SYSTEM .DUSR ENDGR= 1B12 ;DG/RDOS SYSTEM .DUSR ENSOS= 1B13 ;STAND ALONE SYSTEM .DUSR ENRTOS= 1B14 ;RTOS SYSTEM .DUSR ENRDOS= 1B15 ;RDOS SYSTEM ; ; TASK CONTROL BLOCK (TCB) TEMPLATE ; .DUSR TPC= 0 ;USER PC (B0-14) + CARRY (B15) .DUSR TAC0= 1 ;AC0 .DUSR TAC1= 2 ;AC1 .DUSR TAC2= 3 ;AC2 .DUSR TAC3= 4 ;AC3 .DUSR TPRST= 5 ;STATUS BITS (LEFT) + PRIORITY (RIGHT) .DUSR TSYS= 6 ;SYSTEM CALL WORD .DUSR TLNK= 7 ;LINK WORD .DUSR TUSP= 10 ;USP .DUSR TELN= 11 ;TCB EXTENSION ADDR .DUSR TID= 12 ;TASK ID .DUSR TTMP= 13 ;SCHEDULER TEMPORARY .DUSR TKLAD= 14 ;USER KILL PROC ADDR .DUSR TSP= 15 ;STACK POINTER .DUSR TFP= 16 ;FRAME POINTER .DUSR TSL= 17 ;STACK LIMIT .DUSR TSO= 20 ;OVERFLOW ADDR .DUSR TLN=TKLAD-TPC+1 ;SHORT TCB LENGTH .DUSR TLNB= TSO-TPC+1 ;LONG TCB LENGTH ; TASK STATUS BITS (IN TPRST) .DUSR TSSYS= 1B0 ;SYSTEM BIT .DUSR TSSUSP= 1B1 ;SUSPEND BIT .DUSR TSXMT= 1B2 ;XMT/REC AND OVERLAY BIT .DUSR TSRDOP= 1B3 ;.TRDOP BIT .DUSR TSABT= 1B4 ;ABORT LOCK BIT .DUSR TSRSV= 1B5 ;RESERVED .DUSR TSUPN= 1B6 ;USER PEND BIT .DUSR TSUSR= 1B7 ;USER FLAG BIT ; ; OVERLAY DIRECTORY ; .DUSR OVNDS= 0 ;NUMBER OF NODES ; FOR EACH NODE: .DUSR OVRES= 1 ;CURRENT OVLY(B0-7), USE COUNT(B8-15) .DUSR OVDIS= 2 ;# OVLYS (B0-7), LOADING BIT (B8), ; SIZE IN BLKS (B9-15) .DUSR OVBLK= 3 ;STRT BLK # IN OVLY FILE FOR FIRST OVLY .DUSR OVNAD= 4 ;CORE ADDR FOR NODE(B1-15) ; 1B0 FLAGS VIRTUAL NODE ; ; USER TASK QUEUE TABLE ; .DUSR QPC= 0 ;STARTING PC .DUSR QNUM= 1 ;NUMBER OF TIMES TO EXEC .DUSR QTOV= 2 ;OVERLAY .DUSR QSH= 3 ;STARTING HOUR .DUSR QSMS= 4 ;STARTING SEC IN HOUR .DUSR QPRI= TPRST ;MUST BE SAME .DUSR QRR= 6 ;RERUN TIME INC IN SEC .DUSR QTLNK= TLNK ;MUST BE SAME .DUSR QOCH= 10 ;CHAN OVERLAYS OPEN ON .DUSR QCOND= 11 ;TYPE OF LOAD .DUSR QAC2= 12 ;WAKEUP AC2 ; 1B0= LOADING, 1B15= DEQUE REQ REC .DUSR QTLN= QAC2-QPC+1 .DUSR QPEX= QTLN ;USER TASK Q AREA EXTENSION ; ; USER PROGRAM TABLE FOR OPERATOR COMMUNICATIONS PACKAGE ; .DUSR LPN= 0 ;PROGRAM NUMBER .DUSR LOV= 1 ;OVERLAY NUMBER OR -1 .DUSR LCOND= 2 ;CONDITIONAL/UNCONDITIONAL LOAD .DUSR LTPR= 3 ;TASK ID (LEFT) + PRIORITY (RIGHT) .DUSR LPC= 4 ;PROGRAM COUNTER .DUSR LTLN= LPC-LPN+1 ;TABLE LENGTH .DUSR LPEX= LTLN ;COMMUNICATIONS EXTENSION AREA START ; ; TUNING FILE DISPLACEMENTS ; .DUSR .TUN=0 ;OFFSET TO NUMBER WORD IN PAIR .DUSR .TUC=.TUN+1 ;OFFSET TO 1ST COUNT IN PAIR .DUSR .TUP=.TUC+2 ;OFFSET TO 2ND COUNT OF PAIR .DUSR .TUNX=.TUP+2 ;LENGTH OF COUNT PAIR .DUSR .TUNSTK=1 ;NUMBER STACKS IN SYSTEM .DUSR .TUSTK= .TUNSTK+.TUC-.TUN ;STACK COUNT .DUSR .TUPSTK=.TUNSTK+.TUP-.TUN ;STACK PEND COUNT .DUSR .TUNCEL=.TUNSTK+.TUNX ;NUMBER CELLS IN SYSTEM .DUSR .TUCEL= .TUNCEL+.TUC-.TUN ;CELLS COUNTS .DUSR .TUPCEL=.TUNCEL+.TUP-.TUN .DUSR .TUNBUF=.TUNCEL+.TUNX ;BUFFERS, EXCLUDING TUNING BUFFERS .DUSR .TUBUF= .TUNBUF+.TUC-.TUN ;COUNTS .DUSR .TUPBUF=.TUNBUF+.TUP-.TUN .DUSR .TUNOV= .TUNBUF+.TUNX ;OVERLAYS .DUSR .TUOV= .TUNOV+.TUC-.TUN .DUSR .TUPOV= .TUNOV+.TUP-.TUN .DUSR TULEN=.TUNOV+.TUNX