Google
 

Trailing-Edge - PDP-10 Archives - bb-y390o-bm_tops20_v41_atpch_20 - autopatch/tfrcob.c14
There are 3 other files named tfrcob.c14 in the archive. Click here to see a list.
 DEL 22/1	;14C1
	IF1	<PRINTX TFRCOB-20 Version 4(236)>

 INS 27/1	;14C2
		PRIVER(TFRCOB)

 INS 5/2	;14C3
	;BCM	2-Apr-86	[251] Test for display before testing for multiple
	;BCM	31-Mar-86	[250] Use the MIN of scroll size or last element.
	;BCM	28-Mar-86	[247] Don't recalculate fill size in FWRITE.
	;BCM	26-Mar-86	[246] Only set the scroll region once.
	;BCM	11-Mar-86	[245] Justify fields terminated by arrow keys.
	;BCM	3-Jan-85	[242] Copy back numeric string if zeros were replaced.
	;BCM	31-Dec-85	[241] Save register E in STRPRM.
	;BCM	31-Dec-85	[240] Save SFDES around VET routine call.
	;BCM	11-Dec-85	[237] .OUP20; Make sure previous blank lines get output
 REP 22/34	;14C4
	STRPRM:
				;;STORE THE FLAG REGISTER (PRM) BACK INTO THE
				;; FIELD AREA FOR SAVING BETWEEN CALLS

 WIT

	;; STORE THE FLAG REGISTER (PRM) BACK INTO THE
	;; FIELD AREA FOR SAVING BETWEEN CALLS

	STRPRM:	PUSH	P,E			;[241] SAVE REG E FOR USE
 INS 32/34	;14C5
		POP	P,E			;[241] RESTORE REG E
 REP 70/39	;14C6
		SKIPN	A,ENUMRD		;IF NOT OVERWRITING
		 JRST	FWR.1			; THEN SKIP ON..
		SUB	A,FNUMRD		;ELSE GET THE DIFFERENCE TO FILL
		MOVEM	ENUMRD			;AND SAVE TEMPORARILY
		SKIPLE	A			;IF POSITIVE
 WIT
	;**;[247] At FWRITE+16L
		SKIPLE	A,ENUMRD		;[247] IF POSITIVE
 INS 29/40	;14C7
	;**;[250] At MWR.1+1
		CAMLE	B,A			;[250] LSTELM = 
		  MOVE	B,A			;[250]    MIN(LAST FREE, WINDOW SIZE)
 INS 235/46	;14C8
	;**;[240] AT RDF.12+16L
		PUSH	P,SFDES			;[240] SAVE THIS TOO
 INS 238/46	;14C9
		POP	P,SFDES			;[240] RESTORE SUBFIELD DESCRIPTOR
 INS 274/58	;14C10
	;**;[245] At INR.ES+15L
			 PUSH  P,A		;[245] SAVE RETURN CODE
			 SETZ  E,		;[245] CLEAR JUSTIFY FLAG
			 CALL  SFJUST		;[245] JUSTIFY FIELD
			  JFCL			;[245] 
			 POP   P,A		;[245] GET BACK RETURN CODE
 INS 96/60	;14C11

		TXNE	Z,%ZERO			;[242] WAS THIS A ZERO REPLACED STR?
		 JRST	SFJ.3			;[242] NO, THEN ITS OK
		MOVE	A,SUBLEN		;[242] COPY THE TMP BUF BACK TO VALFLD
		MOVE	B,[POINT 7,INTBUF]	;[242] IT STILL CONTAINS STRING WITH
		MOVE	D,A			;[242] LEADING ZEROS IN IT
		MOVE	E,SUBPTR		;[242]
		EXTEND	A,[MOVSRJ]		;[242]
		 JFCL				;[242]
 DEL 24/70	;14C12
		TXNE	PRM,%MULT		;IF WE FIND A MULTIPLE FIELD
		 JRST	RWT.RM			;THEN DO IT ALL IN ONE GO
 INS 29/70	;14C13
	;**;[251] At RWT.RF+7L
		TXNE	PRM,%MULT		;[251] IF WE FIND A MULTIPLE FIELD
		 JRST	RWT.RM			;[251] THEN DO IT ALL IN ONE GO
 REP 178/90	;14C14
			   SKIPA		;  THEN NOTHING TO DO
			    MOVEM B,.OCSC	;  ELSE MARK AS FIRST CHANGED TO SPACE
 WIT
	;**;[237] At .OUP20+12L
			   RET			;[237] THEN NOTHING TO DO
			 MOVEM	B,.OCSC		; ELSE MARK AS FIRST CHANGED TO SPACE
			 SKIPE	.OLBL		;[237] IF BLANK LINES PRECEED US
			  CALL	.OUP50		;[237] THEN CLEAR PRECEEDING LINES
 REP 87/94	;14C15
			 CALL	$SASCIZ		;SET TO NORMAL SCROLL JUST IN CASE
			 JRST	$TTST1]		
 WIT
	;**;[246] At $TTSTR+11L
			 SKIPN	SCRNRM		;[246] SCROLL ALREADY NORMAL?
			 CALL	$SASCIZ		;SET TO NORMAL SCROLL JUST IN CASE
			 SETOM	SCRNRM		;[246] REMEMBER ITS NORMAL
			 JRST	$TTST1]		
		SETZM	SCRNRM			;[246] SCROLL IS NOT SET NORMAL
 INS 485/100	;14C16
	SCRNRM:	0			;[246] FLAG FOR NORMAL SCROLL INDICATION
 SUM 255899