Unable to make two sets of triggers through parallel port

36 views
Skip to first unread message

Dea Luma

unread,
Jun 23, 2022, 5:28:40 AM6/23/22
to e-p...@googlegroups.com
Hello, 

I have a question regarding trigger signals that need to be sent to another computer recording program.

I have the stimulus images (5 images (5 triggers)) which i have attributed, have written an Inline text, and there is no problem with them going as triggers to the recording software. For these the inline text is as follows:

WritePort &HDFF8, 0
ImageDisplay2.OnsetSignalEnabled = True
ImageDisplay2.OnsetSignalPort = &HDFF8
ImageDisplay2.OnsetSignalData = c.GetAttrib("Trigger")


However, since each of the 5 images gets repeated 10 times, I decided to create blocks after 10 random image appearances by adding a 'pause'. When the pause comes up on the screen it asks subjects to take their time to rest, and it ends whenever the subject presses SPACE. For this procedure i have created 2 inline texts as follows: 

1)
'Insert a pause after every ten trials
If c.GetAttrib(c.GetAttrib("Running")&".Sample") Mod 10 = 0 Then
'Must set input properties if running from Unredefenced E-Objects
Pause.InputMasks.Add Keyboard.CreateInputMask("{SPACE}","",CLng(Pause.Duration),CLng("1"), ebEndResponseActionTerminate, Clogical("Yes"),"","","ResponseMode:All ProcessBackspace:Yes")
Pause.Run
End If


2)
'Insert a pause after every ten trials
If c.GetAttrib(c.GetAttrib("Running")&".Sample") Mod 10 = 0 Then
'Must set input properties if running from Unredefenced E-Objects
Baseline.InputMasks.Add Keyboard.CreateInputMask("{SPACE}","",CLng(Baseline.Duration),CLng("1"), ebEndResponseActionTerminate, Clogical("Yes"),"","","ResponseMode:All ProcessBackspace:Yes")
Baseline.Run
End If


So, before continuing with the new block of images, I have a baseline (fixation cross - i used a text display) of 10 seconds which practically starts the moment the subjects press SPACE to end the pause. I want to add the start of this fixation cross as the 6th trigger, but I am having trouble doing it. The current triggers are images which are attributed as 'triggers' and I cannot think of a way to add this fixation to that list.

Is there any other way I can add this as a trigger? Should I write a new InLine message? Or does it take something completely else?

I would appreciate it very much  any help I can get, and i thank you in advance.

Best regards,
Dea
--

David McFarlane

unread,
Jul 28, 2022, 4:14:09 PM7/28/22
to e-p...@googlegroups.com
Duplicate of groups.google.com/g/e-prime/c/e0PIS7aRKpo


On 2022-06-23 Thu 5:33 AM, Dea Luma wrote:
> Hello,
>
> I have a question regarding trigger signals that need to be sent to
> another computer recording program.
>
> I have the stimulus images (5 images (5 triggers)) which i have
> attributed, have written an Inline text, and there is no problem with
> them going as triggers to the recording software. For these the inline
> text is as follows:
>
> /WritePort &HDFF8, 0
> ImageDisplay2.OnsetSignalEnabled = True
> ImageDisplay2.OnsetSignalPort = &HDFF8
> ImageDisplay2.OnsetSignalData = c.GetAttrib("Trigger")/
>
> However, since each of the 5 images gets repeated 10 times, I decided to
> create blocks after 10 random image appearances by adding a 'pause'.
> When the pause comes up on the screen it asks subjects to take their
> time to rest, and it ends whenever the subject presses SPACE. For this
> procedure i have created 2 inline texts as follows:
>
> 1)
> /'Insert a pause after every ten trials
> If c.GetAttrib(c.GetAttrib("Running")&".Sample") Mod 10 = 0 Then
> 'Must set input properties if running from Unredefenced E-Objects
> Pause.InputMasks.Add
> Keyboard.CreateInputMask("{SPACE}","",CLng(Pause.Duration),CLng("1"),
> ebEndResponseActionTerminate, Clogical("Yes"),"","","ResponseMode:All
> ProcessBackspace:Yes")
> Pause.Run
> End If/
>
> 2)
> /'Insert a pause after every ten trials
> If c.GetAttrib(c.GetAttrib("Running")&".Sample") Mod 10 = 0 Then
> 'Must set input properties if running from Unredefenced E-Objects
> Baseline.InputMasks.Add
> Keyboard.CreateInputMask("{SPACE}","",CLng(Baseline.Duration),CLng("1"),
> ebEndResponseActionTerminate, Clogical("Yes"),"","","ResponseMode:All
> ProcessBackspace:Yes")
> Baseline.Run
> End If/
Reply all
Reply to author
Forward
0 new messages