K.O.,
Not sure that I follow all this, but here's a thought ...
Note that TargetOnsetTime is always from the start of the experiment.
To see this better, do the following: (1) Log the TargetOnsetTime of
your stimuli, and look at the values that show up in the .edat2 file;
(2) Start the program, but then wait a minute or so before moving from
whatever "Welcome" screen you have before you start the experiment
proper, and then see how your timing works. I bet something else
happens! (Also, look at
https://groups.google.com/d/topic/e-prime/OeiZ00V9SRc for some
explanation of the various E-Prime time audit measures.)
So
timeLeft = 60000 - STIM60.TargetOnsetTime
may not do what you want it to do. You might rather do something like
timeLeft = (60000 + FirstOnset) - STIM60.TargetOnsetTime
depending on what you really want this to do. Moreover, it will help
your debugging if you log these values so you can see what they do, e.g.,
c.SetAttrib "timeleft", timeleft
or sometimes, just do this at run time with a MsgBox, e.g.,
MsgBox "timeleft: " & timeleft
That should help you see what is really going on.
---------------
David McFarlane
E-Prime training online:
http://psychology.msu.edu/Workshops_Courses/eprime.aspx
Twitter: @EPrimeMaster (
https://twitter.com/EPrimeMaster)