C	TO TEST DATA STRUCTURE
	SUBROUTINE MASTER
	LOGICAL B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,LP
	INTEGER FIRST
	COMMON/OIL/IVECT(200)
	COMMON/EYCEP/EYE(3),CEN(3),UP(3)
	COMMON/LINKIT/ISTRT,LINKS(6,15)
	COMMON/LIMITS/XMIN,XMAX,YMIN,YMAX
	CALL CLEAR(.FALSE.)
	CALL DISPLY(0,500,IGET)
	ITAG=0
	LP=.FALSE.
	EYE(1)=0.
	EYE(2)=0.
	EYE(3)=45.
	CEN(1)=0.
	CEN(2)=0.
	CEN(3)=0.
	UP(1)=0.
	UP(2)=1.+CEN(2)
	UP(3)=0.
	DIST=40.
	XMIN=-30.
	XMAX=30.
	YMIN=-30.
	YMAX=30.
	IX=0
	IY=0
	CALL SETPEN(ITAG,LP,IX,IY)
	CALL BUTTON(1)
	CALL INITL
	CALL READIN
	CALL START
	MODULE=ISTRT
	CALL FILMOD(MODULE)
	NEW=1
	MODULE=ISTRT
	CALL DRAWIT(DIST,NEW,MODULE)
999	B1=.FALSE.
	B2=.FALSE.
	B3=.FALSE.
	B4=.FALSE.
	B5=.FALSE.
	B6=.FALSE.
	CALL BUTTON(3,B1,B2,B3,B4,B5,B6)
100	CALL BUTTON(2,B1)
	IF(B1)GO TO 5
	IF(LP)GO TO 25
	GO TO 100
5	CALL RESET
	MODULE=ISTRT
	CALL FILMOD(MODULE)
	CALL DRAWIT(DIST,NEW,MODULE)
	B1=.FALSE.
	CALL BUTTON(3,B1,B2,B3,B4,B5)
	GO TO 100
25	B5=.FALSE.
	B1=.FALSE.
	B2=.FALSE.
	B3=.FALSE.
	B4=.FALSE.
	LP=.FALSE.
	AN=5.
	CALL BUTTON(3,B1,B2,B3,B4,B5)
26	CALL BUTTON(2,B1,B2,B3,B4,B5,B6,B7)
	IF(B1)GO TO 27
	IF(B2)GO TO 28
	IF(B3)GO TO 29
	IF(B4)GO TO 40
	IF(B5)GO TO 50
	IF(B6)GO TO 999
	IF(B8)GO TO 666
	GO TO 26
27	RO=AN
	IF(B7)RO=-AN
	PI=0.
	YA=0.
	GO TO 30
28	RO=0.
	PI=AN
	IF(B7)PI=-AN
	YA=0.
	GO TO 30
29	RO=0.
	PI=0.
	YA=AN
	IF(B7)YA=-AN
30	MODL=ITAG
	CALL ROTATE(RO,PI,YA,MODL)
	CALL FILMOD(MODL)
	CALL DRAWIT(DIST,NEW,MODL)
	CALL PULSE(IDO,N)
	LP=.FALSE.
	GO TO 26
40	WRITE(4,425)
425	FORMAT(1X,25HDETECT MODULE TO BE MOVED)
41	IF(LP)GO TO 42
	GO TO 41
42	WRITE(4,426)ITAG
426	FORMAT(1X,6HMODULE,I3)
	WRITE(4,427)
427	FORMAT(1X,14HDX,DY,DZ 3F5.1)
	READ(4,525)DX,DY,DZ
525	FORMAT(3F5.1)
	MODL=ITAG
	CALL TRANS(DX,DY,DZ,MODL)
	CALL FILMOD(MODL)
	CALL DRAWIT(DIST,NEW,MODL)
	CALL PULSE(IDO,N)
	LP=.FALSE.
	B4=.FALSE.
	CALL BUTTON(3,B1,B2,B3,B4)
	GO TO 26
50	WRITE(4,450)
450	FORMAT(1X,26HDETECT MODULE TO BE SCALED)
51	IF(LP)GO TO 52
	GO TO 51
52	WRITE(4,451)ITAG
451	FORMAT(1X,6HMODULE,I3)
	WRITE(4,452)
452	FORMAT(1X,14HSX,SY,SZ 3F5.1)
	READ(4,550)SX,SY,SZ
550	FORMAT(3F5.1)
	MODL=ITAG
	CALL SCALE(SX,SY,SZ,MODL)
	CALL FILMOD(MODL)
	CALL DRAWIT(DIST,NEW,MODL)
	CALL PULSE(IDO,N)
	LP=.FALSE.
	B5=.FALSE.
	CALL BUTTON(3,B1,B2,B3,B4,B5)
	GO TO 26
666	CONTINUE
	PAUSE
	GO TO 25
	STOP
	END