File GETT.FT (FORTRAN source file)

Directory of image this file is from
This file as a plain text file

	SUBROUTINE GETT(DEV,FNAME,IEXT,ISUM)
	COMMON ARRYS
	DIMENSION IBUF(162),ITRL(2),ARRYS(20)
	INTEGER DATA(81,3),PTR,HIGH
C
C
	CALL OPENI(4,DEV,FNAME,IEXT)
	CALL READB(4,80,IBUF)
	LENGTH= IBUF(1)+IBUF(11)*(IBUF(12)+IBUF(13))-79
	KTRUN=IBUF(15)
 10	ICNT=100
	LENGTH=LENGTH-100
	IF(LENGTH .LT. 0)ICNT=LENGTH+100
	CALL READB(4,ICNT,IBUF)
	IF(LENGTH .GT. 0)GOTO 10
C
C
	DO 150 I=1,KTRUN
	CALL READB(4,2,ITRL)
	CALL FETCH(ARRYS(I),1,81,DATA)
	IF(ISUM .GT. 0)GOTO 20
	DO 20 J=1,81
	DATA(J,1)=0
	DATA(J,2)=0
	DATA(J,3)=0
 20	CONTINUE
	LENGTH= 2*ITRL(2)
	CALL READB(4,LENGTH,IBUF)
	K1=1
	NUM=DATA(81,1)
	IEND=ITRL(2)
	DO 140 L=1,IEND
	IF(NUM .GT. 0)GOTO 100
	NUM=NUM+1
	PTR=NUM
	GOTO 133
 100	LOW=1
	HIGH=NUM
 115	PTR=(LOW+HIGH)/2
	IF(IBUF(K1) .LE. DATA(PTR,1))GOTO 120
	LOW=PTR+1
	GOTO 125
 120	IF(IBUF(K1) .EQ. DATA(PTR,1))GOTO 135
	HIGH=PTR-1
 125	IF(LOW .LT. HIGH)GOTO 115
	K=NUM+1
	NEND=K
	NSTRT=PTR+2
	DO 130 IDUM=NSTRT,NEND
	LNXT=K-1
	DATA(K,1)=DATA(LNXT,1)
	DATA(K,2)=DATA(LNXT,2)
	DATA(K,3)=DATA(LNXT,3)
 130	CONTINUE
	PTR=PTR+1
	NUM=NUM+1
 133	DATA(PTR,1)=IBUF(K1)
	DATA(PTR,2)=0
	DATA(PTR,3)=0
 135	K1=K1+1
	INTER= 77B .AND. IBUF(K1)
	IRSP= (7700B .AND. IBUF(K1))/64
	IF(INTER .EQ. IRSP)DATA(PTR,2)=DATA(PTR,2)+1
	DATA(PTR,3)=DATA(PTR,3)+1
	K1=K1+1
 140	CONTINUE
	DATA(81,1)=NUM
	CALL STORE(ARRYS(I),1,81,DATA)
 150	CONTINUE
	RETURN
	END



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search