1 C
\ e-+-+-+-+-+ H A E N Y X . F T -+-+-+-+-+
3 C MUST BE MAPPED INTO THE SAME LEVEL & OVERLAY WITH HAENYA ROUTINE
4 C THERE ARE SOME TEMPORARY VARIABLES WHICH MAY NOT BE DESTROYED WHILE
5 C SCANNING ONE DATA SET. ( T1,T2,T3,THRL,THRU)
6 C TAKE CARE FOR CORRECT OVERLAY PLACEMENT.
13 C * UP 28-MAY-84 RIGHT/LEFT SACCADE SEPERATION
14 C * UP 3-DEC-85 INCLUDES SCHMITT TRIGGER HANDLING
15 REAL FUNCTION NYXYSM(ID,CH)
17 C RETURNS THE DATA POINTS FOR NYADD PLOT ROUTINE
20 INTEGER ID @ HOLDS THE INDEX TO THE DATA POINTS
21 * ,CH @ HOLDS CHANNEL NUMBER (FROM 0 TO CHNLS+1)
22 COMMON CNYA: REAL NORM (2,8) @ HOLDS FACTOR FOR ADDITION AND CONVERSION TO DEG. ( 1 TO 8 BUT CH IS 0 TO 7 SO CH+1!!)
25 C NYXYSM:= .IF CH .EQ 2 .THEN NYTASM(ID) .ELIF
26 C CH .LT CHNLS+STRIGS .THEN XYSAM(ID,CH) .ELIF
27 C CH .EQ CHNLS+STRIGS .THEN XYSAM(ID,0)*NYSFAC+XYSAM(ID,1) .ELIF
28 C CH .EQ CHNLS+STRIGS+1 .THEN NYXYSM(ID,CH-1,...)+XYSAM(ID,2)*TABLEF
36 INTEGER SACBEG,SACEND,NXTSAC,ERR,T1,T2,T3,J,K1
37 REAL THRL,THRU @ LOWER/UPPER THRESHOLD FOR DFIR FUNCTION
38 DATA T1,T2,NXTSAC,THRL,THRU /3*1,2*0/
40 EXTERNAL XYSAM,NYTASM,COND
43 K1=CH+1 @ INDEX FOR CHANNEL# 1 ... 8
44 IF (CH.EQ.2) GOTO 101 @ SPECIAL HANDLING FOR TURN TABLE
45 IF (CH.GE.CHNLS+STRIGS) GOTO 10 @ RESULT MUST BE COMPUTED
46 NYXYSM=XYSAM(ID,CH)*NORM(K1) @ CONVERT TO DEGREES
51 GOTO (102,102,103), CH-CHNLS-STRIGS+1
55 NYXYSM=NYTASM(ID)*NORM(K1) @ TABLE POSITION
60 IF (THRL.NE.THRU) GOTO 21
62 IF(.NOT.BREAK(6)) GOTO 22 @ SW 6 ASKS FOR TRIGGER THRESHOLD
63 WRITE (TTO,1) @ ASK FOR THRESHOLD
64 READ (TTI,2) THRL,THRU
67 22 THRL=COND(THRL.LT.0,THRL,-THRL) @ COMPUTE CORRECT SIGN
68 THRU=COND(THRU.GE.0,THRU,-THRU)
74 IF (ID.LT.T1) GOTO 25 @ TEST FOR NEW SCAN OF DATA POINTS
77 NYXYSM=(NYTASM(ID)-NYTASM(T1))*NORM(3) @ TURNTABLE POSITION AT THE END OF LAST SACCADE
78 NYXYSM=XYSAM(ID,0)*NORM(1)+XYSAM(ID,1)*NORM(2)
79 * +NYXYSM @ NYSTAGMUS+HEADPOSITION+TABLE
81 24 T3=NXTSAC @ HERE WE START SEARCHING FOR NEXT SACCADE
82 CALL SACCAD (T3,ENDS*SAMRAT,THRL,THRU,SACBEG,SACEND,SACAMP,
85 C SEPERATION FOR LEFT/RIGHT TURNING
86 IF (SACAMP.LE.0.AND.TABDIR.EQ.1HR) GOTO 24 @ WRONG DIRECTION
87 IF (SACAMP.GE.0.AND.TABDIR.EQ.1HL) GOTO 24 @ WRONG DIRECTION
88 T1=T2 @ SAVE THE END OF THE LAST BUT ONE SACCADE FOUND
89 T2=SACEND @ THE END OF THE LAST SACCADE
92 NYXYSM=NYXYSM*NORM(K1) @ CONVERT TO DEGREES
99 1 FORMAT (' U/O SCHWELLENWERT (2F3.0) ',$)