Google
 

Trailing-Edge - PDP-10 Archives - bb-kl11c-bm_tops20_v6_1_atpch1_16 - autopatch/batcon.c14
There is 1 other file named batcon.c14 in the archive. Click here to see a list.
 REP 46/1	;14C1
		BTNMAN==:4301		;MAINTENACE EDIT NUMBER
 WIT
		BTNMAN==:4304		;MAINTENACE EDIT NUMBER
 INS 86/4	;14C2
	4302	5.1232		3-Mar-86
		In LOGS.4 add three new SETJB% calls to set the batch job name,
	sequence number and request ID in th JSB.  This is for USAGE session record.
	***This edit requires edits:
		MONSYM(7258), MONITOR(7259), ACTSYM(36), CHKPNT(129).***

	4303	5.1241		11-Jun-86
		After a system crash, for batch jobs submitted with /RESTART:NO
	and no CHKPNTs, check first for  reserved label %RERR. If found, continue
	processing from that point; otherwise process as before, i.e., search
	for the first occurence of %FIN::.

	4304	5.1242		18-Jul-86
		Correct the call to CHFDB when zeroing out word .FBBK0 of the log 
	file's FDB. Use the log file's JFN, not its IFN.

 REP 75/31	;14C3
	LOGS.4:	SETJB				;DO THE FUNCTION
		ERJMP	.POPJ			;***IGNORE ERROR RETURN
 WIT

	LOGS.4:	SETJB				;DO THE FUNCTION
	;**;[4302]At LOGS.4:+1L replace 2 lines with 13 lines  JYCW  7-Mar-86
		ERJMP	.+1			;[4302]Ignore error
		MOVEI	S2,.SJBSN		;[4302]Set BATCH sequence # function
		LOAD	T1,.JQJBB+JIB.SQ(R),JB.SEQ ;[4302]Get the sequence number
		SETJB				;[4302]Do the function
		ERJMP	.+1			;[4302]Ignore error
		MOVEI	S2,.SJBJN		;[4302]Set Batch Job name function
		MOVE	T1,.JQJBB+JIB.JN(R)	;[4302]Get the job name
		SETJB				;[4302]Do the function
		ERJMP	.+1			;[4302]Ignore error
		MOVEI	S2,.SJBID		;[4302]Set request ID 
		HRRZ	T1,.JQJBB+JIB.ID(R)	;[4302]Get the request ID 
		SETJB				;[4302]Do the function
		ERJMP	.POPJ			;[4302]Ignore error return
 REP 19/32	;14C4
		TRO	F,FR.LSL		;LIST SKIPPED LINES(WHOLE CTL)
		JRST	FINSRC			;GO TO %FIN::
 WIT
	;**;[4303]At NORM.1:+2L replace 2 lines with 6 lines  JCR  6/11/86
		TRO	F,FR.FIN!FR.RER		;[4303]Bypass %FIN::, search for %RERR
		TRZ	F,FR.LSL		;[4303]Don't list skipped lines
		MOVE	S1,[SIXBIT/%RERR/]	;[4303]Look for %RERR
		MOVEM	S1,.JLABL(R)		;[4303]Place in the data base
		SETOM	.JCRER(R)		;[4303]First search for %RERR
		JRST	LABSRC			;[4303]Do the search
 REP 9/39	;14C5
		JRST	NORM.1		;OUTPUT ERROR AND GO TO %FIN::
 WIT
	;**;[4303]At GOTO.1:+1L Change 1 line  JCR  6/11/86
		JRST	SRCFIN		;[4303]Output error and go to %FIN::
 REP 31/39	;14C6
		JRST	NORM.1		;ISSUE ERROR AND GOTO %FIN::
 WIT
	;**;[4303]At BACK.1:+1L change 1 line  JCR  6/11/86
		JRST	SRCFIN		;[4303]Issue error and go to %FIN::
 REP 18/41	;14C7
		JRST	NORM.1		;GIVE ERROR AND GOTO %FIN::
 WIT
	;**;[4303]At IF...E:+2L change 1 line  JCR  6/11/86
		JRST	SRCFIN		;[4303]Give error and go to %FIN::
 REP 26/43	;14C8
		JRST	FINSRC		;GOTO %FIN::
 WIT
	;**;[4303]At ER...1:+7L replace 1 line with 2 lines  JCR  6/11/86
		MOVE	S1,[SIXBIT/%FIN/] ;[4303]Look for a %FIN::
		JRST	FINSR3		;[4303]GOTO %FIN::
 REP 49/43	;14C9
		SKIPA	S1,[SIXBIT/%TERR/]  ;SET UP FOR SEARCH
	FINSRC:	MOVE	S1,[SIXBIT/%FIN/] ;LABEL WE WANT
		MOVEM	S1,.JLABL(R)
		JRST	LABSRC		;NOW SEARCH FOR IT
 WIT
	;**;[4303]At TIMERR:+6L replace 4 lines with 24 lines  JCR  6/11/86
		MOVE	S1,[SIXBIT/%TERR/]  ;[4303]Set up for search
		JRST	FINSR3		;[4303]Do the search
	FINSRC:	$CALL	SAVPOS		;[4303]Save the current file position
		TRO	F,FR.%SG	;[4303]% is legal
		$CALL	GETSIX		;[4303]Get the potential label
		CAIE	CH,":"		;[4303]Was it a label?
		JRST	FINSR2		;[4303]No, so search for %FIN::
		CAMN	S1,[SIXBIT/%RERR/] ;[4303]Was the label a %RERR:: ?
		SKIPA			;[4303]Yes, the one we want
	FINSR2:	MOVE	S1,[SIXBIT/%FIN/] ;[4303]The label we want
		PUSH	P,S1		;[4303]Destroyed by REPOSI
		$CALL	REPOSI		;[4303]Restore the original position
		POP	P,S1		;[4303]Restore the label
	FINSR3:	MOVEM	S1,.JLABL(R)	;[4303]Store in the data base
		JRST	LABSRC		;[4303]NOW SEARCH FOR IT

	;[4303]Here on label errors from GOTO, CHKPNT, IF and operator
	;[4303]response not allowed.

	SRCFIN:	$CALL	L$CMNT##	;[4303]Set up for comment
		$TEXT	(L$OUT1,<? ^T/(T1)/>) ;[4303]Output message to log
		TRO	F,FR.LSL	;[4303]List skipped lines
		MOVE	S1,[SIXBIT/%FIN/] ;[4303]Label we want
		MOVEM	S1,.JLABL(R)	;[4303]Place in the data base

 REP 12/44	;14C10
		PUSHJ	P,GETSIX	;GET A POSSIBLE LABEL
 WIT
	;**;[4303]At LABS.0:+6L replace 1 line with 8 lines  JCR  6/11/86
		JUMPGE	CH,LABS0A	;[4303]End of the file found?
		SETZM	.JCUSI(R)	;[4303]Yes, position the file to the start
		$CALL	REPOSI		;[4303]Yes, Reposition the file
		TRZ	F,FR.FIN	;[4303]Do not skip over %FIN::
		TRO	F,FR.LSL	;[4303]List skipped lines
		MOVE	S1,[SIXBIT/%FIN/] ;[4303]Look for a %FIN:: this time
		JRST	FINSR3		;[4303]Try for a %FIN this time
	LABS0A:	PUSHJ	P,GETSIX	;[4303]GET A POSSIBLE LABEL
 INS 38/44	;14C11
	;**;[4303]At LABFND:+7L add 11 lines  JCR  6/11/86
		TRNN	F,FR.RER	;[4303]Looking for %RERR:: ?
		JRST	LABF.1		;[4303]No, so just output the label
		CAME	S1,[SIXBIT/%RERR/]  ;[4303]Is this a %RERR:: ?
		  JRST	LABF.1		;[4303]No, so just output the label
		SKIPL	.JCRER(R)	;[4303]Yes, first time for search?
		JRST	FINFND		;[4303]No, treat as a %FIN::
		TRO	F,FR.LSL	;[4303]Yes, this time list skipped lines
		SETZM	.JCRER(R)	;[4303]Second time for %RERR:: search
		SETZM	.JCUSI(R)	;[4303]Position file to the start
		$CALL	REPOSI		;[4303]Position the file
		JRST	LABSRC		;[4303]Find the %RERR:: and list skipped lines
 REP 3/46	;14C12
	FINFND:	CAMN	S1,.JLABL(R)	;WERE WE SEARCHING FOR %FIN::
 WIT
	;**;[4303]At FINFND:+0L replace 1 line with 2 lines  JCR  6/11/86
	FINFND:	TRZ	F,FR.RER	;[4303]Turn off looking for %RERR::
		CAMN	S1,.JLABL(R)	;[4303]Were we searching for %FIN:: (or %RERR)
 REP 23/62	;14C13
	ZFBBK0:	HRLI	S1,.FBBK0	;Pick up the word to be changed
		HRR	S1,.JLJFN(R)	;Log file JFN
 WIT
	;**;[4304]At ZFBBK0:+0L replace 2 lines with 4 lines  JCR  7/18/86
	ZFBBK0:	MOVE	S1,.JLJFN(R)	;[4304]Get the log file's IFN
		MOVEI	S2,FI.CHN	;[4304]Get the log file's JFN
		$CALL	F%INFO		;[4304]Return the JFN in S1
		HRLI	S1,.FBBK0	;[4304]Pick up the word to be changed
 REP 12/69	;14C14
	GETCT1:	JRST	CLOSJB		;END OF CTL..END JOB
 WIT
	;**;[4303]At GETCT1:+0L replace 1 line with 4 lines  JCR  6/11/86
	GETCT1:	TRZN	F,FR.RER	;[4303]Looking for a %RERR:: ?
		JRST	CLOSJB		;[4303]No, end of CTL..end job
		SETO	CH,		;[4303]Indicate failed to find %RERR::
		POPJ	P,		;[4303]And return
 INS 13/83	;14C15
	;**;[4303]At GETONE:+3L add 1 line  JCR  6/11/86
		JUMPL	CH,CPOPJ3	;[4303]End of CTL file while looking for %RERR
 REP 85/96	;14C16
		PJRST	NORM.1			;CHECK ERROR AND RETURN
 WIT
	;**;[4303]At SNWT.E:+5L change 1 line  JCR  6/11/86
		PJRST	SRCFIN			;[4303]Check error and return
 SUM 103354