User`s guide
E-Prime User’s Guide
Chapter 3: Critical Timing
Page 91
There may also be an interruption in the timing sequence if a stimulus is terminated by a subject
response (e.g., one of its input masks has its End Action property set to Terminate). When this
occurs, E-Prime assumes the user wants the next stimulus to occur as soon as possible after the
current event is terminated. Otherwise the End Action property would have been set to (none).
E-Prime handles this case by instructing the next stimulus object to set its onset time to the time
of the response rather than the onset time it was originally expecting. Note that this has the same
effect as temporarily switching to Event mode timing for the current object and then resuming the
Cumulative timing sequence. For this reason, it is recommended that stimulus presentations
NOT be terminated by response events (e.g., if an input masks End Action is set to “(none)” then
the response will be accepted, scored and logged as expected but the stimulus sequence will not
be interrupted by the collection of the response).
Custom Mode Timing
E-Prime offers a third, advanced display mode -- Custom Mode Timing – which allows the use
of E-Basic script to evaluate the timing error and introduce an algorithm to deal with the error by
explicitly setting the onset and offset times of the event. The onset and offset times can be
specified using the object’s CustomOnsetTime and CustomOffsetTime properties. It should be
noted that when using this timing mode on an object, the system relies only on these two
properties to determine how long the object should execute (e.g., the Duration and PreRelease
properties of the object are effectively ignored). These onset/offset times are normally set in
script by adding some offset to the time returned from E-Prime’s real-time clock (refer to the
Clock.Read method in the E-Basic Online Help). For example,
Probe.CustomOnsetTime
= Clock.Read + 5000
Probe.CustomOffsetTime
= Probe.CustomOnsetTime + 100
Now that you have been introduced to E-Prime’s different timing modes let’s take a closer look at
how the two primary modes (Event and Cumulative) could affect the example display sequence
depicted in Figure 8, presenting a sequence of visual stimuli in the center of the screen at 100ms
intervals.
Figure 9 depicted delays that were presumed to occur as a result of some interruption by the
operating system. However, the primary cause of stimulus onset delays is the refresh cycle itself.
The actual presentation of visual stimuli will always be delayed to the next refresh due to the
limitation of computer displays presenting material on scan based monitors (Technique 2, section
3.3.1.2)
7
. Assuming a refresh duration of 13.67ms (a 73.1Hz refresh rate), each display will have
a potential delay of 0-13.67ms, which results in an average delay of 6.83ms and a standard
deviation of 3.95ms.
If Event timing mode was in use, the first display would have a delay of 7ms, and the second
display would not begin looking for the vertical blanking event until 107ms. In Event mode, after
100 displays of 100ms, the expected cumulative delay would be 683ms (100 x mean delay), thus
the end of the sequence would occur at 10.683 seconds. Because the duration for each display
is set to 100ms, the time from the onset of one display until the experiment starts waiting for the
next display would always be at least 100ms. The average display duration would be 106.83ms
with a standard deviation of 3.95ms.
7
There are vector-based display and LED lamp devices that do allow immediate writing. Vector devices are
very expensive and rarely used. LED devices can perform continuously varying presentations of lights.
Although LCD monitors do not exhibit phosphor decay because they are continuously illuminated they still
exhibit the same basic refresh timing problems as CRT monitors as they still rely on a scan-based
presentation of the image.