~~ I>~~~~~~~~~~ I>~~~~ q ; COPYRIGHT (C) DATA GENERAL CORPORATION, 1970, 1971, 1972, 1973 ; ALL RIGHTS RESERVED. ; DEFINE THE SYSTEM STACK DISPLACEMENTS .DUSR SSLGT= -7 ; VARIABLE LENGTH OF CALLING'S FRAME .DUSR SSOSP= -6 ; PREVIOUS STACK POINTER .DUSR SSRTN= -5 ; RETURN ADDRESS OF CALLING PROGRAM .DUSR SSEAD= -4 ; ENTRY ADDRESS OF CALLED ROUTINE .DUSR SSCRY= -3 ; CARRY .DUSR SSAC0= -2 ; SAVE STORAGE FOR CALLING'S ACCUMULATORS .DUSR SSAC1= -1 .DUSR SSAC2= 0 ; (DON'T MODIFY THIS DISPLACEMENT!!) ; ; UFT ENTRY ; .DUSR UFTFN=0  ;FILE NAME .DUSR UFTEX=5  ;EXTENSION .DUSR UFTAT=6  ;FILE ATTRIBUTES .DUSR UFTBK=7  ;NUMBER OF LAST BLOCK IN FILE .DUSR UFTBC=10  ;NUMBER OF BYTES IN LAST BLOCK .DUSR UFTAD=11  ;DEVICE ADDRESS OF FIRST BLOCK (0 UNASSIGNED) .DUSR UFTDL=12  ;DCT LINK .DUSR UFTDC=13  ;DCT ADDRESS .DUSR UFTUN=14  ;UNIT NUMBER .DUSR UFTCA=15  ;CURRENT BLOCK ADDRESS .DUSR UFTCB=16  ;CURRENT BLOCK NUMBER .DUSR UFTST=17  ;FILE STATUS .DUSR UFTNA=20  ;NEXT BLOCK ADDRESS .DUSR UFTLA=21  ;LAST BLOCK ADDRESS .DUSR UFTDR=22  ;SYS.DR DCB ADDRESS .DUSR UFTFA=23  ;FIRST ADDRESS .DUSR UFTBN=24  ;CURRENT FILE BLOCK NUMBER .DUSR UFTBP=25  ;CURRENT FILE BLOCK BYTE POINTER .DUSR UFTCH=26  ;DEVICE CHARACTERISTICS   ;(LEAVE "UFTCH" AS LAST WORD!) .DUSR UFTEL=UFTCH-UFTFN+1 ;UFT ENTRY LENGTH .DUSR UFDEL=UFTDL-UFTFN+1 ;UFD ENTRY LENGTH ; ; SYSTEM FILE ENTRY ; .DUSR SFKEY=-5  ;KEY .DUSR SFLK=-4  ;MAP.DR LINK (-1 IF NOT DSK DVC) .DUSR SFNX=-3  ;NEXT ENTRY IN CHAIN .DUSR SFBK=-2  ;NUMBER OF LAST BLOCK IN FILE .DUSR SFBC=-1  ;BYTE IN LAST BLOCK .DUSR SFDCB=0  ;DCB ENTRY .DUSR UDBAT=UFTAT-UFTDC ;NEGATIVE DISP. TO ATTRIBUTES .DUSR UDBAD=UFTAD-UFTDC ;NEGAVIE DISP. TO FIRST ADDRESS .DUSR UDBBK=UFTBK-UFTDC ;NEGATIVE DISP. TO LAST BLOCK .DUSR UDBBN=UFTBN-UFTDC ;POSITIVE DISP. TO CURRENT BLOCK ; ; FILE ATTRIBUTES ; .DUSR ATRP=1B0  ;READ PROTECTED .DUSR ATCHA=1B1  ;CHANGE ATTRIBUTE PROTECTED .DUSR ATSAV=1B2  ;SAVED FILE .DUSR ATPER=1B14 ;PERMANENT FILE .DUSR ATWP=1B15  ;WRITE PROTECTED ; ; FILE STATUS ; .DUSR STER=1B15  ;ERROR DETECTED .DUSR STIOP=1B14 ;I/O IN PROGRESS .DUSR STFWR=1B13 ;FIRST WRITE FLAG .DUSR STINI=1B1  ;NO INIT BIT .DUSR STCMK=1B0 ;SET = READ (FILIO)   ;(INIT/RELEASE SWTCH FOR SYS.DR DCB) ; ; BUFFER STATUS ; .DUSR QTMOD=1B15 ;HAS BEEN MODIFIED .DUSR QTER=1B14  ;ERROR DETECTED .DUSR QTIOP=1B12 ;I/0 IN PROGRESS .DUSR QTLCK=1B11 ;BUFFER LOCKED .DUSR QTCMD=1B10 ;COMMAND - 1 - READ, 0 - WRITE .DUSR QTEMD=1B9  ;ERROR MODE (MAG TAPE) .DUSR QTIND=1B8  ;INDIRECT DRIVER MODE SW. ; ; SYSTEM CONSTANTS. ; .DUSR SCWPB=255. ;WORDS PER BLOCK .DUSR SCLLG=132. ;MAX LINE LENGTH .DUSR SCAMX=24.  ;MAX ARGUMENT LENGTH IN BYTES .DUSR SCFNL=UFTEX-UFTFN+1 ;FILE NAME LENGTH .DUSR SCMER=10.  ;MAX ERROR RETRY COUNT .DUSR SCSTR=16  ;SAVE FILE STARTING ADDRESS .DUSR SCTIM=-80. ;RINGIO 1 MS. LOOP TIME (SN) .DUSR SCSYS=1  ;DEVICE ADDRESS FOR SYS.DR .DUSR SCMAP=2  ;DEVICE ADDRESS FOR MAP.DIR .DUSR SCSVB=SCMAP+1 ;4 CONTIGUOUS BLOCKS FOR CORE IMAGES .DUSR SCSNO=4  ;NUMBER OF LEVELS .DUSR SCEXT=UFTEX-UFTFN ;EXTENSION OFFSET IN NAME AREA .DUSR SCRRL=64.  ;WORDS PER RANDOM RECORD .DUSR SFINT=1B0  ;INTERRUPT FLAG .DUSR SFCRD=1B13 ;CRITICAL READ ERROR .DUSR SFPRD=1B14 ;PANIC ON READ ERROR .DUSR SFBRK=1B15 ;BREAK FLAG .DUSR CADZ=40  ;CA LOCATION IN BOOTSTRAP .DUSR LADZ=CADZ+1 ;LA LOCATION IN BOOTSTRAP .DUSR SCFUL=LADZ+1 .DUSR SCPAR=SCFUL+1 .DUSR SCKEY=SCPAR+1 ; DEFINE THE EXCEPTIONAL STATUS 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 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 ERDIR= 35 ; FILES SPECIFIED ON DIFF. DIRECTORIES .DUSR ERDNM= 36 ; ILLEGAL DEVICE NAME ; CLI ERROR CODES .DUSR CNEAR=100  ;NOT ENOUGH ARGUMENTS .DUSR CILAT=101  ;ILLEGAL ATTRIBUTE .DUSR CNDBD=102  ;NO DEBUG ADDRESS .DUSR CNCTD=103  ;NO CONTINUATION ADDRESS .DUSR CNSAD=104  ;NO STARTING ADDRESS .DUSR CCKER=105  ;CHECKSUM ERROR .DUSR CNSFS=106  ;NO SOURCE FILE SPECIFIED .DUSR CNACM=107  ;NOT A COMMAND .DUSR CILBK=110  ;ILLEGAL BLOCK TYPE .DUSR CSPER=111  ;NO FILES MATCH SPECIFIER .DUSR CPHER=112  ;PHASE ERROR .DUSR CTMAR=113  ;TOO MANY ARGUMENTS ; DEFINE THE PANICS .DUSR PNOP= @10 ; NOP MAGIC .DUSR POFFS= 1B11 ; OFFSET .DUSR PNCUI= 21*POFFS+PNOP ; UNKNOWN INTERRUPT    ; DEVICE CODE IN AC0 .DUSR PNCSO= 22*POFFS+PNOP ; SYSTEM STACK OVERFLOW .DUSR PNCDW= 23*POFFS+PNOP ; CRITICAL DISK WRITE ERRORS .DUSR PNCDR= 24*POFFS+PNOP ; CRITICAL DISK READ ERRORS .DUSR PNCDE= 25*POFFS+PNOP ; CRITICAL DISK READ/WRITE ERROR .DUSR PNCRR= 26*POFFS+PNOP ; RUNAWAY READER .DUSR PNCMT= 27*POFFS+PNOP ; MTA CONTROLER ERROR ; DEFINE THE CHARACTERISTICS .DUSR DCCPO= 1B15 ; DEVICE REQUIRING LEADER/TRAILER .DUSR DCCGN= 1B14 ; GRAPHICAL OUTPUT DEVICE WITHOUT TABBING   ; HARDWARE .DUSR DCIDI= 1B13 ; INPUT DEVICE REQUIRING OPERATOR INTERVENTION .DUSR DCCNF= 1B12 ; OUTPUT DEVICE WITHOUT FORM FEED HARDWARE .DUSR DCTO= 1B11 ; TELETYPE OUTPUT DEVICE .DUSR DCKEY= 1B10 ; KEYBOARD DEVICE .DUSR DCNAF= 1B9 ; 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 DCFWD= 1B04 ; FULL WORD DEVICE (ANYTHING GREATER THAN .DUSR DCFFO= 1B03 ; FORM FEEDS ON OPEN .DUSR DCLTU= 1B02 ; CHANGE LOWER CASE ASCII TO UPPER .DUSR DCC80= 1B01 ;READ 80 COLUMS .DUSR DCDIR= 1B00 ; DIRECTORY DEVICE ; USER STATUS TABLE (UST) TEMPLATE .DUSR UST= 400 ; START OF USER STATUS AREA .DUSR USTPC= 0 ; PROGRAM COUNTER (LEAVE AT DISPLACEMENT 0) .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 USTIN= 13 ; INITIAL START OF NREL CODE .DUSR USTIS= 14 ;INTERRUPT SERVICE WORD .DUSR USTWA= 15 ; I/O WAIT RETURN .DUSR USTRS= 16 ; I/O COMPLETION RESTORE   ; DEFINE 4 SPARE WORDS .DUSR USTA0= 23 ; SAVE STORAGE FOR AC0 .DUSR USTA1= 24 ; AC1 .DUSR USTA2= 25 ; AC2 .DUSR USTA3= 26 ; AC3 .DUSR USTCY= 27 ; CARRY .DUSR USTEL= 30 ; ENTRY LENGTH .DUSR USTEC= 1 ; ENTRY COUNT .DUSR MXFNO=10  ;MAX NUMBER OF FILE TABLES .DUSR UFPT=UST+USTEL ;USER FILE POINTER TABLE .DUSR UFTEC=MXFNO ;ENTRY COUNT .DUSR UFT=UFPT+UFTEC ;UFT'S .EOT *U*U*U*ULb:!