From s.guzin at gmail.com Thu Mar 1 12:09:36 2012 From: s.guzin at gmail.com (SGuzin) Date: Thu, 1 Mar 2012 04:09:36 -0800 Subject: forcing to choose only two object by click Message-ID: Hi, I have written before the same problem but I could not get any reply neither in pst forum (http://support.pstnet.com/forum/ Topic5781-23-1.aspx) nor in googlegroups. I think I wrote a bit complicated with my limited English. I am writing again i a simple way. I have 8 checkboxes on a slide (checkboxes are an empty square image on the slide and named, Check1, Check2….. Check8). Participants must choose two of them for each trial by clicking on the checkboxes. When they click on a checkbox, it fill with black to show as it is checked. There are two correct checkboxes out of eight for each trial. But I want that participant must choose only two of the checkboxes and not being allowed to choose a third one. If they click on a third one their last selection will be disappear and replace with third click. How can I limit checking checkboxes to two while they could change their selections without exceeding two limit? My code is below; 'Designate "theState" as the Default Slide State, which is the current, ActiveState 'on the Slide object "Stimulus" Dim theState as SlideState Set theState = Stimulus.States("Default") 'Variable for holding the name of the sub-object clicked by the subject. Dim strHit As String 'Variable for holding the subject's response information. Dim theMouseResponseData As MouseResponseData 'Was a response made? If Stimulus.InputMasks.Responses.Count > 0 Then Set theMouseResponseData = CMouseResponseData(Stimulus.InputMasks.Responses(1)) strHit = theState.HitTest(theMouseResponseData.CursorX, theMouseResponseData.CursorY) 'If a check box was clicked, check or uncheck it based on its current state. If Mid(strHit, 1, 5) = "Check" Then 'Store the number of the checkbox clicked. Dim nCheck As Integer nCheck = CInt(Mid(strHit, 6, 1)) Debug.Print nCheck If c.GetAttrib("Check" & nCheck & "Image") = "checkempty.bmp" Then c.SetAttrib "Check" & nCheck & "Image", "checkfull.bmp" 'If a box has been checked, log the RT and RESP. Else c.SetAttrib "Check" & nCheck & "Image", "checkempty.bmp" c.Setattrib "Check" & nCheck & "RESP", "" End If End If if c.GetAttrib("Check4Image")="checkfull.bmp" and c.GetAttrib("Check5Image")="checkfull.bmp" and c.GetAttrib("Check1Image")="checkempty.bmp" and c.GetAttrib("Check2Image")="checkempty.bmp" and c.GetAttrib("Check3Image")="checkempty.bmp" and c.GetAttrib("Check6Image")="checkempty.bmp" and c.GetAttrib("Check7Image")="checkempty.bmp" and c.GetAttrib("Check8Image")="checkempty.bmp" Then 'if strHit = "Check5" and strHit = "Check4" Then Stimulus.ACC = 1 else Stimulus.ACC = 0 End if If strHit <> "Next" Then Goto ChooseAgain End If End If Thank you Güzin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From maria.richter.mail at googlemail.com Thu Mar 1 15:28:26 2012 From: maria.richter.mail at googlemail.com (Maria) Date: Thu, 1 Mar 2012 07:28:26 -0800 Subject: problem with a summation object In-Reply-To: <4f4d05e6.c45f320a.2232.ffffddcdSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hallo David, the error occurued in the line where the observation should be added. I deleted this thread because I found the mistake: When you define the summation objects you have to write them into seperate lines like: Dim SummationAcc as Summation Dim SummationRT as Summation and not like: Dim SummationAcc, SummationRT as Summation I do not have an explanation for this... On 28 Feb., 17:49, David McFarlane wrote: > Max, > > Hmm, another question that could go to PST Web Support athttp://support.pstnet.com/e%2Dprime/support/login.asp.  Anyway, what > was the exact line of code that produced the error?  Typically, an > "Object does not have a default value" error occurs when you use an > object but fail to specify which *property* of the object you > mean.  You can get away with that only when the object does have a > default property, otherwise you must explicitly specify which > property you mean. > > To take a contrived example, the following will create such an error: > >      SummationRTA.AddObservation CInt(ReactionInterval) > > whereas the following will not: > >      SummationRTA.AddObservation CInt(ReactionInterval.RT) > > -- David McFarlane > > At 2/2/2012 06:02 AM Thursday, you wrote: > > >Dear everyone, > > >I tried to use a summation object to give feedback to experimental > >subjects about their accuracy and reaction times. > >I used following code: > >Dim SummationAccA, SummationAccB, SummationRTA, SummationRTB as > >Summation > >(global variables) > > >Set SummationAccA = New Summation > >Set SummationRTA = New Summation > >Set SummationAccB = New Summation > >Set SummationRTB = New Summation > >(before running the list) > > >SummationAccA.AddObservation ReactionInterval.ACC > >SummationRTA.AddObservation ReactionInterval.RT > >SummationAccB.AddObservation ReactionInterval2.ACC > >SummationRTB.AddObservation ReactionInterval2.RT > >(ReactionInterval & Reactioninterval2 are slide objects) > > >By attempting to add the accuracies and reaction times following error > >occurs: > >"Object does not have a default value" > > >I used the same principle in further experiments and there it worked. > >I hope there is just a simple mistake, thanks for answers, > >best regards, > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From maria.richter.mail at googlemail.com Thu Mar 1 15:37:45 2012 From: maria.richter.mail at googlemail.com (Maria) Date: Thu, 1 Mar 2012 07:37:45 -0800 Subject: Parallel Port Problems In-Reply-To: <4f4d06b8.c45f320a.2232.ffffddfbSMTPIN_ADDED@gmr-mx.google.com> Message-ID: yes, this was my first idea (the false address) and I asked the IT- Personal (it is the right address and it is a parallel port). I found a way that works: I added the second port not as a "parallel port" but as a "port" (there you do not have to specify if it is for in- or output). If I have some time I will read in the User's guide what the reason for this could be and will post it. On 28 Feb., 17:54, David McFarlane wrote: > Max, > > Are you sure that you specified a different (& correct) port address > for the second port?  If you used the same port address for both, > then you are really using only one of the ports, and that one port > becomes input or output depending on the last command issued. > > -- David McFarlane > > At 2/24/2012 12:12 PM Friday, you wrote: > > >Dear all, > > >next problem: > > >I tried to use two parallel ports, one for sending a trigger for EEG, > >one for input from a self-made device (like a keyboard). > >Sending triggers work until I add a second parallel port ("port mode" > >= Input) to the devices (with second "port mode" = output it works, > >but I need it for input). > > >Any suggestions? > > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Thu Mar 1 15:55:12 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Thu, 1 Mar 2012 17:55:12 +0200 Subject: problem with a summation object In-Reply-To: Message-ID: Hi, Correct me if I'm wrong, anyone knowing better and actually having E-Prime on their desktop (anyone here at Aalto or Helsinki Uni anyway?), but, as far as I remember: "Dim SummationAcc, SummationRT as Summation" is interpreted as Dim SummationAcc as Variant Dim SummationRT as Summation ...variant being that weird basic type which changes from integer to string to double on the basis of its value. A summation object, however, is not a type but a separate class. I agree with you that it would be more convenient if e-prime would either accept various type declarations in one line (double A, B, C etc all being doubles), or actually give a warning. Although you might say this is just being punishing for lazy coding, I have met academics enough who had this problem. It reminds me somewhat of this fascinating thing in flash actionscript, where IF x = 3 THEN .... is interpreted as "if it's fine to store the value of 3 in the variable x then continue", so that you get no error message, but your code will start exhibiting very strange behaviour (since if x = 3, it will continue, but also if x happens to be 4, x = 3 still is evaluated as "true": the laziness here was with me and doing too much basic, for not seeing the proper code IF x == 3 THEN) Anyway. Best, Mich -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Maria Sent: 01 March 2012 17:28 To: E-Prime Subject: Re: problem with a summation object Hallo David, the error occurued in the line where the observation should be added. I deleted this thread because I found the mistake: When you define the summation objects you have to write them into seperate lines like: Dim SummationAcc as Summation Dim SummationRT as Summation and not like: Dim SummationAcc, SummationRT as Summation I do not have an explanation for this... On 28 Feb., 17:49, David McFarlane wrote: > Max, > > Hmm, another question that could go to PST Web Support athttp://support.pstnet.com/e%2Dprime/support/login.asp.  Anyway, what > was the exact line of code that produced the error?  Typically, an > "Object does not have a default value" error occurs when you use an > object but fail to specify which *property* of the object you > mean.  You can get away with that only when the object does have a > default property, otherwise you must explicitly specify which > property you mean. > > To take a contrived example, the following will create such an error: > >      SummationRTA.AddObservation CInt(ReactionInterval) > > whereas the following will not: > >      SummationRTA.AddObservation CInt(ReactionInterval.RT) > > -- David McFarlane > > At 2/2/2012 06:02 AM Thursday, you wrote: > > >Dear everyone, > > >I tried to use a summation object to give feedback to experimental > >subjects about their accuracy and reaction times. > >I used following code: > >Dim SummationAccA, SummationAccB, SummationRTA, SummationRTB as > >Summation > >(global variables) > > >Set SummationAccA = New Summation > >Set SummationRTA = New Summation > >Set SummationAccB = New Summation > >Set SummationRTB = New Summation > >(before running the list) > > >SummationAccA.AddObservation ReactionInterval.ACC > >SummationRTA.AddObservation ReactionInterval.RT > >SummationAccB.AddObservation ReactionInterval2.ACC > >SummationRTB.AddObservation ReactionInterval2.RT > >(ReactionInterval & Reactioninterval2 are slide objects) > > >By attempting to add the accuracies and reaction times following error > >occurs: > >"Object does not have a default value" > > >I used the same principle in further experiments and there it worked. > >I hope there is just a simple mistake, thanks for answers, > >best regards, > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 1 17:00:59 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 1 Mar 2012 12:00:59 -0500 Subject: problem with a summation object In-Reply-To: <001401ccf7c3$b03ec990$10bc5cb0$@eu> Message-ID: Mich, Indeed, that is exactly correct, and I am quite chagrined that I overlooked that coding mistake myself in Max's original post. I guess it just goes to show... This behavior, of course, comes from Microsoft Visual Basic for Applications (VBA), from which E-Basic is derived. *Each* variable must be *explicitly* typed, else by default it is type Variant, as you said. In VBA/E-Basic you could accomplish the same effect on a single line as follows: Dim SummationAcc as Summation, SummationRT as Summation Programmers experienced in other languages such as C/C++ will find this particularly confusing, as the equivalent statement in C/C++ would read simply Summation SummationAcc, SummationRT; which would reasonably enough declare both SummationAcc & SummationRT as type Summation in one simple easy-to-read line. But this is VBA/E-Basic, not C/C++ Of course it is easy to overlook a lack of explicit type declarations on single lines like that, hence many VBA/E-Basic style guides recommend using a separate line for each variable declaration, as you illustrated. It seems to me that I have run across this documented somewhere in the E-Prime materials, but I don't recall offhand whether this behavior is explained in Chapter 4 of the User's Guide, and I am too lazy to look it up right now. --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/1/2012 10:55 AM Thursday, Michiel Sovijarvi-Spape wrote: >Hi, >Correct me if I'm wrong, anyone knowing better and actually having E-Prime >on their desktop (anyone here at Aalto or Helsinki Uni anyway?), but, as far >as I remember: >"Dim SummationAcc, SummationRT as Summation" is interpreted as >Dim SummationAcc as Variant >Dim SummationRT as Summation >...variant being that weird basic type which changes from integer to string >to double on the basis of its value. A summation object, however, is not a >type but a separate class. >I agree with you that it would be more convenient if e-prime would either >accept various type declarations in one line (double A, B, C etc all being >doubles), or actually give a warning. Although you might say this is just >being punishing for lazy coding, I have met academics enough who had this >problem. It reminds me somewhat of this fascinating thing in flash >actionscript, where >IF x = 3 THEN .... >is interpreted as "if it's fine to store the value of 3 in the variable x >then continue", so that you get no error message, but your code will start >exhibiting very strange behaviour (since if x = 3, it will continue, but >also if x happens to be 4, x = 3 still is evaluated as "true": the laziness >here was with me and doing too much basic, for not seeing the proper code IF >x == 3 THEN) > >Anyway. >Best, >Mich > >-----Original Message----- >From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf >Of Maria >Sent: 01 March 2012 17:28 >To: E-Prime >Subject: Re: problem with a summation object > >Hallo David, > >the error occurued in the line where the observation should be added. >I deleted this thread because I found the mistake: > >When you define the summation objects you have to write them into >seperate lines like: > >Dim SummationAcc as Summation >Dim SummationRT as Summation > >and not like: > >Dim SummationAcc, SummationRT as Summation > >I do not have an explanation for this... > > > > >On 28 Feb., 17:49, David McFarlane wrote: > > Max, > > > > Hmm, another question that could go to PST Web Support >athttp://support.pstnet.com/e%2Dprime/support/login.asp. Anyway, what > > was the exact line of code that produced the error? Typically, an > > "Object does not have a default value" error occurs when you use an > > object but fail to specify which *property* of the object you > > mean. You can get away with that only when the object does have a > > default property, otherwise you must explicitly specify which > > property you mean. > > > > To take a contrived example, the following will create such an error: > > > > SummationRTA.AddObservation CInt(ReactionInterval) > > > > whereas the following will not: > > > > SummationRTA.AddObservation CInt(ReactionInterval.RT) > > > > -- David McFarlane > > > > At 2/2/2012 06:02 AM Thursday, you wrote: > > > > >Dear everyone, > > > > >I tried to use a summation object to give feedback to experimental > > >subjects about their accuracy and reaction times. > > >I used following code: > > >Dim SummationAccA, SummationAccB, SummationRTA, SummationRTB as > > >Summation > > >(global variables) > > > > >Set SummationAccA = New Summation > > >Set SummationRTA = New Summation > > >Set SummationAccB = New Summation > > >Set SummationRTB = New Summation > > >(before running the list) > > > > >SummationAccA.AddObservation ReactionInterval.ACC > > >SummationRTA.AddObservation ReactionInterval.RT > > >SummationAccB.AddObservation ReactionInterval2.ACC > > >SummationRTB.AddObservation ReactionInterval2.RT > > >(ReactionInterval & Reactioninterval2 are slide objects) > > > > >By attempting to add the accuracies and reaction times following error > > >occurs: > > >"Object does not have a default value" > > > > >I used the same principle in further experiments and there it worked. > > >I hope there is just a simple mistake, thanks for answers, > > >best regards, > > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 1 17:35:41 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 1 Mar 2012 12:35:41 -0500 Subject: forcing to choose only two object by click In-Reply-To: Message-ID: Güzin, I think the reason you do not get a response to this question is because it is just too complex for this type of forum. The short answer is, to do what you want will take some careful, complex, and intricate coding, which you will need to figure out for yourself based on all the working elements that you already have on hand (or hire someone else to do it, if you could find such a person). To take an analogy, if this were a music writing forum, you might reasonably ask how to transpose "Mary Had a Little Lamb" from C-major to G-major. But aking how to rewrite Beethoven's "Moonlight Sonata" in the style of Rachmaninoff might not get a response. But PST Web Support sometimes helps out with complex projects like this, so you might try contacting them at http://support.pstnet.com/e%2Dprime/support/login.asp . --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/1/2012 07:09 AM Thursday, you wrote: >Hi, I have written before the same problem but I could not get any >reply neither in pst forum (http://support.pstnet.com/forum/ >Topic5781-23-1.aspx) nor in googlegroups. I think I wrote a bit >complicated with my limited English. I am writing again i a simple >way. > >I have 8 checkboxes on a slide (checkboxes are an empty square image >on the slide and named, Check1, Check2….. Check8). >Participants must choose two of them for each trial by clicking on the >checkboxes. When they click on a checkbox, it fill with black to show >as it is checked. There are two correct checkboxes out of eight for >each trial. But I want that participant must choose only two of the >checkboxes and not being allowed to choose a third one. If they click >on a third one their last selection will be disappear and replace with >third click. >How can I limit checking checkboxes to two while they could change >their selections without exceeding two limit? My code is below; > >'Designate "theState" as the Default Slide State, which is the >current, ActiveState >'on the Slide object "Stimulus" >Dim theState as SlideState >Set theState = Stimulus.States("Default") > >'Variable for holding the name of the sub-object clicked by the >subject. >Dim strHit As String > >'Variable for holding the subject's response information. >Dim theMouseResponseData As MouseResponseData > >'Was a response made? >If Stimulus.InputMasks.Responses.Count > 0 Then > > Set theMouseResponseData = >CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > strHit = theState.HitTest(theMouseResponseData.CursorX, >theMouseResponseData.CursorY) > > 'If a check box was clicked, check or uncheck it based on its current >state. > If Mid(strHit, 1, 5) = "Check" Then > > 'Store the number of the checkbox clicked. > Dim nCheck As Integer > nCheck = CInt(Mid(strHit, 6, 1)) > Debug.Print nCheck > > If c.GetAttrib("Check" & nCheck > & "Image") = "checkempty.bmp" Then > > c.SetAttrib "Check" & > nCheck & "Image", "checkfull.bmp" > > 'If a box has > been checked, log the RT and RESP. > > Else > > c.SetAttrib "Check" & > nCheck & "Image", "checkempty.bmp" > c.Setattrib "Check" & nCheck & "RESP", "" > > > End If > End If > > if c.GetAttrib("Check4Image")="checkfull.bmp" and >c.GetAttrib("Check5Image")="checkfull.bmp" and >c.GetAttrib("Check1Image")="checkempty.bmp" and >c.GetAttrib("Check2Image")="checkempty.bmp" and >c.GetAttrib("Check3Image")="checkempty.bmp" and >c.GetAttrib("Check6Image")="checkempty.bmp" and >c.GetAttrib("Check7Image")="checkempty.bmp" and >c.GetAttrib("Check8Image")="checkempty.bmp" Then > 'if strHit = "Check5" and strHit = "Check4" Then > Stimulus.ACC = 1 > > else Stimulus.ACC = 0 > End if > If strHit <> "Next" Then > Goto ChooseAgain > > End If > >End If > >Thank you >Güzin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Fri Mar 2 11:54:21 2012 From: liwenna at gmail.com (liwenna) Date: Fri, 2 Mar 2012 03:54:21 -0800 Subject: forcing to choose only two object by click In-Reply-To: <4f4fb389.c45b320a.7da9.60afSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hello Güzin, I more or less agree with David. Nonetheless I tried to conjure up something. This is written without e-prime, so it probably won't work right away and perhaps it will not work at all... but it might get you going again and point towards the solution to your problem. I've rewriten your code. You need to make a few new things elsewhere in the program too. On the usertab of the script window (bottom lef of the script window) you need to declare a variable called 'clicknumber', that will keep track of whether the number of clicks made. This is needed to store two consecutive answers separately. Write " dim clicknumber as integer " on the usertab to declare it. At the begining of the script the variable clicknumber is increased by 1 so that it keeps cound of the clicks (it's 0+1 = 1 after click1, 1+1 =2 after click 2 etc). Then a large part of your own script follows. I started modifying again following the part where the chechbox image is changes. Here I create two new variables Checkodd and Checkeven. In the next part clicknumber is checked to see whether the 'current click' (click number) is an odd or an even number (based on mod 2, see explanations elsewhere). If the clicknumber is odd, the given response is stored in the variable 'CheckOdd', if it's even it is stored under 'CheckEven'. For the next part of the script you'll need to make two attributes (in your lists) called correcresponse1 and correctresponse2. These should contain the right answers (i.e. check4 and check5). If the answer that is currently given and the previous given answer (both stored under checkodd and checkeven) are both found in correctresponse1 and correctresponse2, the program is send to a label called endlabel (goto endlabel, first clicknumber, checkodd and checkeven are reset for the next trial). You should make this label after the inline script. If the two last answers are not the answers in corectresponse1 and correctresponse2, then the program is send back to the label called ChooseAgain. The script doesn't store answers yet, nor does it keep an accuracy count. You could still add those if you need them (or store clicknumber to have a count of the total answers given before the correct answers were given). Hope this helps. Best, AW 'AW note: clickbnumber should be declared on the usertab, it keeps count of the number of clicks made clicknumber = clicknumber + 1 'existing script 'Designate "theState" as the Default Slide State, which is the current, ActiveState 'on the Slide object "Stimulus" Dim theState as SlideState Set theState = Stimulus.States("Default") 'Variable for holding the name of the sub-object clicked by the subject. Dim strHit As String 'Variable for holding the subject's response information. Dim theMouseResponseData As MouseResponseData 'Was a response made? If Stimulus.InputMasks.Responses.Count > 0 Then Set theMouseResponseData = CMouseResponseData(Stimulus.InputMasks.Responses(1)) strHit = theState.HitTest(theMouseResponseData.CursorX, theMouseResponseData.CursorY) 'If a check box was clicked, check or uncheck it based on its current state. If Mid(strHit, 1, 5) = "Check" Then 'Store the number of the checkbox clicked. nCheck = CInt(Mid(strHit, 6, 1)) Debug.Print nCheck If c.GetAttrib("Check" & nCheck & "Image") = "checkempty.bmp" Then c.SetAttrib "Check" & nCheck & "Image", "checkfull.bmp" End If 'AW note: CheckEven and CheckOdd will contain the answers (checkx) given on the last odd and the last even (thus the last two) clicks dim CheckEven as string dim CheckOdd as string if clicknumber mod 2 = 1 then checkodd = ("Check" & nCheck") if clicknumber mod 2 = 0 then checkeven = ("Check" & nCheck") 'AW note: compare the answers in CheckOdd and CheckEven to the correct answers stored in the attributes correctresponse1 and 'correctresponse1. If both are found, then resent the check and click variables and terminate by goto endlabel ' else goto the label called ChooseAgain If checkodd = c.getattrib ("correctresponse1") and checkeven = c.getattrib (correctresponse2") then checkodd = empty checkeven = empty clicknumber = 0 goto endlabel If checkodd = c.getattrib ("correctresponse2") and checkeven = c.getattrib (correctresponse1") then checkeven = empty clicknumber = 0 goto endlabel else Goto ChooseAgain end if On 1 mrt, 18:35, David McFarlane wrote: > Güzin, > > I think the reason you do not get a response to > this question is because it is just too complex > for this type of forum.  The short answer is, to > do what you want will take some careful, complex, > and intricate coding, which you will need to > figure out for yourself based on all the working > elements that you already have on hand (or hire > someone else to do it, if you could find such a > person).  To take an analogy, if this were a > music writing forum, you might reasonably ask how > to transpose "Mary Had a Little Lamb" from > C-major to G-major.  But aking how to rewrite > Beethoven's "Moonlight Sonata" in the style of > Rachmaninoff might not get a response. > > But PST Web Support sometimes helps out with > complex projects like this, so you might try > contacting them athttp://support.pstnet.com/e%2Dprime/support/login.asp. > > --- > David McFarlane > E-Prime training > online:  http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter:  @EPrimeMaster (twitter.com/EPrimeMaster) > > At 3/1/2012 07:09 AM Thursday, you wrote: > > >Hi, I have written before the same problem but I could not get any > >reply neither in pst forum (http://support.pstnet.com/forum/ > >Topic5781-23-1.aspx) nor in googlegroups.  I think I wrote a bit > >complicated with my limited English. I am writing again i a simple > >way. > > >I have 8 checkboxes on a slide (checkboxes are an empty square image > >on the slide and named, Check1, Check2….. Check8). > >Participants must choose two of them for each trial by clicking on the > >checkboxes. When they click on a checkbox, it fill with black to show > >as it is checked. There are two correct checkboxes out of eight for > >each trial. But I want that participant must choose only two of the > >checkboxes and not being allowed to choose a third one. If they click > >on a third one their last selection will be disappear and replace with > >third click. > >How can I limit checking checkboxes to two while they could change > >their selections without exceeding two limit? My code is below; > > >'Designate "theState" as the Default Slide State, which is the > >current, ActiveState > >'on the Slide object "Stimulus" > >Dim theState as SlideState > >Set theState = Stimulus.States("Default") > > >'Variable for holding the name of the sub-object clicked by the > >subject. > >Dim strHit As String > > >'Variable for holding the subject's response information. > >Dim theMouseResponseData As MouseResponseData > > >'Was a response made? > >If Stimulus.InputMasks.Responses.Count > 0 Then > > >         Set theMouseResponseData = > >CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > >         strHit = theState.HitTest(theMouseResponseData.CursorX, > >theMouseResponseData.CursorY) > > >         'If a check box was clicked, check or uncheck it based on its current > >state. > >         If Mid(strHit, 1, 5) = "Check" Then > > >                 'Store the number of the checkbox clicked. > >                 Dim nCheck As Integer > >                 nCheck = CInt(Mid(strHit, 6, 1)) > >                 Debug.Print nCheck > > >                 If c.GetAttrib("Check" & nCheck > > & "Image") = "checkempty.bmp" Then > > >                         c.SetAttrib "Check" & > > nCheck & "Image", "checkfull.bmp" > > >                                 'If a box has > > been checked, log the RT and RESP. > > >                                 Else > > >                         c.SetAttrib "Check" & > > nCheck & "Image", "checkempty.bmp" > >                         c.Setattrib "Check" & nCheck & "RESP", "" > > >                 End If > >                                 End If > > >                         if c.GetAttrib("Check4Image")="checkfull.bmp" and > >c.GetAttrib("Check5Image")="checkfull.bmp" and > >c.GetAttrib("Check1Image")="checkempty.bmp" and > >c.GetAttrib("Check2Image")="checkempty.bmp" and > >c.GetAttrib("Check3Image")="checkempty.bmp" and > >c.GetAttrib("Check6Image")="checkempty.bmp" and > >c.GetAttrib("Check7Image")="checkempty.bmp" and > >c.GetAttrib("Check8Image")="checkempty.bmp" Then > >                      'if strHit = "Check5" and strHit = "Check4" Then > >                                 Stimulus.ACC = 1 > > >                         else Stimulus.ACC = 0 > >                         End if > >         If strHit <> "Next" Then > >                 Goto ChooseAgain > > >         End If > > >End If > > >Thank you > >Güzin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Fri Mar 2 12:09:30 2012 From: liwenna at gmail.com (liwenna) Date: Fri, 2 Mar 2012 04:09:30 -0800 Subject: forcing to choose only two object by click In-Reply-To: <491b51cf-a225-41cf-8fa8-137216847ed0@1g2000yqv.googlegroups.com> Message-ID: Oh, the linebreaking is not always correct >.< Moreover: I realise now that you'll want to move the " dim CheckEven as string dim CheckOdd as string if clicknumber mod 2 = 1 then checkodd = ("Check" & nCheck") if clicknumber mod 2 = 0 then checkeven = ("Check" & nCheck") " up to above the part of code were you change the image from checkempty to checkfull. This part of the code should be made to also be dependent on the values stored in checkodd and checkeven, while all other boxes should be set to checkempty. If you don't do that, than checkboxes won't be 'unchecked'. Also in the lines checkodd = empty & checkeven = empty (the first line was forgotten in the second part, sorry!), 'empty' is just a word to 'empty' that string variable, so it should possible be => CheckOdd = "empty" (note the "s). On 2 mrt, 12:54, liwenna wrote: > Hello Güzin, > > I more or less agree with David. Nonetheless I tried to conjure up > something. This is written without e-prime, so it probably won't work > right away and perhaps it will not work at all... but it might get you > going again and point towards the solution to your problem. > > I've rewriten your code. You need to make a few new things elsewhere > in the program too. > On the usertab of the script window (bottom lef of the script window) > you need to declare a variable called 'clicknumber', that will keep > track of whether the number of clicks made. This is needed to store > two consecutive answers separately. Write " dim clicknumber as integer > " on the usertab to declare it. > > At the begining of the script the variable clicknumber is increased by > 1 so that it keeps cound of the clicks (it's 0+1 = 1 after click1, 1+1 > =2 after click 2 etc). Then a large part of your own script follows. > > I started modifying again following the part where the chechbox image > is changes. > > Here I create two new variables Checkodd and Checkeven. In the next > part clicknumber is checked to see whether the 'current click' (click > number) is an odd or an even number (based on mod 2, see explanations > elsewhere). If the clicknumber is odd, the given response is stored in > the variable 'CheckOdd', if it's even it is stored under 'CheckEven'. > > For the next part of the script you'll need to make two attributes (in > your lists) called correcresponse1 and correctresponse2. These should > contain the right answers (i.e. check4 and check5). If the answer that > is currently given and the previous given answer (both stored under > checkodd and checkeven) are both found in correctresponse1 and > correctresponse2, the program is send to a label called endlabel (goto > endlabel, first clicknumber, checkodd and checkeven are reset for the > next trial). You should make this label after the inline script. If > the two last answers are not the answers in corectresponse1 and > correctresponse2, then the program is send back to the label called > ChooseAgain. > > The script doesn't store answers yet, nor does it keep an accuracy > count. You could still add those if you need them (or store > clicknumber to have a count of the total answers given before the > correct answers were given). > > Hope this helps. > > Best, > > AW > > 'AW note: clickbnumber should be declared on the usertab, it keeps > count of the number of clicks made > clicknumber = clicknumber + 1 > > 'existing script > > 'Designate "theState" as the Default Slide State, which is the > current, ActiveState > 'on the Slide object "Stimulus" > Dim theState as SlideState > Set theState = Stimulus.States("Default") > > 'Variable for holding the name of the sub-object clicked by the > subject. > Dim strHit As String > > 'Variable for holding the subject's response information. > Dim theMouseResponseData As MouseResponseData > > 'Was a response made? > If Stimulus.InputMasks.Responses.Count > 0 Then > >         Set theMouseResponseData = > CMouseResponseData(Stimulus.InputMasks.Responses(1)) > >         strHit = theState.HitTest(theMouseResponseData.CursorX, > theMouseResponseData.CursorY) > >         'If a check box was clicked, check or uncheck it based on its > current > state. >         If Mid(strHit, 1, 5) = "Check" Then > >                 'Store the number of the checkbox clicked. > >                 nCheck = CInt(Mid(strHit, 6, 1)) >                 Debug.Print nCheck > >                 If c.GetAttrib("Check" & nCheck & "Image") = > "checkempty.bmp" Then > >                  c.SetAttrib "Check" & nCheck & "Image", > "checkfull.bmp" > >                 End If > > 'AW note: CheckEven and CheckOdd will contain the answers (checkx) > given on the last odd and the last even (thus the last two) clicks > dim CheckEven as string > dim CheckOdd as string > > if clicknumber mod 2 = 1 then checkodd = ("Check" & nCheck") > if clicknumber mod 2 = 0 then checkeven = ("Check" & > nCheck") > > 'AW note: compare the answers in CheckOdd and CheckEven to the correct > answers stored in the attributes correctresponse1 and > 'correctresponse1. If both are found, then resent the check and click > variables and terminate by goto endlabel > ' else goto the label called ChooseAgain > > If checkodd = c.getattrib ("correctresponse1") and checkeven = > c.getattrib (correctresponse2") then > checkodd = empty > checkeven = empty > clicknumber = 0 > goto endlabel > > If checkodd = c.getattrib ("correctresponse2") and checkeven = > c.getattrib (correctresponse1") then > checkeven = empty > clicknumber = 0 > goto endlabel > > else > > Goto ChooseAgain > > end if > > On 1 mrt, 18:35, David McFarlane wrote: > > > Güzin, > > > I think the reason you do not get a response to > > this question is because it is just too complex > > for this type of forum.  The short answer is, to > > do what you want will take some careful, complex, > > and intricate coding, which you will need to > > figure out for yourself based on all the working > > elements that you already have on hand (or hire > > someone else to do it, if you could find such a > > person).  To take an analogy, if this were a > > music writing forum, you might reasonably ask how > > to transpose "Mary Had a Little Lamb" from > > C-major to G-major.  But aking how to rewrite > > Beethoven's "Moonlight Sonata" in the style of > > Rachmaninoff might not get a response. > > > But PST Web Support sometimes helps out with > > complex projects like this, so you might try > > contacting them athttp://support.pstnet.com/e%2Dprime/support/login.asp. > > > --- > > David McFarlane > > E-Prime training > > online:  http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter:  @EPrimeMaster (twitter.com/EPrimeMaster) > > > At 3/1/2012 07:09 AM Thursday, you wrote: > > > >Hi, I have written before the same problem but I could not get any > > >reply neither in pst forum (http://support.pstnet.com/forum/ > > >Topic5781-23-1.aspx) nor in googlegroups.  I think I wrote a bit > > >complicated with my limited English. I am writing again i a simple > > >way. > > > >I have 8 checkboxes on a slide (checkboxes are an empty square image > > >on the slide and named, Check1, Check2….. Check8). > > >Participants must choose two of them for each trial by clicking on the > > >checkboxes. When they click on a checkbox, it fill with black to show > > >as it is checked. There are two correct checkboxes out of eight for > > >each trial. But I want that participant must choose only two of the > > >checkboxes and not being allowed to choose a third one. If they click > > >on a third one their last selection will be disappear and replace with > > >third click. > > >How can I limit checking checkboxes to two while they could change > > >their selections without exceeding two limit? My code is below; > > > >'Designate "theState" as the Default Slide State, which is the > > >current, ActiveState > > >'on the Slide object "Stimulus" > > >Dim theState as SlideState > > >Set theState = Stimulus.States("Default") > > > >'Variable for holding the name of the sub-object clicked by the > > >subject. > > >Dim strHit As String > > > >'Variable for holding the subject's response information. > > >Dim theMouseResponseData As MouseResponseData > > > >'Was a response made? > > >If Stimulus.InputMasks.Responses.Count > 0 Then > > > >         Set theMouseResponseData = > > >CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > > >         strHit = theState.HitTest(theMouseResponseData.CursorX, > > >theMouseResponseData.CursorY) > > > >         'If a check box was clicked, check or uncheck it based on its current > > >state. > > >         If Mid(strHit, 1, 5) = "Check" Then > > > >                 'Store the number of the checkbox clicked. > > >                 Dim nCheck As Integer > > >                 nCheck = CInt(Mid(strHit, 6, 1)) > > >                 Debug.Print nCheck > > > >                 If c.GetAttrib("Check" & nCheck > > > & "Image") = "checkempty.bmp" Then > > > >                         c.SetAttrib "Check" & > > > nCheck & "Image", "checkfull.bmp" > > > >                                 'If a box has > > > been checked, log the RT and RESP. > > > >                                 Else > > > >                         c.SetAttrib "Check" & > > > nCheck & "Image", "checkempty.bmp" > > >                         c.Setattrib "Check" & nCheck & "RESP", "" > > > >                 End If > > >                                 End If > > > >                         if c.GetAttrib("Check4Image")="checkfull.bmp" and > > >c.GetAttrib("Check5Image")="checkfull.bmp" and > > >c.GetAttrib("Check1Image")="checkempty.bmp" and > > >c.GetAttrib("Check2Image")="checkempty.bmp" and > > >c.GetAttrib("Check3Image")="checkempty.bmp" and > > >c.GetAttrib("Check6Image")="checkempty.bmp" and > > >c.GetAttrib("Check7Image")="checkempty.bmp" and > > >c.GetAttrib("Check8Image")="checkempty.bmp" Then > > >                      'if strHit = "Check5" and strHit = "Check4" Then > > >                                 Stimulus.ACC = 1 > > > >                         else Stimulus.ACC = 0 > > >                         End if > > >         If strHit <> "Next" Then > > >                 Goto ChooseAgain > > > >         End If > > > >End If > > > >Thank you > > >Güzin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lilica_rig at yahoo.com.br Fri Mar 2 22:40:13 2012 From: lilica_rig at yahoo.com.br (Lis) Date: Fri, 2 Mar 2012 14:40:13 -0800 Subject: Translating scripts Message-ID: Hi! I would like to know how I can translate scripts into other languages. I am having trouble saving the scripts after I finish translating, so I guess I am doing something wrong. Thanks. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiany.03 at googlemail.com Sat Mar 3 10:52:40 2012 From: tiany.03 at googlemail.com (Ye Tian) Date: Sat, 3 Mar 2012 10:52:40 +0000 Subject: transfer eprime 2 file into eprime 1 format. Message-ID: Dear all, I have programmed my experiment in eprime 2, but my collaborator only have eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do you know of any other options? Thanks a lot!! Best, Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Sat Mar 3 15:43:23 2012 From: liwenna at gmail.com (liwenna) Date: Sat, 3 Mar 2012 07:43:23 -0800 Subject: transfer eprime 2 file into eprime 1 format. In-Reply-To: Message-ID: Sorry Ye, unfortunately there are is no way to convert an e-prime 2 file to e-prime 1 :/ (well, other than rebuilding from scratch). In a similar way, also watch out with e-prime 2 professional files, these can not be used on a computer that is only licensed for e-prime 2 basic. Wish I had better news for you! AW On 3 mrt, 11:52, Ye Tian wrote: > Dear all, > > I have programmed my experiment in eprime 2, but my collaborator only have > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do > you know of any other options? Thanks a lot!! > > Best, > Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiany.03 at googlemail.com Sat Mar 3 17:39:45 2012 From: tiany.03 at googlemail.com (Ye Tian) Date: Sat, 3 Mar 2012 17:39:45 +0000 Subject: transfer eprime 2 file into eprime 1 format. In-Reply-To: <3b62493e-d7e7-44ae-97a5-4709c887cb81@1g2000yqv.googlegroups.com> Message-ID: Thanks! On 3 March 2012 15:43, liwenna wrote: > Sorry Ye, unfortunately there are is no way to convert an e-prime 2 > file to e-prime 1 :/ (well, other than rebuilding from scratch). > > In a similar way, also watch out with e-prime 2 professional files, > these can not be used on a computer that is only licensed for e-prime > 2 basic. > > Wish I had better news for you! > > AW > > On 3 mrt, 11:52, Ye Tian wrote: > > Dear all, > > > > I have programmed my experiment in eprime 2, but my collaborator only > have > > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or > do > > you know of any other options? Thanks a lot!! > > > > Best, > > Ye > > -- > You received this message because you are subscribed to the Google Groups > "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to > e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/e-prime?hl=en. > > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mspape at cognitology.eu Mon Mar 5 09:06:24 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Mon, 5 Mar 2012 11:06:24 +0200 Subject: transfer eprime 2 file into eprime 1 format. Message-ID: Hi, One suggestion, probably working better between pro/basic than between 2/1, would be to open both and copy/paste objects with the special copy/paste trick explained elsewhere (which also allows copying objects between experiments using E-prime 1). Anyone tried that before? Best, Mich From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Ye Tian Sent: 03 March 2012 19:40 To: e-prime at googlegroups.com Subject: Re: transfer eprime 2 file into eprime 1 format. Thanks! On 3 March 2012 15:43, liwenna wrote: Sorry Ye, unfortunately there are is no way to convert an e-prime 2 file to e-prime 1 :/ (well, other than rebuilding from scratch). In a similar way, also watch out with e-prime 2 professional files, these can not be used on a computer that is only licensed for e-prime 2 basic. Wish I had better news for you! AW On 3 mrt, 11:52, Ye Tian wrote: > Dear all, > > I have programmed my experiment in eprime 2, but my collaborator only have > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do > you know of any other options? Thanks a lot!! > > Best, > Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com . For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mspape at cognitology.eu Mon Mar 5 09:06:42 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Mon, 5 Mar 2012 11:06:42 +0200 Subject: transfer eprime 2 file into eprime 1 format. Message-ID: Hi, One suggestion, probably working better between pro/basic than between 2/1, would be to open both and copy/paste objects with the special copy/paste trick explained elsewhere (which also allows copying objects between experiments using E-prime 1). Anyone tried that before? Best, Mich From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Ye Tian Sent: 03 March 2012 19:40 To: e-prime at googlegroups.com Subject: Re: transfer eprime 2 file into eprime 1 format. Thanks! On 3 March 2012 15:43, liwenna wrote: Sorry Ye, unfortunately there are is no way to convert an e-prime 2 file to e-prime 1 :/ (well, other than rebuilding from scratch). In a similar way, also watch out with e-prime 2 professional files, these can not be used on a computer that is only licensed for e-prime 2 basic. Wish I had better news for you! AW On 3 mrt, 11:52, Ye Tian wrote: > Dear all, > > I have programmed my experiment in eprime 2, but my collaborator only have > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do > you know of any other options? Thanks a lot!! > > Best, > Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com . For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mspape at cognitology.eu Mon Mar 5 10:31:11 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Mon, 5 Mar 2012 12:31:11 +0200 Subject: Translating scripts Message-ID: Hi, Sorry, what does this mean? Are you trying to translate code into different code (e-basic into... what, pascal?), or different language (IF...THEN into ALS...DAN?) Best, M. -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Lis Sent: 03 March 2012 00:40 To: E-Prime Subject: Translating scripts Hi! I would like to know how I can translate scripts into other languages. I am having trouble saving the scripts after I finish translating, so I guess I am doing something wrong. Thanks. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lilica_rig at yahoo.com.br Mon Mar 5 14:27:34 2012 From: lilica_rig at yahoo.com.br (Lisandra Rutkoski Rodrigues) Date: Mon, 5 Mar 2012 06:27:34 -0800 Subject: Problems with saving configurations and translations Message-ID: Hi! I am trying to translate scripts into other languages. I am not sure what I should do to save the changes, though. I keep losing the changes because I can't save them. I am translating from English into Brazilian Portuguese. The tasks are the ANT (Attentional Network Task) and the Task-Switching Paradigm. Besides that, another problem refers to the SR-Box, which looks perfectly installed, with its serial cable and so on, but every time I try to run an experiment, I receive the messages ERROR: SERIAL and ERROR: SR-BOX. They should be added to run experiments which require them, and probably removed when they don't. From inside e-studio, using the e-prime key, I add or remove them according to the experiment, but when I decide to run one of them, the same messages return, since my configurations are never really saved inside e-studio. I guess I am doing something wrong but I just cannot figure out what that might be. I hope someone can help me with that. Thanks a lot. Lis -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Mon Mar 5 16:41:16 2012 From: liwenna at gmail.com (liwenna) Date: Mon, 5 Mar 2012 08:41:16 -0800 Subject: single refresh display duration - help? Message-ID: Hi all, I have something and I hope someone may have experienced a similar thing that may help me out on this one. I have an experiment in which a sequence of displays occurs with the two most important display having durations of 496 and 13 ms respectively (give or take max 2 ms). Back then, it took me quite some work but in the end I got the timing right (yay). Now... I am trying to build a second, similar but less complex, task. This new is less complex since it shows only a single. rather than multiple, image at the 496 ms display, and has a far less complex list structure due to less different procedures. However: I can not get the timing right at all.. the display that follows the 13 ms display just keeps being delayed by one refresh (13 ms). I have tried pretty much everything for hours and hours: - building the new task from scratch, imitating all (or at least I believe so?) settings from the old (correctly timed) task (and then tweaking all the settings too) - modifying the correctly timed task into the new task (and then tweaking all the settings) - using off-screen canvases rather than slides (but it seems that the 13ms 'canvas' is simply not shown in about 25% of the trials... which is not good enough either) I believe I have covered pretty much everything that could be done about it, but I honestly fail to see why the old task would be timed correctly (still is!) and any attempt at the more simple task just fails in terms of timing. I so very much hope that someone here is able to identify the one thing that I just keep overlooking? >.< Best, Anne-Wil -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Mon Mar 5 20:23:30 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Mon, 5 Mar 2012 21:23:30 +0100 Subject: single refresh display duration - help? In-Reply-To: <7060cdad-a415-4129-8737-15864837ff39@o16g2000yqg.googlegroups.com> Message-ID: Hi Anne-Wil, You will get the best onset performance if you: 1) set the pre-release time of the objects before both slides to the maximum possible value (i.e. same as duration of that object). In other words: if the 13ms slide is displayed immediately after the other slide, you must set the pre-release time of the first slide to 496 (or 500 if you apply point 3 below). 2) Use bitmaps instead of JPEG and make sure the color depth is the same as used in your exp. This might help because decoding jpeg files takes a lot of CPU time (although the smaller jpeg files will load faster from disk.) 3) use durations which end in the middle of two screen refreshes I.e, if the display is using a refresh rate of 75Hz, you will set the fast stimulus to 0.5*1000/75=7ms, and the longer stimulus to 37.5*1000/75=500). Not sure if this is still required with the new EP2 release, though... Depending on the hardware performance and screen resolution, this still might be insufficient to get single frame stimuli. If this is the case, you might want to prepare the stimuli using off-screen canvases at the start of the sequence and copy to the display canvas using a fast copy at the vertical blanking interval. This should always work, unless the graphics card is crappy. best, paul 2012/3/5 liwenna : > Hi all, > > I have something and I hope someone may have experienced a similar > thing that may help me out on this one. > > I have an experiment in which a sequence of displays occurs with the > two most important display having durations of 496 and 13 ms > respectively (give or take max 2 ms). Back then, it took me quite some > work but in the end I got the timing right (yay). > > Now... I am trying to build a second, similar but less complex, task. > This new is less complex since it shows only a single. rather than > multiple, image at the 496 ms display, and has a far less complex list > structure due to less different procedures. However: I can not get the > timing right at all..  the display that follows the 13 ms display just > keeps being delayed by one refresh (13 ms). > > I have tried pretty much everything for hours and hours: > - building the new task from scratch, imitating all (or at least I > believe so?) settings from the old (correctly timed) task (and then > tweaking all the settings too) > - modifying the correctly timed task into the new task  (and then > tweaking all the settings) > - using off-screen canvases rather than slides (but it seems that the > 13ms 'canvas' is simply not shown in about 25% of the trials... which > is not good enough either) > > I believe I have covered pretty much everything that could be done > about it, but I honestly fail to see why the old task would be timed > correctly (still is!) and any attempt at the more simple task just > fails in terms of timing. > > I so very much hope that someone here is able to identify the one > thing that I just keep overlooking? >.< > > Best, > > Anne-Wil > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Tue Mar 6 08:50:19 2012 From: liwenna at gmail.com (liwenna) Date: Tue, 6 Mar 2012 00:50:19 -0800 Subject: single refresh display duration - help? In-Reply-To: Message-ID: Thanks Paul for that thorough reply!! Unfortunately I did all that (and more ;)) but to no avail. The display that follows the 13ms display is actually empty, except for a backgroud color (gray shade). I tried using wait objects and text display's rather than a slide display, and also the offscreen canvasses. With offscreen canvasses the problem lies no longer with the 'empty display that overlays the 13 ms image' arriving too late, the timing is the fine in about 75% of the trials, but I am pretty certain that the 13ms display is skipped in about 25% of the trials. The graphics card might be crappy, I am also a bit suspicious regarding the display that I was assigned for this project, nonetheless, the 'old task' seems to be work well on it, while this new taks also does not perform well on the pc & display that I used for the old project (and do trust). It simply drives me crazy that the exact same set-up in terms of settings that are known to matter for timing, works perfectly in one set-up (with more images and a more difficult list structure, even with an additional procedure that has a 27ms display added to the sequence with the 13 and 496 display) and just doesn't work in the simpler set-up. Something must somehow matter that I completely overlook. I suppose I'll spent the second part of this afternoon on it again: any additional advices are more than welcome :) best, liw On 5 mrt, 21:23, Paul Groot pfc.gr... at gmail.com> wrote: > Hi Anne-Wil, > > You will get the best onset performance if you: > > 1) set the pre-release time of the objects before both slides to the > maximum possible value (i.e. same as duration of that object). In > other words: if the 13ms slide is displayed immediately after the > other slide, you must set the pre-release time of the first slide to > 496 (or 500 if you apply point 3 below). > > 2) Use bitmaps instead of JPEG and make sure the color depth is the > same as used in your exp. This might help because decoding jpeg files > takes a lot of CPU time (although the smaller jpeg files will load > faster from disk.) > > 3) use durations which end in the middle of two screen refreshes I.e, > if the display is using a refresh rate of 75Hz, you will set the fast > stimulus to 0.5*1000/75=7ms, and the longer stimulus to > 37.5*1000/75=500). Not sure if this is still required with the new EP2 > release, though... > > Depending on the hardware performance and screen resolution, this > still might be insufficient to get single frame stimuli. If this is > the case, you might want to prepare the stimuli using off-screen > canvases at the start of the sequence and copy to the display canvas > using a fast copy at the vertical blanking interval. This should > always work, unless the graphics card is crappy. > > best, > paul > > 2012/3/5 liwenna : > > > Hi all, > > > I have something and I hope someone may have experienced a similar > > thing that may help me out on this one. > > > I have an experiment in which a sequence of displays occurs with the > > two most important display having durations of 496 and 13 ms > > respectively (give or take max 2 ms). Back then, it took me quite some > > work but in the end I got the timing right (yay). > > > Now... I am trying to build a second, similar but less complex, task. > > This new is less complex since it shows only a single. rather than > > multiple, image at the 496 ms display, and has a far less complex list > > structure due to less different procedures. However: I can not get the > > timing right at all..  the display that follows the 13 ms display just > > keeps being delayed by one refresh (13 ms). > > > I have tried pretty much everything for hours and hours: > > - building the new task from scratch, imitating all (or at least I > > believe so?) settings from the old (correctly timed) task (and then > > tweaking all the settings too) > > - modifying the correctly timed task into the new task  (and then > > tweaking all the settings) > > - using off-screen canvases rather than slides (but it seems that the > > 13ms 'canvas' is simply not shown in about 25% of the trials... which > > is not good enough either) > > > I believe I have covered pretty much everything that could be done > > about it, but I honestly fail to see why the old task would be timed > > correctly (still is!) and any attempt at the more simple task just > > fails in terms of timing. > > > I so very much hope that someone here is able to identify the one > > thing that I just keep overlooking? >.< > > > Best, > > > Anne-Wil > > > -- > > You received this message because you are subscribed to the Google Groups "E-Prime" group. > > To post to this group, send email to e-prime at googlegroups.com. > > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > > For more options, visit this group athttp://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Tue Mar 6 16:11:42 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 6 Mar 2012 11:11:42 -0500 Subject: Problems with saving configurations and translations In-Reply-To: <1330957654.43224.YahooMailNeo@web160606.mail.bf1.yahoo.com > Message-ID: Lis, As for the SRBox, did you try it with the test program that comes with the SRBox? As you know, always best to troubleshoot hardware with a known good program, than to start off testing it with a new program under development. Also, you should take this up with PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp (they strive to respond to all requests in 24-48 hours there). Good luck. --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/5/2012 09:27 AM Monday, you wrote: >Hi! >I am trying to translate scripts into other languages. I am not sure >what I should do to save the changes, though. I keep losing the >changes because I can't save them. I am translating from English >into Brazilian Portuguese. The tasks are the ANT (Attentional >Network Task) and the Task-Switching Paradigm. >Besides that, another problem refers to the SR-Box, which looks >perfectly installed, with its serial cable and so on, but every time >I try to run an experiment, I receive the messages ERROR: SERIAL and >ERROR: SR-BOX. They should be added to run experiments which require >them, and probably removed when they don't. From inside e-studio, >using the e-prime key, I add or remove them according to the >experiment, but when I decide to run one of them, the same messages >return, since my configurations are never really saved inside e-studio. >I guess I am doing something wrong but I just cannot figure out what >that might be. >I hope someone can help me with that. >Thanks a lot. >Lis -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From nief1313 at gmail.com Tue Mar 6 16:20:46 2012 From: nief1313 at gmail.com (bschwartz3) Date: Tue, 6 Mar 2012 08:20:46 -0800 Subject: How do I record the time a subject starts typing Message-ID: I am running an experiment which requires the subject to type in a one word answer. I am only able to record the response time for when they finish entering the answer (when they press enter). Is there a way to record the time they type the first letter, i.e. when they start typing the answer? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/Iv8s01Ghc4EJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From pfc.groot at gmail.com Tue Mar 6 19:55:59 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Tue, 6 Mar 2012 20:55:59 +0100 Subject: How do I record the time a subject starts typing In-Reply-To: <17089869.3293.1331050846704.JavaMail.geo-discussion-forums@yncd8> Message-ID: This PST sample might be of interest: Multiple Response Collection http://www.pstnet.com/support/samples.asp?Mode=View&SampleID=43 best, paul 2012/3/6 bschwartz3 : > I am running an experiment which requires the subject to type in a one word > answer. I am only able to record the response time for when they finish > entering the answer (when they press enter). Is there a way to record the > time they type the first letter, i.e. when they start typing the answer? > > -- > You received this message because you are subscribed to the Google Groups > "E-Prime" group. > To view this discussion on the web visit > https://groups.google.com/d/msg/e-prime/-/Iv8s01Ghc4EJ. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to > e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Tue Mar 6 20:34:46 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Tue, 6 Mar 2012 21:34:46 +0100 Subject: single refresh display duration - help? In-Reply-To: <0101cc7d-d79a-4f7e-8bd6-ca72fbfd1d73@db5g2000vbb.googlegroups.com> Message-ID: Well, since you already tried several configurations, this might be a non-trivial issue which is hard to track down without having the script itself... Did you also check the Timing Mode of the objects? You probably would like to set this to 'Event' (the default). THe sync options should also be kept to their default values (onset=vertical blank, offset=none). WHich EP version are you currently using? And did you also run the RefreshClockTest? (http://www.pstnet.com/support/kb.asp?TopicID=3003) PST also offers an alternative pre-load technique for slides which doesn't require the use of canvases: http://www.pstnet.com/support/samples.asp?Mode=View&SampleID=23 However, I would probably try to start from scratch and only use empty Text objects and set all pre-release times to the max. values. If this works, you can replace the text objects with (empty) slides. Then add input masks. Then add images. And so on... best, Paul 2012/3/6 liwenna : > Thanks Paul for that thorough reply!! > > Unfortunately I did all that (and more ;)) but to no avail. The > display that follows the 13ms display is actually empty, except for a > backgroud color (gray shade). I tried using wait objects and text > display's rather than a slide display, and also the offscreen > canvasses. With offscreen canvasses the problem lies no longer with > the 'empty display that overlays the 13 ms image' arriving too late, > the timing is the fine in about 75% of the trials, but I am pretty > certain that the 13ms display is skipped in about 25% of the trials. > > The graphics card might be crappy, I am also a bit suspicious > regarding the display that I was assigned for this project, > nonetheless, the 'old task' seems to be work well on it, while this > new taks also does not perform well on the pc & display that I used > for the old project (and do trust). > > It simply drives me crazy that the exact same set-up in terms of > settings that are known to matter for timing, works perfectly in one > set-up (with more images and a more difficult list structure, even > with an additional procedure that has a 27ms display added to the > sequence with the 13 and 496 display) and just doesn't work in the > simpler set-up. Something must somehow matter that I completely > overlook. > > I suppose I'll spent the second part of this afternoon on it again: > any additional advices are more than welcome :) > > best, > > liw > > On 5 mrt, 21:23, Paul Groot pfc.gr... at gmail.com> wrote: >> Hi Anne-Wil, >> >> You will get the best onset performance if you: >> >> 1) set the pre-release time of the objects before both slides to the >> maximum possible value (i.e. same as duration of that object). In >> other words: if the 13ms slide is displayed immediately after the >> other slide, you must set the pre-release time of the first slide to >> 496 (or 500 if you apply point 3 below). >> >> 2) Use bitmaps instead of JPEG and make sure the color depth is the >> same as used in your exp. This might help because decoding jpeg files >> takes a lot of CPU time (although the smaller jpeg files will load >> faster from disk.) >> >> 3) use durations which end in the middle of two screen refreshes I.e, >> if the display is using a refresh rate of 75Hz, you will set the fast >> stimulus to 0.5*1000/75=7ms, and the longer stimulus to >> 37.5*1000/75=500). Not sure if this is still required with the new EP2 >> release, though... >> >> Depending on the hardware performance and screen resolution, this >> still might be insufficient to get single frame stimuli. If this is >> the case, you might want to prepare the stimuli using off-screen >> canvases at the start of the sequence and copy to the display canvas >> using a fast copy at the vertical blanking interval. This should >> always work, unless the graphics card is crappy. >> >> best, >> paul >> >> 2012/3/5 liwenna : >> >> > Hi all, >> >> > I have something and I hope someone may have experienced a similar >> > thing that may help me out on this one. >> >> > I have an experiment in which a sequence of displays occurs with the >> > two most important display having durations of 496 and 13 ms >> > respectively (give or take max 2 ms). Back then, it took me quite some >> > work but in the end I got the timing right (yay). >> >> > Now... I am trying to build a second, similar but less complex, task. >> > This new is less complex since it shows only a single. rather than >> > multiple, image at the 496 ms display, and has a far less complex list >> > structure due to less different procedures. However: I can not get the >> > timing right at all..  the display that follows the 13 ms display just >> > keeps being delayed by one refresh (13 ms). >> >> > I have tried pretty much everything for hours and hours: >> > - building the new task from scratch, imitating all (or at least I >> > believe so?) settings from the old (correctly timed) task (and then >> > tweaking all the settings too) >> > - modifying the correctly timed task into the new task  (and then >> > tweaking all the settings) >> > - using off-screen canvases rather than slides (but it seems that the >> > 13ms 'canvas' is simply not shown in about 25% of the trials... which >> > is not good enough either) >> >> > I believe I have covered pretty much everything that could be done >> > about it, but I honestly fail to see why the old task would be timed >> > correctly (still is!) and any attempt at the more simple task just >> > fails in terms of timing. >> >> > I so very much hope that someone here is able to identify the one >> > thing that I just keep overlooking? >.< >> >> > Best, >> >> > Anne-Wil >> >> > -- >> > You received this message because you are subscribed to the Google Groups "E-Prime" group. >> > To post to this group, send email to e-prime at googlegroups.com. >> > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. >> > For more options, visit this group athttp://groups.google.com/group/e-prime?hl=en. > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From rodneymullen18288 at gmail.com Wed Mar 7 16:45:50 2012 From: rodneymullen18288 at gmail.com (Massimiliano Elia) Date: Wed, 7 Mar 2012 08:45:50 -0800 Subject: rapid serial visual presentation and sound, how to Message-ID: Hello, everyone. I'm using E-Prime for the first time, and i'm learning what's necessary for an experiment i'm supposed to design. In short, this is what I have to do: present a sound (which lasts 500 ms) and a series of pictures (15, to be precise) in the arc of 1500 ms. What at the moment I'm trying to understand, is how to put both sound and the 15 pictures (one followed by the other) attached in one slide. I've tried it with one picture and it seemed to work. I think a way to work around this problem is to create a video file which lasts the exact amount of ms i need with the 15 pictures followed by each other. I guess it's possible, although it doesn't feel elegant and I hope there's an easier way to do this using the E-Studio tools. Can anyone help me with this? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/E4PVJUKS30IJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From hengli_2012 at depauw.edu Thu Mar 8 04:43:07 2012 From: hengli_2012 at depauw.edu (Heng Li) Date: Wed, 7 Mar 2012 20:43:07 -0800 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends Message-ID: 1. I read the tutorial but didn't find the solution to dividing trials into miniblocks.I have 66 trials in total and I want to randomly assign them into three blocks each with 22 trials. 2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I need randomly insert an SOA (which is accompanied by a blank screen) between the prime and target stimuli.How can I do that within 3 miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide the SOAs among all trials but not in each miniblock. 3. My priming stimulus is a sound and my target stimulus is a picture.For the SOA inserting btw the prime and target,I want it to start immediately after the sound ends.Since the sound stimuli are of different durations,how can I tell E-Prime to detect the end of each priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Thu Mar 8 10:04:17 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Thu, 8 Mar 2012 12:04:17 +0200 Subject: rapid serial visual presentation and sound, how to In-Reply-To: <15748152.5861.1331138750761.JavaMail.geo-discussion-forums@vbas10> Message-ID: Hi, First off, you have one sound, which is presented along with the first slide. Slide one thus lasts 100 ms, the sound 500 ms (turn StopAfter or such off). Once you get this to work - i.e., the sound lasting 500 ms and the slide only 100 ms (just put a textdisplay after it, check whether this appears while the sound still plays), the rest should be easy. Easy in one of two ways: 1. Make an extra list within the present trial procedure, placed after the sound and first picture. The list will have 14 levels, and you can use colon syntax to reference attributes from a list higher up. 2. And it may feel annoyingly like "a lot of work" or inelegant, but I believe one of the best ways is to add 14 imagedisplays (or slides) directly after the first (without sound) and have these reference attributes in the triallist. That is, let's say slide1 has, in filename, [ShowThisAtPosition1]. The TrialList, from which these are taken, has 15 attributes, including "ShowThisAtPosition1". Cleverly, the TrialList has a nested, different list with a single attribute, "PicturesToShow" with all the pictures you ever want to show (say, a hundred), randomised every trial. Now, in the TrialList, in column "ShowThisAtPosition1", you simply say "PicturesToShow:1", at position2 "PicturesToShow:2" and so on. This makes it incredibly easy to also add targets to what I bet you want to make a RSVP/AB paradigm. Best, Michiel From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Massimiliano Elia Sent: 07 March 2012 18:46 To: e-prime at googlegroups.com Subject: rapid serial visual presentation and sound, how to Hello, everyone. I'm using E-Prime for the first time, and i'm learning what's necessary for an experiment i'm supposed to design. In short, this is what I have to do: present a sound (which lasts 500 ms) and a series of pictures (15, to be precise) in the arc of 1500 ms. What at the moment I'm trying to understand, is how to put both sound and the 15 pictures (one followed by the other) attached in one slide. I've tried it with one picture and it seemed to work. I think a way to work around this problem is to create a video file which lasts the exact amount of ms i need with the 15 pictures followed by each other. I guess it's possible, although it doesn't feel elegant and I hope there's an easier way to do this using the E-Studio tools. Can anyone help me with this? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/E4PVJUKS30IJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From pquain at une.edu.au Fri Mar 9 11:04:00 2012 From: pquain at une.edu.au (Peter Quain) Date: Fri, 9 Mar 2012 22:04:00 +1100 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: Message-ID: how is it possible to have a SOA of 0ms? ... maybe an ISI? At 03:43 PM 8/03/2012, you wrote: >1. I read the tutorial but didn't find the solution to dividing trials >into miniblocks.I have 66 trials in total and I want to randomly >assign them into three blocks each with 22 trials. >2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >need randomly insert an SOA (which is accompanied by a blank screen) >between the prime and target stimuli.How can I do that within 3 >miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >the SOAs among all trials but not in each miniblock. >3. My priming stimulus is a sound and my target stimulus is a >picture.For the SOA inserting btw the prime and target,I want it to >start immediately after the sound ends.Since the sound stimuli are of >different durations,how can I tell E-Prime to detect the end of each >priming sound?Thanks a lot! > >-- >You received this message because you are subscribed to the Google >Groups "E-Prime" group. >To post to this group, send email to e-prime at googlegroups.com. >To unsubscribe from this group, send email to >e-prime+unsubscribe at googlegroups.com. >For more options, visit this group at >http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Fri Mar 9 11:22:41 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Fri, 9 Mar 2012 13:22:41 +0200 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: <201203091104.q29B44Lu004537@mail14.tpg.com.au> Message-ID: Hi, It depends - I've also heard people making the mistake to call ISI SOA (and vice versa), but it is, of course, quite possible to have two stimuli overlapping. Like, in the present case, sound and visuals - a SOA of 0 then just means they start simultaneously. Best, Michiel -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Peter Quain Sent: 09 March 2012 13:04 To: e-prime at googlegroups.com Subject: Re: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends how is it possible to have a SOA of 0ms? ... maybe an ISI? At 03:43 PM 8/03/2012, you wrote: >1. I read the tutorial but didn't find the solution to dividing trials >into miniblocks.I have 66 trials in total and I want to randomly >assign them into three blocks each with 22 trials. >2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >need randomly insert an SOA (which is accompanied by a blank screen) >between the prime and target stimuli.How can I do that within 3 >miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >the SOAs among all trials but not in each miniblock. >3. My priming stimulus is a sound and my target stimulus is a >picture.For the SOA inserting btw the prime and target,I want it to >start immediately after the sound ends.Since the sound stimuli are of >different durations,how can I tell E-Prime to detect the end of each >priming sound?Thanks a lot! > >-- >You received this message because you are subscribed to the Google >Groups "E-Prime" group. >To post to this group, send email to e-prime at googlegroups.com. >To unsubscribe from this group, send email to >e-prime+unsubscribe at googlegroups.com. >For more options, visit this group at >http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Fri Mar 9 10:51:54 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Fri, 9 Mar 2012 12:51:54 +0200 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: Message-ID: Hi, 1. Which tutorial? From your questions, it seems to me a clear necessity that one should not READ the tutorial, but go through it, completely. Much like learning any language, "just" reading a dictionary and the rules of grammar do not grant you proficiency; it takes time and work to get a feel for how to use these tools. If you like, you might want to continue your learning by also doing the absolutely free tutorial thing somewhere on my website (www.cognitology.eu) or other websites you can find by searching for "an e-primer". Speaking of grammar: I find it difficult to understand what you are saying - I do not wish to sound nagging, and I understand not everyone is fluent, but your message does not come across as clear as you presumably hoped it would. 2. So, you want to divide one condition (SOA) with 3 levels, without replacement, unevenly across 3 blocks. Tutorials probably don't mention "mini-blocks" because it doesn't seem to be a term as such. You can, however, easily do what you want: Step 1: create a trial list with 22 trials (levels, if you like to keep it very transparent). Add your trial-procedure here. No attributes necessary, but, importantly, you add a nested list (by typing in a name under the Nested List column). Step 2: inside the nested list, add an attribute SOA. Add 66 trials. For the first 22 SOAs, add 0, the second 22, 120, and so on. Turn on randomisation. Step 3: within your trial procedure, add the slide or whatever with which you make the SOA. In duration, enter [SOA]. Done, now, the 3 values of SOA are randomly (independently) scattered over 3 blocks. 3. E-Prime does not have a method for detecting the end of sound. It would be best for you to figure out, using some software (like cooledit) to find out exactly, and I mean, exactly at 44100 Hz precision, when audio files end. Even if E-Prime would come with such capabilities, you'd probably not want to trust it. Anyway, I'd suggest naming files with the duration ("PRIMESOUND100MS.WAV" for instance). Once you'll already know the length of the sound (the length of the sound is different from the length of the soundFILE), having somebody following directly after it shouldn't be difficult. Best, Michiel -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Heng Li Sent: 08 March 2012 06:43 To: E-Prime Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends 1. I read the tutorial but didn't find the solution to dividing trials into miniblocks.I have 66 trials in total and I want to randomly assign them into three blocks each with 22 trials. 2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I need randomly insert an SOA (which is accompanied by a blank screen) between the prime and target stimuli.How can I do that within 3 miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide the SOAs among all trials but not in each miniblock. 3. My priming stimulus is a sound and my target stimulus is a picture.For the SOA inserting btw the prime and target,I want it to start immediately after the sound ends.Since the sound stimuli are of different durations,how can I tell E-Prime to detect the end of each priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From yelda.semizer at gmail.com Fri Mar 9 14:33:27 2012 From: yelda.semizer at gmail.com (Yelda) Date: Fri, 9 Mar 2012 06:33:27 -0800 Subject: incremental adjustments of responses using key presses or mouse Message-ID: Dear group, I know that this question was asked earlier (link is below) but I couldn't manage to make the code work that was written by a responder for a different program. My task is as following: I want the participants to do resize a randomly sized circle (I'll use "cnvs" function to draw the circle) and then record the radius or diameter of the final size of the circle. I can do this by either of the two ways below: Mouse response: click on the circle and 'drag it' bigger or smaller Key response: make the circle incrementally bigger or smaller (preferably a pixel at a time) by pressing up and down keys I would appreciate any help. Many thanks http://groups.google.com/group/e-prime/browse_thread/thread/6e4c9ff8a36a3965/f61bd369d47a80f2 Yelda Semizer Bogazici University, Istanbul, Turkey -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From rachel.ostrand at gmail.com Sun Mar 11 22:34:29 2012 From: rachel.ostrand at gmail.com (Rachel) Date: Sun, 11 Mar 2012 15:34:29 -0700 Subject: List counterbalancing by sujbect Message-ID: Hi All, I have an extremely simple question that I know must be possible to do, but I simply cannot get it to work. I've read a jillion old forum posts, but it seems like everyone is asking a much more complicated question than I have, and so I can't find just a basic template to work off of. I have 8 subject groups, each with its own list of video stimuli. I want each subject to see all of the video stimuli from exactly one of these lists. I created a master list (GroupList) with 8 nested levels (Group1, Group2, ..., Group8) and in the master list, I set Selection to Counterbalance by Subject. However, instead of playing every video in the appropriate Group# list, it plays exactly 1 video and then exits. What is going on? How do I make it play every single trial in that one group list, and cycle through and choose a different group list for each new subject? For example, Subject1 should see all 118 videos in the Group1 list (in a random order); Subject2 should see all 118 videos in the Group2 list; Subject3 should see all 118 videos in the Group3 list, and so on through all 8 Group# lists. This is really time-critical, especially since this seems to be exactly what the Counterbalance option should do, so as prompt a response as possible would be really appreciated. Thanks, Rachel -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From d.vinson at ucl.ac.uk Mon Mar 12 10:12:39 2012 From: d.vinson at ucl.ac.uk (David Vinson) Date: Mon, 12 Mar 2012 10:12:39 +0000 Subject: List counterbalancing by sujbect In-Reply-To: Message-ID: Hi Rachel, I approached this problem a different way, not using nested lists. The MasterList contains 8 lines, each running a different procedure (one for each of the 8 subject groups), e.g. RunProc1 RunProc2 RunProc3 ... (and in its simplest form no other information is specified in the MasterList) Each of these RunProc* procedures just contains a single List (akin to your Group1List, Group2List, Group3List...) all of which contain the full list of items for that Group, and call the same experimental trial procedure. These are set to exit after all samples in the list (the number of items). The master list is set to Exit after 1 sample, and Offset - because only one entry per subject is selected, there's no need to worry about what order the master list is sampled in (you control this by your assignment of subject number). this way each subjects sees only one entry in the Master list, and all items in their respective Group list. hope this helps! -david On 11/03/2012 22:34, Rachel wrote: > Hi All, > > I have an extremely simple question that I know must be possible to > do, but I simply cannot get it to work. I've read a jillion old forum > posts, but it seems like everyone is asking a much more complicated > question than I have, and so I can't find just a basic template to > work off of. > > I have 8 subject groups, each with its own list of video stimuli. I > want each subject to see all of the video stimuli from exactly one of > these lists. I created a master list (GroupList) with 8 nested levels > (Group1, Group2, ..., Group8) and in the master list, I set Selection > to Counterbalance by Subject. However, instead of playing every video > in the appropriate Group# list, it plays exactly 1 video and then > exits. What is going on? How do I make it play every single trial in > that one group list, and cycle through and choose a different group > list for each new subject? > > For example, Subject1 should see all 118 videos in the Group1 list (in > a random order); Subject2 should see all 118 videos in the Group2 > list; Subject3 should see all 118 videos in the Group3 list, and so on > through all 8 Group# lists. > > This is really time-critical, especially since this seems to be > exactly what the Counterbalance option should do, so as prompt a > response as possible would be really appreciated. > > Thanks, > Rachel > -- David Vinson, Ph.D. Senior Postdoctoral Researcher Cognitive, Perceptual and Brain Sciences Research Department University College London 26 Bedford Way, London WC1H 0AP Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Mon Mar 12 19:57:02 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 12 Mar 2012 15:57:02 -0400 Subject: List counterbalancing by sujbect In-Reply-To: <4F5DCC17.6070108@ucl.ac.uk> Message-ID: Rachel, First, as you have found, it is not simple to do what you want here in E-Prime. If anybody knows of another platform that handles this better, then please let us know! Second, the Counterbalance option in EP is misnamed. If you searched the EP Google Group for "counterbalance" then you may come upon the following thread where this gets explained: http://groups.google.com/group/e-prime/browse_thread/thread/26d2e1e83c6a09bb . Now, if you want to run several different samples from a stimulus or trial List, you cannot just put that as a nested List in your main BlockList, because that will pick just one row from the nested List and pass just that down to the trials at the next level. David Vinson shows one perfectly good way to handle this by setting BlockList to Counterbalance and using separate BlockProcs, each using a different TrialList to run the same TrialProc, e.g., Experiment Object SessionProc BlockList BlockProc1 TrialList1 TrialProc BlockProc2 TrialList2 TrialProc BlockProc3 ... As an experienced and dedicated programmer (as opposed to an ordinary researcher), I dislike making several Procedures that all do the same thing only with different content, I prefer to have a single Procedure and then pass it changing content as needed. So here is how I would do that using nested Lists. My structure would look more like this: Experiment Object SessionProc BlockList BlockProc TrialList (?) [StimList] TrialProc Unreferenced E-Objects StimList1 StimList2 ... Each StimList (under Unreferenced E-Objects) holds the list of stimuli for one counterbalanced block. In BlockList I add one attribute named "StimList", and for each block I enter the name of the StimList for that block, i.e., "StimList1", "StimList2", etc. TrialList has just one row, and in Nested I put "[StimList]". Then I either set Weight to the number of trials (e.g., 8), or set the list to Exit after the proper number of samples (e.g., 8). With that done, TrialList will take samples from the StimList named by [StimList] and use those for the trials run by TrialProc. Follow? This technique has also been discussed somewhat before at http://groups.google.com/group/e-prime/browse_thread/thread/9519542730f4b242 . OK, so maybe that is no simpler than what David Vinson showed, but it does show that there is more than one way to skin this cat, and you may find it a suitable strategy for some cases. --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/12/2012 06:12 AM Monday, David Vinson wrote: >Hi Rachel, > >I approached this problem a different way, not using nested lists. > >The MasterList contains 8 lines, each running a different procedure >(one for each of the 8 subject groups), e.g. >RunProc1 >RunProc2 >RunProc3 >... > >(and in its simplest form no other information is specified in the MasterList) > >Each of these RunProc* procedures just contains a single List (akin >to your Group1List, Group2List, Group3List...) all of which contain >the full list of items for that Group, and call the same >experimental trial procedure. These are set to exit after all >samples in the list (the number of items). > >The master list is set to Exit after 1 sample, and Offset - because >only one entry per subject is selected, there's no need to worry >about what order the master list is sampled in (you control this by >your assignment of subject number). > >this way each subjects sees only one entry in the Master list, and >all items in their respective Group list. > >hope this helps! >-david > > > >On 11/03/2012 22:34, Rachel wrote: >>Hi All, >> >>I have an extremely simple question that I know must be possible to >>do, but I simply cannot get it to work. I've read a jillion old forum >>posts, but it seems like everyone is asking a much more complicated >>question than I have, and so I can't find just a basic template to >>work off of. >> >>I have 8 subject groups, each with its own list of video stimuli. I >>want each subject to see all of the video stimuli from exactly one of >>these lists. I created a master list (GroupList) with 8 nested levels >>(Group1, Group2, ..., Group8) and in the master list, I set Selection >>to Counterbalance by Subject. However, instead of playing every video >>in the appropriate Group# list, it plays exactly 1 video and then >>exits. What is going on? How do I make it play every single trial in >>that one group list, and cycle through and choose a different group >>list for each new subject? >> >>For example, Subject1 should see all 118 videos in the Group1 list (in >>a random order); Subject2 should see all 118 videos in the Group2 >>list; Subject3 should see all 118 videos in the Group3 list, and so on >>through all 8 Group# lists. >> >>This is really time-critical, especially since this seems to be >>exactly what the Counterbalance option should do, so as prompt a >>response as possible would be really appreciated. >> >>Thanks, >>Rachel > >-- >David Vinson, Ph.D. >Senior Postdoctoral Researcher >Cognitive, Perceptual and Brain Sciences Research Department >University College London >26 Bedford Way, London WC1H 0AP >Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) > > >-- >You received this message because you are subscribed to the Google >Groups "E-Prime" group. >To post to this group, send email to e-prime at googlegroups.com. >To unsubscribe from this group, send email to >e-prime+unsubscribe at googlegroups.com. >For more options, visit this group at >http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From haleilgaz at gmail.com Mon Mar 12 22:01:33 2012 From: haleilgaz at gmail.com (hale) Date: Mon, 12 Mar 2012 15:01:33 -0700 Subject: Multiple text box and clicking problem in same screen Message-ID: Hi, I had a problem about developing experiment. I checked out topics but i couldn't find any solution about my problem. In my experiment there are 7 different text boxes in the same screen and user will enter into each box characters like "a" or "1". When i run the experiment; i want to click a text box and enter a character after that i have to click the second box and again enter another character then third, fourth... I added keyboard device, echo and display there aren't any problems here but when i put text boxes in same screen i couldn't enter characters second, third or the others. I will be very pleased if anyone help me. Thanks a lot. Hale -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Tue Mar 13 10:57:27 2012 From: liwenna at gmail.com (liwenna) Date: Tue, 13 Mar 2012 03:57:27 -0700 Subject: List counterbalancing by sujbect In-Reply-To: Message-ID: And I'll propose just another method: For this to work the group number should be available in an attribute called group. I assume that you now use the startup info parameter 'group' to assign group. Is that correct? In that case the following should work: Remove seven of the eight levels of the masterlist (Grouplist). When you do that, the group#lists from the removed levels are placed into the 'unreferenced objects' section of the experiment tree. Although this (to me at least) feels like a 'trashbin', it can also function as a 'storage place' and this is the way you'd want to use it now, so don't remove the lists from the 'unreferenced objects' section. Alternatively you could not even remove the last seven levels and simply set the list to exit after the first level (in sequential mode) but I feel that that is a bit more deceiving even than removing but still using certain lists. Now at the beginning of your experiment procedure place an inline with the following code: **** dim n as integer for n = 1 to 8 if c.getattrib ("group") = n then grouplist.SetAttrib 1, "nested", "group"& n &"list" next n **** What it does: a loop is run for eight times. On each run it checks each value of 1-8 to see whether the group variable (= group number) is 1, 2, 3 etc. If the value of group is the same as the value of n within that specific loop, it replaces the nested list at the first (and only) level of grouplist with the list called 'groupxlist' wherein x is the value of n and therefore the value of the current participants group. Now each participant group's videos (stored in the newly nested groupnlist) should be used. Best, liw On Sunday, 11 March 2012 23:34:29 UTC+1, Rachel wrote: > > Hi All, > > I have an extremely simple question that I know must be possible to > do, but I simply cannot get it to work. I've read a jillion old forum > posts, but it seems like everyone is asking a much more complicated > question than I have, and so I can't find just a basic template to > work off of. > > I have 8 subject groups, each with its own list of video stimuli. I > want each subject to see all of the video stimuli from exactly one of > these lists. I created a master list (GroupList) with 8 nested levels > (Group1, Group2, ..., Group8) and in the master list, I set Selection > to Counterbalance by Subject. However, instead of playing every video > in the appropriate Group# list, it plays exactly 1 video and then > exits. What is going on? How do I make it play every single trial in > that one group list, and cycle through and choose a different group > list for each new subject? > > For example, Subject1 should see all 118 videos in the Group1 list (in > a random order); Subject2 should see all 118 videos in the Group2 > list; Subject3 should see all 118 videos in the Group3 list, and so on > through all 8 Group# lists. > > This is really time-critical, especially since this seems to be > exactly what the Counterbalance option should do, so as prompt a > response as possible would be really appreciated. > > Thanks, > Rachel -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/EpYXOb8jLp4J. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Tue Mar 13 20:09:07 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 13 Mar 2012 16:09:07 -0400 Subject: Mastering E-Prime: Speeding computations with Suspend/Resume Message-ID: WARNING: The following describes advanced techniques. DO NOT USE these techniques unless you fancy yourself a dedicated hacker. Over at http://support.pstnet.com/forum/Topic5636-23-1.aspx there was a discussion of computational speed in E-Prime programs. As discussed in that thread, by default, between each line of E-Basic code EP performs internal operations such as device handling. This strategy accounts for E-Prime's success in handling subject inputs with millisecond precision, but it also significantly slows computations during intervals that do not require high-precision input. For most of our projects this presents no problem, but this behavior does interfere with other projects (e.g., random movement of 500 dots). As it turns out, EP includes facilities to improve computational speed during intervals when a task does not take input, namely Rte.DeviceManager.Suspend/Resume and Device.Suspend/Resume. You may consult those topics in the E-Basic Help facility, and download a crude example program that I posted to the thread linked above. For example, on one run of my test platform, 20,000 empty loops took 5420 ms (271 µs/loop) normally, but only 996 ms (50 µs/loop) after Rte.DeviceManager.Suspend. In sum, here are my cursory results from only one test platform: - Rte.DeviceManager.Suspend - Speeds loop execution by a factor of roughly 5-10. - Makes the Display go blank. - No longer handles GetUserBreakState (simply ignored). - No longer handles the user abort sequence (user abort may actually crash the run). - Suspending *all* Devices using each one's .Suspend method - Speeds loop execution by a factor of roughly 10-15. - Makes the Display go blank (as a result of Display.Suspend). - Still handles GetUserBreakState. - Still handles the user abort sequence. - Suspending all Devices *except* Display, using each one's .Suspend method - Speeds loop execution by a factor of roughly 5. - Still shows the Display. - Still handles GetUserBreakState. - Still handles the user abort sequence. Note that this behavior is the *inverse* of ordinary programming platforms. Other platforms perform computations at maximum rate by default, but during intervals of user input programmers must take extra measures to handle that input with high temporal precision. By contrast, E-Prime handles input with millisecond performance by default, but then during intervals that require rapid computations without user input programmers must take extra measures to suspend and then resume EP's regular input monitoring operations. For many behavioral research projects, this is the best tradeoff. As always, no single platform is best for every project, and we should pick the tools best suited to the project at hand. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From rachel.ostrand at gmail.com Wed Mar 14 02:10:23 2012 From: rachel.ostrand at gmail.com (Rachel) Date: Tue, 13 Mar 2012 19:10:23 -0700 Subject: List counterbalancing by sujbect In-Reply-To: <19864325.784.1331636247354.JavaMail.geo-discussion-forums@ynv11> Message-ID: Hi everyone, Thanks so much for your suggestions. I went with David Vinson's idea of creating a separate procedure for each GroupList, and it worked perfectly. Admittedly, this solution is somewhat undesirable for two reasons: first, if I had 100 different conditions, instead of just 8, not only would I have to make up 100 different counterbalancing lists but also 100 different procedures to nest these lists in. Second, as the other David pointed out, it's rather inelegant of a solution to have redundancy in the code. However, it doesn't require building a new TrialProc for each list, which is the major procedure that you want to keep the same across all versions, so if something gets changed, it gets changed in all versions. Given then that neither of these hurdles was too major, it was a great suggestion, worked for my purposes, and thanks again for all of your responses. -Rachel -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From catarina.melo.azevedo at gmail.com Wed Mar 14 10:06:10 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Wed, 14 Mar 2012 03:06:10 -0700 Subject: Random lists and orders, but with correspondence block1/block2 Message-ID: Hi all! I know how to work with E-prime in general but I never did scripts with it. I have 3 questions and I hope you can help me on this. I have a final list of 80 English and 80 Dutch words. I want each participant to see 40 English and 40 Dutch words. All the Dutch words are translations of the English words and these different languages of the words are separated in two different blocks.The most important is that the words appearing in the second block of presentation must be the translations of the words in the first block (if they see "happy"in the first they must see "blij"in the second). This is the general idea. My questions are: 1- From the 80 Eng and the 80 Dutch words lists I want to take randomly 40 words (of each) for each participant. The idea is that instead of having 2 or more equivalent lists and counterbalanced them for subject, I want each participant to see different combinations of words, randomly assigned, in a different order of presentation. For that is important to guarantee a) that all words will be seen by the same number of participants and b) the words in the second block are the translations of the ones of the first block. 2- From that 40 English (and Dutch) words they will be seen, I want to specify that they will always see 10 of category A, 10 of category B, 10 of category C and 10 of category D. 3- If possible I do not want them to see more than 3 words of the same category one after the other. Thank you so much for your help Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From yelda.semizer at gmail.com Thu Mar 15 18:07:49 2012 From: yelda.semizer at gmail.com (Yelda Semizer) Date: Thu, 15 Mar 2012 20:07:49 +0200 Subject: adjusting the size of the stimulus Message-ID: Dear group, I posted a question three days ago, but didn't get a reply. I'm so sorry for bombarding your inbox with my questions but I'm hoping that maybe someone who missed it last time may help me. My task is as following: I want the participants to do resize a randomly sized circle (I'll use "cnvs" function to draw the circle) and then record the radius or diameter of the final size of the circle. I can do this by either of the two ways below: (currently my code draws a circle and makes incrementally bigger without requiring any response). Mouse response: click on the circle and 'drag it' bigger or smaller Key response: make the circle incrementally bigger or smaller (preferably a pixel at a time) by pressing up and down keys I would appreciate any help. Many thanks -- yelda -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Thu Mar 15 18:45:52 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 14:45:52 -0400 Subject: adjusting the size of the stimulus In-Reply-To: Message-ID: Yelda, Since you pressed the issue... Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take, and I will try to do this without getting too snarky (now that we are marketing our own online E-Prime training course, it seems that I have to adopt a more "professional" persona, over which I am struggling)... Both this and your earlier post do not contain a single question mark ("?"), let alone pose any clear question -- they both present merely a partial set of specifications, so it is hard for me at least to know what question you mean to ask. Do you want someone to jump in and just write the whole experiment program for you? Do you want a fully working demo program of how to resize circles, for incorporation in your program? Do you want merely to know how to get mouse coordinate inputs for use in your routine? Do you have a specific "how-to" question about some small programming detail? I find that this Group works best in addressing minute details of specific programming problems, not in designing entire experiment programs based on partial specifications. Then again, from time to time some kind and talented souls here do step in to provide complete programs, so you may get lucky. And again, PST Web Support has been known to design entire custom experiment programs at no charge, so you might try them. Good luck, ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/15/2012 02:07 PM Thursday, you wrote: >Dear group, > >I posted a question three days ago, but didn't get a reply. I'm so >sorry for bombarding your inbox with my questions but I'm hoping >that maybe someone who missed it last time may help me. > >My task is as following: I want the participants to do resize a >randomly sized circle (I'll use "cnvs" function to draw the circle) >and then record the radius or diameter of the final size of the >circle. I can do this by either of the two ways below: (currently my >code draws a circle and makes incrementally bigger without requiring >any response). > >Mouse response: click on the circle and 'drag it' bigger or smaller > >Key response: make the circle incrementally bigger or smaller >(preferably a pixel >at a time) by pressing up and down keys > >I would appreciate any help. >Many thanks > >-- >yelda -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiffanieong at gmail.com Thu Mar 15 19:23:20 2012 From: tiffanieong at gmail.com (Tiffanie) Date: Thu, 15 Mar 2012 12:23:20 -0700 Subject: Trial number from randomseed Message-ID: Dear all, I am quite new to E-prime and I've just realised that the programme that I have been using to collect data for the past two weeks hasn't been logging the data correctly! Basically, participants are presented with a series of attributes describing four hypothetical apartments (these attributes are presented for a fixed time of 4seconds). At the end of it, participants are asked to decide which apartment they would like to live in. I am interested in how the order of presentation of attributes affects this final judgement and there were some obvious issues with have a fixed order across all participants so we decided to randomise it. However, we decided on this with the impression that E-prime would log the data of the order in which the attributes appeared (at random). On the list with all the attributes, under Logging, I checked the attributes property name. I guess I made a huge mistake when I was testing the programme because I pressed spacebar to move on to the next attribute, and when I looked at the data, the attributes order was indeed recorded. I didn't double check if the same would happen if no response was made at all, which was the case for all participants since they were asked to just read each attribute and the next one would appear automatically. I guess another reason why I didn't realise this mistake earlier was because I did get a E-DataAid file after each participant - however, there was just one line with the subject, session... and random seed. I know this is very far fetched, but I'm wondering if there is any chance at all that I could somehow retrieve any form of information about the order of trials from the randomseed number? Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 19:40:12 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 15:40:12 -0400 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <54b72108-dad1-4986-ab67-b82ebb91ea4c@fk28g2000vbb.googlegr oups.com> Message-ID: Catarina, Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... Quick response, addressing merely the "Study-Recall" aspect of this design -- take a look at the StudyRecall.es example downloadable from the PST web site. That should give you ideas. And just a general overal pointer on Lists & nested Lists in E-Prime: As I describe in my online E-Prime course (and in other threads both here and at the PST Forum), I have found it helpful to think of them all these Lists as separate decks of playing cards. Good luck. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/14/2012 06:06 AM Wednesday, you wrote: >Hi all! > >I know how to work with E-prime in general but I never did scripts >with it. I have 3 questions and I hope you can help me on this. > >I have a final list of 80 English and 80 Dutch words. I want each >participant to see 40 English and 40 Dutch words. All the Dutch words >are translations of the English words and these different languages of >the words are separated in two different blocks.The most important is >that the words appearing in the second block of presentation must be >the translations of the words in the first block (if they see >"happy"in the first they must see "blij"in the second). > >This is the general idea. My questions are: > >1- From the 80 Eng and the 80 Dutch words lists I want to take >randomly 40 words (of each) for each participant. The idea is that >instead of having 2 or more equivalent lists and counterbalanced them >for subject, I want each participant to see different combinations of >words, randomly assigned, in a different order of presentation. For >that is important to guarantee a) that all words will be seen by the >same number of participants and b) the words in the second block are >the translations of the ones of the first block. > >2- From that 40 English (and Dutch) words they will be seen, I want to >specify that they will always see 10 of category A, 10 of category B, >10 of category C and 10 of category D. > >3- If possible I do not want them to see more than 3 words of the same >category one after the other. > > >Thank you so much for your help > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 20:50:20 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 16:50:20 -0400 Subject: Trial number from randomseed In-Reply-To: <9864c1e8-ef85-4054-8e96-3f8661c30260@s7g2000yqm.googlegrou ps.com> Message-ID: Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... Good cautionary tale. That's why my lesson on "Data Handling In Depth" stresses to "Analyze early & often!" So reading through your plea, I understand that your program did not merely fail to log the trial/stimulus order (which would have been odd, because by default EP *always* logs *every* List attribute used *in presentation order*, whether you want it or not), but failed to log any data *at all*. Is that right? And I am (figuratively) scratching my balding head trying to figure out how you managed to get things logged when giving a response, but not for non-responses. That is really weird. EP by default logs all information at the end of each Procedure, response or not, so I cannot imagine how you got rows of data for responses, but not for non-responses. As far as I can figure, you would have to go *way* out of your way to turn off the automatic Procedure logging and replace it with your own inline code, which would be bad unless you *really* knew what you were doing. So I must be overlooking something obvious. But no matter. Finally, you said that, "On the list with all the attributes, under Logging," you "checked the attributes property name". Hmm. By default, those Logging attributes already have check marks; if you went in and manually "checked" them, then you really unchecked them, and that turned off their logging. But that would mean that they would fail to log for both non-responses *and* responses, which does not square with your account. So I am stumped on how you got to this state. Anyway, that was not your question at all. As I take it, you merely want a mechanism to use the recorded RandomSeed to regenerate the presentation order. Well, the short answer is, if you look around the E-Prime Knowledge Base on the PST web site, you will find instructions on how to enter a RandomSeed value and have EP run with that. As I recall, it comes down to adding RandomSeed as a StartupInfo parameter (I cover StartupInfo parameters in my course). For details, consult the EP KB, or PST Web Support. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/15/2012 03:23 PM Thursday, you wrote: >Dear all, > >I am quite new to E-prime and I've just realised that the programme >that I have been using to collect data for the past two weeks hasn't >been logging the data correctly! > >Basically, participants are presented with a series of attributes >describing four hypothetical apartments (these attributes are >presented for a fixed time of 4seconds). At the end of it, >participants are asked to decide which apartment they would like to >live in. >I am interested in how the order of presentation of attributes affects >this final judgement and there were some obvious issues with have a >fixed order across all participants so we decided to randomise it. >However, we decided on this with the impression that E-prime would log >the data of the order in which the attributes appeared (at random). On >the list with all the attributes, under Logging, I checked the >attributes property name. I guess I made a huge mistake when I was >testing the programme because I pressed spacebar to move on to the >next attribute, and when I looked at the data, the attributes order >was indeed recorded. I didn't double check if the same would happen if >no response was made at all, which was the case for all participants >since they were asked to just read each attribute and the next one >would appear automatically. > >I guess another reason why I didn't realise this mistake earlier was >because I did get a E-DataAid file after each participant - however, >there was just one line with the subject, session... and random seed. >I know this is very far fetched, but I'm wondering if there is any >chance at all that I could somehow retrieve any form of information >about the order of trials from the randomseed number? > > >Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 21:56:29 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 17:56:29 -0400 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: <000501ccfde2$a422c4c0$ec684e40$@eu> Message-ID: Sorry if I'm a bit late to this party, bur for the record... Michiel already covered answers for #1 & #2, which comes down to using nested Lists -- for more on this do the nested Lists tutorial in Appendix C of the User's Guide that came with E-Prime, and work through Michiel's free E-Primer (available at the STEP web site, step.psy.cmu.edu ); and if that is not enough and you have some money & time to spend, I cover the basics of how to do this sort of thing in the "Task Design Structure" lesson of my online course. If for #3 you mean ISI instead of SOA, EP can do that very easily too. For your SoundOut object, set End Sound Action to Terminate, and Duration to some suitably large value (e.g., (infinite)). Now the SoundOut object will automatically end right at the end of the sound file. (This, too, is covered in my online course; and remember that the Duration of the object that plays a sound is *not* the same as the duration of the sound file being played). Following your SoundOut, add any appropriate object to take up the ISI (e.g., TextDisplay, or even a Wait in this case), use an attribute reference for its ISI, and then follow that with your next stimulus, i.e., your ImageDisplay. Voilà ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/9/2012 06:51 AM Friday, Michiel Sovijarvi-Spape wrote: >Hi, >1. Which tutorial? From your questions, it seems to me a clear necessity >that one should not READ the tutorial, but go through it, completely. Much >like learning any language, "just" reading a dictionary and the rules of >grammar do not grant you proficiency; it takes time and work to get a feel >for how to use these tools. If you like, you might want to continue your >learning by also doing the absolutely free tutorial thing somewhere on my >website (www.cognitology.eu) or other websites you can find by searching for >"an e-primer". Speaking of grammar: I find it difficult to understand what >you are saying - I do not wish to sound nagging, and I understand not >everyone is fluent, but your message does not come across as clear as you >presumably hoped it would. >2. So, you want to divide one condition (SOA) with 3 levels, without >replacement, unevenly across 3 blocks. Tutorials probably don't mention >"mini-blocks" because it doesn't seem to be a term as such. You can, >however, easily do what you want: > >Step 1: create a trial list with 22 trials (levels, if you like to keep it >very transparent). Add your trial-procedure here. No attributes necessary, >but, importantly, you add a nested list (by typing in a name under the >Nested List column). >Step 2: inside the nested list, add an attribute SOA. Add 66 trials. For the >first 22 SOAs, add 0, the second 22, 120, and so on. Turn on randomisation. >Step 3: within your trial procedure, add the slide or whatever with which >you make the SOA. In duration, enter [SOA]. >Done, now, the 3 values of SOA are randomly (independently) scattered over 3 >blocks. > >3. E-Prime does not have a method for detecting the end of sound. It would >be best for you to figure out, using some software (like cooledit) to find >out exactly, and I mean, exactly at 44100 Hz precision, when audio files >end. Even if E-Prime would come with such capabilities, you'd probably not >want to trust it. Anyway, I'd suggest naming files with the duration >("PRIMESOUND100MS.WAV" for instance). Once you'll already know the length of >the sound (the length of the sound is different from the length of the >soundFILE), having somebody following directly after it shouldn't be >difficult. >Best, >Michiel > > > >-----Original Message----- >From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf >Of Heng Li >Sent: 08 March 2012 06:43 >To: E-Prime >Subject: Questions about miniblocks,stimulus onset asynchrony,and present >stimuli after a sound ends > >1. I read the tutorial but didn't find the solution to dividing trials >into miniblocks.I have 66 trials in total and I want to randomly >assign them into three blocks each with 22 trials. >2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >need randomly insert an SOA (which is accompanied by a blank screen) >between the prime and target stimuli.How can I do that within 3 >miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >the SOAs among all trials but not in each miniblock. >3. My priming stimulus is a sound and my target stimulus is a >picture.For the SOA inserting btw the prime and target,I want it to >start immediately after the sound ends.Since the sound stimuli are of >different durations,how can I tell E-Prime to detect the end of each >priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 22:07:44 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 18:07:44 -0400 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: <4f626593.e90b320a.6b0f.ffffb702SMTPIN_ADDED@gmr-mx.google. com> Message-ID: Oh, and for my approach to #3, you will also want to pay close attention to the differences between Event and Cumulative timing modes -- see Chapter 3 of the User's Guide, on Critical Timing (I do discuss this in my online course, but I still insist that everyone study Chapter 3 for the details). -- dkm At 3/15/2012 05:56 PM Thursday, David McFarlane wrote: >Sorry if I'm a bit late to this party, bur for the record... > >Michiel already covered answers for #1 & #2, >which comes down to using nested Lists -- for >more on this do the nested Lists tutorial in >Appendix C of the User's Guide that came with >E-Prime, and work through Michiel's free >E-Primer (available at the STEP web site, >step.psy.cmu.edu ); and if that is not enough >and you have some money & time to spend, I cover >the basics of how to do this sort of thing in >the "Task Design Structure" lesson of my online course. > >If for #3 you mean ISI instead of SOA, EP can do >that very easily too. For your SoundOut object, >set End Sound Action to Terminate, and Duration >to some suitably large value (e.g., >(infinite)). Now the SoundOut object will >automatically end right at the end of the sound >file. (This, too, is covered in my online >course; and remember that the Duration of the >object that plays a sound is *not* the same as >the duration of the sound file being >played). Following your SoundOut, add any >appropriate object to take up the ISI (e.g., >TextDisplay, or even a Wait in this case), use >an attribute reference for its ISI, and then >follow that with your next stimulus, i.e., your ImageDisplay. Voilà > >----- >David McFarlane >E-Prime training >online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx >Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) > > >At 3/9/2012 06:51 AM Friday, Michiel Sovijarvi-Spape wrote: >>Hi, >>1. Which tutorial? From your questions, it seems to me a clear necessity >>that one should not READ the tutorial, but go through it, completely. Much >>like learning any language, "just" reading a dictionary and the rules of >>grammar do not grant you proficiency; it takes time and work to get a feel >>for how to use these tools. If you like, you might want to continue your >>learning by also doing the absolutely free tutorial thing somewhere on my >>website (www.cognitology.eu) or other websites you can find by searching for >>"an e-primer". Speaking of grammar: I find it difficult to understand what >>you are saying - I do not wish to sound nagging, and I understand not >>everyone is fluent, but your message does not come across as clear as you >>presumably hoped it would. >>2. So, you want to divide one condition (SOA) with 3 levels, without >>replacement, unevenly across 3 blocks. Tutorials probably don't mention >>"mini-blocks" because it doesn't seem to be a term as such. You can, >>however, easily do what you want: >> >>Step 1: create a trial list with 22 trials (levels, if you like to keep it >>very transparent). Add your trial-procedure here. No attributes necessary, >>but, importantly, you add a nested list (by typing in a name under the >>Nested List column). >>Step 2: inside the nested list, add an attribute SOA. Add 66 trials. For the >>first 22 SOAs, add 0, the second 22, 120, and so on. Turn on randomisation. >>Step 3: within your trial procedure, add the slide or whatever with which >>you make the SOA. In duration, enter [SOA]. >>Done, now, the 3 values of SOA are randomly (independently) scattered over 3 >>blocks. >> >>3. E-Prime does not have a method for detecting the end of sound. It would >>be best for you to figure out, using some software (like cooledit) to find >>out exactly, and I mean, exactly at 44100 Hz precision, when audio files >>end. Even if E-Prime would come with such capabilities, you'd probably not >>want to trust it. Anyway, I'd suggest naming files with the duration >>("PRIMESOUND100MS.WAV" for instance). Once you'll already know the length of >>the sound (the length of the sound is different from the length of the >>soundFILE), having somebody following directly after it shouldn't be >>difficult. >>Best, >>Michiel >> >> >> >>-----Original Message----- >>From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf >>Of Heng Li >>Sent: 08 March 2012 06:43 >>To: E-Prime >>Subject: Questions about miniblocks,stimulus onset asynchrony,and present >>stimuli after a sound ends >> >>1. I read the tutorial but didn't find the solution to dividing trials >>into miniblocks.I have 66 trials in total and I want to randomly >>assign them into three blocks each with 22 trials. >>2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >>need randomly insert an SOA (which is accompanied by a blank screen) >>between the prime and target stimuli.How can I do that within 3 >>miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >>the SOAs among all trials but not in each miniblock. >>3. My priming stimulus is a sound and my target stimulus is a >>picture.For the SOA inserting btw the prime and target,I want it to >>start immediately after the sound ends.Since the sound stimuli are of >>different durations,how can I tell E-Prime to detect the end of each >>priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiffanieong at gmail.com Thu Mar 15 22:36:53 2012 From: tiffanieong at gmail.com (Tiffanie) Date: Thu, 15 Mar 2012 15:36:53 -0700 Subject: Trial number from randomseed In-Reply-To: <4f625610.42cb320a.5bc5.ffffa0bfSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks so much for your quick reply! Yes - the program failed to log any data at all! The first time I tried to run the program, to make sure everything was working, I pressed spacebar to move on to the next trial, and when I checked the data, I saw all the attributes listed. And I took it for granted, and didn't run the whole programme again by itself (without any response). It is really weird (and upsetting!) - I wouldn't know how to turn off the Procedure logging with any inline code. On the list with all the attributes, under property name - when I said I checked them, I guess I meant I made sure they were checked (and they definitely were). Also, I sent my previous message out in a state of panic so I probably wasn't very clear, but I tested the program on my own, and I responded to each trial when I tested it. However, when the students did the experiment, they did not respond at all - and for those, no data was collected. Anyway, I'm not entirely sure I understood the part about the RandomSeed - do you mean it's possible for me to retrieve the presentation order from the RandomSeed? I really hope so - because in principle, if the user can enter a randomseed number that fixes the presentation order, it should work the other way too? I will look around the knowledge base and pst website. I really hope I find something! Thanks! > So reading through your plea, I understand that your program did not > merely fail to log the trial/stimulus order (which would have been > odd, because by default EP *always* logs *every* List attribute used > *in presentation order*, whether you want it or not), but failed to > log any data *at all*.  Is that right? > > And I am (figuratively) scratching my balding head trying to figure > out how you managed to get things logged when giving a response, but > not for non-responses.  That is really weird.  EP by default logs all > information at the end of each Procedure, response or not, so I > cannot imagine how you got rows of data for responses, but not for > non-responses.  As far as I can figure, you would have to go *way* > out of your way to turn off the automatic Procedure logging and > replace it with your own inline code, which would be bad unless you > *really* knew what you were doing.  So I must be overlooking > something obvious.  But no matter. > > Finally, you said that, "On the list with all the attributes, under > Logging," you "checked the attributes property name".  Hmm.  By > default, those Logging attributes already have check marks; if you > went in and manually "checked" them, then you really unchecked them, > and that turned off their logging.  But that would mean that they > would fail to log for both non-responses *and* responses, which does > not square with your account.  So I am stumped on how you got to this state. > > Anyway, that was not your question at all.  As I take it, you merely > want a mechanism to use the recorded RandomSeed to regenerate the > presentation order.  Well, the short answer is, if you look around > the E-Prime Knowledge Base on the PST web site, you will find > instructions on how to enter a RandomSeed value and have EP run with > that.  As I recall, it comes down to adding RandomSeed as a > StartupInfo parameter (I cover StartupInfo parameters in my > course).  For details, consult the EP KB, or PST Web Support. > > ----- > David McFarlane > E-Prime training > online:  http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter:  @EPrimeMaster (twitter.com/EPrimeMaster) > > At 3/15/2012 03:23 PM Thursday, you wrote: > > > > > > > > >Dear all, > > >I am quite new to E-prime and I've just realised that the programme > >that I have been using to collect data for the past two weeks hasn't > >been logging the data correctly! > > >Basically, participants are presented with a series of attributes > >describing four hypothetical apartments (these attributes are > >presented for a fixed time of 4seconds). At the end of it, > >participants are asked to decide which apartment they would like to > >live in. > >I am interested in how the order of presentation of attributes affects > >this final judgement and there were some obvious issues with have a > >fixed order across all participants so we decided to randomise it. > >However, we decided on this with the impression that E-prime would log > >the data of the order in which the attributes appeared (at random). On > >the list with all the attributes, under Logging, I checked the > >attributes property name. I guess I made a huge mistake when I was > >testing the programme because I pressed spacebar to move on to the > >next attribute, and when I looked at the data, the attributes order > >was indeed recorded. I didn't double check if the same would happen if > >no response was made at all, which was the case for all participants > >since they were asked to just read each attribute and the next one > >would appear automatically. > > >I guess another reason why I didn't realise this mistake earlier was > >because I did get a E-DataAid file after each participant - however, > >there was just one line with the subject, session... and random seed. > >I know this is very far fetched, but I'm wondering if there is any > >chance at all that I could somehow retrieve any form of information > >about the order of trials from the randomseed number? > > >Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiffanieong at gmail.com Fri Mar 16 12:48:57 2012 From: tiffanieong at gmail.com (Tiffanie) Date: Fri, 16 Mar 2012 05:48:57 -0700 Subject: Negative value for StartupInfo item Message-ID: Dear all, I was wondering if it is possible to specify a negative RandomSeed value for StartupInfo item? Thank you!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 18:03:34 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 14:03:34 -0400 Subject: Negative value for StartupInfo item In-Reply-To: <00d11670-9d8b-40dc-8fe6-eb6e996ff497@q18g2000yqh.googlegro ups.com> Message-ID: Ah, um, well, I think you are stuck, at least if the KB article, http://www.pstnet.com/support/kb.asp?TopicID=1268 , is to be trusted. You see, StartupInfo parameters set to data type Numeric are limited to non-negative values from 0 to 32,767, the largest signed integer that will fit in 16 bits. This is an oversight on the part of the designers of E-Prime, as 16-bit signed integers may also encode values from -32,768 to -1, but the code automatically generated to handle StartupInfo parameters explicitly prohibits negative values (don't take my word for that, just look at the generated code in the Main() routine). This may have been fixed in EP2.0.10.182 -- as I recall, numberic StartupInfo parameters in the new release are now Long (32-bit) integers, but I do not know whether it still peversely prohibits negative values. For all I know you could work around this by declaring the RandomSeed StartupInfo parameter as data type String, and then hope that EP does the automatic type conversion for you. I leave that as an exercise for you. Or, give a shout to PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp and see what they say -- and then, please post their response back here for everyone. But as I will explain shortyly in an update to your other thread, none of this may help you anyway. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/16/2012 08:48 AM Friday, you wrote: >Dear all, > >I was wondering if it is possible to specify a negative RandomSeed >value for StartupInfo item? > >Thank you!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 18:58:20 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 14:58:20 -0400 Subject: Trial number from randomseed In-Reply-To: Message-ID: First, let me clarify the "cautionary tale" here. The caution is not merely to fully test your programs with sufficient test cases before running subjects, although indeed that is key to good research; rather, I meant to stress the caution of *fully* analyzing subject data right from the start, and then throughout data collection. If you had done that (instead of merely confirming that data files existed), then you would have caught this problem with the first subject and fixed it before running more. So the full process goes something like this (this is an extended version of what I present in the online course, which means I should probably not be giving this away): - Develop research question & hypotheses - Design experimental task to explore hypotheses. - Declare full set of specifications for the experimental task. - Develop software to implement experimental task to declared specifications. - Throughout software development, test with a full set of input scenarios. For convenience you may run tests with a speeded-up program, and for consistency you should use carefully designed canned input sequences; you should develop thesee into a battery of test cases as you go. - Every time you make a change to the program, retest it with the *entire* battery of test cases to insure that you have not re-introduced bugs that you fixed earlier. This is known as "regression testing", as it tests to see that your improved software has not regressed to re-introduce previously fixed problems. - When you have the program fully developed, do complete run-throughs on yourself in real time (not sped up). - Do more full run-throughs, in real time, on lab partners. - Fix up all the problems revealed through the tests on yourself & lab partners, etc. - With all that done, run your first pilot subject. - Take the data from the first pilot subject, and run it completely through your intended data analysis (excepting for collective analyses that require more subjects). This will likely reveal flaws in your analysis methodology, which you will need to correct, and those corrections may call for more changes to the program, which will put you back several steps here again, etc. - Once you have success from one pilot subject, go ahead and run a few more pilot subjects, at least enough to complete some practice collective analyses that you could not do earlier. That will reveal more flaws, etc. etc. - OK, now you can start collecting data in earnest. But still, you need to keep looking in on your data, identifying anomalies to handle, etc., etc. I hope that captures the general flavor of this enterprise. Remember, anytime you think that your program works, it just means that it does not work, and you have simpy failed to discover what it does wrong yet. Software development is very deceptive that way. Anyway, I hope that you do not hope that you can somehow use the RandomSeed to recover the data directly from the data files you have. All hope is lost for that. If your data files show only one line, then they have no other "hidden" data to recover, RandomSeed or no. What you see is what you have. Sure, you may use E-Recovery to recover lost data from data .txt files, but if EP already successfully created the .edat files, then E-Recovery will not find any more data. So what use is RandomSeed in this case? Well, if you *re-ran* the .ebs program, after entering the RandomSeed, it should reproduce the same sequence as during the subject's run. But even here you face several "gotchas", because you would have to make other changes in your program in order to get EP to reveal the sequence this time, and who knows what effect that will have on the resulting trial sequences? For one, you will modify the program to accept a RandomSeed, but we may trust that that change alone will not affect any sequences. Next, you might try running the program while entering responses -- that might safely regenerate the sequence used during the subject's run, but this time logging the data. Or you might first fix the program to log data for non-responses, then run it with the RandomSeed -- at that point you have made even more changes to the program, so let's hope that that does not affect the sequence. But this all seems to iffy and tedious to me. If it were me, I would just scrap this data and start over. Consider yourself lucky. You lost only two weeks of data. We had a graduate student here who lost two years of dissertation data collected on paid clinical subjects because they never properly examined the data during data collection. That student failed to get their doctorate. And that's why I am so touchy about this issue. Finally, you might again consult PST Web Support on this, as they may know something that I do not. And then please write back and tell me where I got it wrong. (Oh, and BTW, it's "no data *were* collected" -- that's a pet peeve for us around here.) ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/15/2012 06:36 PM Thursday, you wrote: >Hi David, > >Thanks so much for your quick reply! > >Yes - the program failed to log any data at all! > >The first time I tried to run the program, to make sure everything was >working, I pressed spacebar to move on to the next trial, and when I >checked the data, I saw all the attributes listed. And I took it for >granted, and didn't run the whole programme again by itself (without >any response). It is really weird (and upsetting!) - I wouldn't know >how to turn off the Procedure logging with any inline code. On the >list with all the attributes, under property name - when I said I >checked them, I guess I meant I made sure they were checked (and they >definitely were). Also, I sent my previous message out in a state of >panic so I probably wasn't very clear, but I tested the program on my >own, and I responded to each trial when I tested it. However, when the >students did the experiment, they did not respond at all - and for >those, no data was collected. > >Anyway, I'm not entirely sure I understood the part about the >RandomSeed - do you mean it's possible for me to retrieve the >presentation order from the RandomSeed? I really hope so - because in >principle, if the user can enter a randomseed number that fixes the >presentation order, it should work the other way too? > >I will look around the knowledge base and pst website. I really hope I >find something! Thanks! > > > > So reading through your plea, I understand that your program did not > > merely fail to log the trial/stimulus order (which would have been > > odd, because by default EP *always* logs *every* List attribute used > > *in presentation order*, whether you want it or not), but failed to > > log any data *at all*. Is that right? > > > > And I am (figuratively) scratching my balding head trying to figure > > out how you managed to get things logged when giving a response, but > > not for non-responses. That is really weird. EP by default logs all > > information at the end of each Procedure, response or not, so I > > cannot imagine how you got rows of data for responses, but not for > > non-responses. As far as I can figure, you would have to go *way* > > out of your way to turn off the automatic Procedure logging and > > replace it with your own inline code, which would be bad unless you > > *really* knew what you were doing. So I must be overlooking > > something obvious. But no matter. > > > > Finally, you said that, "On the list with all the attributes, under > > Logging," you "checked the attributes property name". Hmm. By > > default, those Logging attributes already have check marks; if you > > went in and manually "checked" them, then you really unchecked them, > > and that turned off their logging. But that would mean that they > > would fail to log for both non-responses *and* responses, which does > > not square with your account. So I am stumped on how you got to > this state. > > > > Anyway, that was not your question at all. As I take it, you merely > > want a mechanism to use the recorded RandomSeed to regenerate the > > presentation order. Well, the short answer is, if you look around > > the E-Prime Knowledge Base on the PST web site, you will find > > instructions on how to enter a RandomSeed value and have EP run with > > that. As I recall, it comes down to adding RandomSeed as a > > StartupInfo parameter (I cover StartupInfo parameters in my > > course). For details, consult the EP KB, or PST Web Support. > > > > ----- > > David McFarlane > > E-Prime training > > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) > > > > At 3/15/2012 03:23 PM Thursday, you wrote: > > > > > > > > > > > > > > > > >Dear all, > > > > >I am quite new to E-prime and I've just realised that the programme > > >that I have been using to collect data for the past two weeks hasn't > > >been logging the data correctly! > > > > >Basically, participants are presented with a series of attributes > > >describing four hypothetical apartments (these attributes are > > >presented for a fixed time of 4seconds). At the end of it, > > >participants are asked to decide which apartment they would like to > > >live in. > > >I am interested in how the order of presentation of attributes affects > > >this final judgement and there were some obvious issues with have a > > >fixed order across all participants so we decided to randomise it. > > >However, we decided on this with the impression that E-prime would log > > >the data of the order in which the attributes appeared (at random). On > > >the list with all the attributes, under Logging, I checked the > > >attributes property name. I guess I made a huge mistake when I was > > >testing the programme because I pressed spacebar to move on to the > > >next attribute, and when I looked at the data, the attributes order > > >was indeed recorded. I didn't double check if the same would happen if > > >no response was made at all, which was the case for all participants > > >since they were asked to just read each attribute and the next one > > >would appear automatically. > > > > >I guess another reason why I didn't realise this mistake earlier was > > >because I did get a E-DataAid file after each participant - however, > > >there was just one line with the subject, session... and random seed. > > >I know this is very far fetched, but I'm wondering if there is any > > >chance at all that I could somehow retrieve any form of information > > >about the order of trials from the randomseed number? > > > > >Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From didem.pehlivanoglu at gmail.com Fri Mar 16 20:09:30 2012 From: didem.pehlivanoglu at gmail.com (Didem) Date: Fri, 16 Mar 2012 13:09:30 -0700 Subject: multiple choice without correct answer. Message-ID: Hi all, At the end of my experiment, I will ask participants to indicate their subjective experience. To indicate this, they will be presented 3 choices and asked to choose one them. So,there is no correct answer in this test. I want to see the option which they chose in data file. To create multiple choice format, I used slide object including 3 choices as text. In my list, I have 3 attributions denoted to these choices. I have a part of script enabling mouse response. My problem is that I do not know how to write a code to record an option which participant chose. Maybe I can see name of the text which they chose in my data file but I do not know how to do that. The multiple choice test code does not work here because there is no correct answer... Could you please help me? Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 20:30:00 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 16:30:00 -0400 Subject: multiple choice without correct answer. In-Reply-To: <104a3f96-c695-401f-be19-e9ded5436e8d@l1g2000vbc.googlegrou ps.com> Message-ID: OK, I am not quite following this. How do subjects indicate their choice of the three options? Do they press one of three keyboard keys? If so, then you can have EP simply log which key they pressed, and since the EP List will also by default log which choice on your Slide occupied which slot, you will also be able to match up which of the offered choices corresponds to the subject's response. No need to designate a "correct" response. Yes, you could get fancier with a bit of inline code to do that matching for you and log directly which choice they selected, but even without that EP gives you enough data to deduce what you want. I won't be able to help you sort this out further because it is time for me to take off for the weekend (Eastern USA time zone), so I will leave that to others here. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster At 3/16/2012 04:09 PM Friday, you wrote: >At the end of my experiment, I will ask participants to indicate their >subjective experience. >To indicate this, they will be presented 3 choices and asked to choose >one them. >So,there is no correct answer in this test. I want to see the option >which they chose in data file. > >To create multiple choice format, I used slide object including 3 >choices as text. >In my list, I have 3 attributions denoted to these choices. >I have a part of script enabling mouse response. > >My problem is that I do not know how to write a code to record an >option which participant chose. Maybe I can see name of the text which >they chose in my data file but I do not know how to do that. >The multiple choice test code does not work here because there is no >correct answer... > >Could you please help me? > >Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From didem.pehlivanoglu at gmail.com Fri Mar 16 20:39:56 2012 From: didem.pehlivanoglu at gmail.com (Didem) Date: Fri, 16 Mar 2012 13:39:56 -0700 Subject: multiple choice without correct answer. In-Reply-To: <4f63a2cd.63d0320a.1352.ffff8b57SMTPIN_ADDED@gmr-mx.google.com> Message-ID: They answer by using mouse. Does this change your answer? On Mar 16, 10:30 pm, David McFarlane wrote: > OK, I am not quite following this.  How do subjects indicate their > choice of the three options?  Do they press one of three keyboard > keys?  If so, then you can have EP simply log which key they pressed, > and since the EP List will also by default log which choice on your > Slide occupied which slot, you will also be able to match up which of > the offered choices corresponds to the subject's response.  No need > to designate a "correct" response.  Yes, you could get fancier with a > bit of inline code to do that matching for you and log directly which > choice they selected, but even without that EP gives you enough data > to deduce what you want. > > I won't be able to help you sort this out further because it is time > for me to take off for the weekend (Eastern USA time zone), so I will > leave that to others here. > > ----- > David McFarlane > E-Prime training > online:  http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter:  @EPrimeMaster (twitter.com/EPrimeMaster > > At 3/16/2012 04:09 PM Friday, you wrote: > > >At the end of my experiment, I will ask participants to indicate their > >subjective experience. > >To indicate this, they will be presented 3 choices and asked to choose > >one them. > >So,there is no correct answer in this test. I want to see the option > >which they chose in data file. > > >To create multiple choice format, I used slide object including 3 > >choices as text. > >In my list, I have 3 attributions denoted to these choices. > >I have a part of script enabling mouse response. > > >My problem is that I do not know how to write a code to record an > >option which participant chose. Maybe I can see name of the text which > >they chose in my data file but I do not know how to do that. > >The multiple choice test code does not work here because there is no > >correct answer... > > >Could you please help me? > > >Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 20:58:59 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 16:58:59 -0400 Subject: multiple choice without correct answer. In-Reply-To: Message-ID: OK, time for just one more thing before I shut down this PC... By using the mouse, do you mean that your program detects which of three zones they click on the display? As long as you have the programming to detect a click on one of three zones, you need merely add the code to log which of those zones was click. Should not be hard. OK, shutting down, have a bon weekend whereever you are... -- David McFarlane At 3/16/2012 04:39 PM Friday, you wrote: >They answer by using mouse. Does this change your answer? > >On Mar 16, 10:30 pm, David McFarlane wrote: > > OK, I am not quite following this. How do subjects indicate their > > choice of the three options? Do they press one of three keyboard > > keys? If so, then you can have EP simply log which key they pressed, > > and since the EP List will also by default log which choice on your > > Slide occupied which slot, you will also be able to match up which of > > the offered choices corresponds to the subject's response. No need > > to designate a "correct" response. Yes, you could get fancier with a > > bit of inline code to do that matching for you and log directly which > > choice they selected, but even without that EP gives you enough data > > to deduce what you want. > > > > I won't be able to help you sort this out further because it is time > > for me to take off for the weekend (Eastern USA time zone), so I will > > leave that to others here. > > > > ----- > > David McFarlane > > E-Prime training > > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster > > > > At 3/16/2012 04:09 PM Friday, you wrote: > > > > >At the end of my experiment, I will ask participants to indicate their > > >subjective experience. > > >To indicate this, they will be presented 3 choices and asked to choose > > >one them. > > >So,there is no correct answer in this test. I want to see the option > > >which they chose in data file. > > > > >To create multiple choice format, I used slide object including 3 > > >choices as text. > > >In my list, I have 3 attributions denoted to these choices. > > >I have a part of script enabling mouse response. > > > > >My problem is that I do not know how to write a code to record an > > >option which participant chose. Maybe I can see name of the text which > > >they chose in my data file but I do not know how to do that. > > >The multiple choice test code does not work here because there is no > > >correct answer... > > > > >Could you please help me? > > > > >Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From catarina.melo.azevedo at gmail.com Mon Mar 19 16:22:49 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Mon, 19 Mar 2012 09:22:49 -0700 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <4f6245a7.42cb320a.5bc5.ffff9116SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thank you for your help. I tried to enter the PST support but it doesn't accept my email and password...(I don't know why). Can you put here the recall study example, please? I just need to know how to define that the word "y" will appear in the second block, if the word "x" appears on the first block, although words in the first block are chosen randomly. I really need some help. Cheers Catarina On Mar 15, 8:40 pm, David McFarlane wrote: > Catarina, > > Stock reminder:  1) I do not work for PST.  2) PST's trained staff > take any and all questions athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > strive to respond to all requests in 24-48 hours -- this is pretty > much their substitute for proper documentation, so make full use of > it.  3) In addition, PST takes questions at their Facebook page > (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 > ), and offers several instructional videos there and on their YouTube > channel (http://www.youtube.com/user/PSTNET) (no Twitter feed yet, > though).  4) If you do get an answer from PST staff, please extend > the courtesy of posting their reply back here for the sake of others. > > That said, here is my take... > > Quick response, addressing merely the "Study-Recall" aspect of this > design -- take a look at the StudyRecall.es example downloadable from > the PST web site.  That should give you ideas. > > And just a general overal pointer on Lists & nested Lists in > E-Prime:  As I describe in my online E-Prime course (and in other > threads both here and at the PST Forum), I have found it helpful to > think of them all these Lists as separate decks of playing cards. > > Good luck. > ----- > David McFarlane > E-Prime training > online:  http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter:  @EPrimeMaster (twitter.com/EPrimeMaster) > > At 3/14/2012 06:06 AM Wednesday, you wrote: > > > > > > > > >Hi all! > > >I know how to work with E-prime in general but I never did scripts > >with it. I have 3 questions and I hope you can help me on this. > > >I have a final list of 80 English and 80 Dutch words. I want each > >participant to see 40 English and 40 Dutch words. All the Dutch words > >are translations of the English words and these different languages of > >the words are separated in two different blocks.The most important is > >that the words appearing in the second block of presentation must be > >the translations of the words in the first block (if they see > >"happy"in the first they must see "blij"in the second). > > >This is the general idea. My questions are: > > >1- From the 80 Eng and the 80 Dutch words lists I want to take > >randomly 40 words (of each) for each participant. The idea is that > >instead of having 2 or more equivalent lists and counterbalanced them > >for subject, I want each participant to see different combinations of > >words, randomly assigned, in a different order of presentation. For > >that is important to guarantee a) that all words will be seen by the > >same number of participants and b) the words in the second block are > >the translations of the ones of the first block. > > >2- From that 40 English (and Dutch) words they will be seen, I want to > >specify that they will always see 10 of category A, 10 of category B, > >10 of category C and 10 of category D. > > >3- If possible I do not want them to see more than 3 words of the same > >category one after the other. > > >Thank you so much for your help > > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Mon Mar 19 20:20:40 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 19 Mar 2012 16:20:40 -0400 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <98e06dd4-f5c3-406e-9753-418996a3e999@9g2000vbq.googlegroup s.com> Message-ID: Catarina, First, as I try to remind people, I do not work for PST. So I am not sure that I have either the authority or the obligation to distribute the StudyRecall.es example myself. Second, even if allowed, Google Groups no longer includes a facility for posting files for download (sigh). So if you have registered a user name & password for PST Web Support and still cannot login, then you may need to e-mail them about that at info at pstnet.com, or telephone them at a number that you can get from their web site. Limit your conversation to your troubles logging in to Web Support, PST does *not* do tech support by e-mail or phone. Good luck, -- David McFarlane At 3/19/2012 12:22 PM Monday, you wrote: >Hi David, > >Thank you for your help. I tried to enter the PST support but it >doesn't accept my email and password...(I don't know why). Can you put >here the recall study example, please? > >I just need to know how to define that the word "y" will appear in the >second block, if the word "x" appears on the first block, although >words in the first block are chosen randomly. I really need some help. > >Cheers > >Catarina > >On Mar 15, 8:40 pm, David McFarlane wrote: > > Catarina, > > > > Stock reminder: 1) I do not work for PST. 2) PST's trained staff > > take any and all questions > athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > > strive to respond to all requests in 24-48 hours -- this is pretty > > much their substitute for proper documentation, so make full use of > > it. 3) In addition, PST takes questions at their Facebook page > > (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 > > ), and offers several instructional videos there and on their YouTube > > channel (http://www.youtube.com/user/PSTNET) (no Twitter feed yet, > > though). 4) If you do get an answer from PST staff, please extend > > the courtesy of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Quick response, addressing merely the "Study-Recall" aspect of this > > design -- take a look at the StudyRecall.es example downloadable from > > the PST web site. That should give you ideas. > > > > And just a general overal pointer on Lists & nested Lists in > > E-Prime: As I describe in my online E-Prime course (and in other > > threads both here and at the PST Forum), I have found it helpful to > > think of them all these Lists as separate decks of playing cards. > > > > Good luck. > > ----- > > David McFarlane > > E-Prime training > > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) > > > > At 3/14/2012 06:06 AM Wednesday, you wrote: > > > > > > > > > > > > > > > > >Hi all! > > > > >I know how to work with E-prime in general but I never did scripts > > >with it. I have 3 questions and I hope you can help me on this. > > > > >I have a final list of 80 English and 80 Dutch words. I want each > > >participant to see 40 English and 40 Dutch words. All the Dutch words > > >are translations of the English words and these different languages of > > >the words are separated in two different blocks.The most important is > > >that the words appearing in the second block of presentation must be > > >the translations of the words in the first block (if they see > > >"happy"in the first they must see "blij"in the second). > > > > >This is the general idea. My questions are: > > > > >1- From the 80 Eng and the 80 Dutch words lists I want to take > > >randomly 40 words (of each) for each participant. The idea is that > > >instead of having 2 or more equivalent lists and counterbalanced them > > >for subject, I want each participant to see different combinations of > > >words, randomly assigned, in a different order of presentation. For > > >that is important to guarantee a) that all words will be seen by the > > >same number of participants and b) the words in the second block are > > >the translations of the ones of the first block. > > > > >2- From that 40 English (and Dutch) words they will be seen, I want to > > >specify that they will always see 10 of category A, 10 of category B, > > >10 of category C and 10 of category D. > > > > >3- If possible I do not want them to see more than 3 words of the same > > >category one after the other. > > > > >Thank you so much for your help > > > > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From catarina.melo.azevedo at gmail.com Tue Mar 20 09:59:27 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Tue, 20 Mar 2012 02:59:27 -0700 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <4f67951f.c1b7320a.3d42.ffffa3e7SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thank you so much for your help David! Cheers On 19 Mar, 20:20, David McFarlane wrote: > Catarina, > > First, as I try to remind people, I do not work for PST.  So I am not > sure that I have either the authority or the obligation to distribute > the StudyRecall.es example myself. > > Second, even if allowed, Google Groups no longer includes a facility > for posting files for download (sigh). > > So if you have registered a user name & password for PST Web Support > and still cannot login, then you may need to e-mail them about that > at i... at pstnet.com, or telephone them at a number that you can get > from their web site.  Limit your conversation to your troubles > logging in to Web Support, PST does *not* do tech support by e-mail or phone. > > Good luck, > -- David McFarlane > > At 3/19/2012 12:22 PM Monday, you wrote: > > > > > > > > >Hi David, > > >Thank you for your help. I tried to enter the PST support but it > >doesn't accept my email and password...(I don't know why). Can you put > >here the recall study example, please? > > >I just need to know how to define that the word "y" will appear in the > >second block, if the word "x" appears on the first block, although > >words in the first block are chosen randomly. I really need some help. > > >Cheers > > >Catarina > > >On Mar 15, 8:40 pm, David McFarlane wrote: > > >Catarina, > > > > Stock reminder:  1) I do not work for PST.  2) PST's trained staff > > > take any and all questions > > athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > > > strive to respond to all requests in 24-48 hours -- this is pretty > > > much their substitute for proper documentation, so make full use of > > > it.  3) In addition, PST takes questions at their Facebook page > > > (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 > > > ), and offers several instructional videos there and on their YouTube > > > channel (http://www.youtube.com/user/PSTNET) (no Twitter feed yet, > > > though).  4) If you do get an answer from PST staff, please extend > > > the courtesy of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Quick response, addressing merely the "Study-Recall" aspect of this > > > design -- take a look at the StudyRecall.es example downloadable from > > > the PST web site.  That should give you ideas. > > > > And just a general overal pointer on Lists & nested Lists in > > > E-Prime:  As I describe in my online E-Prime course (and in other > > > threads both here and at the PST Forum), I have found it helpful to > > > think of them all these Lists as separate decks of playing cards. > > > > Good luck. > > > ----- > > > David McFarlane > > > E-Prime training > > > online:  http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > > Twitter:  @EPrimeMaster (twitter.com/EPrimeMaster) > > > > At 3/14/2012 06:06 AM Wednesday, you wrote: > > > > >Hi all! > > > > >I know how to work with E-prime in general but I never did scripts > > > >with it. I have 3 questions and I hope you can help me on this. > > > > >I have a final list of 80 English and 80 Dutch words. I want each > > > >participant to see 40 English and 40 Dutch words. All the Dutch words > > > >are translations of the English words and these different languages of > > > >the words are separated in two different blocks.The most important is > > > >that the words appearing in the second block of presentation must be > > > >the translations of the words in the first block (if they see > > > >"happy"in the first they must see "blij"in the second). > > > > >This is the general idea. My questions are: > > > > >1- From the 80 Eng and the 80 Dutch words lists I want to take > > > >randomly 40 words (of each) for each participant. The idea is that > > > >instead of having 2 or more equivalent lists and counterbalanced them > > > >for subject, I want each participant to see different combinations of > > > >words, randomly assigned, in a different order of presentation. For > > > >that is important to guarantee a) that all words will be seen by the > > > >same number of participants and b) the words in the second block are > > > >the translations of the ones of the first block. > > > > >2- From that 40 English (and Dutch) words they will be seen, I want to > > > >specify that they will always see 10 of category A, 10 of category B, > > > >10 of category C and 10 of category D. > > > > >3- If possible I do not want them to see more than 3 words of the same > > > >category one after the other. > > > > >Thank you so much for your help > > > > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lundwall.becky at gmail.com Wed Mar 21 14:01:22 2012 From: lundwall.becky at gmail.com (BeckyL) Date: Wed, 21 Mar 2012 07:01:22 -0700 Subject: notify Pinnacle 700 USB of the exact time an event occurs in E-Prime? Message-ID: Has anyone used Pinnacle 700 USB (aka Pinnacle Studio USB-700) to capture video during an experiment? If so, do you know if this device can receive an event signal from E-Prime 2? Someone on site already has the Pinnacle 700 USB from another experiment (years ago, not using EP). We are trying to video tape eye movement after the presentation of a stimulus by EP and determine the direction and latency of eye movements from fixation to the stimulus (or a distractor). Unfortunately, Pinnacle Studio User's manual and support website are very weak. It does appear that Pinnacle has a type A/ type B USB cable that connects to the computer as well as general purpose video cables. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/50D94hf3esYJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Thu Mar 22 15:34:16 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 22 Mar 2012 11:34:16 -0400 Subject: notify Pinnacle 700 USB of the exact time an event occurs in E-Prime? In-Reply-To: <17874210.2448.1332338482412.JavaMail.geo-discussion-forums @ynjl17> Message-ID: I have no experience with that particular device, but from your message (and from Googling "Pinnacle Studio USB-700") I gather that this device communicates solely through USB. In that case, you are sunk, unless you are *very* good with externall DLLs. Or maybe you will get lucky and someone else here will point you to a DLL file with general-purpose USB communication routines, along with instructions for how to use that with E-Basic (i.e., VBA). And as I often remind folks here, you might also take this up with PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp , where they strive to respond to all requests in 24-48 hours. And if you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster At 3/21/2012 10:01 AM Wednesday, you wrote: >Has anyone used Pinnacle 700 USB (aka Pinnacle Studio USB-700) to >capture video during an experiment? If so, do you know if this >device can receive an event signal from E-Prime 2? > >Someone on site already has the Pinnacle 700 USB from another >experiment (years ago, not using EP). We are trying to video tape >eye movement after the presentation of a stimulus by EP and >determine the direction and latency of eye movements from fixation >to the stimulus (or a distractor). Unfortunately, Pinnacle Studio >User's manual and support website are very weak. It does appear that >Pinnacle has a type A/ type B USB cable that connects to the >computer as well as general purpose video cables. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From j.dainerbest at gmail.com Thu Mar 22 19:52:36 2012 From: j.dainerbest at gmail.com (JDB) Date: Thu, 22 Mar 2012 12:52:36 -0700 Subject: Trigger (stimulus) codes sent on response to EEG recording Message-ID: I'm working on a project that involves interfacing an E-Prime experiment with the ActiView/Biosemi interface for EEG recording. I have this in the UserScript: Const Sport as Integer = &H378 Every time an image appears, this code is sent immediately before: InLine: Intermediary.OnsetSignalEnabled = True Intermediary.OnsetSignalPort = Sport Intermediary.OnsetSignalData = c.GetAttrib("IntermediaryCode") Intermediary.OffsetSignalData = 0 Intermediary.OffsetSignalPort = Sport Intermediary.OffsetSignalEnabled = True This works fine. The task then presents the participant with images, to one of which they respond; the image is on-screen for 500ms, followed by a fixation cross for another 500ms. They can respond at any point, but the image & cross are on-screen for a set amount of time. What I'd like is for the stimcode to be sent as soon as possible after the response. I've been successful in sending a response code after fixation cross goes away, using the following code: InLine: If TaskImage.RESP = "l" Then resp = 55 ElseIf TaskImage.RESP = "s" Then resp = 56 ElseIf TaskImage.RESP = "o" Then resp = 57 ElseIf TaskImage.RESP = "w" Then resp = 58 ElseIf TaskImage.RESP = "" Then resp = 59 Else resp = 60 End If FixationCross2.OnsetSignalEnabled = True FixationCross2.OnsetSignalPort = Sport FixationCross2.OnsetSignalData = resp FixationCross2.OffsetSignalEnabled = True FixationCross2.OffsetSignalPort = Sport FixationCross2.OffsetSignalData = 0 However, this only works by sending itself at the beginning of a new fixation cross. Ideally, subject responses would be sent WHEN they respond. But I can't figure out how to do that. Is there some function equivalent to "OnResponse"? It seems like it should be possible, but I'm not sure how to do it. Thanks for your help! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 22 20:32:25 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 22 Mar 2012 16:32:25 -0400 Subject: Trigger (stimulus) codes sent on response to EEG recording In-Reply-To: <767711d8-48ba-4af1-b439-5c18afd08f66@r27g2000vbn.googlegro ups.com> Message-ID: If you use EP2.0.10.182 *Professional* or later then you are in luck -- see the new Task Events feature documented at http://www.pstnet.com/support/kb.asp?TopicID=4803 . (Remember, I have uniformly advised everyone to spend the extra money for Professional, no matter what PST advises.) If you do not have EP2.0.10.182 Pro, then you might look at http://groups.google.com/group/e-prime/browse_thread/thread/cfc3d0307d5c7fbd and http://groups.google.com/group/e-prime/browse_thread/thread/ef0e5a8d8b87aa0c for hints. Or, of course, take this up with PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp , where they strive to respond to all requests in 24-48 hours. And if you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. BTW, although your particular inline code for the stimulus signal works well enough (which is a virtue), it suffers in efficiency. I have an entire lesson about handling these sorts of things in my online course (although that lesson does not address your precise response signal question). ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/22/2012 03:52 PM Thursday, you wrote: >I'm working on a project that involves interfacing an E-Prime >experiment with the ActiView/Biosemi interface for EEG recording. > >I have this in the UserScript: >Const Sport as Integer = &H378 > >Every time an image appears, this code is sent immediately before: > >InLine: >Intermediary.OnsetSignalEnabled = True >Intermediary.OnsetSignalPort = Sport >Intermediary.OnsetSignalData = c.GetAttrib("IntermediaryCode") > >Intermediary.OffsetSignalData = 0 >Intermediary.OffsetSignalPort = Sport >Intermediary.OffsetSignalEnabled = True > >This works fine. The task then presents the participant with images, >to one of which they respond; the image is on-screen for 500ms, >followed by a fixation cross for another 500ms. They can respond at >any point, but the image & cross are on-screen for a set amount of >time. What I'd like is for the stimcode to be sent as soon as possible >after the response. I've been successful in sending a response code >after fixation cross goes away, using the following code: > >InLine: >If TaskImage.RESP = "l" Then > resp = 55 > ElseIf TaskImage.RESP = "s" Then > resp = 56 > ElseIf TaskImage.RESP = "o" Then > resp = 57 > ElseIf TaskImage.RESP = "w" Then > resp = 58 > ElseIf TaskImage.RESP = "" Then > resp = 59 > Else resp = 60 >End If > >FixationCross2.OnsetSignalEnabled = True >FixationCross2.OnsetSignalPort = Sport >FixationCross2.OnsetSignalData = resp > >FixationCross2.OffsetSignalEnabled = True >FixationCross2.OffsetSignalPort = Sport >FixationCross2.OffsetSignalData = 0 > >However, this only works by sending itself at the beginning of a new >fixation cross. Ideally, subject responses would be sent WHEN they >respond. But I can't figure out how to do that. Is there some function >equivalent to "OnResponse"? It seems like it should be possible, but >I'm not sure how to do it. > >Thanks for your help! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From sombrenote at gmail.com Fri Mar 23 15:22:41 2012 From: sombrenote at gmail.com (SombreNote) Date: Fri, 23 Mar 2012 08:22:41 -0700 Subject: Reset Slide on Correct Type Number Answer Message-ID: Hi everyone, I am having quite frustrating time doing something that on all accounts is very easy. I have a procedure called: ArithTe + Inline1 (Inline Code) + ArthProb (Slide set up with prompt text) + PendingReponses (more inline code) What it is supposed to do is test to see if a number (which changes every rerun), is correctly entered in a ECHO typed space on the slide. If correct it should recycle the slide and change the number. This is basically just a MIST task in which a person subtracts 7 from a number as fast as possible. Right now it is simple and I have no added all the bells and whistles. I am in contact with PST, but things are going very slowly. Does anyone think they could point me in the right direction? This is a link to the 54kb file if you want it. http://depositfiles.com/files/b3pib3et5 I will make it available when it is completed, because this is a pretty common procedure. #### Inline1 ###### 'New code lnStartTime = 0 lnEndTime = 0 lnBlockDuration = 0 boolBlockEnd = False FirstRun = True 'lnStartTime = Clock.Read lnEndTime = Clock.Read + 50000 '100000 '240000 Dim SlideOnsetTime As Long Dim SlideStopTime As Long 'Declare a variable that can be assigned to the Stimulus object. Dim theSlideC As Slide Set theSlideC = CSlide(Rte.GetObject("ArthProb")) 'Declare a variable that can be assigned to the default SlideState. Dim theStateC As SlideState Set theStateC = theSlideC.States.Item("Default") 'Declare a variable that can be assigned to the SlideText sub-object 'that will be altered based on subject responses. 'Declare a variable that can be assigned to the ArthProb object. Dim theSlide As Slide Set theSlide = CSlide(Rte.GetObject("ArthProb")) Dim theState As SlideState Set theState = theSlide.States.Item("Default") Dim theSlideText As SlideText Set theSlideText = CSlideText(theState.Objects("StimulusText")) Dim theSlideTextFROM As SlideText Set theSlideTextFROM = CSlideText(theState.Objects("subfrom")) Dim theSlideTextP As SlideText Set theSlideTextP = CSlideText(theState.Objects("prompt")) Dim Answer As Long Answer = 2381 Set ArthProb.CRESP = Answer Do 'STARTS THE DO LOOP to repeat ArthProd for as long as the clock lasts. SlideOnsetTime = Clock.Read Set ArthProb.CRESP = Answer - 7 c.SetAttrib "CorrectAnswer" , ArthProb.CRESP theSlideTextFROM.Text = c.GetAttrib("CorrectAnswer") theSlideTextFROM.Draw ##### Stimlus Slide ###### ##### PendingResponses ###### Dim theResponseObject As RteRunnableInputObject Set theResponseObject = CRteRunnableInputObject(Rte.GetObject("ArthProb")) Dim nResponseCount As Long Dim theResponseData As ResponseData Do While theResponseObject.InputMasks.IsPending() If nResponseCount <> theResponseObject.InputMasks.Responses.Count Then nResponseCount = nResponseCount + 1 Set theResponseData = theResponseObject.InputMasks.Responses(nResponseCount) If Not theResponseData Is Nothing Then If Clock.Read >= lnEndTime Then boolBlockEnd = True Exit Do End If 'If theResponseData.RESP = ArthProb.CRESP Then 'I have tried both If ArthProb.RESP = ArthProb.CRESP Then ArthProb.ACC = 1 boolBlockEnd = False Exit Do Else ArthProb.ACC = 0 End If End If End If 'Give some time back (required) Sleep 10 DoEvents Loop Loop Until boolBlockEnd = True -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From sjflanary at gmail.com Fri Mar 23 18:31:45 2012 From: sjflanary at gmail.com (MTsf) Date: Fri, 23 Mar 2012 11:31:45 -0700 Subject: Connecting slides Message-ID: Hi all, I am trying to display a slide that offers a list of choices the participant can click on and it would then connect them to a different page (which they would have already viewed prior, they're just reviewing). Is there a way to connect pages like this? If not, is there a way for the person running the experiment (me) to review specific slides (say 18 out of 36) without having to run through all of them again? Any help would be greatly appreciated. Thank you!!!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lundwall.becky at gmail.com Tue Mar 27 14:58:48 2012 From: lundwall.becky at gmail.com (BeckyL) Date: Tue, 27 Mar 2012 07:58:48 -0700 Subject: notify Pinnacle 700 USB of the exact time an event occurs in E-Prime? In-Reply-To: <4f6b467c.63d0320a.194f.6257SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thank you for your reply. I am certainly not very good with external DLLs. PST has been very helpful in the past but they said they don't offer support for this type of device. HOWEVER, the good news is that we found an *old *box (Video Timer VTG-33) which appears to solve the problem. It connects between the video and the computer and time stamps the video as it is saved. The Pinnacle device and software can then be used to view the video (with a time stamp) frame by frame. We are in the process of testing it now. On Thursday, March 22, 2012 10:34:16 AM UTC-5, McFarlane, David wrote: > > I have no experience with that particular device, but from your > message (and from Googling "Pinnacle Studio USB-700") I gather that > this device communicates solely through USB. In that case, you are > sunk, unless you are *very* good with externall DLLs. Or maybe you > will get lucky and someone else here will point you to a DLL file > with general-purpose USB communication routines, along with > instructions for how to use that with E-Basic (i.e., VBA). > > And as I often remind folks here, you might also take this up with > PST Web Support at > http://support.pstnet.com/e%2Dprime/support/login.asp , where they > strive to respond to all requests in 24-48 hours. And if you do get > an answer from PST staff, please extend the courtesy of posting their > reply back here for the sake of others. > > ----- > David McFarlane > E-Prime training > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster > > > At 3/21/2012 10:01 AM Wednesday, you wrote: > >Has anyone used Pinnacle 700 USB (aka Pinnacle Studio USB-700) to > >capture video during an experiment? If so, do you know if this > >device can receive an event signal from E-Prime 2? > > > >Someone on site already has the Pinnacle 700 USB from another > >experiment (years ago, not using EP). We are trying to video tape > >eye movement after the presentation of a stimulus by EP and > >determine the direction and latency of eye movements from fixation > >to the stimulus (or a distractor). Unfortunately, Pinnacle Studio > >User's manual and support website are very weak. It does appear that > >Pinnacle has a type A/ type B USB cable that connects to the > >computer as well as general purpose video cables. > > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/NXhyrXgNXYUJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From catarina.melo.azevedo at gmail.com Thu Mar 29 11:31:12 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Thu, 29 Mar 2012 04:31:12 -0700 Subject: Trigger event markers from Eprime to BIOPAC Message-ID: Hi all! I'm new in eprime and so I realize that this will be a beginner question.But I really need some help! I programmed an experiment in which participants will see first a block of English words and then a block of Dutch words (or the contrary, order was counterbalanced). The 40 words they will see in the first block will be chosen pseudo-randomly from a list of 80 words. In the second block they will see their translations. I found a way to do it with Nested lists (without scripts). Each participant will see 10 EnglishPositive, 10EnglishNegative, 10 EnglishNeutral, 10English Taboo and 10 DutchPositive, 10DutchNegative, 10 DutchNeutral and 10DutchTaboo words. I insert a column with the title "marker", being the options 1,2,3,4 for the english words and 5,6,7 and 8 for the dutch words (corresponding to the type of words). I would like to know the inline I should write and where so that I would have 8 different types of events in BIOPAC. I saw this one: xxx.OnsetSignalEnabled = True xxx.OnsetSignalPort = &H378 xxx.OnsetSignalData = 1 xxx.OffsetSignalEnabled = True xxx.OffsetSignalPort = &H378 xxx.OffsetSignalData = 2 But I if I put like this marker.OnsetSignalEnabled = True marker.OnsetSignalPort = &H378 marker.OnsetSignalData = 1 marker.OffsetSignalEnabled = True marker.OffsetSignalPort = &H378 marker.OffsetSignalData = 2 I'm not sure if it will specified the type of words (events) in Biopac. Here you have the es. file http://dl.dropbox.com/u/31016950/CAmarch2012quaseEXP.es Thank you for your attention Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 29 15:46:39 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 29 Mar 2012 11:46:39 -0400 Subject: Trigger event markers from Eprime to BIOPAC In-Reply-To: Message-ID: Catarina, Here's the deal: For some years I have personally provided copious free advice here (often starting with "do *all* the tutorials in the manuals"), partly as mental exercise & self-training, partly as public service, and partly to amuse myself. Now we have taken a good deal of that and packaged it into an online course, for which people must pay, and I cannot keep handing out the same answers that we have already covered. As it turns out, your very question is covered in the closing "fMRI, EEG, & Psychophysiology" lesson of our course, complete with an exercise in which I have you write a working program to do just what you descibe, and which I then personally grade. (The course also includes a Live Office Hour every week with me.) That's all I can tell you now. But if you hold on, some more generous folks here may supply your answer; or, try PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp , where they strive to respond to all requests in 24-48 hours at no charge. Regards, ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/29/2012 07:31 AM Thursday, you wrote: >I'm new in eprime and so I realize that this will be a beginner >question.But I really need some help! > >I programmed an experiment in which participants will see first a >block of English words and then a block of Dutch words (or the >contrary, order was counterbalanced). The 40 words they will see in >the first block will be chosen pseudo-randomly from a list of 80 >words. In the second block they will see their translations. I found a >way to do it with Nested lists (without scripts). > >Each participant will see 10 EnglishPositive, 10EnglishNegative, 10 >EnglishNeutral, 10English Taboo and 10 DutchPositive, 10DutchNegative, >10 DutchNeutral and 10DutchTaboo words. > >I insert a column with the title "marker", being the options 1,2,3,4 >for the english words and 5,6,7 and 8 for the dutch words >(corresponding to the type of words). > >I would like to know the inline I should write and where so that I >would have 8 different types of events in BIOPAC. I saw this one: > >xxx.OnsetSignalEnabled = True >xxx.OnsetSignalPort = &H378 >xxx.OnsetSignalData = 1 > >xxx.OffsetSignalEnabled = True >xxx.OffsetSignalPort = &H378 >xxx.OffsetSignalData = 2 > >But I if I put like this > >marker.OnsetSignalEnabled = True >marker.OnsetSignalPort = &H378 >marker.OnsetSignalData = 1 > >marker.OffsetSignalEnabled = True >marker.OffsetSignalPort = &H378 >marker.OffsetSignalData = 2 > >I'm not sure if it will specified the type of words (events) in >Biopac. > >Here you have the es. file >http://dl.dropbox.com/u/31016950/CAmarch2012quaseEXP.es > >Thank you for your attention > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Thu Mar 29 20:43:24 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Thu, 29 Mar 2012 22:43:24 +0200 Subject: Trigger event markers from Eprime to BIOPAC In-Reply-To: Message-ID: Hi Catarina, The SendPulse inline script of your es-file already contains a few lines to send a pulse using WritePort. You could replace them with something like this: DutWords.OnsetSignalEnabled = True DutWords.OnsetSignalPort = &H378 DutWords.OnsetSignalData = c.GetAttrib("marker") DutWords.OffsetSignalEnabled = True DutWords.OffsetSignalPort = &H378 DutWords.OffsetSignalData = 0 ' reset all digital lines to zero Since BioPac will acquire the 8 digital TTL lines as separate signals, you would probably want to use powers of two for the markers: 1,2,4,8,16,32,64 and128. If you don't use powers of two, you will get a mixture of simultaneous pulses. (You could use a calculation channel to convert the 8 digital channels back to a numerical one, but I would suggest you should only do this when you need more than 8 unique marker codes.) Also make sure that the marker attribute is defined in all relevant lists, because I noticed that the second part of your exp. is missing the marker attribute. I also have the feeling that part of your script contains duplicate (identical) objects. Perhaps you need duplicates in some places to be able to implement English/Dutch specific elements, but I'm sure that in some places you could (re)use the same E-Object. (For example Blank1 and Blank2 are probably identical). Although this is not a big deal in your script, I often see scripts having large amounts of copied objects. One of the side-effects of having duplicates is that the log-file will become unnecessary complex. Best, Paul 2012/3/29 Catarina Azevedo : > Hi all! > > I'm new in eprime and so I realize that this will be a beginner > question.But I really need some help! > > I programmed an experiment in which participants will see first a > block of English words and then a block of Dutch words (or the > contrary, order was counterbalanced). The 40 words they will see in > the first block will be chosen pseudo-randomly from a list of 80 > words. In the second block they will see their translations. I found a > way to do it with Nested lists (without scripts). > > Each participant will see 10 EnglishPositive, 10EnglishNegative, 10 > EnglishNeutral, 10English Taboo and 10 DutchPositive, 10DutchNegative, > 10 DutchNeutral and 10DutchTaboo words. > > I insert a column with the title "marker", being the options 1,2,3,4 > for the english words and 5,6,7 and 8 for the dutch words > (corresponding to the type of words). > > I would like to know the inline I should write and where so that I > would have 8 different types of events in BIOPAC. I saw this one: > > xxx.OnsetSignalEnabled = True > xxx.OnsetSignalPort = &H378 > xxx.OnsetSignalData = 1 > > xxx.OffsetSignalEnabled = True > xxx.OffsetSignalPort = &H378 > xxx.OffsetSignalData = 2 > > But I if I put like this > > marker.OnsetSignalEnabled = True > marker.OnsetSignalPort = &H378 > marker.OnsetSignalData = 1 > > marker.OffsetSignalEnabled = True > marker.OffsetSignalPort = &H378 > marker.OffsetSignalData = 2 > > I'm not sure if it will specified the type of words (events) in > Biopac. > > Here you have the es. file > http://dl.dropbox.com/u/31016950/CAmarch2012quaseEXP.es > > Thank you for your attention > > Catarina > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From s.guzin at gmail.com Thu Mar 1 12:09:36 2012 From: s.guzin at gmail.com (SGuzin) Date: Thu, 1 Mar 2012 04:09:36 -0800 Subject: forcing to choose only two object by click Message-ID: Hi, I have written before the same problem but I could not get any reply neither in pst forum (http://support.pstnet.com/forum/ Topic5781-23-1.aspx) nor in googlegroups. I think I wrote a bit complicated with my limited English. I am writing again i a simple way. I have 8 checkboxes on a slide (checkboxes are an empty square image on the slide and named, Check1, Check2?.. Check8). Participants must choose two of them for each trial by clicking on the checkboxes. When they click on a checkbox, it fill with black to show as it is checked. There are two correct checkboxes out of eight for each trial. But I want that participant must choose only two of the checkboxes and not being allowed to choose a third one. If they click on a third one their last selection will be disappear and replace with third click. How can I limit checking checkboxes to two while they could change their selections without exceeding two limit? My code is below; 'Designate "theState" as the Default Slide State, which is the current, ActiveState 'on the Slide object "Stimulus" Dim theState as SlideState Set theState = Stimulus.States("Default") 'Variable for holding the name of the sub-object clicked by the subject. Dim strHit As String 'Variable for holding the subject's response information. Dim theMouseResponseData As MouseResponseData 'Was a response made? If Stimulus.InputMasks.Responses.Count > 0 Then Set theMouseResponseData = CMouseResponseData(Stimulus.InputMasks.Responses(1)) strHit = theState.HitTest(theMouseResponseData.CursorX, theMouseResponseData.CursorY) 'If a check box was clicked, check or uncheck it based on its current state. If Mid(strHit, 1, 5) = "Check" Then 'Store the number of the checkbox clicked. Dim nCheck As Integer nCheck = CInt(Mid(strHit, 6, 1)) Debug.Print nCheck If c.GetAttrib("Check" & nCheck & "Image") = "checkempty.bmp" Then c.SetAttrib "Check" & nCheck & "Image", "checkfull.bmp" 'If a box has been checked, log the RT and RESP. Else c.SetAttrib "Check" & nCheck & "Image", "checkempty.bmp" c.Setattrib "Check" & nCheck & "RESP", "" End If End If if c.GetAttrib("Check4Image")="checkfull.bmp" and c.GetAttrib("Check5Image")="checkfull.bmp" and c.GetAttrib("Check1Image")="checkempty.bmp" and c.GetAttrib("Check2Image")="checkempty.bmp" and c.GetAttrib("Check3Image")="checkempty.bmp" and c.GetAttrib("Check6Image")="checkempty.bmp" and c.GetAttrib("Check7Image")="checkempty.bmp" and c.GetAttrib("Check8Image")="checkempty.bmp" Then 'if strHit = "Check5" and strHit = "Check4" Then Stimulus.ACC = 1 else Stimulus.ACC = 0 End if If strHit <> "Next" Then Goto ChooseAgain End If End If Thank you G?zin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From maria.richter.mail at googlemail.com Thu Mar 1 15:28:26 2012 From: maria.richter.mail at googlemail.com (Maria) Date: Thu, 1 Mar 2012 07:28:26 -0800 Subject: problem with a summation object In-Reply-To: <4f4d05e6.c45f320a.2232.ffffddcdSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hallo David, the error occurued in the line where the observation should be added. I deleted this thread because I found the mistake: When you define the summation objects you have to write them into seperate lines like: Dim SummationAcc as Summation Dim SummationRT as Summation and not like: Dim SummationAcc, SummationRT as Summation I do not have an explanation for this... On 28 Feb., 17:49, David McFarlane wrote: > Max, > > Hmm, another question that could go to PST Web Support athttp://support.pstnet.com/e%2Dprime/support/login.asp. ?Anyway, what > was the exact line of code that produced the error? ?Typically, an > "Object does not have a default value" error occurs when you use an > object but fail to specify which *property* of the object you > mean. ?You can get away with that only when the object does have a > default property, otherwise you must explicitly specify which > property you mean. > > To take a contrived example, the following will create such an error: > > ? ? ?SummationRTA.AddObservation CInt(ReactionInterval) > > whereas the following will not: > > ? ? ?SummationRTA.AddObservation CInt(ReactionInterval.RT) > > -- David McFarlane > > At 2/2/2012 06:02 AM Thursday, you wrote: > > >Dear everyone, > > >I tried to use a summation object to give feedback to experimental > >subjects about their accuracy and reaction times. > >I used following code: > >Dim SummationAccA, SummationAccB, SummationRTA, SummationRTB as > >Summation > >(global variables) > > >Set SummationAccA = New Summation > >Set SummationRTA = New Summation > >Set SummationAccB = New Summation > >Set SummationRTB = New Summation > >(before running the list) > > >SummationAccA.AddObservation ReactionInterval.ACC > >SummationRTA.AddObservation ReactionInterval.RT > >SummationAccB.AddObservation ReactionInterval2.ACC > >SummationRTB.AddObservation ReactionInterval2.RT > >(ReactionInterval & Reactioninterval2 are slide objects) > > >By attempting to add the accuracies and reaction times following error > >occurs: > >"Object does not have a default value" > > >I used the same principle in further experiments and there it worked. > >I hope there is just a simple mistake, thanks for answers, > >best regards, > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From maria.richter.mail at googlemail.com Thu Mar 1 15:37:45 2012 From: maria.richter.mail at googlemail.com (Maria) Date: Thu, 1 Mar 2012 07:37:45 -0800 Subject: Parallel Port Problems In-Reply-To: <4f4d06b8.c45f320a.2232.ffffddfbSMTPIN_ADDED@gmr-mx.google.com> Message-ID: yes, this was my first idea (the false address) and I asked the IT- Personal (it is the right address and it is a parallel port). I found a way that works: I added the second port not as a "parallel port" but as a "port" (there you do not have to specify if it is for in- or output). If I have some time I will read in the User's guide what the reason for this could be and will post it. On 28 Feb., 17:54, David McFarlane wrote: > Max, > > Are you sure that you specified a different (& correct) port address > for the second port? ?If you used the same port address for both, > then you are really using only one of the ports, and that one port > becomes input or output depending on the last command issued. > > -- David McFarlane > > At 2/24/2012 12:12 PM Friday, you wrote: > > >Dear all, > > >next problem: > > >I tried to use two parallel ports, one for sending a trigger for EEG, > >one for input from a self-made device (like a keyboard). > >Sending triggers work until I add a second parallel port ("port mode" > >= Input) to the devices (with second "port mode" = output it works, > >but I need it for input). > > >Any suggestions? > > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Thu Mar 1 15:55:12 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Thu, 1 Mar 2012 17:55:12 +0200 Subject: problem with a summation object In-Reply-To: Message-ID: Hi, Correct me if I'm wrong, anyone knowing better and actually having E-Prime on their desktop (anyone here at Aalto or Helsinki Uni anyway?), but, as far as I remember: "Dim SummationAcc, SummationRT as Summation" is interpreted as Dim SummationAcc as Variant Dim SummationRT as Summation ...variant being that weird basic type which changes from integer to string to double on the basis of its value. A summation object, however, is not a type but a separate class. I agree with you that it would be more convenient if e-prime would either accept various type declarations in one line (double A, B, C etc all being doubles), or actually give a warning. Although you might say this is just being punishing for lazy coding, I have met academics enough who had this problem. It reminds me somewhat of this fascinating thing in flash actionscript, where IF x = 3 THEN .... is interpreted as "if it's fine to store the value of 3 in the variable x then continue", so that you get no error message, but your code will start exhibiting very strange behaviour (since if x = 3, it will continue, but also if x happens to be 4, x = 3 still is evaluated as "true": the laziness here was with me and doing too much basic, for not seeing the proper code IF x == 3 THEN) Anyway. Best, Mich -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Maria Sent: 01 March 2012 17:28 To: E-Prime Subject: Re: problem with a summation object Hallo David, the error occurued in the line where the observation should be added. I deleted this thread because I found the mistake: When you define the summation objects you have to write them into seperate lines like: Dim SummationAcc as Summation Dim SummationRT as Summation and not like: Dim SummationAcc, SummationRT as Summation I do not have an explanation for this... On 28 Feb., 17:49, David McFarlane wrote: > Max, > > Hmm, another question that could go to PST Web Support athttp://support.pstnet.com/e%2Dprime/support/login.asp. ?Anyway, what > was the exact line of code that produced the error? ?Typically, an > "Object does not have a default value" error occurs when you use an > object but fail to specify which *property* of the object you > mean. ?You can get away with that only when the object does have a > default property, otherwise you must explicitly specify which > property you mean. > > To take a contrived example, the following will create such an error: > > ? ? ?SummationRTA.AddObservation CInt(ReactionInterval) > > whereas the following will not: > > ? ? ?SummationRTA.AddObservation CInt(ReactionInterval.RT) > > -- David McFarlane > > At 2/2/2012 06:02 AM Thursday, you wrote: > > >Dear everyone, > > >I tried to use a summation object to give feedback to experimental > >subjects about their accuracy and reaction times. > >I used following code: > >Dim SummationAccA, SummationAccB, SummationRTA, SummationRTB as > >Summation > >(global variables) > > >Set SummationAccA = New Summation > >Set SummationRTA = New Summation > >Set SummationAccB = New Summation > >Set SummationRTB = New Summation > >(before running the list) > > >SummationAccA.AddObservation ReactionInterval.ACC > >SummationRTA.AddObservation ReactionInterval.RT > >SummationAccB.AddObservation ReactionInterval2.ACC > >SummationRTB.AddObservation ReactionInterval2.RT > >(ReactionInterval & Reactioninterval2 are slide objects) > > >By attempting to add the accuracies and reaction times following error > >occurs: > >"Object does not have a default value" > > >I used the same principle in further experiments and there it worked. > >I hope there is just a simple mistake, thanks for answers, > >best regards, > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 1 17:00:59 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 1 Mar 2012 12:00:59 -0500 Subject: problem with a summation object In-Reply-To: <001401ccf7c3$b03ec990$10bc5cb0$@eu> Message-ID: Mich, Indeed, that is exactly correct, and I am quite chagrined that I overlooked that coding mistake myself in Max's original post. I guess it just goes to show... This behavior, of course, comes from Microsoft Visual Basic for Applications (VBA), from which E-Basic is derived. *Each* variable must be *explicitly* typed, else by default it is type Variant, as you said. In VBA/E-Basic you could accomplish the same effect on a single line as follows: Dim SummationAcc as Summation, SummationRT as Summation Programmers experienced in other languages such as C/C++ will find this particularly confusing, as the equivalent statement in C/C++ would read simply Summation SummationAcc, SummationRT; which would reasonably enough declare both SummationAcc & SummationRT as type Summation in one simple easy-to-read line. But this is VBA/E-Basic, not C/C++ Of course it is easy to overlook a lack of explicit type declarations on single lines like that, hence many VBA/E-Basic style guides recommend using a separate line for each variable declaration, as you illustrated. It seems to me that I have run across this documented somewhere in the E-Prime materials, but I don't recall offhand whether this behavior is explained in Chapter 4 of the User's Guide, and I am too lazy to look it up right now. --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/1/2012 10:55 AM Thursday, Michiel Sovijarvi-Spape wrote: >Hi, >Correct me if I'm wrong, anyone knowing better and actually having E-Prime >on their desktop (anyone here at Aalto or Helsinki Uni anyway?), but, as far >as I remember: >"Dim SummationAcc, SummationRT as Summation" is interpreted as >Dim SummationAcc as Variant >Dim SummationRT as Summation >...variant being that weird basic type which changes from integer to string >to double on the basis of its value. A summation object, however, is not a >type but a separate class. >I agree with you that it would be more convenient if e-prime would either >accept various type declarations in one line (double A, B, C etc all being >doubles), or actually give a warning. Although you might say this is just >being punishing for lazy coding, I have met academics enough who had this >problem. It reminds me somewhat of this fascinating thing in flash >actionscript, where >IF x = 3 THEN .... >is interpreted as "if it's fine to store the value of 3 in the variable x >then continue", so that you get no error message, but your code will start >exhibiting very strange behaviour (since if x = 3, it will continue, but >also if x happens to be 4, x = 3 still is evaluated as "true": the laziness >here was with me and doing too much basic, for not seeing the proper code IF >x == 3 THEN) > >Anyway. >Best, >Mich > >-----Original Message----- >From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf >Of Maria >Sent: 01 March 2012 17:28 >To: E-Prime >Subject: Re: problem with a summation object > >Hallo David, > >the error occurued in the line where the observation should be added. >I deleted this thread because I found the mistake: > >When you define the summation objects you have to write them into >seperate lines like: > >Dim SummationAcc as Summation >Dim SummationRT as Summation > >and not like: > >Dim SummationAcc, SummationRT as Summation > >I do not have an explanation for this... > > > > >On 28 Feb., 17:49, David McFarlane wrote: > > Max, > > > > Hmm, another question that could go to PST Web Support >athttp://support.pstnet.com/e%2Dprime/support/login.asp. Anyway, what > > was the exact line of code that produced the error? Typically, an > > "Object does not have a default value" error occurs when you use an > > object but fail to specify which *property* of the object you > > mean. You can get away with that only when the object does have a > > default property, otherwise you must explicitly specify which > > property you mean. > > > > To take a contrived example, the following will create such an error: > > > > SummationRTA.AddObservation CInt(ReactionInterval) > > > > whereas the following will not: > > > > SummationRTA.AddObservation CInt(ReactionInterval.RT) > > > > -- David McFarlane > > > > At 2/2/2012 06:02 AM Thursday, you wrote: > > > > >Dear everyone, > > > > >I tried to use a summation object to give feedback to experimental > > >subjects about their accuracy and reaction times. > > >I used following code: > > >Dim SummationAccA, SummationAccB, SummationRTA, SummationRTB as > > >Summation > > >(global variables) > > > > >Set SummationAccA = New Summation > > >Set SummationRTA = New Summation > > >Set SummationAccB = New Summation > > >Set SummationRTB = New Summation > > >(before running the list) > > > > >SummationAccA.AddObservation ReactionInterval.ACC > > >SummationRTA.AddObservation ReactionInterval.RT > > >SummationAccB.AddObservation ReactionInterval2.ACC > > >SummationRTB.AddObservation ReactionInterval2.RT > > >(ReactionInterval & Reactioninterval2 are slide objects) > > > > >By attempting to add the accuracies and reaction times following error > > >occurs: > > >"Object does not have a default value" > > > > >I used the same principle in further experiments and there it worked. > > >I hope there is just a simple mistake, thanks for answers, > > >best regards, > > >Max -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 1 17:35:41 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 1 Mar 2012 12:35:41 -0500 Subject: forcing to choose only two object by click In-Reply-To: Message-ID: G?zin, I think the reason you do not get a response to this question is because it is just too complex for this type of forum. The short answer is, to do what you want will take some careful, complex, and intricate coding, which you will need to figure out for yourself based on all the working elements that you already have on hand (or hire someone else to do it, if you could find such a person). To take an analogy, if this were a music writing forum, you might reasonably ask how to transpose "Mary Had a Little Lamb" from C-major to G-major. But aking how to rewrite Beethoven's "Moonlight Sonata" in the style of Rachmaninoff might not get a response. But PST Web Support sometimes helps out with complex projects like this, so you might try contacting them at http://support.pstnet.com/e%2Dprime/support/login.asp . --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/1/2012 07:09 AM Thursday, you wrote: >Hi, I have written before the same problem but I could not get any >reply neither in pst forum (http://support.pstnet.com/forum/ >Topic5781-23-1.aspx) nor in googlegroups. I think I wrote a bit >complicated with my limited English. I am writing again i a simple >way. > >I have 8 checkboxes on a slide (checkboxes are an empty square image >on the slide and named, Check1, Check2?.. Check8). >Participants must choose two of them for each trial by clicking on the >checkboxes. When they click on a checkbox, it fill with black to show >as it is checked. There are two correct checkboxes out of eight for >each trial. But I want that participant must choose only two of the >checkboxes and not being allowed to choose a third one. If they click >on a third one their last selection will be disappear and replace with >third click. >How can I limit checking checkboxes to two while they could change >their selections without exceeding two limit? My code is below; > >'Designate "theState" as the Default Slide State, which is the >current, ActiveState >'on the Slide object "Stimulus" >Dim theState as SlideState >Set theState = Stimulus.States("Default") > >'Variable for holding the name of the sub-object clicked by the >subject. >Dim strHit As String > >'Variable for holding the subject's response information. >Dim theMouseResponseData As MouseResponseData > >'Was a response made? >If Stimulus.InputMasks.Responses.Count > 0 Then > > Set theMouseResponseData = >CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > strHit = theState.HitTest(theMouseResponseData.CursorX, >theMouseResponseData.CursorY) > > 'If a check box was clicked, check or uncheck it based on its current >state. > If Mid(strHit, 1, 5) = "Check" Then > > 'Store the number of the checkbox clicked. > Dim nCheck As Integer > nCheck = CInt(Mid(strHit, 6, 1)) > Debug.Print nCheck > > If c.GetAttrib("Check" & nCheck > & "Image") = "checkempty.bmp" Then > > c.SetAttrib "Check" & > nCheck & "Image", "checkfull.bmp" > > 'If a box has > been checked, log the RT and RESP. > > Else > > c.SetAttrib "Check" & > nCheck & "Image", "checkempty.bmp" > c.Setattrib "Check" & nCheck & "RESP", "" > > > End If > End If > > if c.GetAttrib("Check4Image")="checkfull.bmp" and >c.GetAttrib("Check5Image")="checkfull.bmp" and >c.GetAttrib("Check1Image")="checkempty.bmp" and >c.GetAttrib("Check2Image")="checkempty.bmp" and >c.GetAttrib("Check3Image")="checkempty.bmp" and >c.GetAttrib("Check6Image")="checkempty.bmp" and >c.GetAttrib("Check7Image")="checkempty.bmp" and >c.GetAttrib("Check8Image")="checkempty.bmp" Then > 'if strHit = "Check5" and strHit = "Check4" Then > Stimulus.ACC = 1 > > else Stimulus.ACC = 0 > End if > If strHit <> "Next" Then > Goto ChooseAgain > > End If > >End If > >Thank you >G?zin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Fri Mar 2 11:54:21 2012 From: liwenna at gmail.com (liwenna) Date: Fri, 2 Mar 2012 03:54:21 -0800 Subject: forcing to choose only two object by click In-Reply-To: <4f4fb389.c45b320a.7da9.60afSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hello G?zin, I more or less agree with David. Nonetheless I tried to conjure up something. This is written without e-prime, so it probably won't work right away and perhaps it will not work at all... but it might get you going again and point towards the solution to your problem. I've rewriten your code. You need to make a few new things elsewhere in the program too. On the usertab of the script window (bottom lef of the script window) you need to declare a variable called 'clicknumber', that will keep track of whether the number of clicks made. This is needed to store two consecutive answers separately. Write " dim clicknumber as integer " on the usertab to declare it. At the begining of the script the variable clicknumber is increased by 1 so that it keeps cound of the clicks (it's 0+1 = 1 after click1, 1+1 =2 after click 2 etc). Then a large part of your own script follows. I started modifying again following the part where the chechbox image is changes. Here I create two new variables Checkodd and Checkeven. In the next part clicknumber is checked to see whether the 'current click' (click number) is an odd or an even number (based on mod 2, see explanations elsewhere). If the clicknumber is odd, the given response is stored in the variable 'CheckOdd', if it's even it is stored under 'CheckEven'. For the next part of the script you'll need to make two attributes (in your lists) called correcresponse1 and correctresponse2. These should contain the right answers (i.e. check4 and check5). If the answer that is currently given and the previous given answer (both stored under checkodd and checkeven) are both found in correctresponse1 and correctresponse2, the program is send to a label called endlabel (goto endlabel, first clicknumber, checkodd and checkeven are reset for the next trial). You should make this label after the inline script. If the two last answers are not the answers in corectresponse1 and correctresponse2, then the program is send back to the label called ChooseAgain. The script doesn't store answers yet, nor does it keep an accuracy count. You could still add those if you need them (or store clicknumber to have a count of the total answers given before the correct answers were given). Hope this helps. Best, AW 'AW note: clickbnumber should be declared on the usertab, it keeps count of the number of clicks made clicknumber = clicknumber + 1 'existing script 'Designate "theState" as the Default Slide State, which is the current, ActiveState 'on the Slide object "Stimulus" Dim theState as SlideState Set theState = Stimulus.States("Default") 'Variable for holding the name of the sub-object clicked by the subject. Dim strHit As String 'Variable for holding the subject's response information. Dim theMouseResponseData As MouseResponseData 'Was a response made? If Stimulus.InputMasks.Responses.Count > 0 Then Set theMouseResponseData = CMouseResponseData(Stimulus.InputMasks.Responses(1)) strHit = theState.HitTest(theMouseResponseData.CursorX, theMouseResponseData.CursorY) 'If a check box was clicked, check or uncheck it based on its current state. If Mid(strHit, 1, 5) = "Check" Then 'Store the number of the checkbox clicked. nCheck = CInt(Mid(strHit, 6, 1)) Debug.Print nCheck If c.GetAttrib("Check" & nCheck & "Image") = "checkempty.bmp" Then c.SetAttrib "Check" & nCheck & "Image", "checkfull.bmp" End If 'AW note: CheckEven and CheckOdd will contain the answers (checkx) given on the last odd and the last even (thus the last two) clicks dim CheckEven as string dim CheckOdd as string if clicknumber mod 2 = 1 then checkodd = ("Check" & nCheck") if clicknumber mod 2 = 0 then checkeven = ("Check" & nCheck") 'AW note: compare the answers in CheckOdd and CheckEven to the correct answers stored in the attributes correctresponse1 and 'correctresponse1. If both are found, then resent the check and click variables and terminate by goto endlabel ' else goto the label called ChooseAgain If checkodd = c.getattrib ("correctresponse1") and checkeven = c.getattrib (correctresponse2") then checkodd = empty checkeven = empty clicknumber = 0 goto endlabel If checkodd = c.getattrib ("correctresponse2") and checkeven = c.getattrib (correctresponse1") then checkeven = empty clicknumber = 0 goto endlabel else Goto ChooseAgain end if On 1 mrt, 18:35, David McFarlane wrote: > G?zin, > > I think the reason you do not get a response to > this question is because it is just too complex > for this type of forum. ?The short answer is, to > do what you want will take some careful, complex, > and intricate coding, which you will need to > figure out for yourself based on all the working > elements that you already have on hand (or hire > someone else to do it, if you could find such a > person). ?To take an analogy, if this were a > music writing forum, you might reasonably ask how > to transpose "Mary Had a Little Lamb" from > C-major to G-major. ?But aking how to rewrite > Beethoven's "Moonlight Sonata" in the style of > Rachmaninoff might not get a response. > > But PST Web Support sometimes helps out with > complex projects like this, so you might try > contacting them athttp://support.pstnet.com/e%2Dprime/support/login.asp. > > --- > David McFarlane > E-Prime training > online: ?http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter: ?@EPrimeMaster (twitter.com/EPrimeMaster) > > At 3/1/2012 07:09 AM Thursday, you wrote: > > >Hi, I have written before the same problem but I could not get any > >reply neither in pst forum (http://support.pstnet.com/forum/ > >Topic5781-23-1.aspx) nor in googlegroups. ?I think I wrote a bit > >complicated with my limited English. I am writing again i a simple > >way. > > >I have 8 checkboxes on a slide (checkboxes are an empty square image > >on the slide and named, Check1, Check2?.. Check8). > >Participants must choose two of them for each trial by clicking on the > >checkboxes. When they click on a checkbox, it fill with black to show > >as it is checked. There are two correct checkboxes out of eight for > >each trial. But I want that participant must choose only two of the > >checkboxes and not being allowed to choose a third one. If they click > >on a third one their last selection will be disappear and replace with > >third click. > >How can I limit checking checkboxes to two while they could change > >their selections without exceeding two limit? My code is below; > > >'Designate "theState" as the Default Slide State, which is the > >current, ActiveState > >'on the Slide object "Stimulus" > >Dim theState as SlideState > >Set theState = Stimulus.States("Default") > > >'Variable for holding the name of the sub-object clicked by the > >subject. > >Dim strHit As String > > >'Variable for holding the subject's response information. > >Dim theMouseResponseData As MouseResponseData > > >'Was a response made? > >If Stimulus.InputMasks.Responses.Count > 0 Then > > > ? ? ? ? Set theMouseResponseData = > >CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > > ? ? ? ? strHit = theState.HitTest(theMouseResponseData.CursorX, > >theMouseResponseData.CursorY) > > > ? ? ? ? 'If a check box was clicked, check or uncheck it based on its current > >state. > > ? ? ? ? If Mid(strHit, 1, 5) = "Check" Then > > > ? ? ? ? ? ? ? ? 'Store the number of the checkbox clicked. > > ? ? ? ? ? ? ? ? Dim nCheck As Integer > > ? ? ? ? ? ? ? ? nCheck = CInt(Mid(strHit, 6, 1)) > > ? ? ? ? ? ? ? ? Debug.Print nCheck > > > ? ? ? ? ? ? ? ? If c.GetAttrib("Check" & nCheck > > & "Image") = "checkempty.bmp" Then > > > ? ? ? ? ? ? ? ? ? ? ? ? c.SetAttrib "Check" & > > nCheck & "Image", "checkfull.bmp" > > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 'If a box has > > been checked, log the RT and RESP. > > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Else > > > ? ? ? ? ? ? ? ? ? ? ? ? c.SetAttrib "Check" & > > nCheck & "Image", "checkempty.bmp" > > ? ? ? ? ? ? ? ? ? ? ? ? c.Setattrib "Check" & nCheck & "RESP", "" > > > ? ? ? ? ? ? ? ? End If > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? End If > > > ? ? ? ? ? ? ? ? ? ? ? ? if c.GetAttrib("Check4Image")="checkfull.bmp" and > >c.GetAttrib("Check5Image")="checkfull.bmp" and > >c.GetAttrib("Check1Image")="checkempty.bmp" and > >c.GetAttrib("Check2Image")="checkempty.bmp" and > >c.GetAttrib("Check3Image")="checkempty.bmp" and > >c.GetAttrib("Check6Image")="checkempty.bmp" and > >c.GetAttrib("Check7Image")="checkempty.bmp" and > >c.GetAttrib("Check8Image")="checkempty.bmp" Then > > ? ? ? ? ? ? ? ? ? ? ?'if strHit = "Check5" and strHit = "Check4" Then > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Stimulus.ACC = 1 > > > ? ? ? ? ? ? ? ? ? ? ? ? else Stimulus.ACC = 0 > > ? ? ? ? ? ? ? ? ? ? ? ? End if > > ? ? ? ? If strHit <> "Next" Then > > ? ? ? ? ? ? ? ? Goto ChooseAgain > > > ? ? ? ? End If > > >End If > > >Thank you > >G?zin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Fri Mar 2 12:09:30 2012 From: liwenna at gmail.com (liwenna) Date: Fri, 2 Mar 2012 04:09:30 -0800 Subject: forcing to choose only two object by click In-Reply-To: <491b51cf-a225-41cf-8fa8-137216847ed0@1g2000yqv.googlegroups.com> Message-ID: Oh, the linebreaking is not always correct >.< Moreover: I realise now that you'll want to move the " dim CheckEven as string dim CheckOdd as string if clicknumber mod 2 = 1 then checkodd = ("Check" & nCheck") if clicknumber mod 2 = 0 then checkeven = ("Check" & nCheck") " up to above the part of code were you change the image from checkempty to checkfull. This part of the code should be made to also be dependent on the values stored in checkodd and checkeven, while all other boxes should be set to checkempty. If you don't do that, than checkboxes won't be 'unchecked'. Also in the lines checkodd = empty & checkeven = empty (the first line was forgotten in the second part, sorry!), 'empty' is just a word to 'empty' that string variable, so it should possible be => CheckOdd = "empty" (note the "s). On 2 mrt, 12:54, liwenna wrote: > Hello G?zin, > > I more or less agree with David. Nonetheless I tried to conjure up > something. This is written without e-prime, so it probably won't work > right away and perhaps it will not work at all... but it might get you > going again and point towards the solution to your problem. > > I've rewriten your code. You need to make a few new things elsewhere > in the program too. > On the usertab of the script window (bottom lef of the script window) > you need to declare a variable called 'clicknumber', that will keep > track of whether the number of clicks made. This is needed to store > two consecutive answers separately. Write " dim clicknumber as integer > " on the usertab to declare it. > > At the begining of the script the variable clicknumber is increased by > 1 so that it keeps cound of the clicks (it's 0+1 = 1 after click1, 1+1 > =2 after click 2 etc). Then a large part of your own script follows. > > I started modifying again following the part where the chechbox image > is changes. > > Here I create two new variables Checkodd and Checkeven. In the next > part clicknumber is checked to see whether the 'current click' (click > number) is an odd or an even number (based on mod 2, see explanations > elsewhere). If the clicknumber is odd, the given response is stored in > the variable 'CheckOdd', if it's even it is stored under 'CheckEven'. > > For the next part of the script you'll need to make two attributes (in > your lists) called correcresponse1 and correctresponse2. These should > contain the right answers (i.e. check4 and check5). If the answer that > is currently given and the previous given answer (both stored under > checkodd and checkeven) are both found in correctresponse1 and > correctresponse2, the program is send to a label called endlabel (goto > endlabel, first clicknumber, checkodd and checkeven are reset for the > next trial). You should make this label after the inline script. If > the two last answers are not the answers in corectresponse1 and > correctresponse2, then the program is send back to the label called > ChooseAgain. > > The script doesn't store answers yet, nor does it keep an accuracy > count. You could still add those if you need them (or store > clicknumber to have a count of the total answers given before the > correct answers were given). > > Hope this helps. > > Best, > > AW > > 'AW note: clickbnumber should be declared on the usertab, it keeps > count of the number of clicks made > clicknumber = clicknumber + 1 > > 'existing script > > 'Designate "theState" as the Default Slide State, which is the > current, ActiveState > 'on the Slide object "Stimulus" > Dim theState as SlideState > Set theState = Stimulus.States("Default") > > 'Variable for holding the name of the sub-object clicked by the > subject. > Dim strHit As String > > 'Variable for holding the subject's response information. > Dim theMouseResponseData As MouseResponseData > > 'Was a response made? > If Stimulus.InputMasks.Responses.Count > 0 Then > > ? ? ? ? Set theMouseResponseData = > CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > ? ? ? ? strHit = theState.HitTest(theMouseResponseData.CursorX, > theMouseResponseData.CursorY) > > ? ? ? ? 'If a check box was clicked, check or uncheck it based on its > current > state. > ? ? ? ? If Mid(strHit, 1, 5) = "Check" Then > > ? ? ? ? ? ? ? ? 'Store the number of the checkbox clicked. > > ? ? ? ? ? ? ? ? nCheck = CInt(Mid(strHit, 6, 1)) > ? ? ? ? ? ? ? ? Debug.Print nCheck > > ? ? ? ? ? ? ? ? If c.GetAttrib("Check" & nCheck & "Image") = > "checkempty.bmp" Then > > ? ? ? ? ? ? ? ? ?c.SetAttrib "Check" & nCheck & "Image", > "checkfull.bmp" > > ? ? ? ? ? ? ? ? End If > > 'AW note: CheckEven and CheckOdd will contain the answers (checkx) > given on the last odd and the last even (thus the last two) clicks > dim CheckEven as string > dim CheckOdd as string > > if clicknumber mod 2 = 1 then checkodd = ("Check" & nCheck") > if clicknumber mod 2 = 0 then checkeven = ("Check" & > nCheck") > > 'AW note: compare the answers in CheckOdd and CheckEven to the correct > answers stored in the attributes correctresponse1 and > 'correctresponse1. If both are found, then resent the check and click > variables and terminate by goto endlabel > ' else goto the label called ChooseAgain > > If checkodd = c.getattrib ("correctresponse1") and checkeven = > c.getattrib (correctresponse2") then > checkodd = empty > checkeven = empty > clicknumber = 0 > goto endlabel > > If checkodd = c.getattrib ("correctresponse2") and checkeven = > c.getattrib (correctresponse1") then > checkeven = empty > clicknumber = 0 > goto endlabel > > else > > Goto ChooseAgain > > end if > > On 1 mrt, 18:35, David McFarlane wrote: > > > G?zin, > > > I think the reason you do not get a response to > > this question is because it is just too complex > > for this type of forum. ?The short answer is, to > > do what you want will take some careful, complex, > > and intricate coding, which you will need to > > figure out for yourself based on all the working > > elements that you already have on hand (or hire > > someone else to do it, if you could find such a > > person). ?To take an analogy, if this were a > > music writing forum, you might reasonably ask how > > to transpose "Mary Had a Little Lamb" from > > C-major to G-major. ?But aking how to rewrite > > Beethoven's "Moonlight Sonata" in the style of > > Rachmaninoff might not get a response. > > > But PST Web Support sometimes helps out with > > complex projects like this, so you might try > > contacting them athttp://support.pstnet.com/e%2Dprime/support/login.asp. > > > --- > > David McFarlane > > E-Prime training > > online: ?http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter: ?@EPrimeMaster (twitter.com/EPrimeMaster) > > > At 3/1/2012 07:09 AM Thursday, you wrote: > > > >Hi, I have written before the same problem but I could not get any > > >reply neither in pst forum (http://support.pstnet.com/forum/ > > >Topic5781-23-1.aspx) nor in googlegroups. ?I think I wrote a bit > > >complicated with my limited English. I am writing again i a simple > > >way. > > > >I have 8 checkboxes on a slide (checkboxes are an empty square image > > >on the slide and named, Check1, Check2?.. Check8). > > >Participants must choose two of them for each trial by clicking on the > > >checkboxes. When they click on a checkbox, it fill with black to show > > >as it is checked. There are two correct checkboxes out of eight for > > >each trial. But I want that participant must choose only two of the > > >checkboxes and not being allowed to choose a third one. If they click > > >on a third one their last selection will be disappear and replace with > > >third click. > > >How can I limit checking checkboxes to two while they could change > > >their selections without exceeding two limit? My code is below; > > > >'Designate "theState" as the Default Slide State, which is the > > >current, ActiveState > > >'on the Slide object "Stimulus" > > >Dim theState as SlideState > > >Set theState = Stimulus.States("Default") > > > >'Variable for holding the name of the sub-object clicked by the > > >subject. > > >Dim strHit As String > > > >'Variable for holding the subject's response information. > > >Dim theMouseResponseData As MouseResponseData > > > >'Was a response made? > > >If Stimulus.InputMasks.Responses.Count > 0 Then > > > > ? ? ? ? Set theMouseResponseData = > > >CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > > > ? ? ? ? strHit = theState.HitTest(theMouseResponseData.CursorX, > > >theMouseResponseData.CursorY) > > > > ? ? ? ? 'If a check box was clicked, check or uncheck it based on its current > > >state. > > > ? ? ? ? If Mid(strHit, 1, 5) = "Check" Then > > > > ? ? ? ? ? ? ? ? 'Store the number of the checkbox clicked. > > > ? ? ? ? ? ? ? ? Dim nCheck As Integer > > > ? ? ? ? ? ? ? ? nCheck = CInt(Mid(strHit, 6, 1)) > > > ? ? ? ? ? ? ? ? Debug.Print nCheck > > > > ? ? ? ? ? ? ? ? If c.GetAttrib("Check" & nCheck > > > & "Image") = "checkempty.bmp" Then > > > > ? ? ? ? ? ? ? ? ? ? ? ? c.SetAttrib "Check" & > > > nCheck & "Image", "checkfull.bmp" > > > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 'If a box has > > > been checked, log the RT and RESP. > > > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Else > > > > ? ? ? ? ? ? ? ? ? ? ? ? c.SetAttrib "Check" & > > > nCheck & "Image", "checkempty.bmp" > > > ? ? ? ? ? ? ? ? ? ? ? ? c.Setattrib "Check" & nCheck & "RESP", "" > > > > ? ? ? ? ? ? ? ? End If > > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? End If > > > > ? ? ? ? ? ? ? ? ? ? ? ? if c.GetAttrib("Check4Image")="checkfull.bmp" and > > >c.GetAttrib("Check5Image")="checkfull.bmp" and > > >c.GetAttrib("Check1Image")="checkempty.bmp" and > > >c.GetAttrib("Check2Image")="checkempty.bmp" and > > >c.GetAttrib("Check3Image")="checkempty.bmp" and > > >c.GetAttrib("Check6Image")="checkempty.bmp" and > > >c.GetAttrib("Check7Image")="checkempty.bmp" and > > >c.GetAttrib("Check8Image")="checkempty.bmp" Then > > > ? ? ? ? ? ? ? ? ? ? ?'if strHit = "Check5" and strHit = "Check4" Then > > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Stimulus.ACC = 1 > > > > ? ? ? ? ? ? ? ? ? ? ? ? else Stimulus.ACC = 0 > > > ? ? ? ? ? ? ? ? ? ? ? ? End if > > > ? ? ? ? If strHit <> "Next" Then > > > ? ? ? ? ? ? ? ? Goto ChooseAgain > > > > ? ? ? ? End If > > > >End If > > > >Thank you > > >G?zin -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lilica_rig at yahoo.com.br Fri Mar 2 22:40:13 2012 From: lilica_rig at yahoo.com.br (Lis) Date: Fri, 2 Mar 2012 14:40:13 -0800 Subject: Translating scripts Message-ID: Hi! I would like to know how I can translate scripts into other languages. I am having trouble saving the scripts after I finish translating, so I guess I am doing something wrong. Thanks. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiany.03 at googlemail.com Sat Mar 3 10:52:40 2012 From: tiany.03 at googlemail.com (Ye Tian) Date: Sat, 3 Mar 2012 10:52:40 +0000 Subject: transfer eprime 2 file into eprime 1 format. Message-ID: Dear all, I have programmed my experiment in eprime 2, but my collaborator only have eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do you know of any other options? Thanks a lot!! Best, Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Sat Mar 3 15:43:23 2012 From: liwenna at gmail.com (liwenna) Date: Sat, 3 Mar 2012 07:43:23 -0800 Subject: transfer eprime 2 file into eprime 1 format. In-Reply-To: Message-ID: Sorry Ye, unfortunately there are is no way to convert an e-prime 2 file to e-prime 1 :/ (well, other than rebuilding from scratch). In a similar way, also watch out with e-prime 2 professional files, these can not be used on a computer that is only licensed for e-prime 2 basic. Wish I had better news for you! AW On 3 mrt, 11:52, Ye Tian wrote: > Dear all, > > I have programmed my experiment in eprime 2, but my collaborator only have > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do > you know of any other options? Thanks a lot!! > > Best, > Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiany.03 at googlemail.com Sat Mar 3 17:39:45 2012 From: tiany.03 at googlemail.com (Ye Tian) Date: Sat, 3 Mar 2012 17:39:45 +0000 Subject: transfer eprime 2 file into eprime 1 format. In-Reply-To: <3b62493e-d7e7-44ae-97a5-4709c887cb81@1g2000yqv.googlegroups.com> Message-ID: Thanks! On 3 March 2012 15:43, liwenna wrote: > Sorry Ye, unfortunately there are is no way to convert an e-prime 2 > file to e-prime 1 :/ (well, other than rebuilding from scratch). > > In a similar way, also watch out with e-prime 2 professional files, > these can not be used on a computer that is only licensed for e-prime > 2 basic. > > Wish I had better news for you! > > AW > > On 3 mrt, 11:52, Ye Tian wrote: > > Dear all, > > > > I have programmed my experiment in eprime 2, but my collaborator only > have > > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or > do > > you know of any other options? Thanks a lot!! > > > > Best, > > Ye > > -- > You received this message because you are subscribed to the Google Groups > "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to > e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/e-prime?hl=en. > > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mspape at cognitology.eu Mon Mar 5 09:06:24 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Mon, 5 Mar 2012 11:06:24 +0200 Subject: transfer eprime 2 file into eprime 1 format. Message-ID: Hi, One suggestion, probably working better between pro/basic than between 2/1, would be to open both and copy/paste objects with the special copy/paste trick explained elsewhere (which also allows copying objects between experiments using E-prime 1). Anyone tried that before? Best, Mich From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Ye Tian Sent: 03 March 2012 19:40 To: e-prime at googlegroups.com Subject: Re: transfer eprime 2 file into eprime 1 format. Thanks! On 3 March 2012 15:43, liwenna wrote: Sorry Ye, unfortunately there are is no way to convert an e-prime 2 file to e-prime 1 :/ (well, other than rebuilding from scratch). In a similar way, also watch out with e-prime 2 professional files, these can not be used on a computer that is only licensed for e-prime 2 basic. Wish I had better news for you! AW On 3 mrt, 11:52, Ye Tian wrote: > Dear all, > > I have programmed my experiment in eprime 2, but my collaborator only have > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do > you know of any other options? Thanks a lot!! > > Best, > Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com . For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mspape at cognitology.eu Mon Mar 5 09:06:42 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Mon, 5 Mar 2012 11:06:42 +0200 Subject: transfer eprime 2 file into eprime 1 format. Message-ID: Hi, One suggestion, probably working better between pro/basic than between 2/1, would be to open both and copy/paste objects with the special copy/paste trick explained elsewhere (which also allows copying objects between experiments using E-prime 1). Anyone tried that before? Best, Mich From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Ye Tian Sent: 03 March 2012 19:40 To: e-prime at googlegroups.com Subject: Re: transfer eprime 2 file into eprime 1 format. Thanks! On 3 March 2012 15:43, liwenna wrote: Sorry Ye, unfortunately there are is no way to convert an e-prime 2 file to e-prime 1 :/ (well, other than rebuilding from scratch). In a similar way, also watch out with e-prime 2 professional files, these can not be used on a computer that is only licensed for e-prime 2 basic. Wish I had better news for you! AW On 3 mrt, 11:52, Ye Tian wrote: > Dear all, > > I have programmed my experiment in eprime 2, but my collaborator only have > eprime 1. Is it possible to transfer an eprime 2 file into eprime 1? Or do > you know of any other options? Thanks a lot!! > > Best, > Ye -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com . For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mspape at cognitology.eu Mon Mar 5 10:31:11 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Mon, 5 Mar 2012 12:31:11 +0200 Subject: Translating scripts Message-ID: Hi, Sorry, what does this mean? Are you trying to translate code into different code (e-basic into... what, pascal?), or different language (IF...THEN into ALS...DAN?) Best, M. -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Lis Sent: 03 March 2012 00:40 To: E-Prime Subject: Translating scripts Hi! I would like to know how I can translate scripts into other languages. I am having trouble saving the scripts after I finish translating, so I guess I am doing something wrong. Thanks. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lilica_rig at yahoo.com.br Mon Mar 5 14:27:34 2012 From: lilica_rig at yahoo.com.br (Lisandra Rutkoski Rodrigues) Date: Mon, 5 Mar 2012 06:27:34 -0800 Subject: Problems with saving configurations and translations Message-ID: Hi! I am trying to?translate scripts into other languages. I am not sure what I should do to save the changes, though. I keep losing the changes because I can't save them. I am translating from English into Brazilian Portuguese. The tasks are the ANT (Attentional Network Task) and the Task-Switching Paradigm. Besides that, another problem refers to the SR-Box, which looks perfectly installed, with its serial cable and so on, but every time I try to run an experiment, I receive the messages ERROR: SERIAL and ERROR: SR-BOX. They should be added to run experiments which require them, and probably removed when they don't. From inside e-studio, using the e-prime key, I add or remove them according to the experiment, but when I decide to run one of them, the same messages return,?since my configurations are never really saved inside e-studio. I guess I am doing something wrong but I just cannot figure out what that might be. I hope someone can help me with that. Thanks a lot. Lis -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Mon Mar 5 16:41:16 2012 From: liwenna at gmail.com (liwenna) Date: Mon, 5 Mar 2012 08:41:16 -0800 Subject: single refresh display duration - help? Message-ID: Hi all, I have something and I hope someone may have experienced a similar thing that may help me out on this one. I have an experiment in which a sequence of displays occurs with the two most important display having durations of 496 and 13 ms respectively (give or take max 2 ms). Back then, it took me quite some work but in the end I got the timing right (yay). Now... I am trying to build a second, similar but less complex, task. This new is less complex since it shows only a single. rather than multiple, image at the 496 ms display, and has a far less complex list structure due to less different procedures. However: I can not get the timing right at all.. the display that follows the 13 ms display just keeps being delayed by one refresh (13 ms). I have tried pretty much everything for hours and hours: - building the new task from scratch, imitating all (or at least I believe so?) settings from the old (correctly timed) task (and then tweaking all the settings too) - modifying the correctly timed task into the new task (and then tweaking all the settings) - using off-screen canvases rather than slides (but it seems that the 13ms 'canvas' is simply not shown in about 25% of the trials... which is not good enough either) I believe I have covered pretty much everything that could be done about it, but I honestly fail to see why the old task would be timed correctly (still is!) and any attempt at the more simple task just fails in terms of timing. I so very much hope that someone here is able to identify the one thing that I just keep overlooking? >.< Best, Anne-Wil -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Mon Mar 5 20:23:30 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Mon, 5 Mar 2012 21:23:30 +0100 Subject: single refresh display duration - help? In-Reply-To: <7060cdad-a415-4129-8737-15864837ff39@o16g2000yqg.googlegroups.com> Message-ID: Hi Anne-Wil, You will get the best onset performance if you: 1) set the pre-release time of the objects before both slides to the maximum possible value (i.e. same as duration of that object). In other words: if the 13ms slide is displayed immediately after the other slide, you must set the pre-release time of the first slide to 496 (or 500 if you apply point 3 below). 2) Use bitmaps instead of JPEG and make sure the color depth is the same as used in your exp. This might help because decoding jpeg files takes a lot of CPU time (although the smaller jpeg files will load faster from disk.) 3) use durations which end in the middle of two screen refreshes I.e, if the display is using a refresh rate of 75Hz, you will set the fast stimulus to 0.5*1000/75=7ms, and the longer stimulus to 37.5*1000/75=500). Not sure if this is still required with the new EP2 release, though... Depending on the hardware performance and screen resolution, this still might be insufficient to get single frame stimuli. If this is the case, you might want to prepare the stimuli using off-screen canvases at the start of the sequence and copy to the display canvas using a fast copy at the vertical blanking interval. This should always work, unless the graphics card is crappy. best, paul 2012/3/5 liwenna : > Hi all, > > I have something and I hope someone may have experienced a similar > thing that may help me out on this one. > > I have an experiment in which a sequence of displays occurs with the > two most important display having durations of 496 and 13 ms > respectively (give or take max 2 ms). Back then, it took me quite some > work but in the end I got the timing right (yay). > > Now... I am trying to build a second, similar but less complex, task. > This new is less complex since it shows only a single. rather than > multiple, image at the 496 ms display, and has a far less complex list > structure due to less different procedures. However: I can not get the > timing right at all.. ?the display that follows the 13 ms display just > keeps being delayed by one refresh (13 ms). > > I have tried pretty much everything for hours and hours: > - building the new task from scratch, imitating all (or at least I > believe so?) settings from the old (correctly timed) task (and then > tweaking all the settings too) > - modifying the correctly timed task into the new task ?(and then > tweaking all the settings) > - using off-screen canvases rather than slides (but it seems that the > 13ms 'canvas' is simply not shown in about 25% of the trials... which > is not good enough either) > > I believe I have covered pretty much everything that could be done > about it, but I honestly fail to see why the old task would be timed > correctly (still is!) and any attempt at the more simple task just > fails in terms of timing. > > I so very much hope that someone here is able to identify the one > thing that I just keep overlooking? >.< > > Best, > > Anne-Wil > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Tue Mar 6 08:50:19 2012 From: liwenna at gmail.com (liwenna) Date: Tue, 6 Mar 2012 00:50:19 -0800 Subject: single refresh display duration - help? In-Reply-To: Message-ID: Thanks Paul for that thorough reply!! Unfortunately I did all that (and more ;)) but to no avail. The display that follows the 13ms display is actually empty, except for a backgroud color (gray shade). I tried using wait objects and text display's rather than a slide display, and also the offscreen canvasses. With offscreen canvasses the problem lies no longer with the 'empty display that overlays the 13 ms image' arriving too late, the timing is the fine in about 75% of the trials, but I am pretty certain that the 13ms display is skipped in about 25% of the trials. The graphics card might be crappy, I am also a bit suspicious regarding the display that I was assigned for this project, nonetheless, the 'old task' seems to be work well on it, while this new taks also does not perform well on the pc & display that I used for the old project (and do trust). It simply drives me crazy that the exact same set-up in terms of settings that are known to matter for timing, works perfectly in one set-up (with more images and a more difficult list structure, even with an additional procedure that has a 27ms display added to the sequence with the 13 and 496 display) and just doesn't work in the simpler set-up. Something must somehow matter that I completely overlook. I suppose I'll spent the second part of this afternoon on it again: any additional advices are more than welcome :) best, liw On 5 mrt, 21:23, Paul Groot pfc.gr... at gmail.com> wrote: > Hi Anne-Wil, > > You will get the best onset performance if you: > > 1) set the pre-release time of the objects before both slides to the > maximum possible value (i.e. same as duration of that object). In > other words: if the 13ms slide is displayed immediately after the > other slide, you must set the pre-release time of the first slide to > 496 (or 500 if you apply point 3 below). > > 2) Use bitmaps instead of JPEG and make sure the color depth is the > same as used in your exp. This might help because decoding jpeg files > takes a lot of CPU time (although the smaller jpeg files will load > faster from disk.) > > 3) use durations which end in the middle of two screen refreshes I.e, > if the display is using a refresh rate of 75Hz, you will set the fast > stimulus to 0.5*1000/75=7ms, and the longer stimulus to > 37.5*1000/75=500). Not sure if this is still required with the new EP2 > release, though... > > Depending on the hardware performance and screen resolution, this > still might be insufficient to get single frame stimuli. If this is > the case, you might want to prepare the stimuli using off-screen > canvases at the start of the sequence and copy to the display canvas > using a fast copy at the vertical blanking interval. This should > always work, unless the graphics card is crappy. > > best, > paul > > 2012/3/5 liwenna : > > > Hi all, > > > I have something and I hope someone may have experienced a similar > > thing that may help me out on this one. > > > I have an experiment in which a sequence of displays occurs with the > > two most important display having durations of 496 and 13 ms > > respectively (give or take max 2 ms). Back then, it took me quite some > > work but in the end I got the timing right (yay). > > > Now... I am trying to build a second, similar but less complex, task. > > This new is less complex since it shows only a single. rather than > > multiple, image at the 496 ms display, and has a far less complex list > > structure due to less different procedures. However: I can not get the > > timing right at all.. ?the display that follows the 13 ms display just > > keeps being delayed by one refresh (13 ms). > > > I have tried pretty much everything for hours and hours: > > - building the new task from scratch, imitating all (or at least I > > believe so?) settings from the old (correctly timed) task (and then > > tweaking all the settings too) > > - modifying the correctly timed task into the new task ?(and then > > tweaking all the settings) > > - using off-screen canvases rather than slides (but it seems that the > > 13ms 'canvas' is simply not shown in about 25% of the trials... which > > is not good enough either) > > > I believe I have covered pretty much everything that could be done > > about it, but I honestly fail to see why the old task would be timed > > correctly (still is!) and any attempt at the more simple task just > > fails in terms of timing. > > > I so very much hope that someone here is able to identify the one > > thing that I just keep overlooking? >.< > > > Best, > > > Anne-Wil > > > -- > > You received this message because you are subscribed to the Google Groups "E-Prime" group. > > To post to this group, send email to e-prime at googlegroups.com. > > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > > For more options, visit this group athttp://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Tue Mar 6 16:11:42 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 6 Mar 2012 11:11:42 -0500 Subject: Problems with saving configurations and translations In-Reply-To: <1330957654.43224.YahooMailNeo@web160606.mail.bf1.yahoo.com > Message-ID: Lis, As for the SRBox, did you try it with the test program that comes with the SRBox? As you know, always best to troubleshoot hardware with a known good program, than to start off testing it with a new program under development. Also, you should take this up with PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp (they strive to respond to all requests in 24-48 hours there). Good luck. --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/5/2012 09:27 AM Monday, you wrote: >Hi! >I am trying to translate scripts into other languages. I am not sure >what I should do to save the changes, though. I keep losing the >changes because I can't save them. I am translating from English >into Brazilian Portuguese. The tasks are the ANT (Attentional >Network Task) and the Task-Switching Paradigm. >Besides that, another problem refers to the SR-Box, which looks >perfectly installed, with its serial cable and so on, but every time >I try to run an experiment, I receive the messages ERROR: SERIAL and >ERROR: SR-BOX. They should be added to run experiments which require >them, and probably removed when they don't. From inside e-studio, >using the e-prime key, I add or remove them according to the >experiment, but when I decide to run one of them, the same messages >return, since my configurations are never really saved inside e-studio. >I guess I am doing something wrong but I just cannot figure out what >that might be. >I hope someone can help me with that. >Thanks a lot. >Lis -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From nief1313 at gmail.com Tue Mar 6 16:20:46 2012 From: nief1313 at gmail.com (bschwartz3) Date: Tue, 6 Mar 2012 08:20:46 -0800 Subject: How do I record the time a subject starts typing Message-ID: I am running an experiment which requires the subject to type in a one word answer. I am only able to record the response time for when they finish entering the answer (when they press enter). Is there a way to record the time they type the first letter, i.e. when they start typing the answer? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/Iv8s01Ghc4EJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From pfc.groot at gmail.com Tue Mar 6 19:55:59 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Tue, 6 Mar 2012 20:55:59 +0100 Subject: How do I record the time a subject starts typing In-Reply-To: <17089869.3293.1331050846704.JavaMail.geo-discussion-forums@yncd8> Message-ID: This PST sample might be of interest: Multiple Response Collection http://www.pstnet.com/support/samples.asp?Mode=View&SampleID=43 best, paul 2012/3/6 bschwartz3 : > I am running an experiment which requires the subject to type in a one word > answer. I am only able to record the response time for when they finish > entering the answer (when they press enter). Is there a way to record the > time they type the first letter, i.e. when they start typing the answer? > > -- > You received this message because you are subscribed to the Google Groups > "E-Prime" group. > To view this discussion on the web visit > https://groups.google.com/d/msg/e-prime/-/Iv8s01Ghc4EJ. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to > e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Tue Mar 6 20:34:46 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Tue, 6 Mar 2012 21:34:46 +0100 Subject: single refresh display duration - help? In-Reply-To: <0101cc7d-d79a-4f7e-8bd6-ca72fbfd1d73@db5g2000vbb.googlegroups.com> Message-ID: Well, since you already tried several configurations, this might be a non-trivial issue which is hard to track down without having the script itself... Did you also check the Timing Mode of the objects? You probably would like to set this to 'Event' (the default). THe sync options should also be kept to their default values (onset=vertical blank, offset=none). WHich EP version are you currently using? And did you also run the RefreshClockTest? (http://www.pstnet.com/support/kb.asp?TopicID=3003) PST also offers an alternative pre-load technique for slides which doesn't require the use of canvases: http://www.pstnet.com/support/samples.asp?Mode=View&SampleID=23 However, I would probably try to start from scratch and only use empty Text objects and set all pre-release times to the max. values. If this works, you can replace the text objects with (empty) slides. Then add input masks. Then add images. And so on... best, Paul 2012/3/6 liwenna : > Thanks Paul for that thorough reply!! > > Unfortunately I did all that (and more ;)) but to no avail. The > display that follows the 13ms display is actually empty, except for a > backgroud color (gray shade). I tried using wait objects and text > display's rather than a slide display, and also the offscreen > canvasses. With offscreen canvasses the problem lies no longer with > the 'empty display that overlays the 13 ms image' arriving too late, > the timing is the fine in about 75% of the trials, but I am pretty > certain that the 13ms display is skipped in about 25% of the trials. > > The graphics card might be crappy, I am also a bit suspicious > regarding the display that I was assigned for this project, > nonetheless, the 'old task' seems to be work well on it, while this > new taks also does not perform well on the pc & display that I used > for the old project (and do trust). > > It simply drives me crazy that the exact same set-up in terms of > settings that are known to matter for timing, works perfectly in one > set-up (with more images and a more difficult list structure, even > with an additional procedure that has a 27ms display added to the > sequence with the 13 and 496 display) and just doesn't work in the > simpler set-up. Something must somehow matter that I completely > overlook. > > I suppose I'll spent the second part of this afternoon on it again: > any additional advices are more than welcome :) > > best, > > liw > > On 5 mrt, 21:23, Paul Groot pfc.gr... at gmail.com> wrote: >> Hi Anne-Wil, >> >> You will get the best onset performance if you: >> >> 1) set the pre-release time of the objects before both slides to the >> maximum possible value (i.e. same as duration of that object). In >> other words: if the 13ms slide is displayed immediately after the >> other slide, you must set the pre-release time of the first slide to >> 496 (or 500 if you apply point 3 below). >> >> 2) Use bitmaps instead of JPEG and make sure the color depth is the >> same as used in your exp. This might help because decoding jpeg files >> takes a lot of CPU time (although the smaller jpeg files will load >> faster from disk.) >> >> 3) use durations which end in the middle of two screen refreshes I.e, >> if the display is using a refresh rate of 75Hz, you will set the fast >> stimulus to 0.5*1000/75=7ms, and the longer stimulus to >> 37.5*1000/75=500). Not sure if this is still required with the new EP2 >> release, though... >> >> Depending on the hardware performance and screen resolution, this >> still might be insufficient to get single frame stimuli. If this is >> the case, you might want to prepare the stimuli using off-screen >> canvases at the start of the sequence and copy to the display canvas >> using a fast copy at the vertical blanking interval. This should >> always work, unless the graphics card is crappy. >> >> best, >> paul >> >> 2012/3/5 liwenna : >> >> > Hi all, >> >> > I have something and I hope someone may have experienced a similar >> > thing that may help me out on this one. >> >> > I have an experiment in which a sequence of displays occurs with the >> > two most important display having durations of 496 and 13 ms >> > respectively (give or take max 2 ms). Back then, it took me quite some >> > work but in the end I got the timing right (yay). >> >> > Now... I am trying to build a second, similar but less complex, task. >> > This new is less complex since it shows only a single. rather than >> > multiple, image at the 496 ms display, and has a far less complex list >> > structure due to less different procedures. However: I can not get the >> > timing right at all.. ?the display that follows the 13 ms display just >> > keeps being delayed by one refresh (13 ms). >> >> > I have tried pretty much everything for hours and hours: >> > - building the new task from scratch, imitating all (or at least I >> > believe so?) settings from the old (correctly timed) task (and then >> > tweaking all the settings too) >> > - modifying the correctly timed task into the new task ?(and then >> > tweaking all the settings) >> > - using off-screen canvases rather than slides (but it seems that the >> > 13ms 'canvas' is simply not shown in about 25% of the trials... which >> > is not good enough either) >> >> > I believe I have covered pretty much everything that could be done >> > about it, but I honestly fail to see why the old task would be timed >> > correctly (still is!) and any attempt at the more simple task just >> > fails in terms of timing. >> >> > I so very much hope that someone here is able to identify the one >> > thing that I just keep overlooking? >.< >> >> > Best, >> >> > Anne-Wil >> >> > -- >> > You received this message because you are subscribed to the Google Groups "E-Prime" group. >> > To post to this group, send email to e-prime at googlegroups.com. >> > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. >> > For more options, visit this group athttp://groups.google.com/group/e-prime?hl=en. > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From rodneymullen18288 at gmail.com Wed Mar 7 16:45:50 2012 From: rodneymullen18288 at gmail.com (Massimiliano Elia) Date: Wed, 7 Mar 2012 08:45:50 -0800 Subject: rapid serial visual presentation and sound, how to Message-ID: Hello, everyone. I'm using E-Prime for the first time, and i'm learning what's necessary for an experiment i'm supposed to design. In short, this is what I have to do: present a sound (which lasts 500 ms) and a series of pictures (15, to be precise) in the arc of 1500 ms. What at the moment I'm trying to understand, is how to put both sound and the 15 pictures (one followed by the other) attached in one slide. I've tried it with one picture and it seemed to work. I think a way to work around this problem is to create a video file which lasts the exact amount of ms i need with the 15 pictures followed by each other. I guess it's possible, although it doesn't feel elegant and I hope there's an easier way to do this using the E-Studio tools. Can anyone help me with this? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/E4PVJUKS30IJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From hengli_2012 at depauw.edu Thu Mar 8 04:43:07 2012 From: hengli_2012 at depauw.edu (Heng Li) Date: Wed, 7 Mar 2012 20:43:07 -0800 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends Message-ID: 1. I read the tutorial but didn't find the solution to dividing trials into miniblocks.I have 66 trials in total and I want to randomly assign them into three blocks each with 22 trials. 2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I need randomly insert an SOA (which is accompanied by a blank screen) between the prime and target stimuli.How can I do that within 3 miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide the SOAs among all trials but not in each miniblock. 3. My priming stimulus is a sound and my target stimulus is a picture.For the SOA inserting btw the prime and target,I want it to start immediately after the sound ends.Since the sound stimuli are of different durations,how can I tell E-Prime to detect the end of each priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Thu Mar 8 10:04:17 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Thu, 8 Mar 2012 12:04:17 +0200 Subject: rapid serial visual presentation and sound, how to In-Reply-To: <15748152.5861.1331138750761.JavaMail.geo-discussion-forums@vbas10> Message-ID: Hi, First off, you have one sound, which is presented along with the first slide. Slide one thus lasts 100 ms, the sound 500 ms (turn StopAfter or such off). Once you get this to work - i.e., the sound lasting 500 ms and the slide only 100 ms (just put a textdisplay after it, check whether this appears while the sound still plays), the rest should be easy. Easy in one of two ways: 1. Make an extra list within the present trial procedure, placed after the sound and first picture. The list will have 14 levels, and you can use colon syntax to reference attributes from a list higher up. 2. And it may feel annoyingly like "a lot of work" or inelegant, but I believe one of the best ways is to add 14 imagedisplays (or slides) directly after the first (without sound) and have these reference attributes in the triallist. That is, let's say slide1 has, in filename, [ShowThisAtPosition1]. The TrialList, from which these are taken, has 15 attributes, including "ShowThisAtPosition1". Cleverly, the TrialList has a nested, different list with a single attribute, "PicturesToShow" with all the pictures you ever want to show (say, a hundred), randomised every trial. Now, in the TrialList, in column "ShowThisAtPosition1", you simply say "PicturesToShow:1", at position2 "PicturesToShow:2" and so on. This makes it incredibly easy to also add targets to what I bet you want to make a RSVP/AB paradigm. Best, Michiel From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Massimiliano Elia Sent: 07 March 2012 18:46 To: e-prime at googlegroups.com Subject: rapid serial visual presentation and sound, how to Hello, everyone. I'm using E-Prime for the first time, and i'm learning what's necessary for an experiment i'm supposed to design. In short, this is what I have to do: present a sound (which lasts 500 ms) and a series of pictures (15, to be precise) in the arc of 1500 ms. What at the moment I'm trying to understand, is how to put both sound and the 15 pictures (one followed by the other) attached in one slide. I've tried it with one picture and it seemed to work. I think a way to work around this problem is to create a video file which lasts the exact amount of ms i need with the 15 pictures followed by each other. I guess it's possible, although it doesn't feel elegant and I hope there's an easier way to do this using the E-Studio tools. Can anyone help me with this? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/E4PVJUKS30IJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From pquain at une.edu.au Fri Mar 9 11:04:00 2012 From: pquain at une.edu.au (Peter Quain) Date: Fri, 9 Mar 2012 22:04:00 +1100 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: Message-ID: how is it possible to have a SOA of 0ms? ... maybe an ISI? At 03:43 PM 8/03/2012, you wrote: >1. I read the tutorial but didn't find the solution to dividing trials >into miniblocks.I have 66 trials in total and I want to randomly >assign them into three blocks each with 22 trials. >2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >need randomly insert an SOA (which is accompanied by a blank screen) >between the prime and target stimuli.How can I do that within 3 >miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >the SOAs among all trials but not in each miniblock. >3. My priming stimulus is a sound and my target stimulus is a >picture.For the SOA inserting btw the prime and target,I want it to >start immediately after the sound ends.Since the sound stimuli are of >different durations,how can I tell E-Prime to detect the end of each >priming sound?Thanks a lot! > >-- >You received this message because you are subscribed to the Google >Groups "E-Prime" group. >To post to this group, send email to e-prime at googlegroups.com. >To unsubscribe from this group, send email to >e-prime+unsubscribe at googlegroups.com. >For more options, visit this group at >http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Fri Mar 9 11:22:41 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Fri, 9 Mar 2012 13:22:41 +0200 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: <201203091104.q29B44Lu004537@mail14.tpg.com.au> Message-ID: Hi, It depends - I've also heard people making the mistake to call ISI SOA (and vice versa), but it is, of course, quite possible to have two stimuli overlapping. Like, in the present case, sound and visuals - a SOA of 0 then just means they start simultaneously. Best, Michiel -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Peter Quain Sent: 09 March 2012 13:04 To: e-prime at googlegroups.com Subject: Re: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends how is it possible to have a SOA of 0ms? ... maybe an ISI? At 03:43 PM 8/03/2012, you wrote: >1. I read the tutorial but didn't find the solution to dividing trials >into miniblocks.I have 66 trials in total and I want to randomly >assign them into three blocks each with 22 trials. >2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >need randomly insert an SOA (which is accompanied by a blank screen) >between the prime and target stimuli.How can I do that within 3 >miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >the SOAs among all trials but not in each miniblock. >3. My priming stimulus is a sound and my target stimulus is a >picture.For the SOA inserting btw the prime and target,I want it to >start immediately after the sound ends.Since the sound stimuli are of >different durations,how can I tell E-Prime to detect the end of each >priming sound?Thanks a lot! > >-- >You received this message because you are subscribed to the Google >Groups "E-Prime" group. >To post to this group, send email to e-prime at googlegroups.com. >To unsubscribe from this group, send email to >e-prime+unsubscribe at googlegroups.com. >For more options, visit this group at >http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mspape at cognitology.eu Fri Mar 9 10:51:54 2012 From: mspape at cognitology.eu (Michiel Sovijarvi-Spape) Date: Fri, 9 Mar 2012 12:51:54 +0200 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: Message-ID: Hi, 1. Which tutorial? From your questions, it seems to me a clear necessity that one should not READ the tutorial, but go through it, completely. Much like learning any language, "just" reading a dictionary and the rules of grammar do not grant you proficiency; it takes time and work to get a feel for how to use these tools. If you like, you might want to continue your learning by also doing the absolutely free tutorial thing somewhere on my website (www.cognitology.eu) or other websites you can find by searching for "an e-primer". Speaking of grammar: I find it difficult to understand what you are saying - I do not wish to sound nagging, and I understand not everyone is fluent, but your message does not come across as clear as you presumably hoped it would. 2. So, you want to divide one condition (SOA) with 3 levels, without replacement, unevenly across 3 blocks. Tutorials probably don't mention "mini-blocks" because it doesn't seem to be a term as such. You can, however, easily do what you want: Step 1: create a trial list with 22 trials (levels, if you like to keep it very transparent). Add your trial-procedure here. No attributes necessary, but, importantly, you add a nested list (by typing in a name under the Nested List column). Step 2: inside the nested list, add an attribute SOA. Add 66 trials. For the first 22 SOAs, add 0, the second 22, 120, and so on. Turn on randomisation. Step 3: within your trial procedure, add the slide or whatever with which you make the SOA. In duration, enter [SOA]. Done, now, the 3 values of SOA are randomly (independently) scattered over 3 blocks. 3. E-Prime does not have a method for detecting the end of sound. It would be best for you to figure out, using some software (like cooledit) to find out exactly, and I mean, exactly at 44100 Hz precision, when audio files end. Even if E-Prime would come with such capabilities, you'd probably not want to trust it. Anyway, I'd suggest naming files with the duration ("PRIMESOUND100MS.WAV" for instance). Once you'll already know the length of the sound (the length of the sound is different from the length of the soundFILE), having somebody following directly after it shouldn't be difficult. Best, Michiel -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Heng Li Sent: 08 March 2012 06:43 To: E-Prime Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends 1. I read the tutorial but didn't find the solution to dividing trials into miniblocks.I have 66 trials in total and I want to randomly assign them into three blocks each with 22 trials. 2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I need randomly insert an SOA (which is accompanied by a blank screen) between the prime and target stimuli.How can I do that within 3 miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide the SOAs among all trials but not in each miniblock. 3. My priming stimulus is a sound and my target stimulus is a picture.For the SOA inserting btw the prime and target,I want it to start immediately after the sound ends.Since the sound stimuli are of different durations,how can I tell E-Prime to detect the end of each priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From yelda.semizer at gmail.com Fri Mar 9 14:33:27 2012 From: yelda.semizer at gmail.com (Yelda) Date: Fri, 9 Mar 2012 06:33:27 -0800 Subject: incremental adjustments of responses using key presses or mouse Message-ID: Dear group, I know that this question was asked earlier (link is below) but I couldn't manage to make the code work that was written by a responder for a different program. My task is as following: I want the participants to do resize a randomly sized circle (I'll use "cnvs" function to draw the circle) and then record the radius or diameter of the final size of the circle. I can do this by either of the two ways below: Mouse response: click on the circle and 'drag it' bigger or smaller Key response: make the circle incrementally bigger or smaller (preferably a pixel at a time) by pressing up and down keys I would appreciate any help. Many thanks http://groups.google.com/group/e-prime/browse_thread/thread/6e4c9ff8a36a3965/f61bd369d47a80f2 Yelda Semizer Bogazici University, Istanbul, Turkey -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From rachel.ostrand at gmail.com Sun Mar 11 22:34:29 2012 From: rachel.ostrand at gmail.com (Rachel) Date: Sun, 11 Mar 2012 15:34:29 -0700 Subject: List counterbalancing by sujbect Message-ID: Hi All, I have an extremely simple question that I know must be possible to do, but I simply cannot get it to work. I've read a jillion old forum posts, but it seems like everyone is asking a much more complicated question than I have, and so I can't find just a basic template to work off of. I have 8 subject groups, each with its own list of video stimuli. I want each subject to see all of the video stimuli from exactly one of these lists. I created a master list (GroupList) with 8 nested levels (Group1, Group2, ..., Group8) and in the master list, I set Selection to Counterbalance by Subject. However, instead of playing every video in the appropriate Group# list, it plays exactly 1 video and then exits. What is going on? How do I make it play every single trial in that one group list, and cycle through and choose a different group list for each new subject? For example, Subject1 should see all 118 videos in the Group1 list (in a random order); Subject2 should see all 118 videos in the Group2 list; Subject3 should see all 118 videos in the Group3 list, and so on through all 8 Group# lists. This is really time-critical, especially since this seems to be exactly what the Counterbalance option should do, so as prompt a response as possible would be really appreciated. Thanks, Rachel -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From d.vinson at ucl.ac.uk Mon Mar 12 10:12:39 2012 From: d.vinson at ucl.ac.uk (David Vinson) Date: Mon, 12 Mar 2012 10:12:39 +0000 Subject: List counterbalancing by sujbect In-Reply-To: Message-ID: Hi Rachel, I approached this problem a different way, not using nested lists. The MasterList contains 8 lines, each running a different procedure (one for each of the 8 subject groups), e.g. RunProc1 RunProc2 RunProc3 ... (and in its simplest form no other information is specified in the MasterList) Each of these RunProc* procedures just contains a single List (akin to your Group1List, Group2List, Group3List...) all of which contain the full list of items for that Group, and call the same experimental trial procedure. These are set to exit after all samples in the list (the number of items). The master list is set to Exit after 1 sample, and Offset - because only one entry per subject is selected, there's no need to worry about what order the master list is sampled in (you control this by your assignment of subject number). this way each subjects sees only one entry in the Master list, and all items in their respective Group list. hope this helps! -david On 11/03/2012 22:34, Rachel wrote: > Hi All, > > I have an extremely simple question that I know must be possible to > do, but I simply cannot get it to work. I've read a jillion old forum > posts, but it seems like everyone is asking a much more complicated > question than I have, and so I can't find just a basic template to > work off of. > > I have 8 subject groups, each with its own list of video stimuli. I > want each subject to see all of the video stimuli from exactly one of > these lists. I created a master list (GroupList) with 8 nested levels > (Group1, Group2, ..., Group8) and in the master list, I set Selection > to Counterbalance by Subject. However, instead of playing every video > in the appropriate Group# list, it plays exactly 1 video and then > exits. What is going on? How do I make it play every single trial in > that one group list, and cycle through and choose a different group > list for each new subject? > > For example, Subject1 should see all 118 videos in the Group1 list (in > a random order); Subject2 should see all 118 videos in the Group2 > list; Subject3 should see all 118 videos in the Group3 list, and so on > through all 8 Group# lists. > > This is really time-critical, especially since this seems to be > exactly what the Counterbalance option should do, so as prompt a > response as possible would be really appreciated. > > Thanks, > Rachel > -- David Vinson, Ph.D. Senior Postdoctoral Researcher Cognitive, Perceptual and Brain Sciences Research Department University College London 26 Bedford Way, London WC1H 0AP Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Mon Mar 12 19:57:02 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 12 Mar 2012 15:57:02 -0400 Subject: List counterbalancing by sujbect In-Reply-To: <4F5DCC17.6070108@ucl.ac.uk> Message-ID: Rachel, First, as you have found, it is not simple to do what you want here in E-Prime. If anybody knows of another platform that handles this better, then please let us know! Second, the Counterbalance option in EP is misnamed. If you searched the EP Google Group for "counterbalance" then you may come upon the following thread where this gets explained: http://groups.google.com/group/e-prime/browse_thread/thread/26d2e1e83c6a09bb . Now, if you want to run several different samples from a stimulus or trial List, you cannot just put that as a nested List in your main BlockList, because that will pick just one row from the nested List and pass just that down to the trials at the next level. David Vinson shows one perfectly good way to handle this by setting BlockList to Counterbalance and using separate BlockProcs, each using a different TrialList to run the same TrialProc, e.g., Experiment Object SessionProc BlockList BlockProc1 TrialList1 TrialProc BlockProc2 TrialList2 TrialProc BlockProc3 ... As an experienced and dedicated programmer (as opposed to an ordinary researcher), I dislike making several Procedures that all do the same thing only with different content, I prefer to have a single Procedure and then pass it changing content as needed. So here is how I would do that using nested Lists. My structure would look more like this: Experiment Object SessionProc BlockList BlockProc TrialList (?) [StimList] TrialProc Unreferenced E-Objects StimList1 StimList2 ... Each StimList (under Unreferenced E-Objects) holds the list of stimuli for one counterbalanced block. In BlockList I add one attribute named "StimList", and for each block I enter the name of the StimList for that block, i.e., "StimList1", "StimList2", etc. TrialList has just one row, and in Nested I put "[StimList]". Then I either set Weight to the number of trials (e.g., 8), or set the list to Exit after the proper number of samples (e.g., 8). With that done, TrialList will take samples from the StimList named by [StimList] and use those for the trials run by TrialProc. Follow? This technique has also been discussed somewhat before at http://groups.google.com/group/e-prime/browse_thread/thread/9519542730f4b242 . OK, so maybe that is no simpler than what David Vinson showed, but it does show that there is more than one way to skin this cat, and you may find it a suitable strategy for some cases. --- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/12/2012 06:12 AM Monday, David Vinson wrote: >Hi Rachel, > >I approached this problem a different way, not using nested lists. > >The MasterList contains 8 lines, each running a different procedure >(one for each of the 8 subject groups), e.g. >RunProc1 >RunProc2 >RunProc3 >... > >(and in its simplest form no other information is specified in the MasterList) > >Each of these RunProc* procedures just contains a single List (akin >to your Group1List, Group2List, Group3List...) all of which contain >the full list of items for that Group, and call the same >experimental trial procedure. These are set to exit after all >samples in the list (the number of items). > >The master list is set to Exit after 1 sample, and Offset - because >only one entry per subject is selected, there's no need to worry >about what order the master list is sampled in (you control this by >your assignment of subject number). > >this way each subjects sees only one entry in the Master list, and >all items in their respective Group list. > >hope this helps! >-david > > > >On 11/03/2012 22:34, Rachel wrote: >>Hi All, >> >>I have an extremely simple question that I know must be possible to >>do, but I simply cannot get it to work. I've read a jillion old forum >>posts, but it seems like everyone is asking a much more complicated >>question than I have, and so I can't find just a basic template to >>work off of. >> >>I have 8 subject groups, each with its own list of video stimuli. I >>want each subject to see all of the video stimuli from exactly one of >>these lists. I created a master list (GroupList) with 8 nested levels >>(Group1, Group2, ..., Group8) and in the master list, I set Selection >>to Counterbalance by Subject. However, instead of playing every video >>in the appropriate Group# list, it plays exactly 1 video and then >>exits. What is going on? How do I make it play every single trial in >>that one group list, and cycle through and choose a different group >>list for each new subject? >> >>For example, Subject1 should see all 118 videos in the Group1 list (in >>a random order); Subject2 should see all 118 videos in the Group2 >>list; Subject3 should see all 118 videos in the Group3 list, and so on >>through all 8 Group# lists. >> >>This is really time-critical, especially since this seems to be >>exactly what the Counterbalance option should do, so as prompt a >>response as possible would be really appreciated. >> >>Thanks, >>Rachel > >-- >David Vinson, Ph.D. >Senior Postdoctoral Researcher >Cognitive, Perceptual and Brain Sciences Research Department >University College London >26 Bedford Way, London WC1H 0AP >Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) > > >-- >You received this message because you are subscribed to the Google >Groups "E-Prime" group. >To post to this group, send email to e-prime at googlegroups.com. >To unsubscribe from this group, send email to >e-prime+unsubscribe at googlegroups.com. >For more options, visit this group at >http://groups.google.com/group/e-prime?hl=en. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From haleilgaz at gmail.com Mon Mar 12 22:01:33 2012 From: haleilgaz at gmail.com (hale) Date: Mon, 12 Mar 2012 15:01:33 -0700 Subject: Multiple text box and clicking problem in same screen Message-ID: Hi, I had a problem about developing experiment. I checked out topics but i couldn't find any solution about my problem. In my experiment there are 7 different text boxes in the same screen and user will enter into each box characters like "a" or "1". When i run the experiment; i want to click a text box and enter a character after that i have to click the second box and again enter another character then third, fourth... I added keyboard device, echo and display there aren't any problems here but when i put text boxes in same screen i couldn't enter characters second, third or the others. I will be very pleased if anyone help me. Thanks a lot. Hale -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Tue Mar 13 10:57:27 2012 From: liwenna at gmail.com (liwenna) Date: Tue, 13 Mar 2012 03:57:27 -0700 Subject: List counterbalancing by sujbect In-Reply-To: Message-ID: And I'll propose just another method: For this to work the group number should be available in an attribute called group. I assume that you now use the startup info parameter 'group' to assign group. Is that correct? In that case the following should work: Remove seven of the eight levels of the masterlist (Grouplist). When you do that, the group#lists from the removed levels are placed into the 'unreferenced objects' section of the experiment tree. Although this (to me at least) feels like a 'trashbin', it can also function as a 'storage place' and this is the way you'd want to use it now, so don't remove the lists from the 'unreferenced objects' section. Alternatively you could not even remove the last seven levels and simply set the list to exit after the first level (in sequential mode) but I feel that that is a bit more deceiving even than removing but still using certain lists. Now at the beginning of your experiment procedure place an inline with the following code: **** dim n as integer for n = 1 to 8 if c.getattrib ("group") = n then grouplist.SetAttrib 1, "nested", "group"& n &"list" next n **** What it does: a loop is run for eight times. On each run it checks each value of 1-8 to see whether the group variable (= group number) is 1, 2, 3 etc. If the value of group is the same as the value of n within that specific loop, it replaces the nested list at the first (and only) level of grouplist with the list called 'groupxlist' wherein x is the value of n and therefore the value of the current participants group. Now each participant group's videos (stored in the newly nested groupnlist) should be used. Best, liw On Sunday, 11 March 2012 23:34:29 UTC+1, Rachel wrote: > > Hi All, > > I have an extremely simple question that I know must be possible to > do, but I simply cannot get it to work. I've read a jillion old forum > posts, but it seems like everyone is asking a much more complicated > question than I have, and so I can't find just a basic template to > work off of. > > I have 8 subject groups, each with its own list of video stimuli. I > want each subject to see all of the video stimuli from exactly one of > these lists. I created a master list (GroupList) with 8 nested levels > (Group1, Group2, ..., Group8) and in the master list, I set Selection > to Counterbalance by Subject. However, instead of playing every video > in the appropriate Group# list, it plays exactly 1 video and then > exits. What is going on? How do I make it play every single trial in > that one group list, and cycle through and choose a different group > list for each new subject? > > For example, Subject1 should see all 118 videos in the Group1 list (in > a random order); Subject2 should see all 118 videos in the Group2 > list; Subject3 should see all 118 videos in the Group3 list, and so on > through all 8 Group# lists. > > This is really time-critical, especially since this seems to be > exactly what the Counterbalance option should do, so as prompt a > response as possible would be really appreciated. > > Thanks, > Rachel -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/EpYXOb8jLp4J. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Tue Mar 13 20:09:07 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 13 Mar 2012 16:09:07 -0400 Subject: Mastering E-Prime: Speeding computations with Suspend/Resume Message-ID: WARNING: The following describes advanced techniques. DO NOT USE these techniques unless you fancy yourself a dedicated hacker. Over at http://support.pstnet.com/forum/Topic5636-23-1.aspx there was a discussion of computational speed in E-Prime programs. As discussed in that thread, by default, between each line of E-Basic code EP performs internal operations such as device handling. This strategy accounts for E-Prime's success in handling subject inputs with millisecond precision, but it also significantly slows computations during intervals that do not require high-precision input. For most of our projects this presents no problem, but this behavior does interfere with other projects (e.g., random movement of 500 dots). As it turns out, EP includes facilities to improve computational speed during intervals when a task does not take input, namely Rte.DeviceManager.Suspend/Resume and Device.Suspend/Resume. You may consult those topics in the E-Basic Help facility, and download a crude example program that I posted to the thread linked above. For example, on one run of my test platform, 20,000 empty loops took 5420 ms (271 ?s/loop) normally, but only 996 ms (50 ?s/loop) after Rte.DeviceManager.Suspend. In sum, here are my cursory results from only one test platform: - Rte.DeviceManager.Suspend - Speeds loop execution by a factor of roughly 5-10. - Makes the Display go blank. - No longer handles GetUserBreakState (simply ignored). - No longer handles the user abort sequence (user abort may actually crash the run). - Suspending *all* Devices using each one's .Suspend method - Speeds loop execution by a factor of roughly 10-15. - Makes the Display go blank (as a result of Display.Suspend). - Still handles GetUserBreakState. - Still handles the user abort sequence. - Suspending all Devices *except* Display, using each one's .Suspend method - Speeds loop execution by a factor of roughly 5. - Still shows the Display. - Still handles GetUserBreakState. - Still handles the user abort sequence. Note that this behavior is the *inverse* of ordinary programming platforms. Other platforms perform computations at maximum rate by default, but during intervals of user input programmers must take extra measures to handle that input with high temporal precision. By contrast, E-Prime handles input with millisecond performance by default, but then during intervals that require rapid computations without user input programmers must take extra measures to suspend and then resume EP's regular input monitoring operations. For many behavioral research projects, this is the best tradeoff. As always, no single platform is best for every project, and we should pick the tools best suited to the project at hand. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From rachel.ostrand at gmail.com Wed Mar 14 02:10:23 2012 From: rachel.ostrand at gmail.com (Rachel) Date: Tue, 13 Mar 2012 19:10:23 -0700 Subject: List counterbalancing by sujbect In-Reply-To: <19864325.784.1331636247354.JavaMail.geo-discussion-forums@ynv11> Message-ID: Hi everyone, Thanks so much for your suggestions. I went with David Vinson's idea of creating a separate procedure for each GroupList, and it worked perfectly. Admittedly, this solution is somewhat undesirable for two reasons: first, if I had 100 different conditions, instead of just 8, not only would I have to make up 100 different counterbalancing lists but also 100 different procedures to nest these lists in. Second, as the other David pointed out, it's rather inelegant of a solution to have redundancy in the code. However, it doesn't require building a new TrialProc for each list, which is the major procedure that you want to keep the same across all versions, so if something gets changed, it gets changed in all versions. Given then that neither of these hurdles was too major, it was a great suggestion, worked for my purposes, and thanks again for all of your responses. -Rachel -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From catarina.melo.azevedo at gmail.com Wed Mar 14 10:06:10 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Wed, 14 Mar 2012 03:06:10 -0700 Subject: Random lists and orders, but with correspondence block1/block2 Message-ID: Hi all! I know how to work with E-prime in general but I never did scripts with it. I have 3 questions and I hope you can help me on this. I have a final list of 80 English and 80 Dutch words. I want each participant to see 40 English and 40 Dutch words. All the Dutch words are translations of the English words and these different languages of the words are separated in two different blocks.The most important is that the words appearing in the second block of presentation must be the translations of the words in the first block (if they see "happy"in the first they must see "blij"in the second). This is the general idea. My questions are: 1- From the 80 Eng and the 80 Dutch words lists I want to take randomly 40 words (of each) for each participant. The idea is that instead of having 2 or more equivalent lists and counterbalanced them for subject, I want each participant to see different combinations of words, randomly assigned, in a different order of presentation. For that is important to guarantee a) that all words will be seen by the same number of participants and b) the words in the second block are the translations of the ones of the first block. 2- From that 40 English (and Dutch) words they will be seen, I want to specify that they will always see 10 of category A, 10 of category B, 10 of category C and 10 of category D. 3- If possible I do not want them to see more than 3 words of the same category one after the other. Thank you so much for your help Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From yelda.semizer at gmail.com Thu Mar 15 18:07:49 2012 From: yelda.semizer at gmail.com (Yelda Semizer) Date: Thu, 15 Mar 2012 20:07:49 +0200 Subject: adjusting the size of the stimulus Message-ID: Dear group, I posted a question three days ago, but didn't get a reply. I'm so sorry for bombarding your inbox with my questions but I'm hoping that maybe someone who missed it last time may help me. My task is as following: I want the participants to do resize a randomly sized circle (I'll use "cnvs" function to draw the circle) and then record the radius or diameter of the final size of the circle. I can do this by either of the two ways below: (currently my code draws a circle and makes incrementally bigger without requiring any response). Mouse response: click on the circle and 'drag it' bigger or smaller Key response: make the circle incrementally bigger or smaller (preferably a pixel at a time) by pressing up and down keys I would appreciate any help. Many thanks -- yelda -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Thu Mar 15 18:45:52 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 14:45:52 -0400 Subject: adjusting the size of the stimulus In-Reply-To: Message-ID: Yelda, Since you pressed the issue... Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take, and I will try to do this without getting too snarky (now that we are marketing our own online E-Prime training course, it seems that I have to adopt a more "professional" persona, over which I am struggling)... Both this and your earlier post do not contain a single question mark ("?"), let alone pose any clear question -- they both present merely a partial set of specifications, so it is hard for me at least to know what question you mean to ask. Do you want someone to jump in and just write the whole experiment program for you? Do you want a fully working demo program of how to resize circles, for incorporation in your program? Do you want merely to know how to get mouse coordinate inputs for use in your routine? Do you have a specific "how-to" question about some small programming detail? I find that this Group works best in addressing minute details of specific programming problems, not in designing entire experiment programs based on partial specifications. Then again, from time to time some kind and talented souls here do step in to provide complete programs, so you may get lucky. And again, PST Web Support has been known to design entire custom experiment programs at no charge, so you might try them. Good luck, ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/15/2012 02:07 PM Thursday, you wrote: >Dear group, > >I posted a question three days ago, but didn't get a reply. I'm so >sorry for bombarding your inbox with my questions but I'm hoping >that maybe someone who missed it last time may help me. > >My task is as following: I want the participants to do resize a >randomly sized circle (I'll use "cnvs" function to draw the circle) >and then record the radius or diameter of the final size of the >circle. I can do this by either of the two ways below: (currently my >code draws a circle and makes incrementally bigger without requiring >any response). > >Mouse response: click on the circle and 'drag it' bigger or smaller > >Key response: make the circle incrementally bigger or smaller >(preferably a pixel >at a time) by pressing up and down keys > >I would appreciate any help. >Many thanks > >-- >yelda -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiffanieong at gmail.com Thu Mar 15 19:23:20 2012 From: tiffanieong at gmail.com (Tiffanie) Date: Thu, 15 Mar 2012 12:23:20 -0700 Subject: Trial number from randomseed Message-ID: Dear all, I am quite new to E-prime and I've just realised that the programme that I have been using to collect data for the past two weeks hasn't been logging the data correctly! Basically, participants are presented with a series of attributes describing four hypothetical apartments (these attributes are presented for a fixed time of 4seconds). At the end of it, participants are asked to decide which apartment they would like to live in. I am interested in how the order of presentation of attributes affects this final judgement and there were some obvious issues with have a fixed order across all participants so we decided to randomise it. However, we decided on this with the impression that E-prime would log the data of the order in which the attributes appeared (at random). On the list with all the attributes, under Logging, I checked the attributes property name. I guess I made a huge mistake when I was testing the programme because I pressed spacebar to move on to the next attribute, and when I looked at the data, the attributes order was indeed recorded. I didn't double check if the same would happen if no response was made at all, which was the case for all participants since they were asked to just read each attribute and the next one would appear automatically. I guess another reason why I didn't realise this mistake earlier was because I did get a E-DataAid file after each participant - however, there was just one line with the subject, session... and random seed. I know this is very far fetched, but I'm wondering if there is any chance at all that I could somehow retrieve any form of information about the order of trials from the randomseed number? Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 19:40:12 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 15:40:12 -0400 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <54b72108-dad1-4986-ab67-b82ebb91ea4c@fk28g2000vbb.googlegr oups.com> Message-ID: Catarina, Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... Quick response, addressing merely the "Study-Recall" aspect of this design -- take a look at the StudyRecall.es example downloadable from the PST web site. That should give you ideas. And just a general overal pointer on Lists & nested Lists in E-Prime: As I describe in my online E-Prime course (and in other threads both here and at the PST Forum), I have found it helpful to think of them all these Lists as separate decks of playing cards. Good luck. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/14/2012 06:06 AM Wednesday, you wrote: >Hi all! > >I know how to work with E-prime in general but I never did scripts >with it. I have 3 questions and I hope you can help me on this. > >I have a final list of 80 English and 80 Dutch words. I want each >participant to see 40 English and 40 Dutch words. All the Dutch words >are translations of the English words and these different languages of >the words are separated in two different blocks.The most important is >that the words appearing in the second block of presentation must be >the translations of the words in the first block (if they see >"happy"in the first they must see "blij"in the second). > >This is the general idea. My questions are: > >1- From the 80 Eng and the 80 Dutch words lists I want to take >randomly 40 words (of each) for each participant. The idea is that >instead of having 2 or more equivalent lists and counterbalanced them >for subject, I want each participant to see different combinations of >words, randomly assigned, in a different order of presentation. For >that is important to guarantee a) that all words will be seen by the >same number of participants and b) the words in the second block are >the translations of the ones of the first block. > >2- From that 40 English (and Dutch) words they will be seen, I want to >specify that they will always see 10 of category A, 10 of category B, >10 of category C and 10 of category D. > >3- If possible I do not want them to see more than 3 words of the same >category one after the other. > > >Thank you so much for your help > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 20:50:20 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 16:50:20 -0400 Subject: Trial number from randomseed In-Reply-To: <9864c1e8-ef85-4054-8e96-3f8661c30260@s7g2000yqm.googlegrou ps.com> Message-ID: Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... Good cautionary tale. That's why my lesson on "Data Handling In Depth" stresses to "Analyze early & often!" So reading through your plea, I understand that your program did not merely fail to log the trial/stimulus order (which would have been odd, because by default EP *always* logs *every* List attribute used *in presentation order*, whether you want it or not), but failed to log any data *at all*. Is that right? And I am (figuratively) scratching my balding head trying to figure out how you managed to get things logged when giving a response, but not for non-responses. That is really weird. EP by default logs all information at the end of each Procedure, response or not, so I cannot imagine how you got rows of data for responses, but not for non-responses. As far as I can figure, you would have to go *way* out of your way to turn off the automatic Procedure logging and replace it with your own inline code, which would be bad unless you *really* knew what you were doing. So I must be overlooking something obvious. But no matter. Finally, you said that, "On the list with all the attributes, under Logging," you "checked the attributes property name". Hmm. By default, those Logging attributes already have check marks; if you went in and manually "checked" them, then you really unchecked them, and that turned off their logging. But that would mean that they would fail to log for both non-responses *and* responses, which does not square with your account. So I am stumped on how you got to this state. Anyway, that was not your question at all. As I take it, you merely want a mechanism to use the recorded RandomSeed to regenerate the presentation order. Well, the short answer is, if you look around the E-Prime Knowledge Base on the PST web site, you will find instructions on how to enter a RandomSeed value and have EP run with that. As I recall, it comes down to adding RandomSeed as a StartupInfo parameter (I cover StartupInfo parameters in my course). For details, consult the EP KB, or PST Web Support. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/15/2012 03:23 PM Thursday, you wrote: >Dear all, > >I am quite new to E-prime and I've just realised that the programme >that I have been using to collect data for the past two weeks hasn't >been logging the data correctly! > >Basically, participants are presented with a series of attributes >describing four hypothetical apartments (these attributes are >presented for a fixed time of 4seconds). At the end of it, >participants are asked to decide which apartment they would like to >live in. >I am interested in how the order of presentation of attributes affects >this final judgement and there were some obvious issues with have a >fixed order across all participants so we decided to randomise it. >However, we decided on this with the impression that E-prime would log >the data of the order in which the attributes appeared (at random). On >the list with all the attributes, under Logging, I checked the >attributes property name. I guess I made a huge mistake when I was >testing the programme because I pressed spacebar to move on to the >next attribute, and when I looked at the data, the attributes order >was indeed recorded. I didn't double check if the same would happen if >no response was made at all, which was the case for all participants >since they were asked to just read each attribute and the next one >would appear automatically. > >I guess another reason why I didn't realise this mistake earlier was >because I did get a E-DataAid file after each participant - however, >there was just one line with the subject, session... and random seed. >I know this is very far fetched, but I'm wondering if there is any >chance at all that I could somehow retrieve any form of information >about the order of trials from the randomseed number? > > >Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 21:56:29 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 17:56:29 -0400 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: <000501ccfde2$a422c4c0$ec684e40$@eu> Message-ID: Sorry if I'm a bit late to this party, bur for the record... Michiel already covered answers for #1 & #2, which comes down to using nested Lists -- for more on this do the nested Lists tutorial in Appendix C of the User's Guide that came with E-Prime, and work through Michiel's free E-Primer (available at the STEP web site, step.psy.cmu.edu ); and if that is not enough and you have some money & time to spend, I cover the basics of how to do this sort of thing in the "Task Design Structure" lesson of my online course. If for #3 you mean ISI instead of SOA, EP can do that very easily too. For your SoundOut object, set End Sound Action to Terminate, and Duration to some suitably large value (e.g., (infinite)). Now the SoundOut object will automatically end right at the end of the sound file. (This, too, is covered in my online course; and remember that the Duration of the object that plays a sound is *not* the same as the duration of the sound file being played). Following your SoundOut, add any appropriate object to take up the ISI (e.g., TextDisplay, or even a Wait in this case), use an attribute reference for its ISI, and then follow that with your next stimulus, i.e., your ImageDisplay. Voil? ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/9/2012 06:51 AM Friday, Michiel Sovijarvi-Spape wrote: >Hi, >1. Which tutorial? From your questions, it seems to me a clear necessity >that one should not READ the tutorial, but go through it, completely. Much >like learning any language, "just" reading a dictionary and the rules of >grammar do not grant you proficiency; it takes time and work to get a feel >for how to use these tools. If you like, you might want to continue your >learning by also doing the absolutely free tutorial thing somewhere on my >website (www.cognitology.eu) or other websites you can find by searching for >"an e-primer". Speaking of grammar: I find it difficult to understand what >you are saying - I do not wish to sound nagging, and I understand not >everyone is fluent, but your message does not come across as clear as you >presumably hoped it would. >2. So, you want to divide one condition (SOA) with 3 levels, without >replacement, unevenly across 3 blocks. Tutorials probably don't mention >"mini-blocks" because it doesn't seem to be a term as such. You can, >however, easily do what you want: > >Step 1: create a trial list with 22 trials (levels, if you like to keep it >very transparent). Add your trial-procedure here. No attributes necessary, >but, importantly, you add a nested list (by typing in a name under the >Nested List column). >Step 2: inside the nested list, add an attribute SOA. Add 66 trials. For the >first 22 SOAs, add 0, the second 22, 120, and so on. Turn on randomisation. >Step 3: within your trial procedure, add the slide or whatever with which >you make the SOA. In duration, enter [SOA]. >Done, now, the 3 values of SOA are randomly (independently) scattered over 3 >blocks. > >3. E-Prime does not have a method for detecting the end of sound. It would >be best for you to figure out, using some software (like cooledit) to find >out exactly, and I mean, exactly at 44100 Hz precision, when audio files >end. Even if E-Prime would come with such capabilities, you'd probably not >want to trust it. Anyway, I'd suggest naming files with the duration >("PRIMESOUND100MS.WAV" for instance). Once you'll already know the length of >the sound (the length of the sound is different from the length of the >soundFILE), having somebody following directly after it shouldn't be >difficult. >Best, >Michiel > > > >-----Original Message----- >From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf >Of Heng Li >Sent: 08 March 2012 06:43 >To: E-Prime >Subject: Questions about miniblocks,stimulus onset asynchrony,and present >stimuli after a sound ends > >1. I read the tutorial but didn't find the solution to dividing trials >into miniblocks.I have 66 trials in total and I want to randomly >assign them into three blocks each with 22 trials. >2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >need randomly insert an SOA (which is accompanied by a blank screen) >between the prime and target stimuli.How can I do that within 3 >miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >the SOAs among all trials but not in each miniblock. >3. My priming stimulus is a sound and my target stimulus is a >picture.For the SOA inserting btw the prime and target,I want it to >start immediately after the sound ends.Since the sound stimuli are of >different durations,how can I tell E-Prime to detect the end of each >priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 15 22:07:44 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 15 Mar 2012 18:07:44 -0400 Subject: Questions about miniblocks,stimulus onset asynchrony,and present stimuli after a sound ends In-Reply-To: <4f626593.e90b320a.6b0f.ffffb702SMTPIN_ADDED@gmr-mx.google. com> Message-ID: Oh, and for my approach to #3, you will also want to pay close attention to the differences between Event and Cumulative timing modes -- see Chapter 3 of the User's Guide, on Critical Timing (I do discuss this in my online course, but I still insist that everyone study Chapter 3 for the details). -- dkm At 3/15/2012 05:56 PM Thursday, David McFarlane wrote: >Sorry if I'm a bit late to this party, bur for the record... > >Michiel already covered answers for #1 & #2, >which comes down to using nested Lists -- for >more on this do the nested Lists tutorial in >Appendix C of the User's Guide that came with >E-Prime, and work through Michiel's free >E-Primer (available at the STEP web site, >step.psy.cmu.edu ); and if that is not enough >and you have some money & time to spend, I cover >the basics of how to do this sort of thing in >the "Task Design Structure" lesson of my online course. > >If for #3 you mean ISI instead of SOA, EP can do >that very easily too. For your SoundOut object, >set End Sound Action to Terminate, and Duration >to some suitably large value (e.g., >(infinite)). Now the SoundOut object will >automatically end right at the end of the sound >file. (This, too, is covered in my online >course; and remember that the Duration of the >object that plays a sound is *not* the same as >the duration of the sound file being >played). Following your SoundOut, add any >appropriate object to take up the ISI (e.g., >TextDisplay, or even a Wait in this case), use >an attribute reference for its ISI, and then >follow that with your next stimulus, i.e., your ImageDisplay. Voil? > >----- >David McFarlane >E-Prime training >online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx >Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) > > >At 3/9/2012 06:51 AM Friday, Michiel Sovijarvi-Spape wrote: >>Hi, >>1. Which tutorial? From your questions, it seems to me a clear necessity >>that one should not READ the tutorial, but go through it, completely. Much >>like learning any language, "just" reading a dictionary and the rules of >>grammar do not grant you proficiency; it takes time and work to get a feel >>for how to use these tools. If you like, you might want to continue your >>learning by also doing the absolutely free tutorial thing somewhere on my >>website (www.cognitology.eu) or other websites you can find by searching for >>"an e-primer". Speaking of grammar: I find it difficult to understand what >>you are saying - I do not wish to sound nagging, and I understand not >>everyone is fluent, but your message does not come across as clear as you >>presumably hoped it would. >>2. So, you want to divide one condition (SOA) with 3 levels, without >>replacement, unevenly across 3 blocks. Tutorials probably don't mention >>"mini-blocks" because it doesn't seem to be a term as such. You can, >>however, easily do what you want: >> >>Step 1: create a trial list with 22 trials (levels, if you like to keep it >>very transparent). Add your trial-procedure here. No attributes necessary, >>but, importantly, you add a nested list (by typing in a name under the >>Nested List column). >>Step 2: inside the nested list, add an attribute SOA. Add 66 trials. For the >>first 22 SOAs, add 0, the second 22, 120, and so on. Turn on randomisation. >>Step 3: within your trial procedure, add the slide or whatever with which >>you make the SOA. In duration, enter [SOA]. >>Done, now, the 3 values of SOA are randomly (independently) scattered over 3 >>blocks. >> >>3. E-Prime does not have a method for detecting the end of sound. It would >>be best for you to figure out, using some software (like cooledit) to find >>out exactly, and I mean, exactly at 44100 Hz precision, when audio files >>end. Even if E-Prime would come with such capabilities, you'd probably not >>want to trust it. Anyway, I'd suggest naming files with the duration >>("PRIMESOUND100MS.WAV" for instance). Once you'll already know the length of >>the sound (the length of the sound is different from the length of the >>soundFILE), having somebody following directly after it shouldn't be >>difficult. >>Best, >>Michiel >> >> >> >>-----Original Message----- >>From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf >>Of Heng Li >>Sent: 08 March 2012 06:43 >>To: E-Prime >>Subject: Questions about miniblocks,stimulus onset asynchrony,and present >>stimuli after a sound ends >> >>1. I read the tutorial but didn't find the solution to dividing trials >>into miniblocks.I have 66 trials in total and I want to randomly >>assign them into three blocks each with 22 trials. >>2. I have three different SOAs, 0ms, 120ms, and 400ms, as an IV. I >>need randomly insert an SOA (which is accompanied by a blank screen) >>between the prime and target stimuli.How can I do that within 3 >>miniblocks?Given 66/3=22 but 22/3 is not an integer, I want to divide >>the SOAs among all trials but not in each miniblock. >>3. My priming stimulus is a sound and my target stimulus is a >>picture.For the SOA inserting btw the prime and target,I want it to >>start immediately after the sound ends.Since the sound stimuli are of >>different durations,how can I tell E-Prime to detect the end of each >>priming sound?Thanks a lot! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiffanieong at gmail.com Thu Mar 15 22:36:53 2012 From: tiffanieong at gmail.com (Tiffanie) Date: Thu, 15 Mar 2012 15:36:53 -0700 Subject: Trial number from randomseed In-Reply-To: <4f625610.42cb320a.5bc5.ffffa0bfSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks so much for your quick reply! Yes - the program failed to log any data at all! The first time I tried to run the program, to make sure everything was working, I pressed spacebar to move on to the next trial, and when I checked the data, I saw all the attributes listed. And I took it for granted, and didn't run the whole programme again by itself (without any response). It is really weird (and upsetting!) - I wouldn't know how to turn off the Procedure logging with any inline code. On the list with all the attributes, under property name - when I said I checked them, I guess I meant I made sure they were checked (and they definitely were). Also, I sent my previous message out in a state of panic so I probably wasn't very clear, but I tested the program on my own, and I responded to each trial when I tested it. However, when the students did the experiment, they did not respond at all - and for those, no data was collected. Anyway, I'm not entirely sure I understood the part about the RandomSeed - do you mean it's possible for me to retrieve the presentation order from the RandomSeed? I really hope so - because in principle, if the user can enter a randomseed number that fixes the presentation order, it should work the other way too? I will look around the knowledge base and pst website. I really hope I find something! Thanks! > So reading through your plea, I understand that your program did not > merely fail to log the trial/stimulus order (which would have been > odd, because by default EP *always* logs *every* List attribute used > *in presentation order*, whether you want it or not), but failed to > log any data *at all*. ?Is that right? > > And I am (figuratively) scratching my balding head trying to figure > out how you managed to get things logged when giving a response, but > not for non-responses. ?That is really weird. ?EP by default logs all > information at the end of each Procedure, response or not, so I > cannot imagine how you got rows of data for responses, but not for > non-responses. ?As far as I can figure, you would have to go *way* > out of your way to turn off the automatic Procedure logging and > replace it with your own inline code, which would be bad unless you > *really* knew what you were doing. ?So I must be overlooking > something obvious. ?But no matter. > > Finally, you said that, "On the list with all the attributes, under > Logging," you "checked the attributes property name". ?Hmm. ?By > default, those Logging attributes already have check marks; if you > went in and manually "checked" them, then you really unchecked them, > and that turned off their logging. ?But that would mean that they > would fail to log for both non-responses *and* responses, which does > not square with your account. ?So I am stumped on how you got to this state. > > Anyway, that was not your question at all. ?As I take it, you merely > want a mechanism to use the recorded RandomSeed to regenerate the > presentation order. ?Well, the short answer is, if you look around > the E-Prime Knowledge Base on the PST web site, you will find > instructions on how to enter a RandomSeed value and have EP run with > that. ?As I recall, it comes down to adding RandomSeed as a > StartupInfo parameter (I cover StartupInfo parameters in my > course). ?For details, consult the EP KB, or PST Web Support. > > ----- > David McFarlane > E-Prime training > online: ?http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter: ?@EPrimeMaster (twitter.com/EPrimeMaster) > > At 3/15/2012 03:23 PM Thursday, you wrote: > > > > > > > > >Dear all, > > >I am quite new to E-prime and I've just realised that the programme > >that I have been using to collect data for the past two weeks hasn't > >been logging the data correctly! > > >Basically, participants are presented with a series of attributes > >describing four hypothetical apartments (these attributes are > >presented for a fixed time of 4seconds). At the end of it, > >participants are asked to decide which apartment they would like to > >live in. > >I am interested in how the order of presentation of attributes affects > >this final judgement and there were some obvious issues with have a > >fixed order across all participants so we decided to randomise it. > >However, we decided on this with the impression that E-prime would log > >the data of the order in which the attributes appeared (at random). On > >the list with all the attributes, under Logging, I checked the > >attributes property name. I guess I made a huge mistake when I was > >testing the programme because I pressed spacebar to move on to the > >next attribute, and when I looked at the data, the attributes order > >was indeed recorded. I didn't double check if the same would happen if > >no response was made at all, which was the case for all participants > >since they were asked to just read each attribute and the next one > >would appear automatically. > > >I guess another reason why I didn't realise this mistake earlier was > >because I did get a E-DataAid file after each participant - however, > >there was just one line with the subject, session... and random seed. > >I know this is very far fetched, but I'm wondering if there is any > >chance at all that I could somehow retrieve any form of information > >about the order of trials from the randomseed number? > > >Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From tiffanieong at gmail.com Fri Mar 16 12:48:57 2012 From: tiffanieong at gmail.com (Tiffanie) Date: Fri, 16 Mar 2012 05:48:57 -0700 Subject: Negative value for StartupInfo item Message-ID: Dear all, I was wondering if it is possible to specify a negative RandomSeed value for StartupInfo item? Thank you!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 18:03:34 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 14:03:34 -0400 Subject: Negative value for StartupInfo item In-Reply-To: <00d11670-9d8b-40dc-8fe6-eb6e996ff497@q18g2000yqh.googlegro ups.com> Message-ID: Ah, um, well, I think you are stuck, at least if the KB article, http://www.pstnet.com/support/kb.asp?TopicID=1268 , is to be trusted. You see, StartupInfo parameters set to data type Numeric are limited to non-negative values from 0 to 32,767, the largest signed integer that will fit in 16 bits. This is an oversight on the part of the designers of E-Prime, as 16-bit signed integers may also encode values from -32,768 to -1, but the code automatically generated to handle StartupInfo parameters explicitly prohibits negative values (don't take my word for that, just look at the generated code in the Main() routine). This may have been fixed in EP2.0.10.182 -- as I recall, numberic StartupInfo parameters in the new release are now Long (32-bit) integers, but I do not know whether it still peversely prohibits negative values. For all I know you could work around this by declaring the RandomSeed StartupInfo parameter as data type String, and then hope that EP does the automatic type conversion for you. I leave that as an exercise for you. Or, give a shout to PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp and see what they say -- and then, please post their response back here for everyone. But as I will explain shortyly in an update to your other thread, none of this may help you anyway. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/16/2012 08:48 AM Friday, you wrote: >Dear all, > >I was wondering if it is possible to specify a negative RandomSeed >value for StartupInfo item? > >Thank you!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 18:58:20 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 14:58:20 -0400 Subject: Trial number from randomseed In-Reply-To: Message-ID: First, let me clarify the "cautionary tale" here. The caution is not merely to fully test your programs with sufficient test cases before running subjects, although indeed that is key to good research; rather, I meant to stress the caution of *fully* analyzing subject data right from the start, and then throughout data collection. If you had done that (instead of merely confirming that data files existed), then you would have caught this problem with the first subject and fixed it before running more. So the full process goes something like this (this is an extended version of what I present in the online course, which means I should probably not be giving this away): - Develop research question & hypotheses - Design experimental task to explore hypotheses. - Declare full set of specifications for the experimental task. - Develop software to implement experimental task to declared specifications. - Throughout software development, test with a full set of input scenarios. For convenience you may run tests with a speeded-up program, and for consistency you should use carefully designed canned input sequences; you should develop thesee into a battery of test cases as you go. - Every time you make a change to the program, retest it with the *entire* battery of test cases to insure that you have not re-introduced bugs that you fixed earlier. This is known as "regression testing", as it tests to see that your improved software has not regressed to re-introduce previously fixed problems. - When you have the program fully developed, do complete run-throughs on yourself in real time (not sped up). - Do more full run-throughs, in real time, on lab partners. - Fix up all the problems revealed through the tests on yourself & lab partners, etc. - With all that done, run your first pilot subject. - Take the data from the first pilot subject, and run it completely through your intended data analysis (excepting for collective analyses that require more subjects). This will likely reveal flaws in your analysis methodology, which you will need to correct, and those corrections may call for more changes to the program, which will put you back several steps here again, etc. - Once you have success from one pilot subject, go ahead and run a few more pilot subjects, at least enough to complete some practice collective analyses that you could not do earlier. That will reveal more flaws, etc. etc. - OK, now you can start collecting data in earnest. But still, you need to keep looking in on your data, identifying anomalies to handle, etc., etc. I hope that captures the general flavor of this enterprise. Remember, anytime you think that your program works, it just means that it does not work, and you have simpy failed to discover what it does wrong yet. Software development is very deceptive that way. Anyway, I hope that you do not hope that you can somehow use the RandomSeed to recover the data directly from the data files you have. All hope is lost for that. If your data files show only one line, then they have no other "hidden" data to recover, RandomSeed or no. What you see is what you have. Sure, you may use E-Recovery to recover lost data from data .txt files, but if EP already successfully created the .edat files, then E-Recovery will not find any more data. So what use is RandomSeed in this case? Well, if you *re-ran* the .ebs program, after entering the RandomSeed, it should reproduce the same sequence as during the subject's run. But even here you face several "gotchas", because you would have to make other changes in your program in order to get EP to reveal the sequence this time, and who knows what effect that will have on the resulting trial sequences? For one, you will modify the program to accept a RandomSeed, but we may trust that that change alone will not affect any sequences. Next, you might try running the program while entering responses -- that might safely regenerate the sequence used during the subject's run, but this time logging the data. Or you might first fix the program to log data for non-responses, then run it with the RandomSeed -- at that point you have made even more changes to the program, so let's hope that that does not affect the sequence. But this all seems to iffy and tedious to me. If it were me, I would just scrap this data and start over. Consider yourself lucky. You lost only two weeks of data. We had a graduate student here who lost two years of dissertation data collected on paid clinical subjects because they never properly examined the data during data collection. That student failed to get their doctorate. And that's why I am so touchy about this issue. Finally, you might again consult PST Web Support on this, as they may know something that I do not. And then please write back and tell me where I got it wrong. (Oh, and BTW, it's "no data *were* collected" -- that's a pet peeve for us around here.) ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/15/2012 06:36 PM Thursday, you wrote: >Hi David, > >Thanks so much for your quick reply! > >Yes - the program failed to log any data at all! > >The first time I tried to run the program, to make sure everything was >working, I pressed spacebar to move on to the next trial, and when I >checked the data, I saw all the attributes listed. And I took it for >granted, and didn't run the whole programme again by itself (without >any response). It is really weird (and upsetting!) - I wouldn't know >how to turn off the Procedure logging with any inline code. On the >list with all the attributes, under property name - when I said I >checked them, I guess I meant I made sure they were checked (and they >definitely were). Also, I sent my previous message out in a state of >panic so I probably wasn't very clear, but I tested the program on my >own, and I responded to each trial when I tested it. However, when the >students did the experiment, they did not respond at all - and for >those, no data was collected. > >Anyway, I'm not entirely sure I understood the part about the >RandomSeed - do you mean it's possible for me to retrieve the >presentation order from the RandomSeed? I really hope so - because in >principle, if the user can enter a randomseed number that fixes the >presentation order, it should work the other way too? > >I will look around the knowledge base and pst website. I really hope I >find something! Thanks! > > > > So reading through your plea, I understand that your program did not > > merely fail to log the trial/stimulus order (which would have been > > odd, because by default EP *always* logs *every* List attribute used > > *in presentation order*, whether you want it or not), but failed to > > log any data *at all*. Is that right? > > > > And I am (figuratively) scratching my balding head trying to figure > > out how you managed to get things logged when giving a response, but > > not for non-responses. That is really weird. EP by default logs all > > information at the end of each Procedure, response or not, so I > > cannot imagine how you got rows of data for responses, but not for > > non-responses. As far as I can figure, you would have to go *way* > > out of your way to turn off the automatic Procedure logging and > > replace it with your own inline code, which would be bad unless you > > *really* knew what you were doing. So I must be overlooking > > something obvious. But no matter. > > > > Finally, you said that, "On the list with all the attributes, under > > Logging," you "checked the attributes property name". Hmm. By > > default, those Logging attributes already have check marks; if you > > went in and manually "checked" them, then you really unchecked them, > > and that turned off their logging. But that would mean that they > > would fail to log for both non-responses *and* responses, which does > > not square with your account. So I am stumped on how you got to > this state. > > > > Anyway, that was not your question at all. As I take it, you merely > > want a mechanism to use the recorded RandomSeed to regenerate the > > presentation order. Well, the short answer is, if you look around > > the E-Prime Knowledge Base on the PST web site, you will find > > instructions on how to enter a RandomSeed value and have EP run with > > that. As I recall, it comes down to adding RandomSeed as a > > StartupInfo parameter (I cover StartupInfo parameters in my > > course). For details, consult the EP KB, or PST Web Support. > > > > ----- > > David McFarlane > > E-Prime training > > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) > > > > At 3/15/2012 03:23 PM Thursday, you wrote: > > > > > > > > > > > > > > > > >Dear all, > > > > >I am quite new to E-prime and I've just realised that the programme > > >that I have been using to collect data for the past two weeks hasn't > > >been logging the data correctly! > > > > >Basically, participants are presented with a series of attributes > > >describing four hypothetical apartments (these attributes are > > >presented for a fixed time of 4seconds). At the end of it, > > >participants are asked to decide which apartment they would like to > > >live in. > > >I am interested in how the order of presentation of attributes affects > > >this final judgement and there were some obvious issues with have a > > >fixed order across all participants so we decided to randomise it. > > >However, we decided on this with the impression that E-prime would log > > >the data of the order in which the attributes appeared (at random). On > > >the list with all the attributes, under Logging, I checked the > > >attributes property name. I guess I made a huge mistake when I was > > >testing the programme because I pressed spacebar to move on to the > > >next attribute, and when I looked at the data, the attributes order > > >was indeed recorded. I didn't double check if the same would happen if > > >no response was made at all, which was the case for all participants > > >since they were asked to just read each attribute and the next one > > >would appear automatically. > > > > >I guess another reason why I didn't realise this mistake earlier was > > >because I did get a E-DataAid file after each participant - however, > > >there was just one line with the subject, session... and random seed. > > >I know this is very far fetched, but I'm wondering if there is any > > >chance at all that I could somehow retrieve any form of information > > >about the order of trials from the randomseed number? > > > > >Thank you so much!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From didem.pehlivanoglu at gmail.com Fri Mar 16 20:09:30 2012 From: didem.pehlivanoglu at gmail.com (Didem) Date: Fri, 16 Mar 2012 13:09:30 -0700 Subject: multiple choice without correct answer. Message-ID: Hi all, At the end of my experiment, I will ask participants to indicate their subjective experience. To indicate this, they will be presented 3 choices and asked to choose one them. So,there is no correct answer in this test. I want to see the option which they chose in data file. To create multiple choice format, I used slide object including 3 choices as text. In my list, I have 3 attributions denoted to these choices. I have a part of script enabling mouse response. My problem is that I do not know how to write a code to record an option which participant chose. Maybe I can see name of the text which they chose in my data file but I do not know how to do that. The multiple choice test code does not work here because there is no correct answer... Could you please help me? Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 20:30:00 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 16:30:00 -0400 Subject: multiple choice without correct answer. In-Reply-To: <104a3f96-c695-401f-be19-e9ded5436e8d@l1g2000vbc.googlegrou ps.com> Message-ID: OK, I am not quite following this. How do subjects indicate their choice of the three options? Do they press one of three keyboard keys? If so, then you can have EP simply log which key they pressed, and since the EP List will also by default log which choice on your Slide occupied which slot, you will also be able to match up which of the offered choices corresponds to the subject's response. No need to designate a "correct" response. Yes, you could get fancier with a bit of inline code to do that matching for you and log directly which choice they selected, but even without that EP gives you enough data to deduce what you want. I won't be able to help you sort this out further because it is time for me to take off for the weekend (Eastern USA time zone), so I will leave that to others here. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster At 3/16/2012 04:09 PM Friday, you wrote: >At the end of my experiment, I will ask participants to indicate their >subjective experience. >To indicate this, they will be presented 3 choices and asked to choose >one them. >So,there is no correct answer in this test. I want to see the option >which they chose in data file. > >To create multiple choice format, I used slide object including 3 >choices as text. >In my list, I have 3 attributions denoted to these choices. >I have a part of script enabling mouse response. > >My problem is that I do not know how to write a code to record an >option which participant chose. Maybe I can see name of the text which >they chose in my data file but I do not know how to do that. >The multiple choice test code does not work here because there is no >correct answer... > >Could you please help me? > >Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From didem.pehlivanoglu at gmail.com Fri Mar 16 20:39:56 2012 From: didem.pehlivanoglu at gmail.com (Didem) Date: Fri, 16 Mar 2012 13:39:56 -0700 Subject: multiple choice without correct answer. In-Reply-To: <4f63a2cd.63d0320a.1352.ffff8b57SMTPIN_ADDED@gmr-mx.google.com> Message-ID: They answer by using mouse. Does this change your answer? On Mar 16, 10:30?pm, David McFarlane wrote: > OK, I am not quite following this. ?How do subjects indicate their > choice of the three options? ?Do they press one of three keyboard > keys? ?If so, then you can have EP simply log which key they pressed, > and since the EP List will also by default log which choice on your > Slide occupied which slot, you will also be able to match up which of > the offered choices corresponds to the subject's response. ?No need > to designate a "correct" response. ?Yes, you could get fancier with a > bit of inline code to do that matching for you and log directly which > choice they selected, but even without that EP gives you enough data > to deduce what you want. > > I won't be able to help you sort this out further because it is time > for me to take off for the weekend (Eastern USA time zone), so I will > leave that to others here. > > ----- > David McFarlane > E-Prime training > online: ?http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter: ?@EPrimeMaster (twitter.com/EPrimeMaster > > At 3/16/2012 04:09 PM Friday, you wrote: > > >At the end of my experiment, I will ask participants to indicate their > >subjective experience. > >To indicate this, they will be presented 3 choices and asked to choose > >one them. > >So,there is no correct answer in this test. I want to see the option > >which they chose in data file. > > >To create multiple choice format, I used slide object including 3 > >choices as text. > >In my list, I have 3 attributions denoted to these choices. > >I have a part of script enabling mouse response. > > >My problem is that I do not know how to write a code to record an > >option which participant chose. Maybe I can see name of the text which > >they chose in my data file but I do not know how to do that. > >The multiple choice test code does not work here because there is no > >correct answer... > > >Could you please help me? > > >Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Mar 16 20:58:59 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 16 Mar 2012 16:58:59 -0400 Subject: multiple choice without correct answer. In-Reply-To: Message-ID: OK, time for just one more thing before I shut down this PC... By using the mouse, do you mean that your program detects which of three zones they click on the display? As long as you have the programming to detect a click on one of three zones, you need merely add the code to log which of those zones was click. Should not be hard. OK, shutting down, have a bon weekend whereever you are... -- David McFarlane At 3/16/2012 04:39 PM Friday, you wrote: >They answer by using mouse. Does this change your answer? > >On Mar 16, 10:30 pm, David McFarlane wrote: > > OK, I am not quite following this. How do subjects indicate their > > choice of the three options? Do they press one of three keyboard > > keys? If so, then you can have EP simply log which key they pressed, > > and since the EP List will also by default log which choice on your > > Slide occupied which slot, you will also be able to match up which of > > the offered choices corresponds to the subject's response. No need > > to designate a "correct" response. Yes, you could get fancier with a > > bit of inline code to do that matching for you and log directly which > > choice they selected, but even without that EP gives you enough data > > to deduce what you want. > > > > I won't be able to help you sort this out further because it is time > > for me to take off for the weekend (Eastern USA time zone), so I will > > leave that to others here. > > > > ----- > > David McFarlane > > E-Prime training > > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster > > > > At 3/16/2012 04:09 PM Friday, you wrote: > > > > >At the end of my experiment, I will ask participants to indicate their > > >subjective experience. > > >To indicate this, they will be presented 3 choices and asked to choose > > >one them. > > >So,there is no correct answer in this test. I want to see the option > > >which they chose in data file. > > > > >To create multiple choice format, I used slide object including 3 > > >choices as text. > > >In my list, I have 3 attributions denoted to these choices. > > >I have a part of script enabling mouse response. > > > > >My problem is that I do not know how to write a code to record an > > >option which participant chose. Maybe I can see name of the text which > > >they chose in my data file but I do not know how to do that. > > >The multiple choice test code does not work here because there is no > > >correct answer... > > > > >Could you please help me? > > > > >Thank you. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From catarina.melo.azevedo at gmail.com Mon Mar 19 16:22:49 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Mon, 19 Mar 2012 09:22:49 -0700 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <4f6245a7.42cb320a.5bc5.ffff9116SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thank you for your help. I tried to enter the PST support but it doesn't accept my email and password...(I don't know why). Can you put here the recall study example, please? I just need to know how to define that the word "y" will appear in the second block, if the word "x" appears on the first block, although words in the first block are chosen randomly. I really need some help. Cheers Catarina On Mar 15, 8:40?pm, David McFarlane wrote: > Catarina, > > Stock reminder: ?1) I do not work for PST. ?2) PST's trained staff > take any and all questions athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > strive to respond to all requests in 24-48 hours -- this is pretty > much their substitute for proper documentation, so make full use of > it. ?3) In addition, PST takes questions at their Facebook page > (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 > ), and offers several instructional videos there and on their YouTube > channel (http://www.youtube.com/user/PSTNET) (no Twitter feed yet, > though). ?4) If you do get an answer from PST staff, please extend > the courtesy of posting their reply back here for the sake of others. > > That said, here is my take... > > Quick response, addressing merely the "Study-Recall" aspect of this > design -- take a look at the StudyRecall.es example downloadable from > the PST web site. ?That should give you ideas. > > And just a general overal pointer on Lists & nested Lists in > E-Prime: ?As I describe in my online E-Prime course (and in other > threads both here and at the PST Forum), I have found it helpful to > think of them all these Lists as separate decks of playing cards. > > Good luck. > ----- > David McFarlane > E-Prime training > online: ?http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter: ?@EPrimeMaster (twitter.com/EPrimeMaster) > > At 3/14/2012 06:06 AM Wednesday, you wrote: > > > > > > > > >Hi all! > > >I know how to work with E-prime in general but I never did scripts > >with it. I have 3 questions and I hope you can help me on this. > > >I have a final list of 80 English and 80 Dutch words. I want each > >participant to see 40 English and 40 Dutch words. All the Dutch words > >are translations of the English words and these different languages of > >the words are separated in two different blocks.The most important is > >that the words appearing in the second block of presentation must be > >the translations of the words in the first block (if they see > >"happy"in the first they must see "blij"in the second). > > >This is the general idea. My questions are: > > >1- From the 80 Eng and the 80 Dutch words lists I want to take > >randomly 40 words (of each) for each participant. The idea is that > >instead of having 2 or more equivalent lists and counterbalanced them > >for subject, I want each participant to see different combinations of > >words, randomly assigned, in a different order of presentation. For > >that is important to guarantee a) that all words will be seen by the > >same number of participants and b) the words in the second block are > >the translations of the ones of the first block. > > >2- From that 40 English (and Dutch) words they will be seen, I want to > >specify that they will always see 10 of category A, 10 of category B, > >10 of category C and 10 of category D. > > >3- If possible I do not want them to see more than 3 words of the same > >category one after the other. > > >Thank you so much for your help > > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Mon Mar 19 20:20:40 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 19 Mar 2012 16:20:40 -0400 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <98e06dd4-f5c3-406e-9753-418996a3e999@9g2000vbq.googlegroup s.com> Message-ID: Catarina, First, as I try to remind people, I do not work for PST. So I am not sure that I have either the authority or the obligation to distribute the StudyRecall.es example myself. Second, even if allowed, Google Groups no longer includes a facility for posting files for download (sigh). So if you have registered a user name & password for PST Web Support and still cannot login, then you may need to e-mail them about that at info at pstnet.com, or telephone them at a number that you can get from their web site. Limit your conversation to your troubles logging in to Web Support, PST does *not* do tech support by e-mail or phone. Good luck, -- David McFarlane At 3/19/2012 12:22 PM Monday, you wrote: >Hi David, > >Thank you for your help. I tried to enter the PST support but it >doesn't accept my email and password...(I don't know why). Can you put >here the recall study example, please? > >I just need to know how to define that the word "y" will appear in the >second block, if the word "x" appears on the first block, although >words in the first block are chosen randomly. I really need some help. > >Cheers > >Catarina > >On Mar 15, 8:40 pm, David McFarlane wrote: > > Catarina, > > > > Stock reminder: 1) I do not work for PST. 2) PST's trained staff > > take any and all questions > athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > > strive to respond to all requests in 24-48 hours -- this is pretty > > much their substitute for proper documentation, so make full use of > > it. 3) In addition, PST takes questions at their Facebook page > > (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 > > ), and offers several instructional videos there and on their YouTube > > channel (http://www.youtube.com/user/PSTNET) (no Twitter feed yet, > > though). 4) If you do get an answer from PST staff, please extend > > the courtesy of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Quick response, addressing merely the "Study-Recall" aspect of this > > design -- take a look at the StudyRecall.es example downloadable from > > the PST web site. That should give you ideas. > > > > And just a general overal pointer on Lists & nested Lists in > > E-Prime: As I describe in my online E-Prime course (and in other > > threads both here and at the PST Forum), I have found it helpful to > > think of them all these Lists as separate decks of playing cards. > > > > Good luck. > > ----- > > David McFarlane > > E-Prime training > > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) > > > > At 3/14/2012 06:06 AM Wednesday, you wrote: > > > > > > > > > > > > > > > > >Hi all! > > > > >I know how to work with E-prime in general but I never did scripts > > >with it. I have 3 questions and I hope you can help me on this. > > > > >I have a final list of 80 English and 80 Dutch words. I want each > > >participant to see 40 English and 40 Dutch words. All the Dutch words > > >are translations of the English words and these different languages of > > >the words are separated in two different blocks.The most important is > > >that the words appearing in the second block of presentation must be > > >the translations of the words in the first block (if they see > > >"happy"in the first they must see "blij"in the second). > > > > >This is the general idea. My questions are: > > > > >1- From the 80 Eng and the 80 Dutch words lists I want to take > > >randomly 40 words (of each) for each participant. The idea is that > > >instead of having 2 or more equivalent lists and counterbalanced them > > >for subject, I want each participant to see different combinations of > > >words, randomly assigned, in a different order of presentation. For > > >that is important to guarantee a) that all words will be seen by the > > >same number of participants and b) the words in the second block are > > >the translations of the ones of the first block. > > > > >2- From that 40 English (and Dutch) words they will be seen, I want to > > >specify that they will always see 10 of category A, 10 of category B, > > >10 of category C and 10 of category D. > > > > >3- If possible I do not want them to see more than 3 words of the same > > >category one after the other. > > > > >Thank you so much for your help > > > > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From catarina.melo.azevedo at gmail.com Tue Mar 20 09:59:27 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Tue, 20 Mar 2012 02:59:27 -0700 Subject: Random lists and orders, but with correspondence block1/block2 In-Reply-To: <4f67951f.c1b7320a.3d42.ffffa3e7SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thank you so much for your help David! Cheers On 19 Mar, 20:20, David McFarlane wrote: > Catarina, > > First, as I try to remind people, I do not work for PST. ?So I am not > sure that I have either the authority or the obligation to distribute > the StudyRecall.es example myself. > > Second, even if allowed, Google Groups no longer includes a facility > for posting files for download (sigh). > > So if you have registered a user name & password for PST Web Support > and still cannot login, then you may need to e-mail them about that > at i... at pstnet.com, or telephone them at a number that you can get > from their web site. ?Limit your conversation to your troubles > logging in to Web Support, PST does *not* do tech support by e-mail or phone. > > Good luck, > -- David McFarlane > > At 3/19/2012 12:22 PM Monday, you wrote: > > > > > > > > >Hi David, > > >Thank you for your help. I tried to enter the PST support but it > >doesn't accept my email and password...(I don't know why). Can you put > >here the recall study example, please? > > >I just need to know how to define that the word "y" will appear in the > >second block, if the word "x" appears on the first block, although > >words in the first block are chosen randomly. I really need some help. > > >Cheers > > >Catarina > > >On Mar 15, 8:40 pm, David McFarlane wrote: > > >Catarina, > > > > Stock reminder: ?1) I do not work for PST. ?2) PST's trained staff > > > take any and all questions > > athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > > > strive to respond to all requests in 24-48 hours -- this is pretty > > > much their substitute for proper documentation, so make full use of > > > it. ?3) In addition, PST takes questions at their Facebook page > > > (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 > > > ), and offers several instructional videos there and on their YouTube > > > channel (http://www.youtube.com/user/PSTNET) (no Twitter feed yet, > > > though). ?4) If you do get an answer from PST staff, please extend > > > the courtesy of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Quick response, addressing merely the "Study-Recall" aspect of this > > > design -- take a look at the StudyRecall.es example downloadable from > > > the PST web site. ?That should give you ideas. > > > > And just a general overal pointer on Lists & nested Lists in > > > E-Prime: ?As I describe in my online E-Prime course (and in other > > > threads both here and at the PST Forum), I have found it helpful to > > > think of them all these Lists as separate decks of playing cards. > > > > Good luck. > > > ----- > > > David McFarlane > > > E-Prime training > > > online: ?http://psychology.msu.edu/Workshops_Courses/eprime.aspx > > > Twitter: ?@EPrimeMaster (twitter.com/EPrimeMaster) > > > > At 3/14/2012 06:06 AM Wednesday, you wrote: > > > > >Hi all! > > > > >I know how to work with E-prime in general but I never did scripts > > > >with it. I have 3 questions and I hope you can help me on this. > > > > >I have a final list of 80 English and 80 Dutch words. I want each > > > >participant to see 40 English and 40 Dutch words. All the Dutch words > > > >are translations of the English words and these different languages of > > > >the words are separated in two different blocks.The most important is > > > >that the words appearing in the second block of presentation must be > > > >the translations of the words in the first block (if they see > > > >"happy"in the first they must see "blij"in the second). > > > > >This is the general idea. My questions are: > > > > >1- From the 80 Eng and the 80 Dutch words lists I want to take > > > >randomly 40 words (of each) for each participant. The idea is that > > > >instead of having 2 or more equivalent lists and counterbalanced them > > > >for subject, I want each participant to see different combinations of > > > >words, randomly assigned, in a different order of presentation. For > > > >that is important to guarantee a) that all words will be seen by the > > > >same number of participants and b) the words in the second block are > > > >the translations of the ones of the first block. > > > > >2- From that 40 English (and Dutch) words they will be seen, I want to > > > >specify that they will always see 10 of category A, 10 of category B, > > > >10 of category C and 10 of category D. > > > > >3- If possible I do not want them to see more than 3 words of the same > > > >category one after the other. > > > > >Thank you so much for your help > > > > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lundwall.becky at gmail.com Wed Mar 21 14:01:22 2012 From: lundwall.becky at gmail.com (BeckyL) Date: Wed, 21 Mar 2012 07:01:22 -0700 Subject: notify Pinnacle 700 USB of the exact time an event occurs in E-Prime? Message-ID: Has anyone used Pinnacle 700 USB (aka Pinnacle Studio USB-700) to capture video during an experiment? If so, do you know if this device can receive an event signal from E-Prime 2? Someone on site already has the Pinnacle 700 USB from another experiment (years ago, not using EP). We are trying to video tape eye movement after the presentation of a stimulus by EP and determine the direction and latency of eye movements from fixation to the stimulus (or a distractor). Unfortunately, Pinnacle Studio User's manual and support website are very weak. It does appear that Pinnacle has a type A/ type B USB cable that connects to the computer as well as general purpose video cables. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/50D94hf3esYJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Thu Mar 22 15:34:16 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 22 Mar 2012 11:34:16 -0400 Subject: notify Pinnacle 700 USB of the exact time an event occurs in E-Prime? In-Reply-To: <17874210.2448.1332338482412.JavaMail.geo-discussion-forums @ynjl17> Message-ID: I have no experience with that particular device, but from your message (and from Googling "Pinnacle Studio USB-700") I gather that this device communicates solely through USB. In that case, you are sunk, unless you are *very* good with externall DLLs. Or maybe you will get lucky and someone else here will point you to a DLL file with general-purpose USB communication routines, along with instructions for how to use that with E-Basic (i.e., VBA). And as I often remind folks here, you might also take this up with PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp , where they strive to respond to all requests in 24-48 hours. And if you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster At 3/21/2012 10:01 AM Wednesday, you wrote: >Has anyone used Pinnacle 700 USB (aka Pinnacle Studio USB-700) to >capture video during an experiment? If so, do you know if this >device can receive an event signal from E-Prime 2? > >Someone on site already has the Pinnacle 700 USB from another >experiment (years ago, not using EP). We are trying to video tape >eye movement after the presentation of a stimulus by EP and >determine the direction and latency of eye movements from fixation >to the stimulus (or a distractor). Unfortunately, Pinnacle Studio >User's manual and support website are very weak. It does appear that >Pinnacle has a type A/ type B USB cable that connects to the >computer as well as general purpose video cables. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From j.dainerbest at gmail.com Thu Mar 22 19:52:36 2012 From: j.dainerbest at gmail.com (JDB) Date: Thu, 22 Mar 2012 12:52:36 -0700 Subject: Trigger (stimulus) codes sent on response to EEG recording Message-ID: I'm working on a project that involves interfacing an E-Prime experiment with the ActiView/Biosemi interface for EEG recording. I have this in the UserScript: Const Sport as Integer = &H378 Every time an image appears, this code is sent immediately before: InLine: Intermediary.OnsetSignalEnabled = True Intermediary.OnsetSignalPort = Sport Intermediary.OnsetSignalData = c.GetAttrib("IntermediaryCode") Intermediary.OffsetSignalData = 0 Intermediary.OffsetSignalPort = Sport Intermediary.OffsetSignalEnabled = True This works fine. The task then presents the participant with images, to one of which they respond; the image is on-screen for 500ms, followed by a fixation cross for another 500ms. They can respond at any point, but the image & cross are on-screen for a set amount of time. What I'd like is for the stimcode to be sent as soon as possible after the response. I've been successful in sending a response code after fixation cross goes away, using the following code: InLine: If TaskImage.RESP = "l" Then resp = 55 ElseIf TaskImage.RESP = "s" Then resp = 56 ElseIf TaskImage.RESP = "o" Then resp = 57 ElseIf TaskImage.RESP = "w" Then resp = 58 ElseIf TaskImage.RESP = "" Then resp = 59 Else resp = 60 End If FixationCross2.OnsetSignalEnabled = True FixationCross2.OnsetSignalPort = Sport FixationCross2.OnsetSignalData = resp FixationCross2.OffsetSignalEnabled = True FixationCross2.OffsetSignalPort = Sport FixationCross2.OffsetSignalData = 0 However, this only works by sending itself at the beginning of a new fixation cross. Ideally, subject responses would be sent WHEN they respond. But I can't figure out how to do that. Is there some function equivalent to "OnResponse"? It seems like it should be possible, but I'm not sure how to do it. Thanks for your help! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 22 20:32:25 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 22 Mar 2012 16:32:25 -0400 Subject: Trigger (stimulus) codes sent on response to EEG recording In-Reply-To: <767711d8-48ba-4af1-b439-5c18afd08f66@r27g2000vbn.googlegro ups.com> Message-ID: If you use EP2.0.10.182 *Professional* or later then you are in luck -- see the new Task Events feature documented at http://www.pstnet.com/support/kb.asp?TopicID=4803 . (Remember, I have uniformly advised everyone to spend the extra money for Professional, no matter what PST advises.) If you do not have EP2.0.10.182 Pro, then you might look at http://groups.google.com/group/e-prime/browse_thread/thread/cfc3d0307d5c7fbd and http://groups.google.com/group/e-prime/browse_thread/thread/ef0e5a8d8b87aa0c for hints. Or, of course, take this up with PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp , where they strive to respond to all requests in 24-48 hours. And if you do get an answer from PST staff, please extend the courtesy of posting their reply back here for the sake of others. BTW, although your particular inline code for the stimulus signal works well enough (which is a virtue), it suffers in efficiency. I have an entire lesson about handling these sorts of things in my online course (although that lesson does not address your precise response signal question). ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/22/2012 03:52 PM Thursday, you wrote: >I'm working on a project that involves interfacing an E-Prime >experiment with the ActiView/Biosemi interface for EEG recording. > >I have this in the UserScript: >Const Sport as Integer = &H378 > >Every time an image appears, this code is sent immediately before: > >InLine: >Intermediary.OnsetSignalEnabled = True >Intermediary.OnsetSignalPort = Sport >Intermediary.OnsetSignalData = c.GetAttrib("IntermediaryCode") > >Intermediary.OffsetSignalData = 0 >Intermediary.OffsetSignalPort = Sport >Intermediary.OffsetSignalEnabled = True > >This works fine. The task then presents the participant with images, >to one of which they respond; the image is on-screen for 500ms, >followed by a fixation cross for another 500ms. They can respond at >any point, but the image & cross are on-screen for a set amount of >time. What I'd like is for the stimcode to be sent as soon as possible >after the response. I've been successful in sending a response code >after fixation cross goes away, using the following code: > >InLine: >If TaskImage.RESP = "l" Then > resp = 55 > ElseIf TaskImage.RESP = "s" Then > resp = 56 > ElseIf TaskImage.RESP = "o" Then > resp = 57 > ElseIf TaskImage.RESP = "w" Then > resp = 58 > ElseIf TaskImage.RESP = "" Then > resp = 59 > Else resp = 60 >End If > >FixationCross2.OnsetSignalEnabled = True >FixationCross2.OnsetSignalPort = Sport >FixationCross2.OnsetSignalData = resp > >FixationCross2.OffsetSignalEnabled = True >FixationCross2.OffsetSignalPort = Sport >FixationCross2.OffsetSignalData = 0 > >However, this only works by sending itself at the beginning of a new >fixation cross. Ideally, subject responses would be sent WHEN they >respond. But I can't figure out how to do that. Is there some function >equivalent to "OnResponse"? It seems like it should be possible, but >I'm not sure how to do it. > >Thanks for your help! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From sombrenote at gmail.com Fri Mar 23 15:22:41 2012 From: sombrenote at gmail.com (SombreNote) Date: Fri, 23 Mar 2012 08:22:41 -0700 Subject: Reset Slide on Correct Type Number Answer Message-ID: Hi everyone, I am having quite frustrating time doing something that on all accounts is very easy. I have a procedure called: ArithTe + Inline1 (Inline Code) + ArthProb (Slide set up with prompt text) + PendingReponses (more inline code) What it is supposed to do is test to see if a number (which changes every rerun), is correctly entered in a ECHO typed space on the slide. If correct it should recycle the slide and change the number. This is basically just a MIST task in which a person subtracts 7 from a number as fast as possible. Right now it is simple and I have no added all the bells and whistles. I am in contact with PST, but things are going very slowly. Does anyone think they could point me in the right direction? This is a link to the 54kb file if you want it. http://depositfiles.com/files/b3pib3et5 I will make it available when it is completed, because this is a pretty common procedure. #### Inline1 ###### 'New code lnStartTime = 0 lnEndTime = 0 lnBlockDuration = 0 boolBlockEnd = False FirstRun = True 'lnStartTime = Clock.Read lnEndTime = Clock.Read + 50000 '100000 '240000 Dim SlideOnsetTime As Long Dim SlideStopTime As Long 'Declare a variable that can be assigned to the Stimulus object. Dim theSlideC As Slide Set theSlideC = CSlide(Rte.GetObject("ArthProb")) 'Declare a variable that can be assigned to the default SlideState. Dim theStateC As SlideState Set theStateC = theSlideC.States.Item("Default") 'Declare a variable that can be assigned to the SlideText sub-object 'that will be altered based on subject responses. 'Declare a variable that can be assigned to the ArthProb object. Dim theSlide As Slide Set theSlide = CSlide(Rte.GetObject("ArthProb")) Dim theState As SlideState Set theState = theSlide.States.Item("Default") Dim theSlideText As SlideText Set theSlideText = CSlideText(theState.Objects("StimulusText")) Dim theSlideTextFROM As SlideText Set theSlideTextFROM = CSlideText(theState.Objects("subfrom")) Dim theSlideTextP As SlideText Set theSlideTextP = CSlideText(theState.Objects("prompt")) Dim Answer As Long Answer = 2381 Set ArthProb.CRESP = Answer Do 'STARTS THE DO LOOP to repeat ArthProd for as long as the clock lasts. SlideOnsetTime = Clock.Read Set ArthProb.CRESP = Answer - 7 c.SetAttrib "CorrectAnswer" , ArthProb.CRESP theSlideTextFROM.Text = c.GetAttrib("CorrectAnswer") theSlideTextFROM.Draw ##### Stimlus Slide ###### ##### PendingResponses ###### Dim theResponseObject As RteRunnableInputObject Set theResponseObject = CRteRunnableInputObject(Rte.GetObject("ArthProb")) Dim nResponseCount As Long Dim theResponseData As ResponseData Do While theResponseObject.InputMasks.IsPending() If nResponseCount <> theResponseObject.InputMasks.Responses.Count Then nResponseCount = nResponseCount + 1 Set theResponseData = theResponseObject.InputMasks.Responses(nResponseCount) If Not theResponseData Is Nothing Then If Clock.Read >= lnEndTime Then boolBlockEnd = True Exit Do End If 'If theResponseData.RESP = ArthProb.CRESP Then 'I have tried both If ArthProb.RESP = ArthProb.CRESP Then ArthProb.ACC = 1 boolBlockEnd = False Exit Do Else ArthProb.ACC = 0 End If End If End If 'Give some time back (required) Sleep 10 DoEvents Loop Loop Until boolBlockEnd = True -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From sjflanary at gmail.com Fri Mar 23 18:31:45 2012 From: sjflanary at gmail.com (MTsf) Date: Fri, 23 Mar 2012 11:31:45 -0700 Subject: Connecting slides Message-ID: Hi all, I am trying to display a slide that offers a list of choices the participant can click on and it would then connect them to a different page (which they would have already viewed prior, they're just reviewing). Is there a way to connect pages like this? If not, is there a way for the person running the experiment (me) to review specific slides (say 18 out of 36) without having to run through all of them again? Any help would be greatly appreciated. Thank you!!!! -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From lundwall.becky at gmail.com Tue Mar 27 14:58:48 2012 From: lundwall.becky at gmail.com (BeckyL) Date: Tue, 27 Mar 2012 07:58:48 -0700 Subject: notify Pinnacle 700 USB of the exact time an event occurs in E-Prime? In-Reply-To: <4f6b467c.63d0320a.194f.6257SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thank you for your reply. I am certainly not very good with external DLLs. PST has been very helpful in the past but they said they don't offer support for this type of device. HOWEVER, the good news is that we found an *old *box (Video Timer VTG-33) which appears to solve the problem. It connects between the video and the computer and time stamps the video as it is saved. The Pinnacle device and software can then be used to view the video (with a time stamp) frame by frame. We are in the process of testing it now. On Thursday, March 22, 2012 10:34:16 AM UTC-5, McFarlane, David wrote: > > I have no experience with that particular device, but from your > message (and from Googling "Pinnacle Studio USB-700") I gather that > this device communicates solely through USB. In that case, you are > sunk, unless you are *very* good with externall DLLs. Or maybe you > will get lucky and someone else here will point you to a DLL file > with general-purpose USB communication routines, along with > instructions for how to use that with E-Basic (i.e., VBA). > > And as I often remind folks here, you might also take this up with > PST Web Support at > http://support.pstnet.com/e%2Dprime/support/login.asp , where they > strive to respond to all requests in 24-48 hours. And if you do get > an answer from PST staff, please extend the courtesy of posting their > reply back here for the sake of others. > > ----- > David McFarlane > E-Prime training > online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx > Twitter: @EPrimeMaster (twitter.com/EPrimeMaster > > > At 3/21/2012 10:01 AM Wednesday, you wrote: > >Has anyone used Pinnacle 700 USB (aka Pinnacle Studio USB-700) to > >capture video during an experiment? If so, do you know if this > >device can receive an event signal from E-Prime 2? > > > >Someone on site already has the Pinnacle 700 USB from another > >experiment (years ago, not using EP). We are trying to video tape > >eye movement after the presentation of a stimulus by EP and > >determine the direction and latency of eye movements from fixation > >to the stimulus (or a distractor). Unfortunately, Pinnacle Studio > >User's manual and support website are very weak. It does appear that > >Pinnacle has a type A/ type B USB cable that connects to the > >computer as well as general purpose video cables. > > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/NXhyrXgNXYUJ. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From catarina.melo.azevedo at gmail.com Thu Mar 29 11:31:12 2012 From: catarina.melo.azevedo at gmail.com (Catarina Azevedo) Date: Thu, 29 Mar 2012 04:31:12 -0700 Subject: Trigger event markers from Eprime to BIOPAC Message-ID: Hi all! I'm new in eprime and so I realize that this will be a beginner question.But I really need some help! I programmed an experiment in which participants will see first a block of English words and then a block of Dutch words (or the contrary, order was counterbalanced). The 40 words they will see in the first block will be chosen pseudo-randomly from a list of 80 words. In the second block they will see their translations. I found a way to do it with Nested lists (without scripts). Each participant will see 10 EnglishPositive, 10EnglishNegative, 10 EnglishNeutral, 10English Taboo and 10 DutchPositive, 10DutchNegative, 10 DutchNeutral and 10DutchTaboo words. I insert a column with the title "marker", being the options 1,2,3,4 for the english words and 5,6,7 and 8 for the dutch words (corresponding to the type of words). I would like to know the inline I should write and where so that I would have 8 different types of events in BIOPAC. I saw this one: xxx.OnsetSignalEnabled = True xxx.OnsetSignalPort = &H378 xxx.OnsetSignalData = 1 xxx.OffsetSignalEnabled = True xxx.OffsetSignalPort = &H378 xxx.OffsetSignalData = 2 But I if I put like this marker.OnsetSignalEnabled = True marker.OnsetSignalPort = &H378 marker.OnsetSignalData = 1 marker.OffsetSignalEnabled = True marker.OffsetSignalPort = &H378 marker.OffsetSignalData = 2 I'm not sure if it will specified the type of words (events) in Biopac. Here you have the es. file http://dl.dropbox.com/u/31016950/CAmarch2012quaseEXP.es Thank you for your attention Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Mar 29 15:46:39 2012 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 29 Mar 2012 11:46:39 -0400 Subject: Trigger event markers from Eprime to BIOPAC In-Reply-To: Message-ID: Catarina, Here's the deal: For some years I have personally provided copious free advice here (often starting with "do *all* the tutorials in the manuals"), partly as mental exercise & self-training, partly as public service, and partly to amuse myself. Now we have taken a good deal of that and packaged it into an online course, for which people must pay, and I cannot keep handing out the same answers that we have already covered. As it turns out, your very question is covered in the closing "fMRI, EEG, & Psychophysiology" lesson of our course, complete with an exercise in which I have you write a working program to do just what you descibe, and which I then personally grade. (The course also includes a Live Office Hour every week with me.) That's all I can tell you now. But if you hold on, some more generous folks here may supply your answer; or, try PST Web Support at http://support.pstnet.com/e%2Dprime/support/login.asp , where they strive to respond to all requests in 24-48 hours at no charge. Regards, ----- David McFarlane E-Prime training online: http://psychology.msu.edu/Workshops_Courses/eprime.aspx Twitter: @EPrimeMaster (twitter.com/EPrimeMaster) At 3/29/2012 07:31 AM Thursday, you wrote: >I'm new in eprime and so I realize that this will be a beginner >question.But I really need some help! > >I programmed an experiment in which participants will see first a >block of English words and then a block of Dutch words (or the >contrary, order was counterbalanced). The 40 words they will see in >the first block will be chosen pseudo-randomly from a list of 80 >words. In the second block they will see their translations. I found a >way to do it with Nested lists (without scripts). > >Each participant will see 10 EnglishPositive, 10EnglishNegative, 10 >EnglishNeutral, 10English Taboo and 10 DutchPositive, 10DutchNegative, >10 DutchNeutral and 10DutchTaboo words. > >I insert a column with the title "marker", being the options 1,2,3,4 >for the english words and 5,6,7 and 8 for the dutch words >(corresponding to the type of words). > >I would like to know the inline I should write and where so that I >would have 8 different types of events in BIOPAC. I saw this one: > >xxx.OnsetSignalEnabled = True >xxx.OnsetSignalPort = &H378 >xxx.OnsetSignalData = 1 > >xxx.OffsetSignalEnabled = True >xxx.OffsetSignalPort = &H378 >xxx.OffsetSignalData = 2 > >But I if I put like this > >marker.OnsetSignalEnabled = True >marker.OnsetSignalPort = &H378 >marker.OnsetSignalData = 1 > >marker.OffsetSignalEnabled = True >marker.OffsetSignalPort = &H378 >marker.OffsetSignalData = 2 > >I'm not sure if it will specified the type of words (events) in >Biopac. > >Here you have the es. file >http://dl.dropbox.com/u/31016950/CAmarch2012quaseEXP.es > >Thank you for your attention > >Catarina -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Thu Mar 29 20:43:24 2012 From: pfc.groot at gmail.com (Paul Groot) Date: Thu, 29 Mar 2012 22:43:24 +0200 Subject: Trigger event markers from Eprime to BIOPAC In-Reply-To: Message-ID: Hi Catarina, The SendPulse inline script of your es-file already contains a few lines to send a pulse using WritePort. You could replace them with something like this: DutWords.OnsetSignalEnabled = True DutWords.OnsetSignalPort = &H378 DutWords.OnsetSignalData = c.GetAttrib("marker") DutWords.OffsetSignalEnabled = True DutWords.OffsetSignalPort = &H378 DutWords.OffsetSignalData = 0 ' reset all digital lines to zero Since BioPac will acquire the 8 digital TTL lines as separate signals, you would probably want to use powers of two for the markers: 1,2,4,8,16,32,64 and128. If you don't use powers of two, you will get a mixture of simultaneous pulses. (You could use a calculation channel to convert the 8 digital channels back to a numerical one, but I would suggest you should only do this when you need more than 8 unique marker codes.) Also make sure that the marker attribute is defined in all relevant lists, because I noticed that the second part of your exp. is missing the marker attribute. I also have the feeling that part of your script contains duplicate (identical) objects. Perhaps you need duplicates in some places to be able to implement English/Dutch specific elements, but I'm sure that in some places you could (re)use the same E-Object. (For example Blank1 and Blank2 are probably identical). Although this is not a big deal in your script, I often see scripts having large amounts of copied objects. One of the side-effects of having duplicates is that the log-file will become unnecessary complex. Best, Paul 2012/3/29 Catarina Azevedo : > Hi all! > > I'm new in eprime and so I realize that this will be a beginner > question.But I really need some help! > > I programmed an experiment in which participants will see first a > block of English words and then a block of Dutch words (or the > contrary, order was counterbalanced). The 40 words they will see in > the first block will be chosen pseudo-randomly from a list of 80 > words. In the second block they will see their translations. I found a > way to do it with Nested lists (without scripts). > > Each participant will see 10 EnglishPositive, 10EnglishNegative, 10 > EnglishNeutral, 10English Taboo and 10 DutchPositive, 10DutchNegative, > 10 DutchNeutral and 10DutchTaboo words. > > I insert a column with the title "marker", being the options 1,2,3,4 > for the english words and 5,6,7 and 8 for the dutch words > (corresponding to the type of words). > > I would like to know the inline I should write and where so that I > would have 8 different types of events in BIOPAC. I saw this one: > > xxx.OnsetSignalEnabled = True > xxx.OnsetSignalPort = &H378 > xxx.OnsetSignalData = 1 > > xxx.OffsetSignalEnabled = True > xxx.OffsetSignalPort = &H378 > xxx.OffsetSignalData = 2 > > But I if I put like this > > marker.OnsetSignalEnabled = True > marker.OnsetSignalPort = &H378 > marker.OnsetSignalData = 1 > > marker.OffsetSignalEnabled = True > marker.OffsetSignalPort = &H378 > marker.OffsetSignalData = 2 > > I'm not sure if it will specified the type of words (events) in > Biopac. > > Here you have the es. file > http://dl.dropbox.com/u/31016950/CAmarch2012quaseEXP.es > > Thank you for your attention > > Catarina > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en.