Google
 

Trailing-Edge - PDP-10 Archives - bb-y390o-bm_tops20_v41_atpch_20 - autopatch/mountr.c06
There are no other files named mountr.c06 in the archive.
 REP 7/1	;06C1
	;              COPYRIGHT (c) 1979,1980,1981,1982 BY
	;           DIGITAL EQUIPMENT CORPORATION, MAYNARD, MA.
 WIT
	;
	ASCIZ /
	              COPYRIGHT (c) 1979,1980,1981,1982 BY
	            DIGITAL EQUIPMENT CORPORATION, MAYNARD, MA.
	/
 REP 31/1	;06C2
		VEDIT==153		;EDIT #
 WIT
		VEDIT==160		;EDIT #
 REP 2/2	;06C3

 WIT
	;160   Add check for bad HOME or BAT blocks and inform operator.
	;      Also check for disk in use by on-line diagnstic program before mount.
	;      GCO 4.2.1544
	;
	;157 - Set or clear the correct bit in STRFLG(STR) when a change occurs.
	;      Also if an operator refuse to dismount at structure, restore the 
	;      structure status if there was no change.
	;      GCO 4.2.1540
	;
	;156 - If the first mount request is canceled and the structure has not been 
	;      mounted, make sure opr gets mount request message on awaiting request.
	;      GCO 4.2.1539
	;
	;155 - Increase number of mount requests allowed to 400
	;      GCO 4.2.1538
	;
	;154 - Add procedure WTOCHK and calls to WTOCHK so that batch
	;      jobs with /ASSISTANCE:NO will have any mount request requiring
	;      assistance dishonored.
	;      GCO 4.2.1537
	;
 REP 21/6	;06C4
	MAXMRQ==200		;MAXIMUM # OF MOUNT REQUESTS
 WIT
	MAXMRQ==400		;[155]MAXIMUM # OF MOUNT REQUESTS
 REP 41/18	;06C5
	;  MS%WLK==1B6		;UNIT IS WRITE-LOCKED
 WIT
	;**;[158]CHANGE 1 LINE AND ADD 1 LINE IN COMMENT AREA	5-MAR-82
	;  MS%HBB==1B6		;[158] UNIT HAS BAD HOME BLOCKS
	;  MS%WLK==1B7		;[158] UNIT IS WRITE LOCKED
 REP 32/20	;06C6
	;	!-------------------------------------------------------![TEST]
 WIT
	;	!-------------------------------------------------------!
 REP 33/75	;06C7
		JUMPN Q1,[ABTRET (MREQ15,ABT%OP)] ;ABORT WITH REASON
		ABTRET (MREQ15)		;ABORT WITHOUT REASON
 WIT
	;**;[156] AT KDMT:+19L REPLACE 2 LINES WITH 16 LINES....JYCW....11/15/82
		MOVE	Q2,RSBSTN(RSB)	;[156] GET STR NAME
		MOVE	Q3,RSBSTA(RSB)	;[156] GET STR ALIAS
		JUMPN Q1,[ABTREQ (MREQ15,ABT%OP) ;[156] ABORT WITH REASON
			  JRST	KDMT0]		 ;[156] AND CONTINUE
		ABTREQ (MREQ15)		;[156] ABORT WITHOUT REASON
	KDMT0:	QSCANI	ARBQDB		;[156] SET UP TO SCAN ACTIVE RSB QUEUE
	KDMT0A:	CALL	NSTRSB		;[156] GET ADDR OF NEXT RSB
		JRST	KDMT0B		;[156] END OF QUEUE
		CAMN	Q2,RSBSTN(RSB)	;[156] SAME STR NAME
		CAME	Q3,RSBSTA(RSB)	;[156] SAME ALIAS
		JRST	KDMT0A		;[156] NO, TRY NEXT RSB
		MOVE	T1,RSBIFL(RSB)	;[156] YES, SEE IF OPR HAS BEEN NOTIFIED
		TXNE	T1,R%ONR	;[156]
		JRST	KDMT0A		;[156] OPR HAS SEEN THIS ONE, TRY NEXT
		CALL	WOVMS		;[156] OPR HAS NOT SEEN IT YET --TELL OPR
	KDMT0B:	RET			;[156] FINISHED

 INS 35/95	;06C8
	;**;[154] Add two lines at WOV2: + 1 line	VND	22-APR-82
		CALL WTOCHK		;[154] IS  WTO DISABLED
		RET			;[154] YES
 REP 13/114	;06C9
		TXNN Q1,MS%OFL!MS%MNT!MS%WLK ;CHANGE IN MOUNT, OFF-LINE, OR WRITE-LOCK?
 WIT
	;**;[158] CHANGE 1 LINE AT DDSCHK +5L	VND	14-APR-82
		TXNN Q1,MS%OFL!MS%MNT!MS%WLK!MS%HBB!MS%BBB ;[158] CHANGE IN MOUNT STATUS
 REP 28/114	;06C10
		TXNE Q1,MS%WLK		;WAS DRIVE UNLOCKED
 WIT
	;**;[158]CHANGE 1 LINE AT DDSCHK: +20L	VND	14-APR-82
		TXNE Q1,MS%WLK!MS%DIA!MS%HBB!MS%BBB ;[158] OK TO ADD?
 REP 39/123	;06C11
		SKIPE T1		;IS STATUS BEING SET TO ZERO?
		TLOA T1,STRFLG(STR)	;NO, SET IT TO ONE
		JRST [ HLRZ T1,CHRACT(Q2) ;YES, GET BIT BEING CHANGED
			TLZ T1,STRFLG(STR) ;SET IT
			JRST .+1]
		MOVEM T1,STRFLG(STR)
 WIT
	;**;[157] AT KSST:+38L REPLACE 6 LINES WITH 7 LINES...JYCW...1/27/83
		HLL T2,STRFLG(STR)	;[157] GET THE ACTUAL STATUS
		SKIPE T1		;IS STATUS BEING SET TO ZERO?
		TLOA T2,(T1)		;[157] NO, SET IT TO ONE
		JRST [ HLRZ T1,CHRACT(Q2) ;YES, GET BIT BEING CHANGED
			TLZ T2,(T1)	 ;[157] SET IT
			JRST .+1]
		HLLM T2,STRFLG(STR)	;[157] ONLY WRITE TO THE LEFT HALF
 REP 21/126	;06C12
		JRST MESCH1		;NO, TRY NEXT RSB
 WIT
		JRST MESCH1		;NO, TRY NEXT RSB	
	;**;[156] AT MESCH1:+7L ADD 3 LINES....JYCW....11/15/82
		MOVE	T1,RSBIFL(RSB)	;[156] SEE IF OPR TOLD ABOUT THIS ONE
		TXNN	T1,R%ONR	;[156] 
		JRST MESCH1		;[156] NO, DO NOT STOP HERE
 REP 4/133	;06C13
	STRDM3:	ABTRET (MREQ23,ABT%OP)	;OPERATOR REFUSED TO DISMOUNT STRUCTURE

 WIT
	;**;[157] AT STRDM3:+0L INSERT 14 LINES...JYCW...1/27/83
	STRDM3:	MOVE T1,STRFLG(STR)	;[157] GET STRUCTURE STATUS
		TXNN T1,MS%DIS		;[157] WAS IT ALREADY DISMOUNT ?
		ABTRET (MREQ23,ABT%OP)	;[157] OPERATOR REFUSED TO DISMOUNT STRUCTURE
		MOVE T1,[POINT 7,MSTAL]	;[157] GET POINTER TO STRUCTURE ALIAS
		MOVEM T1,MSTRBK+.MSSSN	;[157]
		MOVX T1,MS%DIS		;[157]
		MOVEM T1,MSTRBK+.MSSST	;[157] CHANGE ONLY THE BIT TO SAY THE STR
		MOVEM T1,MSTRBK+.MSSMW	;[157] IS BEING DISMOUNTED
		MOVE T1,[3,,.MSSSS]	;[157] CHANGING STRUCTURE STATUS
		MOVEI T2,MSTRBK		;[157]
		MSTR			;[157]
		 ERJMP [CALL GETERR	;[157] ERROR, GET CODE
			MOVEM T1,LSTERR	;[157] PUT IN A SAFE PLACE
			ABTRET (LSTERR,ABT%IN)] ;[157] RETURN MSTR ERROR TO USER
		ABTRET (MREQ23,ABT%OP)	;OPERATOR REFUSED TO DISMOUNT STRUCTURE	
 REP 24/142	;06C14
		TXNE Q1,MS%HBB		;VALID HOME BLOCKS?
		HRROI T1,[ASCIZ /Bad home blocks/]
		TXNE Q1,MS%DIA		;MAINT MODE?
		HRROI T1,[ASCIZ /Maintenance mode/]
		TXNE Q1,MS%OFL		;OFF-LINE?
		HRROI T1,[ASCIZ /Offline /]
		TXNE Q1,MS%DIA!MS%OFL!MS%HBB
		JRST [	TMCT <%1A>	;OUTPUT ERROR MESSAGE
			JRST WOFRE2]	;NO MORE INFORMATION TO OUTPUT
 WIT
	;**;[158]REPLACE 9 LINES WITH 12 LINES AT WOFRE3: + 2L	VND 5-MAR-82
		TXNE Q1,MS%BBB		;[158] BAD BAT BLOCKS?
		CALL [	TMCTR <Bad BAT blocks >] ;[158] DISPLAY MESSAGE
		TXNE Q1,MS%WLK		;[158] IS UNIT WRITE LOCKED?
		CALL [  TMCTR <Unit is write locked >] ;[158] DISPLAY MESSAGE
		TXNE Q1,MS%HBB		;[158] BAD HOME BLOCKS?
		CALL [  TMCTR <Bad HOME blocks >] ;[158] DISPLAY MESSAGE
		TXNE Q1,MS%DIA		;[158] IN MAINTENANCE MODE?
		CALL [  TMCTR <Maintenance mode >] ;[158] DISPLAY MESSAGE
		TXNE Q1,MS%OFL		;[158] OFF LINE
		CALL [  TMCTR <Offline >] ;[158] DISPLAY MESSAGE
		TXNE Q1,MS%DIA!MS%OFL!MS%HBB!MS%BBB!MS%WLK ;[158] CHECK FOR ERROR CONDITION
		JRST WOFRE2		;[158]  
 INS 13/146	;06C15
	;**;[154] Add two lines at WRDSC: + 2 L	VND	22-APR-82
		CALL WTOCHK		;[154] IS WTO DIASABLED
		RET			;[154] YES
 INS 14/147	;06C16
	;**;[154] Add two lines at WOVDS: + 3 L	VND	22-APR-82
		CALL WTOCHK		;[154] IS WTO DISABLED?
		RET			;[154] YES
 INS 10/148	;06C17
	;**;[154] Add two lines at WOVMS: + 2 L	VND	22-APR-82
		CALL WTOCHK		;[154] IS WTO DISABLED
		RET			;[154] YES
 INS 17/210	;06C18
	;**;[154]ADD 11 LINES AT WRTP1: + 3 LINES	VND	22-APR-82
	;[154] WTOCHK CHECKS TO SEE IF WTOR FUNCTION IS DISABLED IN BATCH JOB
	;[154] RETURNS +1 IF DISABLED
	;[154] RETURNS +2 IF NOT DISABLED
	;[154] ABTRET WITH ERROR MESSAGE IF DISABLED

	WTOCHK:	SAVET			;[154] SAVE T1-T4
		LOAD T1,RSBJNO		;[154] GET JOBNUMBER
		SETO T2,		;[154] JUST ONE ITEM
		HRRI T2,T3		;[154] INTO T3
		MOVEI T3,.JIBCH		;[154] GET BATCH FLAGS
		GETJI			;[154] 
		 SETZ T3,		;[154] UNLIKELY
		LOAD T3,OB%WTO,T3	;[154] CHECK FOR WTO ENABLED
		CAIE T3,.OBALL		;[154] ARE MESSAGES ALLOWED?
		JRST [ ABTRET (MREQ15)]	;[154] NO, ABORT WITH MESSAGE
		RETSKP			;[154] YES, RETURN +2

 SUM 38748