Google
 

Trailing-Edge - PDP-10 Archives - bb-jr93i-bb - 7,6/ap019/foropn.c19
There are 9 other files named foropn.c19 in the archive. Click here to see a list.
 REP 3/1	;19C1
		TV	FOROPN	OPEN & CLOSE ,11(5022)
 WIT
		TV	FOROPN	OPEN & CLOSE ,11(5040)
 INS 1179/2	;19C2
	5037	RLF	16-Dec-87
		Put pointer for file string in AC2 for long
		form %GTJFN so logical names can work properly

	5040	RLF	31-Dec-87
		Clear buffer before %GTJFN to avoid "byte count
		too small" error.
 DEL 48/36	;19C3
		MOVE	T1,DATGEN	;SET DEFAULT GENERATION
		MOVEM	T1,GEN(D)
 INS 30/46	;19C4
		SETZM	JFNBLK+.GJCPP	;[5040] INITIALIZE BYTE POINTER
		SETZM	JFNBLK+.GJCPC	;[5040] AND THE BYTE COUNT
 INS 78/46	;19C5
		SETZM	JFNBLK+.GJCPP	;[5040] INITIALIZE BYTE POINTER
		SETZM	JFNBLK+.GJCPC	;[5040] AND THE BYTE COUNT
 INS 47/55	;19C6
		MOVE	T5,GEN(D)	;[5037] SAVE WHAT'S THERE
 REP 51/55	;19C7


		SETZM	TATBLK		;CLEAR THE TEMP ATRIBUTE BLOCK
 WIT
		JUMPN	T5,CLRBLK	;[5037] IF NULL, WE HAVE TO CHECK
		MOVE	T1,DATGEN	;[5037] TO SEE IF WE GOT
		CAMN	T1,GEN(D)	;[5037] AN IMPLICIT ZERO;
		 SETZM	GEN(D)		;[5037] NULL GENERATION IF IMPLICIT

	CLRBLK:	SETZM	TATBLK		;[5037] CLEAR THE TEMP ATRIBUTE BLOCK
 INS 64/56	;19C8
		SKIPN	GEN(D)		;[5037] IF NULL, DON'T HAVE
		 POPJ	P,		;[5037] TO BOTHER
 REP 10/69	;19C9
	DOGTJF:	MOVE	T1,GJBTS	;Get JFN bits to set
 WIT
	DOGTJF:	MOVE	T1,[POINT 7,%TXTBF]	;[5037] POINT TO BUFFER
		PUSHJ	P,FNSCLR	;[5037] CLEAR BUFFER
		PUSHJ	P,FNOJFN	;[5037] GET FILE SPEC
		MOVE	T1,GJBTS	;Get JFN bits to set
 REP 18/69	;19C10
		SETZ	T2,		;NO STRING
 WIT
		SETZM	JFNBLK+.GJCPP	;[5040] INITIALIZE BYTE POINTER
		SETZM	JFNBLK+.GJCPC	;[5040] AND THE BYTE COUNT
		HRROI	T2,%TXTBF	;[5037] AC2 POINTS TO FILE STRING
 SUM 87492