Google
 

Trailing-Edge - PDP-10 Archives - bb-y390o-bm_tops20_v41_atpch_20 - autopatch/mountr.c09
There are no other files named mountr.c09 in the archive.
 REP 34/1	;09C1
		VEDIT==164		;EDIT #
 WIT
		VEDIT==167		;EDIT #
 INS 2/2	;09C2
	;167   Correct the way edit 163 searches and branches from table MTBL upon
	;      an IPCF failure.
	;      GCO 4.2.1595
	;166   Create numeric volume i.d.s as left justified sixbit. (Note: This edit
	;      requires edit 164.)
	;      GCO 4.2.1588
	;165   Do not abort a tape mount request if all the drives are set unavailable.
	;      Instead, queue the request.
	;      GCO 4.2.1583
 REP 45/62	;09C3
		CAMN T1,T4		;[163]Match the error returned by MSEND?
		JRST @MTBL(T2)		;[163]Yes, process the error
		AOBJN T2,TRAN4		;[163]No, get the next error code
		CALL STOP		;[163]This error can't be dealt with
 WIT
	;**;[167]At TRAN4:+1L replace 4 lines with 6 lines JCR  9/25/84
		CAME T1,T4		;[167]Do we match?
		AOBJN T2,TRAN4		;[167]No, try the next one
		SKIPL T2		;[167]Found a match?
		CALL STOP		;[167]No, can not handle this error
		HRRZ T4,MTBL(T2)	;[167]Get the routine address
		JRST 0(T4)		;[167]Process the error
 REP 92/85	;09C4
		CALL INT26		;CONVERT TO SIXBIT
 WIT
	;**;[166]Change 1 line at KVICU:-2L   JCR  8/21/84
		CALL INT26L		;[166]Convert to sixbit
 REP 15/86	;09C5
		CALL INT26		;[164]convert to sixbit
 WIT
	;**;[166]Change 1 line at KVIRSB:+5L   JCR  8/21/84
		CALL INT26L		;[166]convert to sixbit
 INS 45/95	;09C6
	;**;[165]Add 3 lines at WOV2:+6L    JCR   7/25/84
		CALL TRESCK		;[165]Are any tape drives set to available
		CALL [ TMCT <%INote: All tape drives are set unavailable
	Mount >				;[165]No, include in the mount request message
		       RET ]		;[165]Return to in stream
 REP 14/162	;09C7
		CALL TRESCK		;ARE REQUESTED TAPE RESOURCES AVAILABLE?
		 JRST [	ABTRET (MREQ19)] ;NO, ABORT REQUEST
 WIT
	;**;[165]Delete 2 lines at UTM:+4L    JCR   7/25/84
 INS 2/192	;09C8
	;**;[166]Add 15 lines at INT261:+6L    JCR   8/21/84
	;[166]INT26L - CONVERT INTEGER TO SIXBIT, LEFT-JUSTIFIED ZERO-FILLED
	;[166]T1/ INTEGER
	;[166]RETURNS +1: ALWAYS, T1/SIXBIT RESULT

	INT26L:	MOVM T2,T1		;[166]Get absolute value
		IDIV T2,[^D1000000]	;[166]Get number MOD 1000000 in T3
		MOVE T2,[POINT 6,T1]	;[166]Set up a pointer
		SETZ T1,		;[166]Initialize the sixbit value
	I26LOP: IDIVI T3,^D10		;[166]Convert the number
		PUSH P,T4		;[166]Save the digit
		SKIPE T3		;[166]Check if completed
		CALL I26LOP		;[166]Standard recursive algorithm
		POP P,T4		;[166]Restore the digit
		ADDI T4,20		;[166]Convert to sixbit
		IDPB T4,T2		;[166]Store the digit
		RET 			;[166]And return
 SUM 250322