Google
 

Trailing-Edge - PDP-10 Archives - bb-bt99g-bb - plrmac.c08
There is 1 other file named plrmac.c08 in the archive. Click here to see a list.
 REP 32/1	;08C1
	PLREDT==422				;EDIT NUMBER
 WIT
	PLREDT==441				;EDIT NUMBER
 INS 817/3	;08C2

		423	PLRDSK	Make DSKTRY agree with the monitor.

		424	PULSAR	Add support for ABORT labeler message from monitor.
			PLRMAC	This will prevent cases where the user ^C's out of
			PLRLBP	a program and later hangs in EL when trying to use
			PLROPR	the tape.

		425	PLRTAP	Correct TAPOP. error recovery stuff where it compares
				function codes.

		426	PLRMAC	Add new termination codes for 1) volume protection
				failure, 2) file protection failure, and 3) unexpired
				file.
			PLRLBP	Return new termination codes as necessary.  Only ask
				the operator about volume protection errors once and
				memorize the answer for use later when suceeding errors
				occur.

		427	PLRMAC	Add support for
			PLRINI	 /NEW-VOLUME processing
			PLRLBP    in the tape initializer

		430	PULSAR	Add code to detect and optionally override file
			PLRMAC	sequence number errors.  This is needed because
			PLRLBP	of PULSAR we're too particular about what junk it
			PLROPR	wrote into the HDR labels.  The operator is notified
				of the error and has the options:
				  ABORT:   Abort request and return LE.PSE to user.
				  PROCEED: Fix up TCB and pretend error didn't occur.
				  RETRY:   Retry search for correct sequence number.
						*** Note ***
				This error recovery proceedure has purposly been made
				painful to use.  The intent is to pursuade users to
				rewrite their tapes with good data.


		431	PLRLBP	Don't store junk in IBM HDR2 records.

		432	PLRLBP	SKIP MTA: EOT/BACKSPACE MTA:1 FILE/TYPE MTA: doesn't
				on a labeled tape.  PS.SET shouldn't lite TI.LET bit.

		433	PLRMAC	Add new bit TS.ILC to inhibit label parameter clearing
			PLRLBP	after a positioning operation.  Needed so appending to
				a file will carry over the necessary parameters to the
				EOF records.  Also fix numerous bugs with associated
				with appending to files and writing tape marks.

		434	PLRLBP	Return LE.WLK if drive is hardware write-locked instead
				of volume protection failure.

		435	PLRLBP	On labeled tapes, always set file sequence number
				to one at mount time. This avoid positioning errors
				when users start I/O without doing a rewind first.

		436	PULSAR	Fix ?Ill UUO at PC 1 introduced by abort code.

		437	PLRLBP	After failing to read a good VOL1 record, set
				default density for drives which do not do
				auto-density detection.

		440	PLRT10	Correct bug in date translation routine.

		441	PLROPR	Add support for PSI on reel switch.  This merely
			PLRTAP	involes doing the label switch TAPOP. on all
				reel switches.
 REP 4/4	;08C3
		B=13			;B POINTS TO A TCB IN L$xxxx AND T$xxxx
		LT=14			;LT CONTAINS THE LABEL TYPE IN L$xxxx AND T$xxxx
		BUF=15			;BUF IS THE POINTER TO THE IO BUFFER IN
					; PLRLBP

		IOCAN%==16		;Define these here till defined in 
		IOTMV%==17		;  UUOSYM...
		IONOP%==1		;  " "
		IOEOF%==2		;  " "


		M=16			;MESSAGE POINTER
 WIT
		B=13			;B POINTS TO A TCB
		LT=14			;LT CONTAINS THE LABEL TYPE
		BUF=15			;BUF IS THE POINTER TO THE CURRENT IO BUFFER
		M=16			;MESSAGE POINTER

		IOVPF%==24		;UNTIL IN UUOSYM
		IOFPF%==25		;UNTIL IN UUOSYM
		IOUEF%==26		;UNTIL IN UUOSYM
		%RLABO==4		;UNTIL IN QSRMAC
 INS 18/7	;08C4
		TW.MAX==6			;MAX # OF WS CODES NOT COUNTING TW.RUN
 REP 31/7	;08C5
	;	  TI.ABO==1B8			;DEVICE POSITION OPERATION ABORTED
 WIT
		  TI.ABO==1B8			;ABORT CURRENT OPERATION
 INS 124/7	;08C6
		  TS.ILC==1B31			;INHIBIT LABEL PARAMETER CLEARING
						; AFTER POSITIONING OPERATION.  USED
						; BY ROUTINES THAT BACKSPACE INTO A
						; FILE FOR THE PURPOSES OF APPENDING
						; TO THAT FILE.  HENCE LABEL DATA IS
						; STILL VALID.
	TCB.S2::! BLOCK 1			;SECOND TAPE STATUS WORD
		TS.VPC==3B2			;VOLUME PROTECTION CHECK
		   .TSASK==0			   ;ASK OPERATOR
		   .TSABO==1			   ;ALWAYS ABORT
		   .TSPRO==2			   ;ALWAYS PROCEED
		TS.FSE==1B1			;FILE SEQUENCE ERROR PROCESSING
 REP 133/7	;08C7
		TE.TRM==17			;ERROR CODE (SEE TLM.ST @ TS.TRM)
 WIT
		TE.TRM==777			;TERMINATION CODE
						;MUST MATCH PDVESE BYTE SIZE IN MONITOR
 REP 178/7	;08C8
		TV.INC==777B23			;Increment for next volid
		TV.CNT==7777B14			;# of volumes to do
		TV.HLD==1B2			;Keep tape up after initialize
		TV.OVR==1B1			;Override expriation check
 WIT
		TV.CNT==7777B23			;# of volumes to do
		TV.NOE==1B4			;DRIVE CANNOT DO DATA SECURITY ERASE
		TV.ERA==1B3			;ERASE THE TAPE IF POSSIBLE
		TV.HLD==1B2			;Keep tape up after initialize
		TV.OVR==1B1			;Override expriation check
		TV.NEW==1B0			;/NEW-VOLUME (RE-INIT AN EXISTING TAPE)
	TCB.II::! BLOCK 1			;INITIALIZE INCREMENT FOR NEXT REELID
 INS 185/7	;08C9
	TCB.VP::! BLOCK 1			;POINTER TO LIST OF REELIDS
	TCB.VC::! BLOCK 1			;AOBJN POINTER TO CURRENT REELID
	TCB.IR::! BLOCK	1			;REQUEST-ID (/NEW)
 REP 34/8	;08C10
			LR.MAX==11		;MAX LABEL REQUEST CODE
 WIT
			LR.ABO==12		;ABORT CURRENT OPERATION
			LR.MAX==12		;MAX LABEL REQUEST CODE
 INS 53/8	;08C11
			LE.LRA==IOLRA%		;LABELER REQUEST ABORTED BY RESET UUO
			LE.VPF==IOVPF%		;VOLUME PROTECTION FAILURE
			LE.FPF==IOFPF%		;FILE PROTECTION FAILURE
			LE.UEF==IOUEF%		;UNEXPIRED FILE
 INS 8/16	;08C12
		PLR%RT==6			;RETRY TYPED BY OPR
		PLR%PR==7			;PROCCEED TYPED BY OPR
 SUM 70797