-
Notifications
You must be signed in to change notification settings - Fork 0
/
failed_merge.es2
executable file
·532 lines (419 loc) · 175 KB
/
failed_merge.es2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
<?xml version="1.0"?>
<Experiment xmlns:dt="urn:schemas-microsoft-com:datatypes"><General><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>147</Build><_VersionPersist dt:dt="int">200</_VersionPersist></Version></General><ExperimentObject><Guid dt:dt="string">{CE2448F1-6742-40C6-AB77-9B2558540CBE}</Guid><Root dt:dt="string">SessionProc</Root><Name dt:dt="string">RingRewardBehave_eyelink</Name><Author dt:dt="string">Trinity (University of Pittsburgh)</Author><Abstract dt:dt="string"></Abstract><Notes dt:dt="string"></Notes><ClockGuid dt:dt="string">{10343DBD-55BE-45C7-AA62-A5239F6918AB}</ClockGuid><ClockIndex dt:dt="int">0</ClockIndex><ClockScale dt:dt="r8">1</ClockScale><VersionMajor dt:dt="int">1</VersionMajor><VersionMinor dt:dt="int">0</VersionMinor><VersionInternal dt:dt="int">0</VersionInternal><VersionBuild dt:dt="int">68</VersionBuild><VersionAutoIncrement dt:dt="boolean">1</VersionAutoIncrement><CreationDateUtc dt:dt="dateTime">2021-03-31T02:41:35.000</CreationDateUtc><Features dt:dt="int">536870912</Features><Devices><Device><Name dt:dt="string">Display</Name><Class dt:dt="string">Display</Class><DeviceObject><_VersionPersist dt:dt="int">1</_VersionPersist><OpenDevice dt:dt="int">-1</OpenDevice><Width dt:dt="int">640</Width><Height dt:dt="int">480</Height><BitsPerPixel dt:dt="int">16</BitsPerPixel><DefaultColor dt:dt="string">white</DefaultColor><DisplayIndex dt:dt="int">1</DisplayIndex><RefreshRateRequested dt:dt="int">0</RefreshRateRequested><MinAcceptableRefreshRate dt:dt="int">39</MinAcceptableRefreshRate><MaxAcceptableRefreshRate dt:dt="int">201</MaxAcceptableRefreshRate><DefaultSettingsUsed dt:dt="string">No</DefaultSettingsUsed><BadRefreshErrorUsed dt:dt="string">No</BadRefreshErrorUsed><FlippingEnabled dt:dt="boolean">0</FlippingEnabled><RefreshAlignment dt:dt="string">0%</RefreshAlignment></DeviceObject></Device><Device><Name dt:dt="string">Sound</Name><Class dt:dt="string">Sound</Class><DeviceObject><_VersionPersist dt:dt="int">1</_VersionPersist><OpenDevice dt:dt="int">0</OpenDevice><API dt:dt="string">DirectSound</API></DeviceObject></Device><Device><Name dt:dt="string">Keyboard</Name><Class dt:dt="string">Keyboard</Class><DeviceObject><_VersionPersist dt:dt="int">1</_VersionPersist><OpenDevice dt:dt="int">-1</OpenDevice><CollectionMode dt:dt="int">1</CollectionMode><EmulateDeviceName dt:dt="string"></EmulateDeviceName><SystemAbortWatchSequence dt:dt="string"></SystemAbortWatchSequence><UserBreakStateSequence dt:dt="string"></UserBreakStateSequence><ConditionalExitSequence dt:dt="string"></ConditionalExitSequence><CapsLock dt:dt="boolean">0</CapsLock><NumLock dt:dt="boolean">1</NumLock></DeviceObject></Device><Device><Name dt:dt="string">Mouse</Name><Class dt:dt="string">Mouse</Class><DeviceObject><_VersionPersist dt:dt="int">1</_VersionPersist><OpenDevice dt:dt="int">-1</OpenDevice><CollectionMode dt:dt="int">1</CollectionMode><EmulateDeviceName dt:dt="string"></EmulateDeviceName><SystemAbortWatchSequence dt:dt="string"></SystemAbortWatchSequence><UserBreakStateSequence dt:dt="string"></UserBreakStateSequence><ConditionalExitSequence dt:dt="string"></ConditionalExitSequence><OpenMode dt:dt="int">0</OpenMode><ShowCursor dt:dt="boolean">0</ShowCursor></DeviceObject></Device></Devices><Packages/><DataFile><WarnBeforeOverwrite dt:dt="int">-1</WarnBeforeOverwrite><WarnIfConvertFailed dt:dt="int">-1</WarnIfConvertFailed><RemoveERecoveryFile dt:dt="int">0</RemoveERecoveryFile><ReceiveFeedbackDuringDataFileConversion dt:dt="int">-1</ReceiveFeedbackDuringDataFileConversion><DataFileName dt:dt="string"></DataFileName><LogLevels><LogLevel dt:dt="string">Block</LogLevel><LogLevel dt:dt="string">Trial</LogLevel><LogLevel dt:dt="string">SubTrial</LogLevel><LogLevel dt:dt="string">LogLevel5</LogLevel><LogLevel dt:dt="string">LogLevel6</LogLevel><LogLevel dt:dt="string">LogLevel7</LogLevel><LogLevel dt:dt="string">LogLevel8</LogLevel><LogLevel dt:dt="string">LogLevel9</LogLevel><LogLevel dt:dt="string">LogLevel10</LogLevel></LogLevels></DataFile><StartupInfo><DisplaySummary dt:dt="boolean">1</DisplaySummary><UseDefaults dt:dt="boolean">0</UseDefaults><LoadStartupInfo dt:dt="boolean">1</LoadStartupInfo><StartupInfoItems><StartupInfoItem><Name dt:dt="string">Subject</Name><Prompt dt:dt="string">Please enter the Subject Number (1-32767, 0=No Data Logging):</Prompt><DataType dt:dt="int">0</DataType><Enabled dt:dt="int">-1</Enabled><PromptEnabled dt:dt="int">-1</PromptEnabled><Default dt:dt="string">1</Default><Min dt:dt="int">0</Min><Max dt:dt="int">32767</Max></StartupInfoItem><StartupInfoItem><Name dt:dt="string">Session</Name><Prompt dt:dt="string">Please enter the Session Number (1-32767):</Prompt><DataType dt:dt="int">0</DataType><Enabled dt:dt="int">-1</Enabled><PromptEnabled dt:dt="int">-1</PromptEnabled><Default dt:dt="string">1</Default><Min dt:dt="int">1</Min><Max dt:dt="int">32767</Max></StartupInfoItem><StartupInfoItem><Name dt:dt="string">Group</Name><Prompt dt:dt="string">Please enter Subject's Group (0-32767):</Prompt><DataType dt:dt="int">0</DataType><Enabled dt:dt="int">0</Enabled><PromptEnabled dt:dt="int">0</PromptEnabled><Default dt:dt="string">1</Default><Min dt:dt="int">0</Min><Max dt:dt="int">32767</Max></StartupInfoItem><StartupInfoItem><Name dt:dt="string">Name</Name><Prompt dt:dt="string">Please enter Subject's Name:</Prompt><DataType dt:dt="int">1</DataType><Enabled dt:dt="int">0</Enabled><PromptEnabled dt:dt="int">0</PromptEnabled><Default dt:dt="string"></Default><MaxLength dt:dt="int">255</MaxLength></StartupInfoItem><StartupInfoItem><Name dt:dt="string">Age</Name><Prompt dt:dt="string">Please enter Subject's Age (0-150):</Prompt><DataType dt:dt="int">0</DataType><Enabled dt:dt="int">0</Enabled><PromptEnabled dt:dt="int">0</PromptEnabled><Default dt:dt="string">0</Default><Min dt:dt="int">0</Min><Max dt:dt="int">150</Max></StartupInfoItem><StartupInfoItem><Name dt:dt="string">Sex</Name><Prompt dt:dt="string">Please enter Subject's Sex:</Prompt><DataType dt:dt="int">2</DataType><Enabled dt:dt="int">0</Enabled><PromptEnabled dt:dt="int">0</PromptEnabled><Default dt:dt="string">male</Default><Choices><Choice dt:dt="string">male</Choice><Choice dt:dt="string">female</Choice></Choices></StartupInfoItem><StartupInfoItem><Name dt:dt="string">Handedness</Name><Prompt dt:dt="string">Enter Subject's Handedness:</Prompt><DataType dt:dt="int">2</DataType><Enabled dt:dt="int">0</Enabled><PromptEnabled dt:dt="int">0</PromptEnabled><Default dt:dt="string">left</Default><Choices><Choice dt:dt="string">left</Choice><Choice dt:dt="string">right</Choice></Choices></StartupInfoItem><StartupInfoItem><Name dt:dt="string">ResearcherID</Name><Prompt dt:dt="string">Please enter Researcher's ID:</Prompt><DataType dt:dt="int">0</DataType><Enabled dt:dt="int">0</Enabled><PromptEnabled dt:dt="int">0</PromptEnabled><Default dt:dt="string">1</Default><Min dt:dt="int">0</Min><Max dt:dt="int">32767</Max></StartupInfoItem></StartupInfoItems></StartupInfo></ExperimentObject><StudioItems><StudioItem><Name dt:dt="string">Dot</Name><TypeName dt:dt="string">Slide</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{D60E9F8B-54C8-46D8-9C38-144E2CED2A75}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>168</Build><_VersionPersist dt:dt="int">110</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">OnsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">DurationError</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PreRelease</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Duration</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">StartTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">FinishTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TimingMode</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PendingInputMasks</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RTTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ACC</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RT</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CRESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Tag</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetToOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem></LoggingItems><DeviceList/><InputMasks/><Tasks/><SlideStates><SlideState><Name dt:dt="string">Default</Name><ForeColor dt:dt="string"></ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderColor dt:dt="string">black</BorderColor><BorderWidth dt:dt="string">0</BorderWidth><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">100%</Width><Height dt:dt="string">100%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><ClearAfter dt:dt="string">No</ClearAfter><Enabled dt:dt="string">Yes</Enabled><SlideObjects><SlideObject><TypeName dt:dt="string">SlideImage</TypeName><Name dt:dt="string">Image1</Name><ForeColor dt:dt="string">black</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">[location]:center</X><Y dt:dt="string">center</Y><Width dt:dt="string">25%</Width><Height dt:dt="string">25%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><Filename dt:dt="string">CUE.BMP</Filename><Stretch dt:dt="string">No</Stretch><StretchMode dt:dt="string">Both</StretchMode><MirrorLeftRight dt:dt="string">No</MirrorLeftRight><MirrorUpDown dt:dt="string">No</MirrorUpDown><SourceColorKey dt:dt="string">black</SourceColorKey><UseSourceColorKey dt:dt="string">No</UseSourceColorKey></SlideObject></SlideObjects></SlideState></SlideStates><Duration dt:dt="string">1500</Duration><JumpLabel dt:dt="string"></JumpLabel><PreRelease dt:dt="string">0</PreRelease><ActiveState dt:dt="string">Default</ActiveState><TimingMode dt:dt="int">1</TimingMode><OnsetSync dt:dt="int">1</OnsetSync><OffsetSync dt:dt="int">0</OffsetSync><DisplayName dt:dt="string"></DisplayName><GeneratePreRun dt:dt="int">0</GeneratePreRun><GeneratePostRun dt:dt="int">0</GeneratePostRun><ResetLoggingProperties dt:dt="boolean">0</ResetLoggingProperties></ObjectData></StudioItem><StudioItem><Name dt:dt="string">AllDone</Name><TypeName dt:dt="string">Slide</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{896C6E3B-481F-4E11-9BE9-AFDA83BC9491}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>168</Build><_VersionPersist dt:dt="int">110</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">OnsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">DurationError</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PreRelease</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Duration</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">StartTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">FinishTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TimingMode</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PendingInputMasks</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RTTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ACC</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RT</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CRESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Tag</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetToOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem></LoggingItems><DeviceList><Device dt:dt="string">Keyboard</Device></DeviceList><InputMasks><InputMask><DeviceName dt:dt="string">Keyboard</DeviceName><DeviceClass dt:dt="string">Keyboard</DeviceClass><AllowableInput dt:dt="string">{ANY}</AllowableInput><CorrectInput dt:dt="string"></CorrectInput><TimeLimit dt:dt="string"></TimeLimit><MaxCount dt:dt="string">1</MaxCount><InputAction dt:dt="int">1</InputAction><SyncOwnerDuration dt:dt="boolean">1</SyncOwnerDuration><Enabled dt:dt="boolean">1</Enabled><FlushInputBuffer dt:dt="string">Yes</FlushInputBuffer><TerminationInput dt:dt="string"></TerminationInput><UserTag dt:dt="string"></UserTag><EchoClients/><ResponseMode dt:dt="string">All</ResponseMode><ProcessBackspace dt:dt="string">Yes</ProcessBackspace></InputMask></InputMasks><Tasks/><SlideStates><SlideState><Name dt:dt="string">Default</Name><ForeColor dt:dt="string"></ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderColor dt:dt="string">black</BorderColor><BorderWidth dt:dt="string">0</BorderWidth><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">100%</Width><Height dt:dt="string">100%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><ClearAfter dt:dt="string">No</ClearAfter><Enabled dt:dt="string">Yes</Enabled><SlideObjects><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text1</Name><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">25%</Width><Height dt:dt="string">25%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">18</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">Done</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject></SlideObjects></SlideState></SlideStates><Duration dt:dt="string">-1</Duration><JumpLabel dt:dt="string"></JumpLabel><PreRelease dt:dt="string">0</PreRelease><ActiveState dt:dt="string">Default</ActiveState><TimingMode dt:dt="int">1</TimingMode><OnsetSync dt:dt="int">1</OnsetSync><OffsetSync dt:dt="int">0</OffsetSync><DisplayName dt:dt="string"></DisplayName><GeneratePreRun dt:dt="int">0</GeneratePreRun><GeneratePostRun dt:dt="int">0</GeneratePostRun><ResetLoggingProperties dt:dt="boolean">0</ResetLoggingProperties></ObjectData></StudioItem><StudioItem><Name dt:dt="string">Intro</Name><TypeName dt:dt="string">Slide</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{949A076C-9B69-4FB1-BC03-9FE7D4C5430D}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>168</Build><_VersionPersist dt:dt="int">110</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">OnsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">DurationError</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PreRelease</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Duration</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">StartTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">FinishTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TimingMode</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PendingInputMasks</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RTTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ACC</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RT</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CRESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Tag</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetToOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem></LoggingItems><DeviceList><Device dt:dt="string">Keyboard</Device></DeviceList><InputMasks><InputMask><DeviceName dt:dt="string">Keyboard</DeviceName><DeviceClass dt:dt="string">Keyboard</DeviceClass><AllowableInput dt:dt="string">{ANY}</AllowableInput><CorrectInput dt:dt="string"></CorrectInput><TimeLimit dt:dt="string"></TimeLimit><MaxCount dt:dt="string">1</MaxCount><InputAction dt:dt="int">1</InputAction><SyncOwnerDuration dt:dt="boolean">1</SyncOwnerDuration><Enabled dt:dt="boolean">1</Enabled><FlushInputBuffer dt:dt="string">Yes</FlushInputBuffer><TerminationInput dt:dt="string"></TerminationInput><UserTag dt:dt="string"></UserTag><EchoClients/><ResponseMode dt:dt="string">All</ResponseMode><ProcessBackspace dt:dt="string">Yes</ProcessBackspace></InputMask></InputMasks><Tasks/><SlideStates><SlideState><Name dt:dt="string">Default</Name><ForeColor dt:dt="string"></ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderColor dt:dt="string">black</BorderColor><BorderWidth dt:dt="string">0</BorderWidth><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">100%</Width><Height dt:dt="string">100%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><ClearAfter dt:dt="string">No</ClearAfter><Enabled dt:dt="string">Yes</Enabled><SlideObjects><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text3</Name><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">272</X><Y dt:dt="string">167</Y><Width dt:dt="string">10%</Width><Height dt:dt="string">18%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">18</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">=</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text4</Name><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">267</X><Y dt:dt="string">335</Y><Width dt:dt="string">12%</Width><Height dt:dt="string">18%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">18</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">=</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text5</Name><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">463</X><Y dt:dt="string">156</Y><Width dt:dt="string">44%</Width><Height dt:dt="string">25%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">16</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">Don't look at dot
Look to opposite side</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text6</Name><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">465</X><Y dt:dt="string">335</Y><Width dt:dt="string">44%</Width><Height dt:dt="string">18%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">16</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">Don't look at dot
Look to opposite side</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text7</Name><ForeColor dt:dt="string">lime</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">460</X><Y dt:dt="string">380</Y><Width dt:dt="string">50%</Width><Height dt:dt="string">7%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">18</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">Yes</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">If correct = Reward!!!</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text11</Name><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">320</X><Y dt:dt="string">51</Y><Width dt:dt="string">25%</Width><Height dt:dt="string">25%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">18</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">Get Ready!!</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject><SlideObject><TypeName dt:dt="string">SlideImage</TypeName><Name dt:dt="string">Image2</Name><ForeColor dt:dt="string">black</ForeColor><BackColor dt:dt="string">white</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">139</X><Y dt:dt="string">156</Y><Width dt:dt="string">32%</Width><Height dt:dt="string">38%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><Filename dt:dt="string">smallneutralring_chuck.BMP</Filename><Stretch dt:dt="string">No</Stretch><StretchMode dt:dt="string">Both</StretchMode><MirrorLeftRight dt:dt="string">No</MirrorLeftRight><MirrorUpDown dt:dt="string">No</MirrorUpDown><SourceColorKey dt:dt="string">black</SourceColorKey><UseSourceColorKey dt:dt="string">No</UseSourceColorKey></SlideObject><SlideObject><TypeName dt:dt="string">SlideImage</TypeName><Name dt:dt="string">Image1</Name><ForeColor dt:dt="string">black</ForeColor><BackColor dt:dt="string">white</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">139</X><Y dt:dt="string">343</Y><Width dt:dt="string">32%</Width><Height dt:dt="string">38%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><Filename dt:dt="string">smalldollarring_chuck.BMP</Filename><Stretch dt:dt="string">No</Stretch><StretchMode dt:dt="string">Both</StretchMode><MirrorLeftRight dt:dt="string">No</MirrorLeftRight><MirrorUpDown dt:dt="string">No</MirrorUpDown><SourceColorKey dt:dt="string">black</SourceColorKey><UseSourceColorKey dt:dt="string">No</UseSourceColorKey></SlideObject></SlideObjects></SlideState></SlideStates><Duration dt:dt="string">-1</Duration><JumpLabel dt:dt="string"></JumpLabel><PreRelease dt:dt="string">0</PreRelease><ActiveState dt:dt="string">Default</ActiveState><TimingMode dt:dt="int">1</TimingMode><OnsetSync dt:dt="int">1</OnsetSync><OffsetSync dt:dt="int">0</OffsetSync><DisplayName dt:dt="string"></DisplayName><GeneratePreRun dt:dt="int">0</GeneratePreRun><GeneratePostRun dt:dt="int">0</GeneratePostRun><ResetLoggingProperties dt:dt="boolean">0</ResetLoggingProperties></ObjectData></StudioItem><StudioItem><Name dt:dt="string">masterlist</Name><TypeName dt:dt="string">List</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{AF2985CC-A44B-471D-AF24-0C8CDE8A852F}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>153</Build><_VersionPersist dt:dt="int">5</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">image</Name><Log dt:dt="boolean">1</Log></LoggingItem><LoggingItem><Name dt:dt="string">location</Name><Log dt:dt="boolean">1</Log></LoggingItem><LoggingItem><Name dt:dt="string">xdat</Name><Log dt:dt="boolean">1</Log></LoggingItem><LoggingItem><Name dt:dt="string">startcode</Name><Log dt:dt="boolean">1</Log></LoggingItem></LoggingItems><ItemList><Item dt:dt="string">ring</Item></ItemList><DeviceList/><Order dt:dt="int">1</Order><OrderBy dt:dt="int">0</OrderBy><NoRepeatAfterReset dt:dt="int">1</NoRepeatAfterReset><ResetEveryRun dt:dt="boolean">0</ResetEveryRun><HideLevelsWithZeroWeight dt:dt="boolean">0</HideLevelsWithZeroWeight><CycleDef dt:dt="int">0</CycleDef><CycleValueSamples dt:dt="int">0</CycleValueSamples><CycleValueCondition dt:dt="string"></CycleValueCondition><ExitDef dt:dt="int">0</ExitDef><ExitValueCycles dt:dt="int">1</ExitValueCycles><ExitValueSamples dt:dt="int">1</ExitValueSamples><ExitValueSeconds dt:dt="int">0</ExitValueSeconds><ExitValueCondition dt:dt="string"></ExitValueCondition><LoadMethod dt:dt="int">0</LoadMethod><Filename dt:dt="string"></Filename><Attributes><Attribute><Name dt:dt="string">Weight</Name><System dt:dt="int">1</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><OrderIndex dt:dt="int">0</OrderIndex></Attribute><Attribute><Name dt:dt="string">Nested</Name><System dt:dt="int">1</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><OrderIndex dt:dt="int">1</OrderIndex></Attribute><Attribute><Name dt:dt="string">Procedure</Name><System dt:dt="int">1</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">47</Width><Visible dt:dt="boolean">1</Visible><OrderIndex dt:dt="int">2</OrderIndex></Attribute><Attribute><Name dt:dt="string">image</Name><System dt:dt="int">0</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">95</Width><Visible dt:dt="boolean">1</Visible><VarType dt:dt="int">8</VarType><VarTypeInternal dt:dt="int">8</VarTypeInternal></Attribute><Attribute><Name dt:dt="string">location</Name><System dt:dt="int">0</System><DefaultValue dt:dt="string">?</DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><VarType dt:dt="int">8</VarType><VarTypeInternal dt:dt="int">8</VarTypeInternal></Attribute><Attribute><Name dt:dt="string">xdat</Name><System dt:dt="int">0</System><DefaultValue dt:dt="string">?</DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><VarType dt:dt="int">8</VarType><VarTypeInternal dt:dt="int">8</VarTypeInternal></Attribute><Attribute><Name dt:dt="string">startcode</Name><System dt:dt="int">0</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><VarType dt:dt="int">8</VarType><VarTypeInternal dt:dt="int">8</VarTypeInternal></Attribute></Attributes><Levels><Level dt:dt="string">3 ring neutralRing.BMP 7 151 50</Level><Level dt:dt="string">2 ring neutralRing.BMP 108 152 50</Level><Level dt:dt="string">2 ring neutralRing.BMP 214 153 50</Level><Level dt:dt="string">2 ring neutralRing.BMP 426 154 50</Level><Level dt:dt="string">2 ring neutralRing.BMP 532 155 50</Level><Level dt:dt="string">3 ring neutralRing.BMP 633 156 50</Level><Level dt:dt="string">3 ring dollarRing.BMP 7 171 70</Level><Level dt:dt="string">2 ring dollarRing.BMP 108 172 70</Level><Level dt:dt="string">2 ring dollarRing.BMP 214 173 70</Level><Level dt:dt="string">2 ring dollarRing.BMP 426 174 70</Level><Level dt:dt="string">2 ring dollarRing.BMP 532 175 70</Level><Level dt:dt="string">3 ring dollarRing.BMP 633 176 70</Level></Levels></ObjectData></StudioItem><StudioItem><Name dt:dt="string">master</Name><TypeName dt:dt="string">List</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{974482C4-3F1A-470C-84DE-503D8EF907A5}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>153</Build><_VersionPersist dt:dt="int">5</_VersionPersist></Version><LoggingItems/><ItemList><Item dt:dt="string">eyelinkCal</Item><Item dt:dt="string">rewardtask</Item><Item dt:dt="string">eyelinkDone</Item></ItemList><DeviceList/><Order dt:dt="int">0</Order><OrderBy dt:dt="int">0</OrderBy><NoRepeatAfterReset dt:dt="int">0</NoRepeatAfterReset><ResetEveryRun dt:dt="boolean">0</ResetEveryRun><HideLevelsWithZeroWeight dt:dt="boolean">0</HideLevelsWithZeroWeight><CycleDef dt:dt="int">0</CycleDef><CycleValueSamples dt:dt="int">0</CycleValueSamples><CycleValueCondition dt:dt="string"></CycleValueCondition><ExitDef dt:dt="int">0</ExitDef><ExitValueCycles dt:dt="int">1</ExitValueCycles><ExitValueSamples dt:dt="int">1</ExitValueSamples><ExitValueSeconds dt:dt="int">0</ExitValueSeconds><ExitValueCondition dt:dt="string"></ExitValueCondition><LoadMethod dt:dt="int">0</LoadMethod><Filename dt:dt="string"></Filename><Attributes><Attribute><Name dt:dt="string">Weight</Name><System dt:dt="int">1</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><OrderIndex dt:dt="int">0</OrderIndex></Attribute><Attribute><Name dt:dt="string">Nested</Name><System dt:dt="int">1</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><OrderIndex dt:dt="int">1</OrderIndex></Attribute><Attribute><Name dt:dt="string">Procedure</Name><System dt:dt="int">1</System><DefaultValue dt:dt="string"></DefaultValue><Width dt:dt="int">75</Width><Visible dt:dt="boolean">1</Visible><OrderIndex dt:dt="int">2</OrderIndex></Attribute></Attributes><Levels><Level dt:dt="string">0 eyelinkCal</Level><Level dt:dt="string">1 rewardtask</Level><Level dt:dt="string">0 eyelinkDone</Level></Levels></ObjectData></StudioItem><StudioItem><Name dt:dt="string">SessionProc</Name><TypeName dt:dt="string">Procedure</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{A0D780EB-3540-497C-ADEE-E20D77D4BB35}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>149</Build><_VersionPersist dt:dt="int">201</_VersionPersist></Version><LoggingItems/><ItemList><Item dt:dt="string">master</Item></ItemList><DeviceList/><LogData dt:dt="boolean">1</LogData><FlushDataLog dt:dt="boolean">0</FlushDataLog><GenerateLabels dt:dt="boolean">1</GenerateLabels><ProcessPendingInputMasks dt:dt="int">2</ProcessPendingInputMasks><GeneratePreRun dt:dt="int">2</GeneratePreRun><GeneratePostRun dt:dt="int">2</GeneratePostRun><FlowItems><FlowItem><Name dt:dt="string">master</Name><TypeName dt:dt="string">List</TypeName></FlowItem></FlowItems></ObjectData></StudioItem><StudioItem><Name dt:dt="string">rewardtask</Name><TypeName dt:dt="string">Procedure</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{97A54D20-8229-473F-9107-5945724042B2}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>149</Build><_VersionPersist dt:dt="int">201</_VersionPersist></Version><LoggingItems/><ItemList><Item dt:dt="string">Intro</Item><Item dt:dt="string">masterlist</Item><Item dt:dt="string">AllDone</Item></ItemList><DeviceList/><LogData dt:dt="boolean">1</LogData><FlushDataLog dt:dt="boolean">0</FlushDataLog><GenerateLabels dt:dt="boolean">1</GenerateLabels><ProcessPendingInputMasks dt:dt="int">2</ProcessPendingInputMasks><GeneratePreRun dt:dt="int">2</GeneratePreRun><GeneratePostRun dt:dt="int">2</GeneratePostRun><FlowItems><FlowItem><Name dt:dt="string">Intro</Name><TypeName dt:dt="string">Slide</TypeName></FlowItem><FlowItem><Name dt:dt="string">masterlist</Name><TypeName dt:dt="string">List</TypeName></FlowItem><FlowItem><Name dt:dt="string">AllDone</Name><TypeName dt:dt="string">Slide</TypeName></FlowItem></FlowItems></ObjectData></StudioItem><StudioItem><Name dt:dt="string">ring</Name><TypeName dt:dt="string">Procedure</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{1259BE0F-909C-41AF-A4EB-D3C83D13A23F}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>149</Build><_VersionPersist dt:dt="int">201</_VersionPersist></Version><LoggingItems/><ItemList><Item dt:dt="string">FixStart60</Item><Item dt:dt="string">FixWhiteCross</Item><Item dt:dt="string">RingTrigger</Item><Item dt:dt="string">RINGS</Item><Item dt:dt="string">AntiTrigger10</Item><Item dt:dt="string">AntiRedCross</Item><Item dt:dt="string">TargetTrigger</Item><Item dt:dt="string">Dot</Item><Item dt:dt="string">Stop</Item></ItemList><DeviceList/><LogData dt:dt="boolean">1</LogData><FlushDataLog dt:dt="boolean">0</FlushDataLog><GenerateLabels dt:dt="boolean">1</GenerateLabels><ProcessPendingInputMasks dt:dt="int">2</ProcessPendingInputMasks><GeneratePreRun dt:dt="int">2</GeneratePreRun><GeneratePostRun dt:dt="int">2</GeneratePostRun><FlowItems><FlowItem><Name dt:dt="string">FixStart60</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem><FlowItem><Name dt:dt="string">FixWhiteCross</Name><TypeName dt:dt="string">TextDisplay</TypeName></FlowItem><FlowItem><Name dt:dt="string">RingTrigger</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem><FlowItem><Name dt:dt="string">RINGS</Name><TypeName dt:dt="string">Slide</TypeName></FlowItem><FlowItem><Name dt:dt="string">AntiTrigger10</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem><FlowItem><Name dt:dt="string">AntiRedCross</Name><TypeName dt:dt="string">TextDisplay</TypeName></FlowItem><FlowItem><Name dt:dt="string">TargetTrigger</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem><FlowItem><Name dt:dt="string">Dot</Name><TypeName dt:dt="string">Slide</TypeName></FlowItem><FlowItem><Name dt:dt="string">Stop</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem></FlowItems></ObjectData></StudioItem><StudioItem><Name dt:dt="string">FixStart60</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{3BF3D6AE-881E-4F60-A41F-F27C46B14723}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">sent=PupilSend(EVENTSTROBE+60)</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">EyeLink</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{7E91C6C6-4FCE-43A3-AF80-003B6AA627B2}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">'
' Copyright (c) 1997 - 2009 by SR Research Ltd., All Rights Reserved
'
' This software is provided as is without warranty of any kind. The entire
' risk as to the results and performance of this software is assumed by the
' user. SR Research Ltd. disclaims all warranties, either express or implied
' ,including but not limited, the implied warranties of merchantability,
' fitness for a particular purpose, title and noninfringement, with respect
' to this software.
'
'
' For non-commercial use by Eyelink licencees only
'
'
'
'
Dim tracker As Object 'global reference to hold tracker object
Dim elutil As Object 'global reference to hold elutil object
Dim cal_background As String 'calibration background color
Dim cal_foreground As String 'calibration foreground
Dim cal_target_size As Integer 'calibration target size
Dim cal_pen_width As Integer 'calibration pen width, can be used to set the inner hole size.
'The inner hole size = cal_target_size-cal_pen_width
Dim incount As Integer 'global integer to hold input count
'############################### start calibration/validation/drift correct ##############
'
' The following routines provide drawing/input support for calibration,validation,drift
'correct and camera setup features. In e-prime 1.x the GDICal is used for all drawings except
'for custom drift correct target. In e-prime 2.x the GDICal is used conditionally and BusyCal is
'used conditionally to overcome some incompatibilities between the GDICal and e-prime2.x.
'
'In e-prime 2.x, the GDICal is used, by disabling the e-prime 2.x graphics environment. If e-prime 2.x
'graphics environment is not disabled, all the graphics will be presented behind the e-prime 2.x
' full screen window so that the calibration drawings will not show up. Under certain circumstances, eg.
'when custom drift correct target is presented, the BusyCal is used for calibration as disabling of e-prime 2.x
'drawing environment is not possible.
'
'Note that the busycal in e-prime does not support cameraimage over the link.
'
'
'Sub doCameraSetup
'Input: None
'Output:None
'Purpose: Setup gdical and calls doTrackerSetup to perform camera setup.
'Call this subroutine to do camera setup.
'
'
Sub doCameraSetup
Dim gcal As Object
Dim theHistory As RteCollection
Set theHistory = Keyboard.History ' we want to ignore the keys pressed while calibration.
theHistory.RemoveAll
Set gcal = elutil.getGDICal()
Rte.DeviceManager.Suspend 'This code may switch the resolution back to the previous resolution
gcal.enableKeyCollection True 'tell the com interface to start collecting keyboard
gcal.setCalibrationTargetSize 2,9
gcal.setCalibrationColors CColor(cal_foreground), CColor(cal_background)
gcal.setCalibrationWindow -1
tracker.doTrackerSetup
Rte.DeviceManager.Resume
gcal.enableKeyCollection False ' tell the com interface to stop collecting keyboard
Set gcal = Nothing
theHistory.RemoveAll
End Sub
'
'Sub doDriftCorrect
'Input:
' xloc - xlocation of the drift correction target
' yloc - ylocation of the drift correction target
' draw - if false, no target is drawn. If this is false, optionally pass in customDrift
' TextDisplay, so that custom target can be re-drawn if drift correction is cancelled and calibration is performed.
' allow_setup - if this is false, pressing escape does not perform a calibration.
' customDrift - optional argument of type TextDisplay to re-draw custom target.
'Output:None
'Purpose: Setup gdi cal and calls doDriftCorrect to perform drift correct.
'Call this subroutine to do drift correct.
'
'
Sub doDriftCorrect(xloc As Integer, yloc As Integer, draw As Boolean, allow_setup As Boolean,Optional customDrift As Variant)
Dim gcal As Object
Dim theHistory As RteCollection
Set theHistory = Keyboard.History ' we want to ignore the keys pressed while calibration.
theHistory.RemoveAll
Dim cd As TextDisplay
Set gcal = elutil.getGDICal()
gcal.enableKeyCollection True 'tell the com interface to start collecting keyboard
' call do drift correct with allow setup 0
' if the return value is 27 and allow setup value 1 then
' do normal calibration as in the else part of the previous else (do a camera setup.)
' once the camera setup Is done, recall Do drift correct.
If Not isMissing(customDrift) Then
Set cd = customDrift
cd.draw
Dim ret As Integer
ret = tracker.doDriftCorrectEx( xloc, yloc, 0, 0)
While ret=27 And allow_setup = True
Rte.DeviceManager.Suspend 'This code may switch the resolution back to the previous resolution
gcal.enableKeyCollection True 'tell the com interface to start collecting keyboard
gcal.setCalibrationTargetSize 2,9
gcal.setCalibrationColors CColor(cal_foreground), CColor(cal_background) 'cd.BackColor
gcal.setCalibrationWindow -1
tracker.doTrackerSetup
Rte.DeviceManager.Resume
cd.draw
ret = tracker.doDriftCorrectEx( xloc, yloc, draw, 0)
Wend
Else
Rte.DeviceManager.Suspend
gcal.setCalibrationTargetSize 2,9
gcal.setCalibrationColors CColor(cal_foreground), CColor(cal_background)
gcal.setCalibrationWindow -1
tracker.doDriftCorrect xloc, yloc,draw,allow_setup
Rte.DeviceManager.Resume
End If
gcal.enableKeyCollection False ' tell the com interface to stop collecting keyboard
Set gcal = Nothing
theHistory.RemoveAll
End Sub
'############################### end calibration/validation/drift correct ##############
</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">Stop</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{371B364F-423B-4593-9C6A-7E0771C0E401}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">sent=PupilSend(EVENTSTROBE+240)</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">AntiTrigger10</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{DA071BCE-92A9-45C7-846B-14801374A256}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">'Dim xdat As Integer
'xdat = c.getAttrib("startcode")
'sent=PupilSend(EVENTSTROBE + xdat)
sent=PupilSend(10)</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">TargetTrigger</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{076B5E67-BDA7-4697-8A44-6EC0E1A57C01}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">sent=sendXdatTable("xdat")</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">ASL</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{1C8F4160-8B43-484B-B3C5-990A65558A50}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">'User defined variables
Const PupilometerPresent = 1
'Pupilometer location
Const PUPIL_PORT_A = 768
Const PUPIL_PORT_B = 769
Const PUPIL_PORT_C = 770
Const a2d_BASE = 768
'pupil send values
Const TRIALSTART=1
Const EVENTSTROBE=0
'internal temporary variables
Dim sent As Integer
'====================================================
Const fMRI = 1
'ISCAN Pupilometer location
'CONST PUPIL_PORT_A = 768
'CONST PUPIL_PORT_B = 769
'CONST PUPIL_PORT_C = 770
'CONST ENDPUPILSIGNAL = 8
'CONST a2d_BASE = 768
'ASL Pupilometer location
'CONST PUPIL_PORT_A = 888 'pin 3-5 = xdat 1-3
'CONST PUPIL_PORT_B = 888 'pin 1 = xdat 15
'CONST PUPIL_PORT_C = 888 'pin 7 = xdat 5-6
'CONST ENDPUPILSIGNAL = 7 '7
'CONST a2d_BASE = 888
' Parallel port location
Const PARALLEL_PORT = 888 '&378
' Constants for the BSOFT DIG100/24 card
Const DIG100_BASE As Integer = &H200
Const DIG100_PORT_A As Integer = DIG100_BASE + 28
Const DIG100_PORT_B As Integer = DIG100_BASE + 29
Const DIG100_PORT_C As Integer = DIG100_BASE + 30
Const DIG100_PORT_CONTROL As Integer = DIG100_BASE + 31
' DIG100 Control port assignments for Mode 0
' 7 6 5 4 3 2 1 0
' 1 0 0 x x 0 x x
' | | | |___ Port2(C) (lower 4 bits) 0=output, 1=input
' | | |_____ Port1(B) (all 8 bits) 0=output, 1=input
' | |
' | |_________ Port2(C) (upper 4 bits) 0=output, 1=input
' |___________ Port0(A) (all 8 bits) 0=output, 1=input
'
' DIG100 Initialize
' Port0(A) - input, Port1(B) - input, Port2(C) - output
' 7 6 5 4 3 2 1 0
' 1 0 0 1 0 0 1 0 = &H92 -> A-in, B-in, C-out
Const DIG100_CONFIG_DATA As Integer = &H92
'Pupilometer routines
Function PupilSend(mval As Integer)As Integer
writeport PARALLEL_PORT,mval+10
PupilSend = 1
End Function
' send from context
Function SendXdatTable(column As String, c As Context) As Integer
Dim xdat As Integer
xdat = c.GetAttrib(column)
sent=PupilSend(EVENTSTROBE+xdat)
End Function</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">AntiRedCross</Name><TypeName dt:dt="string">TextDisplay</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{EEE5B2AE-F09F-4F38-B880-5F5FE57B644D}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>158</Build><_VersionPersist dt:dt="int">100</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">OnsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">DurationError</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PreRelease</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Duration</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">StartTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">FinishTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TimingMode</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PendingInputMasks</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RTTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ACC</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RT</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CRESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Tag</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetToOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem></LoggingItems><DeviceList/><InputMasks/><Tasks/><Duration dt:dt="string">1500</Duration><JumpLabel dt:dt="string"></JumpLabel><TimingMode dt:dt="int">1</TimingMode><PreRelease dt:dt="string">100</PreRelease><OnsetSync dt:dt="int">1</OnsetSync><OffsetSync dt:dt="int">0</OffsetSync><ForeColor dt:dt="string">red</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderColor dt:dt="string">black</BorderColor><BorderWidth dt:dt="string">0</BorderWidth><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">100%</Width><Height dt:dt="string">100%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><ClearAfter dt:dt="string">No</ClearAfter><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">20</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">+</Text><WordWrap dt:dt="int">-1</WordWrap><GeneratePreRun dt:dt="int">0</GeneratePreRun><GeneratePostRun dt:dt="int">0</GeneratePostRun><ResetLoggingProperties dt:dt="boolean">0</ResetLoggingProperties></ObjectData></StudioItem><StudioItem><Name dt:dt="string">RINGS</Name><TypeName dt:dt="string">Slide</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{1F49AF19-4050-49C9-85E1-48DC48E28A15}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>168</Build><_VersionPersist dt:dt="int">110</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">OnsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">DurationError</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PreRelease</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Duration</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">StartTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">FinishTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TimingMode</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PendingInputMasks</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RTTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ACC</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RT</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CRESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Tag</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetToOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem></LoggingItems><DeviceList/><InputMasks/><Tasks/><SlideStates><SlideState><Name dt:dt="string">Default</Name><ForeColor dt:dt="string"></ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderColor dt:dt="string">black</BorderColor><BorderWidth dt:dt="string">0</BorderWidth><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">100%</Width><Height dt:dt="string">100%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><ClearAfter dt:dt="string">No</ClearAfter><Enabled dt:dt="string">Yes</Enabled><SlideObjects><SlideObject><TypeName dt:dt="string">SlideImage</TypeName><Name dt:dt="string">Image1</Name><ForeColor dt:dt="string">black</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">transparent</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">50%</Width><Height dt:dt="string">50%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><Filename dt:dt="string">[image]</Filename><Stretch dt:dt="string">No</Stretch><StretchMode dt:dt="string">Both</StretchMode><MirrorLeftRight dt:dt="string">No</MirrorLeftRight><MirrorUpDown dt:dt="string">No</MirrorUpDown><SourceColorKey dt:dt="string">black</SourceColorKey><UseSourceColorKey dt:dt="string">No</UseSourceColorKey></SlideObject><SlideObject><TypeName dt:dt="string">SlideText</TypeName><Name dt:dt="string">Text1</Name><ForeColor dt:dt="string">red</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderWidth dt:dt="string">0</BorderWidth><BorderColor dt:dt="string">black</BorderColor><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">17</Width><Height dt:dt="string">17</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">20</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">+</Text><WordWrap dt:dt="int">-1</WordWrap></SlideObject></SlideObjects></SlideState></SlideStates><Duration dt:dt="string">1500</Duration><JumpLabel dt:dt="string"></JumpLabel><PreRelease dt:dt="string">0</PreRelease><ActiveState dt:dt="string">Default</ActiveState><TimingMode dt:dt="int">1</TimingMode><OnsetSync dt:dt="int">1</OnsetSync><OffsetSync dt:dt="int">0</OffsetSync><DisplayName dt:dt="string"></DisplayName><GeneratePreRun dt:dt="int">0</GeneratePreRun><GeneratePostRun dt:dt="int">0</GeneratePostRun><ResetLoggingProperties dt:dt="boolean">0</ResetLoggingProperties></ObjectData></StudioItem><StudioItem><Name dt:dt="string">FixWhiteCross</Name><TypeName dt:dt="string">TextDisplay</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{F437F62E-4E48-44E7-9C22-0C8101A3D032}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>158</Build><_VersionPersist dt:dt="int">100</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">OnsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">DurationError</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PreRelease</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Duration</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">StartTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">FinishTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TimingMode</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PendingInputMasks</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RTTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ACC</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RT</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CRESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Tag</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetToOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem></LoggingItems><DeviceList/><InputMasks/><Tasks/><Duration dt:dt="string">1500</Duration><JumpLabel dt:dt="string"></JumpLabel><TimingMode dt:dt="int">1</TimingMode><PreRelease dt:dt="string">100</PreRelease><OnsetSync dt:dt="int">1</OnsetSync><OffsetSync dt:dt="int">0</OffsetSync><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">black</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderColor dt:dt="string">black</BorderColor><BorderWidth dt:dt="string">0</BorderWidth><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">100%</Width><Height dt:dt="string">100%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">center</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><ClearAfter dt:dt="string">No</ClearAfter><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">20</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">+</Text><WordWrap dt:dt="int">-1</WordWrap><GeneratePreRun dt:dt="int">0</GeneratePreRun><GeneratePostRun dt:dt="int">0</GeneratePostRun><ResetLoggingProperties dt:dt="boolean">0</ResetLoggingProperties></ObjectData></StudioItem><StudioItem><Name dt:dt="string">RingTrigger</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{0C0DD99B-1E27-4791-B4B1-C8C5F9DB1EED}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">'Dim xdat As Integer
'xdat = c.getAttrib("startcode")
'sent=PupilSend(EVENTSTROBE + xdat)
sent=SendXdatTable("startcode")</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">eyelinkCal</Name><TypeName dt:dt="string">Procedure</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{51296A44-4344-49FB-88C3-BD666E600D44}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>149</Build><_VersionPersist dt:dt="int">201</_VersionPersist></Version><LoggingItems/><ItemList><Item dt:dt="string">elConnect</Item><Item dt:dt="string">Instructions</Item><Item dt:dt="string">elCameraSetup</Item><Item dt:dt="string">startRecording</Item></ItemList><DeviceList/><LogData dt:dt="boolean">1</LogData><FlushDataLog dt:dt="boolean">0</FlushDataLog><GenerateLabels dt:dt="boolean">1</GenerateLabels><ProcessPendingInputMasks dt:dt="int">0</ProcessPendingInputMasks><GeneratePreRun dt:dt="int">1</GeneratePreRun><GeneratePostRun dt:dt="int">2</GeneratePostRun><FlowItems><FlowItem><Name dt:dt="string">elConnect</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem><FlowItem><Name dt:dt="string">Instructions</Name><TypeName dt:dt="string">TextDisplay</TypeName></FlowItem><FlowItem><Name dt:dt="string">elCameraSetup</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem><FlowItem><Name dt:dt="string">startRecording</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem></FlowItems></ObjectData></StudioItem><StudioItem><Name dt:dt="string">elConnect</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{FCFA2A0F-30E6-4CD3-9CAF-40E513C1C782}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">Dim edfFileName As String
Mouse.ShowCursor True ' show mouse cursor
'ask edf file name
edfFileName = AskBox("Please enter an EDF file name" , "Test.edf")
If len(edfFileName) = 0 Then
edfFileName = "Test.edf"
End If
'hide the mouse cursor
Mouse.ShowCursor False
Debug.Print "mouse is visible? " &Mouse.IsCursorVisible()
cal_background = "192,192,192" ' set the background color for calibration/validation/drift correction screens. This should match the background color during your experiment.
cal_foreground = "0,0,0" ' set the foreground color for calibration/validation/drift correction screens. This is the color of the dots during the calibration/validation/drift correction.
cal_target_size=6 ' set calibration target size
cal_pen_width =4 ' set calibration pen width. The inner hole size = cal_target_size-cal_pen_width
Dim nPriority As Integer
nPriority = GetOSThreadPriority()
'Temporarily set the thread priority to a normal application
'otherwise you will get timed out when connect
SetOSThreadPriority 3
On Error GoTo ErrorHandle
Set elutil = CreateObject("SREYELINK.EyeLinkUtil") 'get an instance of EyeLinkUtil
Set tracker = CreateObject("SREYELINK.EyeLink") ' get an instance of EyeLink object
tracker.open "100.1.1.1",0 ' open the connection to the tracker
tracker.openDataFile edfFileName ' open edf file
tracker.sendCommand "screen_pixel_coords = 0 0 " & Display.XRes & " " & Display.YRes ' tell the tracker our resolution Display.YRes
tracker.sendCommand "calibration_type = HV9" ' Setup calibration type
tracker.sendMessage "DISPLAY_COORDS 0 0 " & Display.XRes & " " & Display.YRes ' Add resolution to EDF file
tracker.sendMessage "FRAMERATE " & Display.CalculatedRefreshRate ' report refresh rate
' SET UP TRACKER CONFIGURATION
'set parser saccade thresholds (conservative settings)
Dim trVerStr As String
Dim vindx As Integer
Dim trswVer As Integer
Dim eyelink_ver As Integer
eyelink_ver = tracker.getTrackerVersion()
trVerStr = tracker.getTrackerVersionString()
trVerStr = trim(trVerStr)
vindx =instr (1,trVerStr,"EYELINK CL")
If vindx >0 Then
trVerStr = Mid(trVerStr,len("EYELINK CL")+1)
trVerStr = trim(trVerStr)
trswVer = trVerStr
Else
trswVer = 0
End If
If eyelink_ver>=2 Then
tracker.sendCommand "select_parser_configuration 0" ' 0 = standard sensitivity
If eyelink_ver = 2 Then 'turn off scenelink camera stuff
tracker.sendCommand "scene_camera_gazemap = NO"
End If
Else
tracker.sendCommand "saccade_velocity_threshold = 35"
tracker.sendCommand "saccade_acceleration_threshold = 9500"
End If
'set EDF file contents
tracker.sendCommand "file_event_filter = LEFT,RIGHT,FIXATION,SACCADE,BLINK,MESSAGE,BUTTON,INPUT"
If trswVer>=4 Then
tracker.sendCommand "file_sample_data = LEFT,RIGHT,GAZE,AREA,GAZERES,STATUS,HTARGET,INPUT"
Else
tracker.sendCommand "file_sample_data = LEFT,RIGHT,GAZE,AREA,GAZERES,STATUS,INPUT"
End If
'set link data (used for gaze cursor)
tracker.sendCommand "link_event_filter = LEFT,RIGHT,FIXATION,SACCADE,BLINK,BUTTON,INPUT"
If trswVer>=4 Then
tracker.sendCommand "link_sample_data = LEFT,RIGHT,GAZE,GAZERES,AREA,STATUS,HTARGET,INPUT"
Else
tracker.sendCommand "link_sample_data = LEFT,RIGHT,GAZE,GAZERES,AREA,STATUS,INPUT"
End If
'Program button #5 for use in drift correction
tracker.sendCommand "button_function 5 'accept_target_fixation'"
'Reset the thread priority back
SetOSThreadPriority nPriority
</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">Instructions</Name><TypeName dt:dt="string">TextDisplay</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{6C77120C-8512-4A15-92DD-2F0233BFB859}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>158</Build><_VersionPersist dt:dt="int">100</_VersionPersist></Version><LoggingItems><LoggingItem><Name dt:dt="string">OnsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">DurationError</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PreRelease</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Duration</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">StartTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">FinishTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TimingMode</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CustomOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ActionTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOffsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">TargetOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">PendingInputMasks</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OffsetDelay</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RTTime</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">ACC</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RT</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">RESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">CRESP</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">Tag</Name><Log dt:dt="boolean">0</Log></LoggingItem><LoggingItem><Name dt:dt="string">OnsetToOnsetTime</Name><Log dt:dt="boolean">0</Log></LoggingItem></LoggingItems><DeviceList><Device dt:dt="string">Keyboard</Device></DeviceList><InputMasks><InputMask><DeviceName dt:dt="string">Keyboard</DeviceName><DeviceClass dt:dt="string">Keyboard</DeviceClass><AllowableInput dt:dt="string">cCvVoO</AllowableInput><CorrectInput dt:dt="string"></CorrectInput><TimeLimit dt:dt="string"></TimeLimit><MaxCount dt:dt="string">1</MaxCount><InputAction dt:dt="int">1</InputAction><SyncOwnerDuration dt:dt="boolean">1</SyncOwnerDuration><Enabled dt:dt="boolean">1</Enabled><FlushInputBuffer dt:dt="string">Yes</FlushInputBuffer><TerminationInput dt:dt="string"></TerminationInput><UserTag dt:dt="string"></UserTag><EchoClients/><ResponseMode dt:dt="string">All</ResponseMode><ProcessBackspace dt:dt="string">Yes</ProcessBackspace></InputMask></InputMasks><Tasks/><Duration dt:dt="string">-1</Duration><JumpLabel dt:dt="string"></JumpLabel><TimingMode dt:dt="int">0</TimingMode><PreRelease dt:dt="string">0</PreRelease><OnsetSync dt:dt="int">1</OnsetSync><OffsetSync dt:dt="int">0</OffsetSync><ForeColor dt:dt="string">white</ForeColor><BackColor dt:dt="string">192,192,192</BackColor><BackStyle dt:dt="string">opaque</BackStyle><BorderColor dt:dt="string">192,192,192</BorderColor><BorderWidth dt:dt="string">0</BorderWidth><X dt:dt="string">center</X><Y dt:dt="string">center</Y><Width dt:dt="string">100%</Width><Height dt:dt="string">100%</Height><XAlign dt:dt="string">center</XAlign><YAlign dt:dt="string">center</YAlign><AlignHorizontal dt:dt="string">left</AlignHorizontal><AlignVertical dt:dt="string">center</AlignVertical><ClearAfter dt:dt="string">No</ClearAfter><FontName dt:dt="string">Courier New</FontName><FontSize dt:dt="string">18</FontSize><FontBold dt:dt="string">Yes</FontBold><FontItalic dt:dt="string">No</FontItalic><FontUnderline dt:dt="string">No</FontUnderline><FontStrikeout dt:dt="string">No</FontStrikeout><Text dt:dt="string">EyeLink Calibration
C - Calibration
V - Validation
O - Output</Text><WordWrap dt:dt="int">-1</WordWrap><GeneratePreRun dt:dt="int">0</GeneratePreRun><GeneratePostRun dt:dt="int">0</GeneratePostRun><ResetLoggingProperties dt:dt="boolean">0</ResetLoggingProperties></ObjectData></StudioItem><StudioItem><Name dt:dt="string">elCameraSetup</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{03F5B13B-CF83-4BE7-B21E-F8DCC7C201B8}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">'Important!
'The Windows screen resolution should be set To the same As your actual experiment resolution.
'If you need To present image files, please resize the images To match the experiment resolution.
'1. In your E-Prime project, the experiment resolution can be configured through
'"Edit -> Experiment->Devices->Display->Edit->Width and Height" Of the display device.
'2. The screen resolution Of the monitor can be configured through
'"Start -> Control Panel -> Display -> Settings" On Windows XP,
'Or "Start -> Control Panel -> Appearance and Personalization -> Display -> Adjust screen resolution"
'On Vista and Windows 7".
doCameraSetup ' perform camera setup</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">startRecording</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{5821F9B4-CE7C-4BD2-9D37-BA82A2CB97EC}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">
'perform drift correct with custom target
'please notice that for
'doDriftCorrect(xloc As Integer, yloc As Integer, draw As Boolean, allow_setup As Boolean,Optional customDrift As Variant)
'if customDrift is provided, please set draw as False (without default drift target (a circle) drawn to the screen)
'if no customDrift is provided, please set draw as True (means: using the default target)
'## disabled 20210330. dont have "Fixation" variable
' doDriftCorrect Display.XRes/2,Display.YRes/2,False,True,Fixation
'or using:
'doDriftCorrect Display.XRes/2,Display.YRes/2,True,True
'Always send a TRIALID message before starting to record.
'EyeLink Data Viewer defines the start of a trial by the TRIALID message.
'This message is different than the start of recording message START that is logged when the trial recording begins.
'The Data viewer will not parse any messages, events, or samples, that exist in the data file prior to this message.
'#TODO: set to a number?
tracker.sendMessage "TRIALID " & masterlist.GetCurrentAttrib("image") & " " & masterlist.GetCurrentAttrib("location")
'This supplies the title at the bottom of the Eye Link Host computer screen
tracker.sendCommand "record_status_message 'Img " & masterlist.GetCurrentAttrib("image") & " loc " & masterlist.GetCurrentAttrib("location") & "' "
'Before recording, we place reference graphics on the EyeLink display
tracker.sendCommand "set_idle_mode" 'Must be offline to draw to EyeLink screen
'The command "clear_screen" erases the tracker display to color 0 (black)
tracker.sendCommand "clear_screen 0"
'The command "draw_box" draws a box in color 7 (medium gray).
'# disabled
' tracker.sendCommand "draw_box " & Display.XRes/2 -50 & " " & Display.YRes/2 - 50 & " " & Display.XRes/2 + 50 & " " & Display.YRes/2 + 50 & " 7"
'Send an image to the Eye Link Host computer screen: Image format can be 24bit bmp, jpg, or gif.
'# no need to send image?
' tracker.BitmapToBackdrop TrialList.GetCurrentAttrib("imageName"), 4
'Puts the tracker into the idle mode for a brief period before actually calling the startRecording function
'Four arguments to startRecording() function set what data will be recorded to the EDF file and sent via the link.
'If an argument is 0, recording of the corresponding data is disabled
tracker.sendCommand "set_idle_mode"
Sleep 50 ' delay so tracker is ready
tracker.startRecording True, True, True, True
'Allowing 100 milliseconds of data to accumulate before the trial display starts
elutil.pumpDelay 100
'The following is used to read the current time when the pictureTrial screen is processed
Dim timeStart As Long
timeStart = elutil.currentTime()
'Write out a "Start Recoding" message to mark this.
tracker.sendMessage "Start Recording"
</Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">eyelinkDone</Name><TypeName dt:dt="string">Procedure</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{4DDD5C69-3827-4CF5-B2C2-76F0229FAA92}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>149</Build><_VersionPersist dt:dt="int">201</_VersionPersist></Version><LoggingItems/><ItemList><Item dt:dt="string">stopRecording</Item><Item dt:dt="string">elClose</Item></ItemList><DeviceList/><LogData dt:dt="boolean">1</LogData><FlushDataLog dt:dt="boolean">0</FlushDataLog><GenerateLabels dt:dt="boolean">1</GenerateLabels><ProcessPendingInputMasks dt:dt="int">0</ProcessPendingInputMasks><GeneratePreRun dt:dt="int">1</GeneratePreRun><GeneratePostRun dt:dt="int">2</GeneratePostRun><FlowItems><FlowItem><Name dt:dt="string">stopRecording</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem><FlowItem><Name dt:dt="string">elClose</Name><TypeName dt:dt="string">InLine</TypeName></FlowItem></FlowItems></ObjectData></StudioItem><StudioItem><Name dt:dt="string">stopRecording</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{F2F6C2EB-9C96-467F-8D8E-5106DE2A5AE2}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">'From the E-Prime Web Site:
'Using PreRelease On an Object which has an InLine script directly following it:
'The PreRelease feature in E-Prime allows time for objects to start processing,
'or "buffer", in the background while the Object before is still being displayed On-screen.
'In most cases, using PreRelease on all objects is a good thing, and will allow for load time of
'objects following those with PreRelease Set. However, In cases where an Object is followed directly by an
'InLine script (i.e., "If Stimulus.RESP = 1 then."), caution should be taken to limit or eliminate the PreRelease.
'This is because, once the PreRelease time is reached, script from the InLine Object will start processing immediatley.
'Note, when the prerelease is set to the duration (i.e. E-Prime moves on from the drawing object immediately causing the inline script to execute too early), you will either need to
'add in a delay to the beginning of this script to account for the remaining duration of the display or add in a blank screen before this (as in this example).
'This pump delay (i.e. elutil.pumpDelay xxxx) or blank screen is necessary so that the previous slide has already been displayed before getting to this script.
'mark the time when we entered the end recording script.
tracker.sendMessage "Ending Recording"
'Set vairables that will be used to determine the time since the display objects appeared.
Dim timeEnd As Long
Dim PictureOffset As Long
Dim BlankScreenOffset As Long
'Copy the current time
timeEnd = Clock.ReadMillisec
'The below code sends a message to the eye tracker recording the exact time that the PictureTrial was displayed.
'Given that the PictureTrial was displayed some time ago, we have to determine how long ago it was displayed. This value will be included as an offset in the message sent to the eye tracking data,
'this offset will be automatically interpreted by Data Viewer so that the pictureTrial Message appears in the correct location in the eye data.
'To determine the offset of the PictureTrial display, take the current time (the timeEnd), and subtract the pictureTrial screen onset time. This gives you the difference
'gives you an offset to the message coding the PictureTrial time. If you do not use Data Viewer, the offset will appear in the pictureTrial_Onset message so that you can determine when the message should appear.
PictureOffset = timeEnd - pictureTrial.OnsetTime
tracker.sendMessage PictureOffset & " pictureTrial_Onset"
'The following code is for the EyeLink Data Viewer integration purpose.
'See section "Protocol for EyeLink Data to Viewer Integration" of the EyeLink Data Viewer User Manual
'The IMGLOAD command is used to show an overlay image in Data Viewer. This will code the time that the PictureTrial image should appear.
tracker.sendMessage PictureOffset & " !V IMGLOAD FILL " & TrialList.GetCurrentAttrib("imageName")
'Now send a message for the BlankScreen so that you know when the end of the trial occurred. Note, with a prerelease set to anything other than 0 you will need to add in a blank screen at the end (like this example),
'or a delay (elutil.pumpDelay) as discussed above.
timeEnd = Clock.ReadMillisec
BlankScreenOffset = timeEnd - BlankScreen.OnsetTime
tracker.sendMessage BlankScreenOffset & " BlankScreen_Onset"
'Allow Windows to clean up while we record additional 100 msec of data
elutil.pumpDelay 100
tracker.stopRecording
'The following code is for the EyeLink Data Viewer integration purpose.
'See section "Protocol for EyeLink Data to Viewer Integration" of the EyeLink Data Viewer User Manual
'The IAREA message specifies the attributes of a rectangular interest area for the trial.
'Each trial can have a set of such rectangular interest areas.
'The following example draws a 100 * 100 pixel interest area in the center of the screen
tracker.sendMessage "!V IAREA RECTANGLE 1 " & Display.XRes/2 -50 & " " & Display.YRes/2 - 50 & " " & Display.XRes/2 + 50 & " " & Display.YRes/2 + 50 & " " & TrialList.GetCurrentAttrib("imageName")
'This TRIAL_VAR command specifies a trial variable and value for the given trial.
'Send one message for each trial condition variable and its corresponding value. Examples of trial variables include (trial number (trialid), stimulus displayed (imageName), RT, and accuracy, etc.)
tracker.sendMessage "!V TRIAL_VAR trial " & TrialList.GetCurrentAttrib("trialid")
tracker.sendMessage "!V TRIAL_VAR picture " & TrialList.GetCurrentAttrib("imageName")
'The TRIAL_RESULT message defines the end of a trial for Data Viewer.
'This is different than the end of recording message END that is logged when the trial recording ends.
'Data viewer will not parse any messages, events, or samples that exist in the data file after this message.
tracker.sendMessage "TRIAL_RESULT 1" </Code></ObjectData></StudioItem><StudioItem><Name dt:dt="string">elClose</Name><TypeName dt:dt="string">InLine</TypeName><Tag dt:dt="string"></Tag><Notes dt:dt="string"></Notes><ObjectData><Guid dt:dt="string">{9DE43E1F-B41A-4564-BF70-C9C8D821D27F}</Guid><Version><Major>2</Major><Minor>0</Minor><Internal>10</Internal><Build>157</Build><_VersionPersist dt:dt="int">1</_VersionPersist></Version><LoggingItems/><DeviceList/><Code dt:dt="string">tracker.setOfflineMode ' set offline mode so we can transfer file
Sleep 500 ' delay so tracker is ready
tracker.closeDataFile ' close data file
tracker.receiveDataFile edfFileName, "" ' get the edf file to display pc
Set tracker = Nothing ' release tracker object
Set elutil = Nothing ' release eyelink util object
ErrorHandle:
If Err <> 0 Then
Set tracker = Nothing ' release tracker object
Set elutil = Nothing ' release eyelink util object
MsgBox Err.Number & ":" & Err.Description
'Exit Sub if this is not the last inline, we need an Exit Sub
End If</Code></ObjectData></StudioItem></StudioItems><UserScript dt:dt="string">
'#####
'# Eye Link
'######
'
' Copyright (c) 1997 - 2009 by SR Research Ltd., All Rights Reserved
'
' This software is provided as is without warranty of any kind. The entire
' risk as to the results and performance of this software is assumed by the
' user. SR Research Ltd. disclaims all warranties, either express or implied
' ,including but not limited, the implied warranties of merchantability,
' fitness for a particular purpose, title and noninfringement, with respect
' to this software.
'
'
' For non-commercial use by Eyelink licencees only
'
'
'
'
Dim tracker As Object 'global reference to hold tracker object
Dim elutil As Object 'global reference to hold elutil object
Dim cal_background As String 'calibration background color
Dim cal_foreground As String 'calibration foreground
Dim cal_target_size As Integer 'calibration target size
Dim cal_pen_width As Integer 'calibration pen width, can be used to set the inner hole size.
'The inner hole size = cal_target_size-cal_pen_width
Dim incount As Integer 'global integer to hold input count
Function PupilSend(mval As Integer)As Integer
' writeport PARALLEL_PORT,mval+10
PupilSend = 1
End Function
' send from context
Function SendXdatTable(column As String) As Integer
Dim xdat As Integer
xdat = masterlist.GetCurrentAttrib(column)
sent=PupilSend(EVENTSTROBE+xdat)
End Function
Function PupilSendEL(mval As Integer) As Integer
tracker.sendCommand "record_status_message 'Image " & masterlist.GetCurrentAttrib("image") & " Location " & masterlist.GetCurrentAttrib("location") & "' "
End Function
Sub doCameraSetup
Dim gcal As Object
End Sub
</UserScript></Experiment>