C FLY WRITE
C
	LOGICAL T,F,SKIP
	DIMENSION LIST(10),FILE(2)
	COMMON/LIMITS/XMIN,XMAX,YMIN,YMAX
	COMMON/OIL/IVECT(1000)
	COMMON/PAINT/I2STRT,I2END,PICT(4,200)
	COMMON/BULK/I3STRT,I3END,O(6,200)
	COMMON/EYCEP/EYE(3),CENTRE(3),UP(3)
	DATA VEL/5.0/,DISTAN/350.0/,HIGH,SID/0.0,0.0/
	DATA T/.TRUE./,F/.FALSE./,ITAG/1/
	DATA FILE(1),FILE(2)/5HDATA*,4H*SRC/
	DATA SKIP/.FALSE./
	DATA K1/1/,K3/3/,K6/6/,K7/7/,K36/36/
C
	IF(SKIP) GO TO 9
	CALL CLEAR (.FALSE.)
	SKIP=.TRUE.
9	CALL SEEK (2,FILE)
	READ (2,10) N
	READ (2,11) ((O(I,J),I=1,6),J=1,N)
	CALL CLOSE (2)
10	FORMAT (I4)
11	FORMAT (6F10.2)
C
	I2STRT=1
	I3STRT=1
	I3END=N
C
	XMIN=(-80.0)
	XMAX=80.0
	YMIN=XMIN
	YMAX=XMAX
C
	EYE(1)=0.0
	EYE(2)=5.0
	EYE(3)=500.0
	CENTRE(1)=0.0
	CENTRE(2)=5.0
	CENTRE(3)=0.0
	UP(2)=15.0
	RADIAN=3.1415926/180.
C
100	CALL INPUT (K3,K36,LIST,F,T)
	XDEL=(LIST(1)-1040)/300
	ZDEL=(LIST(2)-1020)/300
	XCEN=(LIST(3)-1020)/300
C
1	EYE(1)=EYE(1)+XDEL
	EYE(3)=EYE(3)+ZDEL
C
	XD=CENTRE(1)-EYE(1)
	ZD=CENTRE(3)-EYE(3)
	ANG=-XCEN*RADIAN
	SINE=SIN(ANG)
	COSINE=COS(ANG)
	CENTRE(1)=(XD*COSINE+ZD*SINE)+EYE(1)
	CENTRE(3)=(ZD*COSINE-XD*SINE)+EYE(3)
C
	UP(1)=CENTRE(1)
	UP(3)=CENTRE(3)
C
	CALL ROTER
	CALL MAPPER (250.0)
	CALL VECTOR(K1,PICT,K1,I2END,IVECT,K1,LAST,K7,K1,F)
	CALL DISPLY (K6,ITAG+1,IVECT,K1,LAST)
	CALL DISPLY (K3,ITAG)
	ITAG=ITAG+1
C
	GO TO 100
2	CONTINUE
	STOP
	END