X-Git-Url: http://git.sky-visions.com/cgi-bin/gitweb.cgi/retro-software/dec/tops10/v4.5.git/blobdiff_plain/cda2ba6d27526e5ef6f27f7b3391cfb55055bf2e..bb920f47d2b4fd2ac0c46c72df890dfe6931e943:/src/onceb.mac diff --git a/src/onceb.mac b/src/onceb.mac index 9fa9d75..89b786d 100644 --- a/src/onceb.mac +++ b/src/onceb.mac @@ -24,9 +24,12 @@ INTERNAL FTRC10 ;THIS SINGLE SOURCE FILE MAY BE ASSEMBLED FOR EITHER ; 2. USUAL SHROT ONCE ONLY CODE(ONCE) - CTY FOR DATE AND TIME ; 3. OPTIONAL ONCE ONLY CODE - CTY DIALOG TO CHANGE MONITOR ; OR REFRESH DISK(ALT-MODE INSTEAD OF CR AFTER TIME) + + ;INITIALIZE PRIORITY CHANNELS AND SETUP INTERRUPT SERVICE ROUTINE CHAIN + T=TAC ;DEFINE ACCUMULATOR T ;LINK TO SERVICE ROUTINES @@ -40,10 +43,8 @@ LINKSR: 0 ;CALLED WITH JSR FROM SYSINI IFN FT2REL,< JSP TSTREG ;GO TEST IF TWO RELOC REGISTERS EXIST > - ;HIGHEST LOC. IN JOB AREA PROTECTED FROM IO - -;MOVE SYMBOL TABLE UP IN MEMORY + ;MOVE SYMBOL TABLE UP IN MEMORY ;EXEC MUST BE LOADED IN 15K OR LESS IF GOING INTO 16K MACHINE ;FIRST FIND THE FIRST LOCATION OF NON-EXISTENT MEMORY @@ -57,6 +58,7 @@ IFN FT2REL,< CONSO APR,NXM ;NON-EXISTENT? SOJG TAC, .-3 ;NO,KEEP LOOKING AS LONG AS NOT TOP OF MEMORY SUBI DAT,700 ;MAKE ROOM FOR TENDUMP AT TOP OF CORE + JSR MOVSTP ;MOVE DDT SYMBOL TABLE POINTER TO LOWER CORE ; (DDTSYM=36) WHERE EXEC DDT EXPECTS IT. ; IF NOT ALREADY MOVED THERE. RETURN POINTER IN UUO HLRE TAC1,UUO ;-LENGTH OF S. T. @@ -77,8 +79,7 @@ IFN FT2REL,< STO1: MOVEM TAC1,.(TAC) SUB TAC,[XWD 1,1] JUMPGE TAC,.-3 - - EXTERN DEVLST,INTNUM,INTTAB + EXTERN DEVLST,INTNUM,INTTAB ;SETUP LOCATIONS 40 THRU 61 JRSTI1: MOVE TAC,[XWD LOC40,40] ;SET UP LOWER CORE PI LOCATIONS @@ -112,9 +113,8 @@ IFN FTDISK,< ;INITIALIZE DISK EXTERN NULPDL,DSKINI - MOVEI PDP,NULPDL - PUSHJ PDP,DSKINT ;INITIALIZE THE DISK + PUSHJ PDP,DSKINI ;INITIALIZE THE DISK ; AFTER SETTING UP CHANNEL LOC ; BUT BEFORE OVERWRITTING ONCE WITH DDB'S > @@ -126,9 +126,8 @@ IFN FTDISK,< ;MULTIPLE DEVICE DATA BLOCKS ARE CREATED ;AS SPECIFIED BY SYSSIZ AND MAY ERASE PART ;OF ONCE ONLY CODE -JRST1: JRST @LINKSR ;YES,RETURN - -EXTERN UUO0,ERROR,UUO2,LINKDR,DEVLST +JRSTI: JRST @LINKSR ;YES,RETURN + EXTERN UUO0,ERROR,UUO2,LINKDB,DEVLST EXTERN CH1,CH2,CH3,CH4,CH5,CH6,CH7 LOC40: 0 ;UUO PC @@ -152,7 +151,7 @@ UUOTRP: JSR UUO0 ;TO UUO HANDLER ;OP CODE 100 IS USED TO DISMISS USER MODE INTERRUPTS(SEE TRPSET UUO) JSR UUO2 ;GO SEE IF OP CODE 100 OR SOME OTHER ONE -IFN FT2REL,< + IFN FT2REL,< ;SET LOC TWOREG TO -1 IF MACHINE HAS TWO RELOC REG,0 IF ONLY ONE RELOC REG EXTERN TWOREG,SEGN,SEGPTR,AND2RG,JOBN @@ -186,13 +185,13 @@ TSTAPR: 0 ;PLACE TO SIDE JSR PC MOVNI TAC,SEGN ;SET LH OF POINTER TO FIRST SEG IN JBTXX TABLES HRLI TAC,JOBN ;SET RH OF POINTER TO FIRST HIGH SEG ;THIS MUST BE DONE HERE BECAUSE SEGPTR APPEARS IN FIRST + ; WHICH BUILD FORBITS FROM HAVING EXTERNALS MOVSM TAC,SEGPTR ;POINTER USED FOR AOBJN LOOPS CONO PI,10000 ;CLEAR PI SYSTEM JRST @TSTREG > - -;ROUTINE TO FIND THE EXEC DDT SYMBOL TABLE POINTER AND MOVE IT TO THE PLACE + ;ROUTINE TO FIND THE EXEC DDT SYMBOL TABLE POINTER AND MOVE IT TO THE PLACE ;WHERE EXEC DDT EXPECTS IT(DDTSYM=36) ;THE MONITOR CAN BE LOADED IN ANY OF 3 WAYS(IN ORDER OF PERFERNCE): ; 1. UNDER TIME SHARING WITH REGULAR LOADER AND COMMON @@ -209,10 +208,10 @@ TSTAPR: 0 ;PLACE TO SIDE JSR PC ; RETURN WITH AC UUO SET TO SYMBOL TABLE POINTER ;CALLED FROM MANDATORY ONCE ONLY CODE AND 141 START CODE(WHICHEVER OCCURS FIRST) - INTERN MOVTP + INTERN MOVSTP EXTERN T30SYM,JOBSYM,DDTSYM,DDTX,SYSDDT -MOVSTR: 0 ;JSR HERE FROM MANDATORY ONCE ONLY CODE AND +MOVSTP: 0 ;JSR HERE FROM MANDATORY ONCE ONLY CODE AND ; FIRST JUMP TO EXEC DDT IF BEFORE MONITOR STARTED MOVJMP: JRST .+1 ;PATCHED TO SETUUO AFTER FIRST EXECUTION MOVE UUO,T30SYM ;ASSUME LOADED BY REGULAR 10/30 @@ -231,7 +230,7 @@ REGT30: MOVEM UUO,DDTSYM ;STORE THE SYMBOL TABLE POINTER FOR EXEC DDT SETUUO: MOVE UUO,DDTSYM ;RETURN THE CORRECT(MAYBEUPDATED IF ; EXEC DDT PATCHES MADE BEFORE MONITOR SAVED OR ; STARTED) SYMBOL TABLE POINTER - JRST @MOVSTR ;RETURN + JRST @MOVSTP ;RETURN ;HERE IF EXEC DDT IS STARTED UP BEFORE MONITOR(TO MAKE A PATCH FOR EXAMPLE) @@ -241,6 +240,8 @@ SETUUO: MOVE UUO,DDTSYM ;RETURN THE CORRECT(MAYBEUPDATED IF PATSYM: JSR MOVSTP ;MOVE DDT SYMBOL TABLE POINTER SO EXEC DDT WILL ; FIND IT AND PATCH 141 TO GO DIRECTLY TO EXEC DDT JRST DDTX ;AND GO DIRECTLY TO EXEC DDT + +;ONCE ONLY CODE - OPERATOR SETUP DIALOGUE IFN FTRC10, < ENTRY RCXWNZ ;THIS SYMBOL IS SOLELY TO PERMIT THE SYSTEM @@ -289,12 +290,10 @@ PATSIZ: MOVEI TAC,PATCH ;SET SIZE OF SYSTEM TO BEGINING OF PATCH MOVEI TAC,TSEXEC PUSHJ PDP,CONMES PUSHJ PDP,OPOUT - - -;ASK FOR TODAY'S DATE AND CONVERT + ;ASK FOR TODAY'S DATE AND CONVERT ;DATE STORED AS ((Y-64)*12.+M-1)*31.+D-1 -EXTERNAL THSDAT,JUFMIN,SKIPS +EXTERNAL THSDAT,JIFMIN,SKIPS PUSHJ PDP,DATLOP JRST .-1 @@ -333,18 +332,16 @@ DATLOP: SETZM THSDAT SUBI TAC1,^D64 ;YEAR ZERO IMULI TAC1,^D12*^D31 ADDM TAC1,THSDAT - - -;GET TIME OF DAY + ;GET TIME OF DAY EXTERNAL TIME - POP PDP,TC + POP PDP,TAC PUSHJ PDP,TIMLOP JRST .-1 TIMLOP: SETZM TIME MOVEI TAC,TIMEM - PUSHJ PDP,IOCONM + PUSHJ PDP,ICONM PUSHJ PDP,OPOUT PUSHJ PDP,GETLIN JRST TIMLOP ;JUST A CR @@ -353,8 +350,7 @@ TIMLOP: SETZM TIME JRST TIMLOP ;NO ARGUMENT JRST TIMLOP ;ILLEGAL CHARACTER MOVE TAC,TAC1 - IDIVI TYAC,^D100 ;TAC=HRS.TAC1=MINS - + IDIVI TAC,^D100 ;TAC=HRS.TAC1=MINS SKIPL TAC ;HRS NEGATIVE? CAILE TAC,^D23 ;OR .G. 23? JRST TIMLOP ;OUT OF BOUNDS @@ -368,12 +364,10 @@ TIMLOP: SETZM TIME JUMPGE ITEM,QUICK ;SKIP NEXT PART OF DIALOGUE UNLESS THE LAST ITEM ; TYPED IN (NAMELY TIME OF DAT) WAS TERMINATED BY ; AN "ALT MODE". (ACCUMULATOR "ITEM" IS SET UP - ; IUN THE "GETLIN" SUBROUTINE CALLED ABOVE.) - - -;PRINT IO CONFIGURATION + ; IN THE "GETLIN" SUBROUTINE CALLED ABOVE.) + ;PRINT IO CONFIGURATION -EXTERNAL DEVLST,TCONLN,INLMES,PRENAME,INTTB1,INTTAB +EXTERNAL DEVLST,TCONLN,INLMES,PRNAME,INTTB1,INTTAB EXTERNAL OCTPNT IFN FT2REL,< @@ -385,15 +379,15 @@ IFN FT2REL,< MOVEI TAC,2 PUSHJ PDP,RADX10 ;NO. SECOND REG EXISTS. PUSHJ PDP,INLMES - ASCIZ /RELOC. REG. + ASCIZ / RELOC. REG. / PUSHJ PDP,OPOUT > MOVEI TAC,IOCONF - PUSHJ PDP,IOCNM + PUSHJ PDP,ICONM HLRZ AC1,DEVLST JUMPN AC1,ALRLNK ;DEVICE DATA BLOCK ALREADY LINKED? - MOVESI PROG,INTNUM ;NO, NOT LOADED BY BULD,-NO. OF DEVICES*2 + MOVSI PROG,INTNUM ;NO, NOT LOADED BY BULD,-NO. OF DEVICES*2 CONFLP: SKIPN AC1,INTTB1(PROG) ;INT LOC HAVE DEV DATA BLOCK? JRST NODDB ;NO, GO GET NEXT DEVICE DATA BLOCK LDB UUO,[POINT 8,INTTAB(PROG),8] ;YES. NO. OF DEV DATA BLKS @@ -401,9 +395,9 @@ CONFLP: SKIPN AC1,INTTB1(PROG) ;INT LOC HAVE DEV DATA BLOCK? PUSHJ PDP,RADX10 ;IN DECIMAL PUSHJ PDP,INLMES ;PRINT 1 SPACE ASCIZ / / - HLLZ TAC1,DEVNAME(AC) ;DEVICE NAME + HLLZ TAC1,DEVNAM(AC1) ;DEVICE NAME PUSHJ PDP,PRNAME ;PRINT IT - SOJLE UUO,SINGLE ;IS THIS JUST A SIGNLE DEVICE? + SOJLE UUO,SINGLE ;IS THIS JUST A SINGLE DEVICE? PUSHJ PDP,INLMES ;NO, APPEND 'S TO DEVICE NAME ASCIZ /'S/ SINGLE: PUSHJ PDP,CRLF ;PRINT CR LF @@ -442,7 +436,7 @@ ONCE7A: PUSHJ PDP,OPOUT ASCIZ / (OCTAL) TTY SCANNER LINES / PUSHJ PDP,OPOUT - + ;ASK FOR OPERATORS CONSOLE TO BE SPECIFIED EXTERNAL INLMES,DEVOPR,CTEXT,DEVPHY @@ -457,10 +451,10 @@ ONCEOP: MOVEI TAC,OPRM CAMN TAC,[SIXBIT /CTY/] ;CTY? JRST .+3 ;YES. JUST STORE IT. PUSHJ PDP,DEVPHY - JRST ONCEP ;PHYSICAL NAME NOT FOUND + JRST ONCEOP ;PHYSICAL NAME NOT FOUND MOVEM TAC,DEVOPR ;SET FOR SYSTEM ;DEVICE "OPR" WILL BE SAME AS THIS - + ;ASK IF SYSMAK IS WANTED EXTERN MAKEND,SYSSIZ @@ -488,8 +482,7 @@ EXTERNAL CNTDB ONCE3: PUSHJ PDP,SYSSIZ ;SAVE CURRENT VALUE JSP TAC,CNTDB ;UPDATE SYSSIZ BY SPACE USED ; FOR DEVICE DATA BLOCKS FOR DSK,DTA,MTA,TTY,PTY) - -;PRINT OCTAL SIZE OF MONITOR + ;PRINT OCTAL SIZE OF MONITOR MOVEI TAC,EXECIS PUSHJ PDP,ICONM @@ -538,10 +531,8 @@ IFN FTCHECK,< > JRST @ONCE ;***EXIT FROM THE "ONCE-ONLY CODE"*** - - -IFN FTNDISK,< -EXTERNAL OCTIN,MFDBLK,SATXWD,NUMPLK,SYSPP,REFLAG + IFN FTDISK,< +EXTERNAL OCTIN,MFDBLK,SATXWD,NUMBLK,SYSPP,REFLAG ;REFRESH DIALOGUE @@ -565,7 +556,7 @@ REF2: ;YES IFN FTTTYSER, PUSHJ PDP,OCTIN JRST REF2 - JRET REF2 + JRST REF2 IFE FTRC10, < PUSH PDP,TAC1 ;IS IT A MULTIPLE OF NUMBLK? MOVEI TAC,(TAC1) @@ -576,7 +567,7 @@ IFE FTRC10, < HRRZM TAC1,MFDBLK AOS TAC1 HRRM TAC1,SATXWD -REF3: + REF3: INTERNAL FTSWAP IFN FTSWAP,> + + PUSHJ PDP,REFRES ;REFRESH. JRST REF5 ;ERROR @@ -611,7 +604,7 @@ REF3A: PUSHJ PDP,OPOUT POPJ PDP, -IFE FTRC10, < + IFE FTRC10, < REF4: POP PDP,TAC1 MOVEI TAC,REF5M PUSHJ PDP,ICONM @@ -622,20 +615,21 @@ REF4: POP PDP,TAC1 REF5: PUSH PDP,TAC ;ERROR. ON COMMING HERE, TAC HAS LOGICAL BLOCK ; NUMBER WHICH COULD NOT BE WRITTEN MOVEI TAC,REF7M - PUSHJ PDP,IOCONM + PUSHJ PDP,ICONM POP PDP,TAC PUSHJ PDP,OCTPNT PUSHJ PDP,CRLF PUSHJ PDP,OPOUT JRST REF6 ;GO BACK TO TRY AGAIN., + REF1M: ASCIZ /DO YOU WANT TO REFRESH THE DISK ? (Y OR CR) / REF2M: ASCIZ /ARE YOU SURE(Y OR CR)? / REF3M: ASCIZ /DO YOU WANT TO CHANGE THE LOCATION OF THE MFD(Y OR CR)? / -REF4M: ASCIZ /TYPE THE LOGICAL DISK ADDRESS OF THE MFT RETREIVAL INFORMATION + REF4M: ASCIZ /TYPE THE LOGICAL DISK ADDRESS OF THE MFT RETREIVAL INFORMATION / IFE FTRC10, < REF5M: ASCIZ /MUST BE A MULTIPLE OF NUMBLK. @@ -651,8 +645,7 @@ REF9M: ASCIZ /HOW MANY (DECIMAL) 1K DISK BLOCKS ARE TO BE ALLOCATED FOR SWAPPING / > > ;THIS CLOSES AN FTDISK CONDITIONAL SERVAL PAGES BACK. - -;ROUTINE TO READ A LINE FROM OPERATORS CONSOLE + ;ROUTINE TO READ A LINE FROM OPERATORS CONSOLE ;CALL: PUSHJ PDP,GETLIN ; JUST A CR TYPED IN ; A LINE TYPED IN,TAC SEYT AS BYTE POINTER @@ -662,7 +655,7 @@ LINE=TAC1 ;TTY LINE NO. (ALSO SAME AS SCNSER) IFN FTTTYSER, -EXTNERAL CPOPJ +EXTERNAL CPOPJ1 GETLIN: IFE FTTTYSER, IFN FTTTYSER,< PUSHJ PDP,SETBFI> @@ -695,7 +688,7 @@ IFE FTTTYSER,< MOVE TAC,LINEP ;RESET BYTE POINTER> DELETE: IFN FTTTYSER,< PUSHJ PDP,DCPUTR JRST DELET1> IFE FTTTYSER,< - JUMPE ITEM,DELET1 ;AT BEGINNING OF LINE?> + JUMPE ITEM,DELET1 ;AT BEGINNING OF LINE? ADD TAC,[XWD 070000,0] ;NO, BACK UP BYTE POINTER TLNE TAC,400000 ;FINISHED THIS WORD YET? ADD TAC,[XWD 347777,-1] ;YES, BACK UP ADDRESS> @@ -712,8 +705,7 @@ DELET1: MOVEI CHREC,15 GETLN1: SETOM ITEM ;MECHANISM USED TO BY-PASS PART OF DIALOGUE MOVEI CHREC,15 ;WHEN ALTMODEIS TYPED. JRST GET2 - -;ROUTINE TO TYPE A LINE ON OPERATOR CONSOLE + ;ROUTINE TO TYPE A LINE ON OPERATOR CONSOLE ;ECHO CHECK STOPS LINE AND RETURNS ;CALL: DAT SET TO END OF MESSAGE @@ -722,12 +714,12 @@ IFN FTTTYSER, OPOUT: IFE FTTTYSER, IFN FTTTYSER, CONO TTY,1000 ;CLEAR INPUT -OPOUT1: IFE FTTYSER,< +OPOUT1: IFE FTTTYSER,< CAMN TAC,DAT POPJ PDP,> CONSZ TTY,40 JRST OPOUT2 ;ECHO CHECK - MEXTC + NEXTC IFN FTTTYSER,< JUMPE CHREC,CPOPJ> PUSHJ PDP,TYO JRST OPOUT1 @@ -737,7 +729,7 @@ OPOUT2: MOVEI CHREC,15 MOVEI CHREC,12 PUSHJ PDP,TYO CONO TTY,1000 ;CLEAR INPUT - + ;WAIT TILL OUTPUT BUSY OFF BEFORE TYPING OUT CHAR. EXTERNAL TCONLN,TYPL @@ -773,9 +765,8 @@ APRCHK: CONSO APR,1000 ;IS CLOCK FLAG ON? CONO APR,1000 ;YES, CLEAR CLOCK FLAG AOS TIME ;INCREMENT TIME POPJ PDP, - -ICONM: PUSH PDP,TAC - SETTTYO ;INITIALIZE LINE BUFFER + ICONM: PUSH PDP,TAC + SETTYO ;INITIALIZE LINE BUFFER POP PDP,TAC JRST CONMES ;OUTPUT MESSAGE @@ -784,7 +775,7 @@ OTSET: MOVEI DEVDAT,SCNDDB MOVSI TEM,120 ;TTYCHR HRRI TEM,TIBF(DEVDAT) MOVEM TEM,TTIBUF(DEVDAT) ;INIT INPUT POINTER - HRRI TEM,TDBF(DEVDAT) ;AND OUTPUT POINTER + HRRI TEM,TOBF(DEVDAT) ;AND OUTPUT POINTER MOVEM TEM,TTOBUF(DEVDAT) JRST TSETBF ;NOW CLEAR THE BUFFERS > @@ -798,7 +789,7 @@ YESNO: PUSHJ PDP,ICONM ;FIRST OUTPUT THE QUESTION CAIN CHREC,"Y" ;WAS IT A Y? AOS 0(PDP) ;YES, SKIP POPJ PDP, ;NO. MAYBE IT WAS "N", SO DONT SKIP - + ;CONSTANTS AND PUSH DOWN LIST ONCEPN=20 @@ -809,7 +800,7 @@ LINBUF: BLOCK 30 ;MESSAGES -TSEXEC: ASCIZ /MONITOR JUST LOADED +TSEXEC: ASCIZ / MONITOR JUST LOADED / TODATE: ASCIZ / TYPE TODAY'S DATE AS MM-DD-YY @@ -824,7 +815,7 @@ IO CONFIGURATION OPRM: ASCIZ / TYPE NAME OF OPR CONSOLE. / -SYSM: ASCIZ / + SYSM: ASCIZ / DO YOU WANT SYSMAK (TYPE Y IF YES, CR IF NO)? / SYSDM: ASCIZ / @@ -839,9 +830,7 @@ DESMES: ASCIZ /TYPE DESIRED MAX,(DEC), CR IF OK AS IS / CRLFMS: ASCIZ / / - - -;INITIALIZE SAT SEARCH ENTRIES + ;INITIALIZE SAT SEARCH ENTRIES ;THIS "DFWUNS" ROUTINE IS CALLED BY MANDATORY ONCE ONLY CODE(LINKSR) ; AFTER ALL MULTIPLE DEVICE DATA BLOCKS HAVE BEEN GENERATED IN CORE @@ -850,7 +839,7 @@ CRLFMS: ASCIZ / ; PERFORMED, DFWUNS IS CALLED AFTER REFRES SINCE SYSINI CALLS LINKSR AFTER ONCE. INTERNAL FTDISK -IFN FTDISK, +IFN FTDISK,< INTERNAL DFWUNS EXTERNAL SAT05,JSAT06,SATENT,SATPTR,SATBK2,SATXWD,SATPTR @@ -865,7 +854,7 @@ IFN FTRC10, < PUSHJ PDP,CAPCTY ;DETERMINE CURRENT SYSTEM CAPACITY (HOW MANY DISKS). CAMN TAC,LBHIGH ;HAS CAPACITY CHANGED SINCE LAST REFRESH ? JRST DFWNZ1 ;NO, EVERYTHING APPPEARS TO BE OKAY. - SETTTYO ;YES, PRINT WARNING MESSAGE... + SETTYO ;YES, PRINT WARNING MESSAGE... PUSHJ PDP,INLMES ASCIZ /DISK CAPACITY HAS CHANGED SINCE LAST REFRESHING. EITHER RESTORE PREVIOUS DISK CONFIGURATION OR REFRESH. @@ -875,7 +864,7 @@ EITHER RESTORE PREVIOUS DISK CONFIGURATION OR REFRESH. JRST DFWUNS ;NOW TRY AGAIN. DFWNZ1: > - MOVEI TAC,SETENT + MOVEI TAC,SATENT MOVEM TAC,SATPTR MOVEI PROG,0 MOVEI DEVDAT,DSKDDB @@ -897,9 +886,9 @@ SETS2: PUSH PDP,TAC MOVE TAC,SATBK2 MOVEM TAC,2(DAT) MOVSI TAC1,400000 - MOVEM TAC1,1(DSAT) + MOVEM TAC1,1(DAT) MOVEI DAT,0 -SETS3: MOVE AC1,(TAC) ;COUNT ONE-BITS + SETS3: MOVE AC1,(TAC) ;COUNT ONE-BITS AOJN AC1,SETS3A ;IS THE WORD = -1? ADDI DAT,44 ;YES JRST SETS5 @@ -917,7 +906,7 @@ IFE FTRC10, < ;BITS HAVE BEEN COUNTED, CHECK FOR WRITE-LOCK CAIL DAT,NUMBIT ;BLOCK FULL? JRST SETS8 - PUSHJ PDP,DEGETF ;NO. GET A FREE BLOCK + PUSHJ PDP,DFGETF ;NO. GET A FREE BLOCK PUSHJ PDP,SETS7 ;WRITE PUSHJ PDP,SETFRE ;FREE THE BLOCK @@ -933,13 +922,15 @@ IFE FTRC10, < IFN FTRC10, < HRRZ TAC,SATPTR -SETS5X: CAIL TAC,SATTOP +SETS5X: CAIL TAC,SATTOP JRST SAT05 ;EXIT FROM DFWUNS BACK TO DSKINI IN DSKSER........ ADDI TAC,SENTSZ MOVEI TAC1,411000 ;ON THE NEW PDP-10 DISK SYSTEM SET THE SAT ENTRY HRRM TAC1,(TAC) ; TABLE TO SHOW ALL NON-EXISTENT DISKS AS JRST SETS5X ; BOTH WRITE-LOCKED AND FULL. > + SETS6: POP PDP,TAC ;ERROR, TRY AGAIN + JRST SETS2 IFE FTRC10, < @@ -973,8 +964,7 @@ SETS9: BLOCK 204 > ;CLOSE THE IFE FTRC10 > ;CLOSES AN IFN FTDISK A COUPLE PAGES BACK. - -IFN FTDISK,< + IFN FTDISK,< ;DISK REFRESHING ROUTINES --- @@ -988,12 +978,11 @@ REFRESH: MOVEI PROG,0 ;SETUP IO MOVEI DEVDAT,DSKDDB PUSH PDP,SETSAT MOVE TAC,RPOPJ - MOVEM TAC,SETSET + MOVEM TAC,SETSAT PUSHJ PDP,DSKINI POP PDP,SETSAT MOVEI TAC,DSKCHN LSH TAC,1 - ADDI TAC,40 MOVE TAC1,[JSR DSKCHL] MOVEM TAC1,(TAC) @@ -1120,7 +1109,7 @@ REFER1: POP PDP,TAC1 REFER: POP PDP,WSYNC RPOPJ: POPJ PDP, -DEFINE ZEROS (A), LIST> @@ -1131,7 +1120,7 @@ DEFINE ONES (A),,,45,1,0,4,20 ;MFD RETREIVAL INFO SATBL1: XWD 777776,0 ;THIS SAT BLOCK CONTAINSS - ZERSO 5400/44-1 ;ALLOCATION FOR MFD AND SAT BLOCKS + ZEROES 5400/44-1 ;ALLOCATION FOR MFD AND SAT BLOCKS XWD 001777,-1 ONES 200+SATBL1-. @@ -1150,25 +1139,24 @@ MFD1: XWD 1,1 ;MFD XWD 654644,0 SIXBIT /*SAT*/ XWD 637163,17 ;RELOCATED - ZEROS 174 + ZEROES 174 -NULBLK: ZEROS 5400/44-1 ;NULL SAT BLOCK +NULBLK: ZEROES 5400/44-1 ;NULL SAT BLOCK XWD 001777,-1 ONES 200+NULBLK-. > ;END OF THE REFRESHER FOR THE OLD PDP-6 DISK. - - + IFN FTRC10, < ;DISK REFRESHER FOR THE NEW PDP-10 MODEL RC-10 (BURROUGHS) DISK-- EXTERNAL CPOPJ1,THSDAT,TIME EXTERNAL MFDBLK,SATXWD,NUMSAT,NUMBLK,SATTOP,SENTSZ - EXTERNAL DISKUP,DFREF,DFWRT,DSKFDG,CHKSUM,RCXCCW,RCXFIN + EXTERNAL DISKUP,DFRED,DFWRT,DSKFDG,CHKSUM,RCXCCW,RCXFIN EXTERNAL K4SWAP IFN FTSWAP,< - EXTNERAL MAXSWP,MXK2SWP,BLKSPK + EXTERNAL MAXSWP,MXK2SWP,BLKSPK > EXTERNAL LBHIGH INTERNAL STATBK @@ -1196,7 +1184,7 @@ DTOP=1B18 ;SET INDICATES DATA TRANSFER IN PROGRESS. SRCHE=1B19 ;SEARCH ERROR (DISK TIMING TRACK PROBLEMS!!) DDE=1B20 ;DISK DESIGNATION ERROR TSE=1B21 ;TRACK SELECT ERROR (OR EXCEEDS SYSTEM CAPACITY) - MRDY=1B22 ;DISK NOT READY (OR NON-EXISTENT DISK REFERENCED) + NRDY=1B22 ;DISK NOT READY (OR NON-EXISTENT DISK REFERENCED) PSF=1B23 ;POWER SUPPLY FAILURE DPAR=1B24 ;DISK PARITY ERROR CHDPAR=1B25 ;CHANNEL DATA PARITY ERROR @@ -1206,17 +1194,15 @@ DTOP=1B18 ;SET INDICATES DATA TRANSFER IN PROGRESS. OVR=1B29 ;OVERRUN, I.E., MEMORY DIDN'T RESPOND QUICKLY ENOUGH ;BIT 30 CHANNEL CONTROL WORD WRITTEN IN MEMORY (THIS BIT IS ;TURNED ON ON ALMOST ALL TERMINATIONS.) -BUSYRT=1B31 ;BUSY (SYNCHRONIZER PERFORMING A COMMAND SEQUENCE) +BUSYBT=1B31 ;BUSY (SYNCHRONIZER PERFORMING A COMMAND SEQUENCE) DONEFLG=1B32 ;DONE -- THIS ACTUALLY CAUSES THE INTERRUPT. ;BITS 33 - 35 PI CHANNEL SELECTION BITS. ;COMBINATIONS OF ERRO BITS GROUPED BY TYPE -- DATERR=DPAR!CHDPAR ;DATA ERRORS. DEVERR=SRCHE!PSF!CHCPAR!OVR ;DEVICE ERRORS. -SETERR=DDE!TSE!NRDY!NXMEM ;SOFTWARE-PREVENTABLE ERRORS. - - -;CONO FORMAT FOR THE MODEL RC-10 DISK SYNCHRONIZER +SETERR=DDE!TSE!NRDY!WRPE!NXMEM ;SOFTWARE-PREVENTABLE ERRORS. + ;CONO FORMAT FOR THE MODEL RC-10 DISK SYNCHRONIZER ;BITS 00 - 17 UNUSED ;BITS 18 - 19 SELECT DISK FOR SECTOR COUNTER READ-OUT A(SEE DATAI BITS 28-35) @@ -1248,7 +1234,7 @@ WRBIT=1B16 ;SET MEANS WRITE ON DISK, RESET MEANS READ FROM DISK ;BITS 27 - 34 ;CORRESPONDING BITS OF INITIAL CHANNEL CONTROL ADDRESS, HENCE, ; THIS ADDRESS MUST BE EVEN AND IN THE FIRST 1K OF CORE MEMORY! ;BIT 35 ;WRITE EVEN PARITY DATA INTO MEMORY (DIAGNOSTICS ONLY!) - + REFRESH: PUSHJ PDP,DISKUP ;BE SURE THE DISK IS UP AND READY. @@ -1284,8 +1270,9 @@ RFRSHE: MOVEI TAC,RFSHME POP PDP,TAC ; DIALOGUE TO AK THE PARAMETER SPECIFICATION JRST REF6 ; QUESTIONS AGAIN. -RFSHME: ACSIZ /PARAMETER SPECIFICATION ERROR. TRY AGAIN. +RFSHME: ASCIZ /PARAMETER SPECIFICATION ERROR. TRY AGAIN. / + RFRSH1: PUSHJ PDP,WRSTAT ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK. JRST REFERR ; AN ERROR ON THIS WRITE IS BAD TROUBLE !! @@ -1296,7 +1283,7 @@ RFRSH1: PUSHJ PDP,WRSTAT ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK. MOVE TAC,[XWD 1,1] ;THE FIRST ENTRY IN THE MFD IS FOR MOVEM TAC,WNZBUF ; THE MFD ITSELF. MOVE TAC,[SIXBIT/UFD/] - HRR TC,MFDBLK ;POINTER TO MFD RETRIEVAL INFORMATION + HRR TAC,MFDBLK ;POINTER TO MFD RETRIEVAL INFORMATION MOVEM TAC,WNZBUF+1 MOVE TAC,[SIXBIT/*SAT*/] ;THE ONLY OTHER ENTRY INITIALLY IN THE MOVEM TAC,WNZBUF+2 ; MFD IS FOR THE FILE NAMED *SAT*.SYS WHICH @@ -1304,7 +1291,7 @@ RFRSH1: PUSHJ PDP,WRSTAT ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK. HRRZ TAC,MFDBLK ; ANYONE WHO WANTS TO LOOK AT THEM. SUBI TAC,-1(TAC1) ;COMPUTE POINTER TO THE RETRIEVAL INFORMATION HLL TAC,[SIXBIT/SYS/] ; FOR THE *SAT*.SYS FILE. - MOVEM TAC,WNZBYUF+3 + MOVEM TAC,WNZBUF+3 HRRZS TAC ADDI TAC,1 ;COMPUTE LOGICAL BLOCK NUMBER OF THE MFD. PUSHJ PDP,WNZWR ;WRITE THE MFD OUT ONTO THE DISK. @@ -1315,6 +1302,7 @@ RFRSH1: PUSHJ PDP,WRSTAT ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK. PUSHJ PDP,CHKSUM HRRZM TAC1,CHKSAV ;SAVE CHECKSUM TO GO INTO RETRIEVAL INFORMATION. + ;NEXT WRITE MFD RETRIEVAL INFORMATION BLOCK ONTO THE DISK PUSHJ PDP,WNZCLR ;CLEAR OUTPUT BUFFER @@ -1324,7 +1312,7 @@ RFRSH1: PUSHJ PDP,WRSTAT ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK. HLL TAC,[SIXBIT /UFD/] MOVEM TAC,WNZBUF+1 ;FILE EXTENSION, DATE HRLZI TAC,045000 ;PROTECTION (ANY PROJECT 1 USER MAY WRITE IN MFD) - PUSHJ PDP,MDTMDT ;FILL IN TIME, DATE, AND MODE + PUSHJ PDP,MDTMOT ;FILL IN TIME, DATE, AND MODE MOVEM TAC,WNZBUF+2 MOVE TAC,[XWD -200,1] ;NEGATIVE WORD COUNT AND PROGRAMMER NUMBER MOVEM TAC,WNZBUF+3 ;GO INTO WORD 4 OF RETRIEVAL INFO @@ -1337,7 +1325,7 @@ RFRSH1: PUSHJ PDP,WRSTAT ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK. MOVEM TAC,WNZBUF+177 ; MUST CONTAIN ITS OWN BLOCK NUMBER. PUSHJ PDP,WNZWR ;WRITE MFD RETRIEVAL INFOMRATION ONTO THE DISK JRST REFERR ;ERROR - + ;NEXT CREATE THE NECESSARY SAT BLOCKS ON THE DISK PUSH PDP,SATXWD ;SATXWD CONTROLS THE OUTER LOOP @@ -1357,7 +1345,7 @@ IFN FTSWAP,< MOVEI TAC,0 PUSHJ PDP,SETWNZ JRST REFST7 ;HAVING SET ALL BITS, NO FURTHER TESTING IS NEEDED, -> + REFST2: MOVN TAC,TAC1 ADDI TAC1,NUMBLK SUB TAC1,LOWSWP ;IS ANY OF SWAPPING AREA WITHIN THIS SAT BLOCK? @@ -1376,7 +1364,7 @@ RFST3A: HRRZI TAC,STATBK SUB TAC,TAC1 MOVEI TAC1,1 ;YES, MARK IT UNAVAILABLE, PUSHJ PDP,SETWNZ - + REFST4: MOVE TAC,SATXWD ;SET UP TO LOOP THRU LOGICAL BLOCK NUMBERS FOR MFD. SUB TAC,[XWD 3,1] ; MFD RETRVL INFO. SAT BLOCKS, AND SAT RETRVL INFO. @@ -1412,7 +1400,7 @@ REFST7: MOVE TAC,[XWD -200,WNZBUF] MOVE TAC,SATPTR ; BACK TO DO NEXT SAT BLOCK. ADDI TAC,SENTSZ JRST REFST1 - + ;FINALLY, WRITE OUT THE RETRIEVAL INFORMATION FOR THE FILE *SAT*.SYS REFSRF: PUSHJ PDP,WNZCLR ;CLEAR THE BUFFER @@ -1422,13 +1410,14 @@ REFSRF: PUSHJ PDP,WNZCLR ;CLEAR THE BUFFER HLL TAC,[SIXBIT /SYS/] MOVEM TAC,WNZBUF+1 ;STORE EXTENSION AND DATE HRLZI TAC,555000 ;PROTECTION CODE (UNTOUCHABLE FILE ! ) - PUSHJ PDP.MDTMDT ;FILL IN TIME, DATE AND MODE + PUSHJ PDP,MDTMOT ;FILL IN TIME, DATE AND MOTE MOVEM TAC,WNZBUF+2 HLLZ TAC,SATXWD ;COMPUTE NEGATIVE WORD COUNT LSH TAC,7 HRRI TAC,1 ;PROGRAMMER NUMBER=1 MOVEM TAC,WNZBUF+3 + MOVEI TAC,SATENT ;PREPARE TO STORE POINTERS TO ALL THE SAT BLOCKS. MOVE TAC1,SATXWD MOVEI AC2,0 @@ -1451,12 +1440,13 @@ REFSRL: HRRZ AC1,TAC1 ;GET LOGICAL BLOCK NUMBER OF SAT BLOCK. PUSHJ PDP,WNZWR ;WRITE THE *SAT*.SYS RETRVL INFO ONTO THE DISK. JRST REFERR ;ERROR - JRST CPOPJ1 ;***EXIT FROM PDP-10 DISK REFRESHER.***......... + JRST CPOPJ1 ;***EXIT FROM PDP-10 DISK REFRESHER.***......... + ;ROUTINE TO WRITE THE FIXED BLOCK OF VITAL STATISTICS ONTO THE DISK. -WRSTAT: PUSHJ PDPWNZCLR ;CLEAR THE OUTPUT BUFFER +WRSTAT: PUSHJ PDP,WNZCLR ;CLEAR THE OUTPUT BUFFER MOVE TAC,[XWD -WRSTSZ,0] WRSTA1: MOVE TAC1,@WRSTA9(TAC) ;STORE KEY QUANTITIES IN THE OUTPUT BUFFER MOVEM TAC1,WNZBUF(TAC) @@ -1479,6 +1469,7 @@ WRSTA2: MOVEI TAC,WRSTM1 WRSTM1: ASCIZ /CANNOT WRITE VITAL STATISTICS BLOCK ON DISK. HELP!! / + ;TABLE OF POINTERS TO THE VITAL STATISTICS THAT ARE STORED IN "STATBK" ON THE DISK. WRSTA9: XWD ,MFDBLK ;LOGICAL BLOCK NUMBER OF MFD RETRIEVAL INFORMATION @@ -1496,7 +1487,7 @@ IFE FTSWAP,< ; NON-SWAPPING SYSTEM > WRSTSZ=.-WRSTA9 - + ;ROUTINE TO READ IN THE FIXED BLOCK OF "VITAL STATISTICS" FROM ; THE DISK AND DISTRUBUTE THEM TO THE APPROPRIATE CORE LOCATIONS. @@ -1508,13 +1499,14 @@ RDSTAT: MOVEI TAC,STATBK JRST RDSTA2 ;ERROR, STATISTICS BLOCK APPARENTLY WAS CLOBBERED. MOVE TAC,[XWD -WRSTSZ,0] ;STORE AWAY THESE IMPORTANT PARAMETERS -RDSTA1; MOVE TAC1,WNZBUF(TAC) ; UNDER CONTROL OF A TABLE IN THE "WRSTAT" +RDSTA1: MOVE TAC1,WNZBUF(TAC) ; UNDER CONTROL OF A TABLE IN THE "WRSTAT" MOVEM TAC1,@WRSTA9(TAC) ; ROUTINE WHICH WRITES OUT THE VITAL AOBJN TAC,RDSTA1 ; STATISTICS BLOCK ONTO THE DISK. POPJ PDP, ;***SUBROUTINE EXIT***........ -RDSTA2: MOVEI TAC,RDTM1 + +RDSTA2: MOVEI TAC,RDSTM1 ;PRINT ERROR MESSAGE IF THE VITAL PUSHJ PDP,ICONM ; STATISTICS BLOCK CANNOT BE READ PUSHJ PDP,OPOUT @@ -1523,7 +1515,7 @@ RDSTA2: MOVEI TAC,RDTM1 RDSTM1: ASCIZ /VITAL DISK STATISTICS LOST, SUGGEST REFRESHING! / - + ;ROUTINE TO DETERMINE THE CURRENT SYSTEM'S DISK CAPACITY. I.E., THE NUMBER OF ; DISKS ATTACHED TO THE RC-10 DISK SYNCHRONIZER TODAY. @@ -1537,7 +1529,7 @@ CAPCTY: MOVEI TAC,NUMSAT ; CHECK IN "DSKINT" WILL NOT FAIL SPURIOUSLY. MOVEI TAC,3 -CPCT1; PUSH PDP,TAC +CPCT1: PUSH PDP,TAC PUSHJ PDP,WNZRD ;ATTEMPT TO READ FIRST BLOK OF EACH SUCCESSIVE DISK., JRST CPCT3 ;ERROR POP PDP,TAC @@ -1550,20 +1542,20 @@ CPCT2: SUBI TAC,1 ; LEGAL LOGICAL DISK BLOCK NUMBER. POPJ PDP, ;***SUBROUTINE EXIT***....... + CPCT3: POP PDP,TAC CONSZ DSK,NRDY ;NON-EXISTENT DISK? JUMPN TAC,CPCT2 ;YES, THE LIMIT OF DISK STORAGE HAS BEEN FOUND. ; HOWEVER, DISK 0 MUST ALWAYS BE PRESENT. MOVEI TAC,CPCTM1 ;NO, SOME OTHER TYPE OF READ ERROR. - PUSHJ PDP,IOCONM + PUSHJ PDP,ICONM PUSHJ PDP,OPOUT ;PRINT ERROR MESSAGE POP PDP,LBHIGH JRST CAPCTY ;TRY AGAIN -CPCTM1: ACSIZ /DISK READ ERROR DURING CAPACITY SEARCH INITIALIZATION +CPCTM1: ASCIZ /DISK READ ERROR DURING CAPACITY SEARCH INITIALIZATION / - - + ;ROUTINE TO ASSURE THAT THE STATUS OF THE WRITE-LOCK SWITCHES ON THE ; DISK MAINTENANCE PANEL IS SUCH THAT THEY ARE PROTECTING "LESS THAN 0000". @@ -1571,7 +1563,7 @@ CPCTM1: ACSIZ /DISK READ ERROR DURING CAPACITY SEARCH INITIALIZATION WRITLK: CONI DSK,TAC TLNN TAC,13777 ;BOUNDARY ZERO AND MAINTENANCE-SEGMENT OFF ? - TLNN TAC,B53 ;YES, IS ROTARY SWITCH SET + TLNN TAC,B53 ;YES, IS ROTARY SWITCH SET ; TO EITHER X UNDER OR OVER(AS OPPOSED ; TO UNDER OR X OVER) JRST WRLK8 ;NO. GO PRINT ERROR MESSAGE AND LOOP. @@ -1589,6 +1581,7 @@ WRITLK: CONI DSK,TAC JRST WRLK2 ;ERROR POPJ PDP, ;***GOOD EXIT FROM WRITLK SUBROUTINE***......... + WRLK2: MOVEI TAC,WRLKM1 CONSZ DSK,WRPE ;WRITE-PROTECTION ERROR ? ;YES, PROTECT SWITCH ERRONEOUSLY SET ON "LESS THAN @@ -1602,10 +1595,10 @@ WRLK9: PUSHJ PDP,ICONM ;PRINT ERROR MESSAGE WRLKM1: ASCIZ /DISK BLOCK 0 WRITE ERROR DURING WRITE-LOCK CHECK. / WRLKM2: ASCIZ /"MAINTENANCE SEGMENT" SWITCH MUST BE OFF. AND -DIS WRITE PROTECTION SWITCHES MUST BE SET TO 0000 AND "LESS THAN", +DISK WRITE PROTECTION SWITCHES MUST BE SET TO 0000 AND "LESS THAN", FIX THEM ! ! / - + ;DISK READING ROUTINE FOR USE ONLY DURING ONCE-ONLY CODE. ; AVOIDS USING THE MONITOR OUFUFS AND INTERRUPT STRUCTURE. @@ -1628,33 +1621,38 @@ WNZRDC: POP PDP,DSKFDG ;RESTORE THE MOLESTED INSTRUCTION IN DSKINT. CONSZ DSK,DATERR!DEVERR!SETERR ;ANY ERRORS ? JRST WNZRDX ;YES, GIVE ERROR RETURN. MOVE TAC1,RCXCCW ;NO, BUT CHECK THAT THE FINAL VALUE OF THE - CAMN TAC1,RCXFIX ; CHANNEL CONTROL WORD WAS AS EXCPECTED ALSO. + CAMN TAC1,RCXFIN ; CHANNEL CONTROL WORD WAS AS EXCPECTED ALSO. AOS (PDP) ;***GOOD RETURN***........ WNZRDX: POPJ PDP, ;ERROR RETURN, + + + + + ;DISK WRITING ROUTINE FOR USE ONLY DURING ONCE-ONLY CODE. ; AVOIDS USING THE MONITOR QUEUES AND INTERRUPT STRUCTURE. ;ON ENTRY TO THIS SUBROUTINE, TAC CONTAINS THE LOGICAL BLOCK NUMBER OF THE DISK ; BLOCK WHICH IS TO BE WRITTEN ONTO THE DISK FROM THE ONCE-ONLY DISK BUFFER AREA. -WNZWR: CONO DSK,DATERR!DEVERR!SETERR!RESCIG ;CLEAR THE DISK SYNCHRONIZER. +WNZWR: CONO DSK,DATERR!DEVERR!SETERR!RESETB ;CLEAR THE DISK SYNCHRONIZER. CONSZ DSK,BUSYBT!DONEFLG JRST WNZWR ;DON'T PROCEED UNLESS THAE CLEAR WORKED. MOVEM TAC,LBSAVE ;SAVE LOGICAL BLOCK NUMBER IN CASE AN ERROR RETURN ; MUST BE TAKEN FROM THE "REFRESH" SUBROUTINE. - PUSH POP,DSKFDG ;SAVE THIS ISNTRUCTION FROM "DSKINT". + PUSH PDP,DSKFDG ;SAVE THIS ISNTRUCTION FROM "DSKINT". MOVE TAC1,[HRRZI TAC,0] ;NOW TAMPER WITH THAT SAVED LOCATION SO MOVEM TAC1,DSKFDG ; THAT DSKINT WILL NOT ENABLE ANY INTERRUPT CHANNEL. - MOVE TAC1,[XWD -200,WNZPUT-1] + MOVE TAC1,[XWD -200,WNZBUF-1] PUSHJ PDP,DFWRT ;CALL DEVICE-DEPENDENT ROUTINE IN "DSKINT" DIRECTLY. JRST WNZRDC ;THE REMAINDER OF THE WRITE ROUTINE IS IDENTICAL ; TO THE READ ROUTINE -;SUBROUTINE TO WATCH FOR THE DONE FLAG TO COME ON AND TIME OUT IF + ;SUBROUTINE TO WATCH FOR THE DONE FLAG TO COME ON AND TIME OUT IF ; IT DOESN'T COME UP SOON ENOUGH (SAY 5 SEC OR SO). WNZWAT: MOVE TAC,[^D1000000] ;AT MOST ONE MILLION TIMES THRU THE CONSZ-SOJG LOOP @@ -1670,6 +1668,7 @@ WNZWTL: CONSZ DSK,DONEFLG ;DONE FLAG ON YET ? WATMSG: ASCIZ /DISK HUNG. / + ;SUBROUTINE TO SET SPECIFIED BITS IN A SAT BLOCK WHILE FORMING IT IN WNZBUF ;ENTRY CONDITIONS -- C(TAC) = FIRST BIT NUMBER TO SET (NUMBERED BEGINNING AT 0) @@ -1687,16 +1686,17 @@ STWNZ1: ORM AC2,WNZBUF(TAC) STWNZ2: SOJN AC1,STWNZ1 POPJ PDP, ;SUBROUTINE EXIT........... + ;SUBROUTINE TO CLEAR THE ONCE-ONLY OUTPUT BUFFER, WNZBUF WNZCLR: SETZM WNZBUF MOVE TAC,[XWD WNZBUF,WNZBUF+1] BLT TAC,WNZBUF+177 POPJ PDP, ;SUBROUTINE EXIT........... - + ;SUBROUTINE TO MASK THE TIME, DATE, AND DATA MODE (=14 FOR BINARY MODE0 INTO ACCUMU- ; LATOR TAC IN THE FORMAT USED IN WORD 3 OF A DISK RETRIEVAL INFORMATION BLOCK. -MDTMDT: PUSH PDP,TAC +MDTMOT: PUSH PDP,TAC MOVE TAC,TIME ;GET TIME IN JIFFIES. IDIVI TAC,JIFMIN ;CONVERT TO MINUTES LSH TAC,^D12 @@ -1729,8 +1729,7 @@ LOWSWP: 0 ;LOWEST LOGICAL BLOCK FOR SWAPPING > ;END OF REFRESH PROCEDURE FOR THE RD10 DISK. > ;CLOSE AN EVEN EARLIER FTDISK CONDITIONAL. - -INTERNAL FTCHECK + INTERNAL FTCHECK IFN FTCHEC,< EXTERNAL CHKREG,CHKEND,CHECK,MONPTR,MONSUM @@ -1746,4 +1745,3 @@ CK: MOVEI TAC,CHKBEG > ONCEND: END -