' *** MILLITIM.LST *** 2nd GFA-Manual, page 3-11 > PROCEDURE millitimer_init ' ' *** Special timer with smallest unit timer.step# (actual value varies) ' *** Theoretically 0.2 milliseconds can be measured ' *** In the FOR-NEXT loop your reaction-time is measured in milliseconds ' ' *** Global : timer.step# ' LOCAL t1#,t2#,i,k% {ADD(XBIOS(14,1),6)}=0 ! clear keyboard-buffer t1#=TIMER FOR i=1 TO 20000 KEYLOOK k% EXIT IF k%<>0 NEXT i t2#=TIMER timer.step#=(t2#-t1#)/4000000 ! in seconds RETURN > PROCEDURE millitimer(VAR milli.sec#) LOCAL i,k% FOR i=1 TO 20000 KEYLOOK k% EXIT IF k%<>0 NEXT i milli.sec#=ROUND(i*timer.step#*1000,1) ! 1 decimal RETURN ' ********* '