1 C -+-+-+-+-+
\ e H A E C A L . F T
\ e -+-+-+-+-+
3 C SACCADE CALIBRATION FOR EOG ANALYSIS
13 \f INTEGER J,I,N,I1,I2,S0,S1
14 REAL SACOFS,TE1,SPKMIN,SPKMAX
18 C STATEMENT FUNCTIONS ARE
20 SPKPOS(IP0)=INT(XYSAM(IP0,SPKCN)*SPKFAC+SPKOFS+.5)-180
24 IF (OPTION.EQ.11) GOTO 60 @ EI- PRINTS THE CALIBRATE VECTOR
25 IF (OPTION.EQ.2) GOTO 50 @ EI1 INSERT FACTOR 1
26 CALL ASKHIM(2) @ ASK FOR BEGIN & ENDS
30 C COMPUTE SPEAKER DC OFFSET
37 SPMIN=AMIN1(SPMIN,TE1)
38 70 SPMAX=AMAX1(SPMAX,TE1)
39 SPKOFS=-((SPMAX-SPMIN)*.5+SPMIN)
42 CALL MOVE (-18,0,EICH)
43 CALL MOVE (-18,0,PEICH)
47 IF (MOD(I1,5).NE.0) GOTO 10
48 IF (IABS(I1).GT.30) GOTO 10
50 I1=NCOND(I1.LT.0,1,2) @ POSITION BETWEEN -40 AND 40 DEG. 5 DEG STEPS +- 1 DEG ERROR
51 EICH(I1,I2)=XYSAM(I,0)+EICH(I1,I2)
52 PEICH(I1,I2)=PEICH(I1,I2)+1
55 C MITTELWERTE BERECHNEN
59 20 EICH(J,I)=EICH(J,I)/MAX0(PEICH(J,I),1) @ PREVENTS DIVIDE BY ZERO
60 IF (PEICH(2,1).NE.0) GOTO 25
62 WRITE (TTO,2) EICH,PEICH @ PRINT AN ERROR MSG
63 50 CONTINUE @ EI1 COMES HERE
64 CALL MOVE (-18,1.,EICH)
65 CALIBR=0. @ NO CALIBRATION ASSUMED
66 SPKOFS=0 @ NO SPEAKER POSITION OFFSET
68 60 WRITE (3,2) EICH,PEICH @ PRINT THE CALIBRATE VECTOR
70 25 SACOFS=EICH(2,1) @ VALUE FOR 0 DEG
73 30 EICH(J,I)=(EICH(J,I)-SACOFS)/((I-1)*5)
76 35 EICH(J,I)=COND(PEICH(J,I),EICH(J,I),EICH(J,I-1))
80 40 EICH(J,I)=COND(PEICH(J,I),EICH(J,I),(EICH(J,I+1)+EICH(J,I))*.5)
82 1 FORMAT (' KEINEN NULLDURCHGANG DES LAUTSPRECHERS GEFUNDEN, ',
84 2 FORMAT (1X,1P,4(2E11.3,2X)/1X,5(2E11.3,2X)/1X,
85 * 0P,4(2F11.0,2X),/1X,5(2F11.0,2X))