User`s guide

E-Prime User’s Guide
Chapter 3: Critical Timing
Page 89
in E-Prime are fixed for the session of the experiment and are not simply numbers of the desired
display times. This relates to Problem 3 above (Section 3.2.3), which explained that interactions
with the visual display are only effective relative to refresh cycles.
The concept of presenting displays as multiples of the refresh cycle has several implications.
First, recognize that the onset time of a display interacts with the refresh cycle, and you must
determine whether you want to synchronize the onset time of an event with the beginning of the
next refresh cycle (this is the default option in E-Prime). The second implication of the refresh
cycle is that the effective duration of a display (i.e., the amount of time that the subject sees the
stimulus) is always an integer multiple of the refresh cycle time. You cannot present a complete
stimulus for half of a cycle. The third implication is that specifying commands to synchronize with
the vertical blanking event will add delays to the experiment. If you setup an experiment with
three stimulus displays that are set to synchronize with the next refresh cycle, the displays will be
presented sequentially with at least one refresh cycle between them (e.g., if the refresh duration
is 14ms with a 71.4Hz refresh rate, three stimulus displays set to a duration of 0ms will take at
least 42ms). If the three stimulus displays are presented without synching to the refresh cycle,
the computer may prepare all three images before the next blanking, and the subject may see
only the last image of the sequence or partial/torn images, and the subject may report seeing
flashing of the display. Note that if you are really trying to present multiple stimuli simultaneously,
this is best done in E-Prime using the Slide object (e.g., Slide objects can present multiple
occurrences of text, images, and sounds synchronized to the same refresh cycle).
All E-Prime stimulus presentation objects allow synchronization with the refresh cycle via the
object’s properties. The Sync tab located in the stimulus presentation object’s (e.g., TextDisplay,
ImageDisplay, SlideDisplay, SoundOut, etc.) Property pages allows the user to specify whether
the onset time for the next stimulus should be delayed until the next vertical blanking event.
When the Onset Sync property is set to vertical blank, the object will delay until the next vertical
blanking before presenting the stimulus. Users can sync both the onset and the offset (removal
or clearing) of the stimulus object with separate properties (i.e., Onset Sync and Offset Sync). By
default, stimulus presentation objects are set to synchronize the stimulus onset with the vertical
blank. The default value for Offset Sync is set to “none since displays are typically not removed,
but rather replaced by the onset of the next stimulus. Since display actions occur on onset sync
events, it is critical that the computer hardware detect all onset events.
3.3.1.3 Technique 3: Choosing an appropriate timing mode
Timing delays will occur in experiments due to the needs of the operating system, delays required
to prepare stimuli (see Problem 2, section 3.2.2), and the refresh cycle (see Problem 3, section
3.2.3). If you understand these effects and apply techniques to address them, the delays will
become rare. However, they will still occur and can produce timing problems in the experiment.
In E-Prime, these errors can be minimized, but they cannot all be fully eliminated. It is important
to understand that these delays will occur, and decide how the computer should compensate for
them. To illustrate, assume you wanted to present four displays for 100ms, as in Figure 7 above.
Assume the operating system took 20ms and paused the program to perform some action just
before the second display was to present the stimulus. This introduces a timing error. What do
you want the experiment to do about it? Should it still display the stimulus for 100ms and delay
all subsequent displays, or should it shorten the current display to compensate for the delay, and
keep all subsequent displays on time? E-Prime offers timing modes to allow the user to
determine how to handle timing delays such as these (Refer to Appendix E for a description of
the timing of events involved in the execution of an object). Figure 9 shows a timing diagram of
two timing modes (Event and Cumulative) supported by E-Prime when unexpected timing delays
occur.