From people82 at gmail.com Wed Sep 1 06:24:39 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Tue, 31 Aug 2010 23:24:39 -0700 Subject: using cedrus RB with e-prime Message-ID: Hi. I am trying to use the Cedrus RB with the e-prime. The response box needs a driver to work with the e-prime but the Cedrus support webpage has been out of order for over a month. Do any of you have the required driver downloaded in your computer? I would really appreciate it if you could send me the driver file. Thanks in ahead. ps. If anybody wants to know how to use the cedrus rb with e-prime I can send a manual from the cedrus homepage which I have downloaded before it shut down. -- 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 people82 at gmail.com Wed Sep 1 06:38:08 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Tue, 31 Aug 2010 23:38:08 -0700 Subject: sending trigger to other devices locked on to the time of response Message-ID: Hi to all. I was wondering if there is a way to send trigger signals locked on the response time. For instance, Stim.OnsetSignalEnabled = True Stim.OnsetSignalPort = &H378 Stim.OnsetSignalData = 1 WritePort &h378, 0 the above code send triggers at the onset of the object "Stim". However, I am trying to figure out a way to send triggers at the time of response of "Stim". I would greatly appreciate all tips and advices from you. 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 katie.umberson at gmail.com Thu Sep 2 13:45:50 2010 From: katie.umberson at gmail.com (Katie U) Date: Thu, 2 Sep 2010 06:45:50 -0700 Subject: sync E-Prime with other hardware Message-ID: I'm trying to sync E-Prime with psychophysiology hardware (Psylab, to be specific), and I was wondering if anyone knows about a device that will do this? -- 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 Sep 2 19:08:49 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 2 Sep 2010 15:08:49 -0400 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: Message-ID: Good timing -- It just so happens that I have been working on this very issue for a lab here. You have to make the proper settings in your stimulus, and use a bit of inline code following the stimulus. Here is the fully-commented inline code for my solution: '/---------------------------------------------------------------------- ' We wish to present a stimulus (in this case, StimText), get a ' response during that stimlus, and raise a signal as soon as the ' subject responds. ' ' To do that, we need to run this inline code during StimText. We ' could simply set the Duration of StimText to 0 or so (depending on ' considerations such as leaving some time between stimulus .OnsetSignal ' and .OffsetSignal) and then our code would have to also handle ' further stimulus timing. But with judicious use of Duration and ' PreRelease, E-Prime will automatically take care of stimulus timing ' for us. ' ' So instead we simply set the Duration of StimText as desired (which ' as a result automatically determines the target onset time for the ' next stimulus object), and we set the PreRelease of StimText to a ' suitably large value (preferably >= Duration, but perhaps less due ' to other considerations as mentioned earlier). Now this code will ' start to run soon after the onset of StimText, and handle the ' reaction to the subject response. ' ' Finally, this code simply makes use of .IsPending() to detect the ' response (see the InputMask.IsPending topic in the online E-Basic ' Help). Note that as a result StimText will last at least as long ' its input mask Time Limit, regardless of its Duration (if you just ' keep Time Limit at the default of "(same as duration)" then this ' will not pose a problem). Const LptDataPort as Integer = &H0378 ' adjust this for your system Const SignalData as Integer = &HFF ' adjust this for your device Const LoopDelay as Long = 2 'ms; set as small as possible for your ' system Do While StimText.InputMasks.IsPending() ' Some slower machines (such as my home laptop) need a delay so that ' EP can detect & handle input: Sleep LoopDelay Loop WritePort LptDataPort, SignalData '\---------------------------------------------------------------------- This is fine as long as you limit the response to coming during the stimulus. If you want to present a train of stimuli during the response period then you must do a little more. I also have a solution for that, but it is rather intricate and too much trouble to go into here, so I hope this is good enough for now. -- David McFarlane, Professional Faultfinder At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: >I was wondering if there is a way to send trigger signals locked on >the response time. > >For instance, > >Stim.OnsetSignalEnabled = True >Stim.OnsetSignalPort = &H378 >Stim.OnsetSignalData = 1 > > >WritePort &h378, 0 > >the above code send triggers at the onset of the object "Stim". > >However, I am trying to figure out a way to send triggers at the time >of response of "Stim". > >I would greatly appreciate all tips and advices from you. 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 neuropsych76 at gmail.com Thu Sep 2 22:41:46 2010 From: neuropsych76 at gmail.com (cogneuroisfun) Date: Thu, 2 Sep 2010 15:41:46 -0700 Subject: Combing two different tasks into one program In-Reply-To: <06db27fb-64fc-42cd-94d1-c9b86e027fd5@x25g2000yqj.googlegroups.com> Message-ID: Thank you for the reply. I did follow your advice and I understand how the nested list works. (i forgot i could do that for tasks) however, i keep on getting error messages about my inline script for one of my tasks. i keep on getting error messages about my script saying it cannot find certain things. however, everything for the task is there. does in line script often have problems when copying a procedure into another e-prime program? i cannot figure out how to stop getting error messages because it appears as everything should be there and working On Aug 9, 4:54 am, liwenna wrote: > hmmz how about.... > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > for task A, into level 2 nest the main list for task B, set both main > lists to exit after 1 trial. Tell the master list to repeat (in fixed > order) as many times as your total number of trials. > > I think something like that should do the trick :) > > best, > > liw > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > condition 2 with task A alternating with task B. So, it would be like > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > Both task A and B work great by themselves but I'm unsure how to make > > them alternate without butchering either task. Is there any option > > where I could only have the tasks alternate on a trial by trial basis? > > Right now I just can have task A do 50 trials and then task B do 50. > > I've been trying to play around with having new procedure making the > > tasks alternate but I don't know how to only have each task do one > > trial at a time. > > > Hopefully that made some sense, any help or guidance is greatly > > appreciated! > > > 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 mcfarla9 at msu.edu Fri Sep 3 00:37:35 2010 From: mcfarla9 at msu.edu (dkmcf) Date: Thu, 2 Sep 2010 17:37:35 -0700 Subject: Combing two different tasks into one program In-Reply-To: <4effe45c-35e0-4cb7-bd99-54ddf976fa60@f25g2000yqc.googlegroups.com> Message-ID: You need to sign up for a course in Introduction to Computer Programming. -- David McFarlane, Professional Faultfinder On Sep 2, 6:41 pm, cogneuroisfun wrote: > Thank you for the reply. I did follow your advice and I understand how > the nested list works. (i forgot i could do that for tasks) however, i > keep on getting error messages about my inline script for one of my > tasks. i keep on getting error messages about my script saying it > cannot find certain things. however, everything for the task is > there. > > does in line script often have problems when copying a procedure into > another e-prime program? > > i cannot figure out how to stop getting error messages because it > appears as everything should be there and working > On Aug 9, 4:54 am, liwenna wrote: > > > hmmz how about.... > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > for task A, into level 2 nest the main list for task B, set both main > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > order) as many times as your total number of trials. > > > I think something like that should do the trick :) > > > best, > > > liw > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > condition 2 with task A alternating with task B. So, it would be like > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > Both task A and B work great by themselves but I'm unsure how to make > > > them alternate without butchering either task. Is there any option > > > where I could only have the tasks alternate on a trial by trial basis? > > > Right now I just can have task A do 50 trials and then task B do 50. > > > I've been trying to play around with having new procedure making the > > > tasks alternate but I don't know how to only have each task do one > > > trial at a time. > > > > Hopefully that made some sense, any help or guidance is greatly > > > appreciated! > > > > 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 people82 at gmail.com Fri Sep 3 05:55:52 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Thu, 2 Sep 2010 22:55:52 -0700 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: <4c7ff663.8b19e70a.0de6.788bSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Dear Professional Faultfinder, Thanks for posting your script! In my experiment the response comes after the offset of the target stimulus. If it is not too much of a trouble, I would appreciate to hear about your solution to presenting other stimuli during the response period. Thanks again! On 9월3일, 오전4시08분, David McFarlane wrote: > Good timing -- It just so happens that I have been working on this > very issue for a lab here. You have to make the proper settings in > your stimulus, and use a bit of inline code following the > stimulus. Here is the fully-commented inline code for my solution: > > '/---------------------------------------------------------------------- > ' We wish to present a stimulus (in this case, StimText), get a > ' response during that stimlus, and raise a signal as soon as the > ' subject responds. > ' > ' To do that, we need to run this inline code during StimText. We > ' could simply set the Duration of StimText to 0 or so (depending on > ' considerations such as leaving some time between stimulus .OnsetSignal > ' and .OffsetSignal) and then our code would have to also handle > ' further stimulus timing. But with judicious use of Duration and > ' PreRelease, E-Prime will automatically take care of stimulus timing > ' for us. > ' > ' So instead we simply set the Duration of StimText as desired (which > ' as a result automatically determines the target onset time for the > ' next stimulus object), and we set the PreRelease of StimText to a > ' suitably large value (preferably >= Duration, but perhaps less due > ' to other considerations as mentioned earlier). Now this code will > ' start to run soon after the onset of StimText, and handle the > ' reaction to the subject response. > ' > ' Finally, this code simply makes use of .IsPending() to detect the > ' response (see the InputMask.IsPending topic in the online E-Basic > ' Help). Note that as a result StimText will last at least as long > ' its input mask Time Limit, regardless of its Duration (if you just > ' keep Time Limit at the default of "(same as duration)" then this > ' will not pose a problem). > > Const LptDataPort as Integer = &H0378 ' adjust this for your system > Const SignalData as Integer = &HFF ' adjust this for your device > Const LoopDelay as Long = 2 'ms; set as small as possible for your > ' system > > Do While StimText.InputMasks.IsPending() > ' Some slower machines (such as my home laptop) need a delay so that > ' EP can detect & handle input: > Sleep LoopDelay > Loop > WritePort LptDataPort, SignalData > '\---------------------------------------------------------------------- > > This is fine as long as you limit the response to coming during the > stimulus. If you want to present a train of stimuli during the > response period then you must do a little more. I also have a > solution for that, but it is rather intricate and too much trouble to > go into here, so I hope this is good enough for now. > > -- David McFarlane, Professional Faultfinder > > At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: > > > > >I was wondering if there is a way to send trigger signals locked on > >the response time. > > >For instance, > > >Stim.OnsetSignalEnabled = True > >Stim.OnsetSignalPort = &H378 > >Stim.OnsetSignalData = 1 > > >WritePort &h378, 0 > > >the above code send triggers at the onset of the object "Stim". > > >However, I am trying to figure out a way to send triggers at the time > >of response of "Stim". > > >I would greatly appreciate all tips and advices from you. 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 people82 at gmail.com Fri Sep 3 06:09:32 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Thu, 2 Sep 2010 23:09:32 -0700 Subject: sync E-Prime with other hardware In-Reply-To: <75888418-fdef-412a-a4f3-3e00941e1923@z28g2000yqh.googlegroups.com> Message-ID: I am not sure how the Psylab works, but if it can receive trigger information, you can send out triggers through the parallel port using the script below. Use the inline object and place it before the object you want to synchronize with. Stim is the name of object you want to send triggers on. Hope this works for you. Stim.OnsetSignalEnabled = True Stim.OnsetSignalPort = &H378 Stim.OnsetSignalData = 1 WritePort &h378, 0 On 9월2일, 오후10시45분, Katie U wrote: > I'm trying to sync E-Prime with psychophysiology hardware (Psylab, to > be specific), and I was wondering if anyone knows about a device that > will do this? -- 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 Sep 3 10:32:01 2010 From: liwenna at gmail.com (liwenna) Date: Fri, 3 Sep 2010 03:32:01 -0700 Subject: Combing two different tasks into one program In-Reply-To: Message-ID: I can imagine a whole bunch of different errors that could occur when combining tasks in the way you did now... make sure that all inlines that concern a procedure are nested on the same procedure. I couldnt'tell you the exact mechanics top of my head but I remember errors occurring from variables being declared (the dim lines) on a different level of the total task then where they are used. Also: variables can be declared only once... if both your tasks that have been merged now share a variable (or actually have two variables that have the same name but shouldn't be shared between the tasks) and both have inlines that declare this variables, this gives an error too. Just two possible errors that come to mind... carefully 'walk' trough your experiment to check all your inlines on discrepanties. Additionally you could post an error here to see if we can 'make anything of it' best, liw On Sep 3, 2:37 am, dkmcf wrote: > You need to sign up for a course in Introduction to Computer > Programming. > > -- David McFarlane, Professional Faultfinder > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > Thank you for the reply. I did follow your advice and I understand how > > the nested list works. (i forgot i could do that for tasks) however, i > > keep on getting error messages about my inline script for one of my > > tasks. i keep on getting error messages about my script saying it > > cannot find certain things. however, everything for the task is > > there. > > > does in line script often have problems when copying a procedure into > > another e-prime program? > > > i cannot figure out how to stop getting error messages because it > > appears as everything should be there and working > > On Aug 9, 4:54 am, liwenna wrote: > > > > hmmz how about.... > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > for task A, into level 2 nest the main list for task B, set both main > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > order) as many times as your total number of trials. > > > > I think something like that should do the trick :) > > > > best, > > > > liw > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > condition 2 with task A alternating with task B. So, it would be like > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > them alternate without butchering either task. Is there any option > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > I've been trying to play around with having new procedure making the > > > > tasks alternate but I don't know how to only have each task do one > > > > trial at a time. > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > appreciated! > > > > > 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 mcfarla9 at msu.edu Fri Sep 3 13:41:06 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 09:41:06 -0400 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: <16ea7cbc-8171-4ed9-a9b6-082aeb66a7e2@l32g2000prn.googlegro ups.com> Message-ID: Well, here's the deal. That solution is too involved for me to write out as a post to the Group. But I have it all arranged in a very nice demo program. But I cannot let myself become a curator for a library of demo programs (I have more than this in my growing collection). So, if someone can send me instructions for how to upload my demo program file to a place where *everyone* can download it from then on, then I would be very happy to share that and more with the community. -- David McFarlane, Professional Faultfinder >Dear Professional Faultfinder, > >Thanks for posting your script! >In my experiment the response comes after the offset of the target >stimulus. >If it is not too much of a trouble, I would appreciate to hear about >your >solution to presenting other stimuli during the response period. > >Thanks again! > > >On 9ì›”3ì ¼, ì˜¤ì „4ì‹œ08분, David McFarlane wrote: > > Good timing -- It just so happens that I have been working on this > > very issue for a lab here. You have to make the proper settings in > > your stimulus, and use a bit of inline code following the > > stimulus. Here is the fully-commented inline code for my solution: > > > > '/---------------------------------------------------------------------- > > ' We wish to present a stimulus (in this case, StimText), get a > > ' response during that stimlus, and raise a signal as soon as the > > ' subject responds. > > ' > > ' To do that, we need to run this inline code during StimText. We > > ' could simply set the Duration of StimText to 0 or so (depending on > > ' considerations such as leaving some time between stimulus .OnsetSignal > > ' and .OffsetSignal) and then our code would have to also handle > > ' further stimulus timing. But with judicious use of Duration and > > ' PreRelease, E-Prime will automatically take care of stimulus timing > > ' for us. > > ' > > ' So instead we simply set the Duration of StimText as desired (which > > ' as a result automatically determines the target onset time for the > > ' next stimulus object), and we set the PreRelease of StimText to a > > ' suitably large value (preferably >= Duration, but perhaps less due > > ' to other considerations as mentioned earlier). Now this code will > > ' start to run soon after the onset of StimText, and handle the > > ' reaction to the subject response. > > ' > > ' Finally, this code simply makes use of .IsPending() to detect the > > ' response (see the InputMask.IsPending topic in the online E-Basic > > ' Help). Note that as a result StimText will last at least as long > > ' its input mask Time Limit, regardless of its Duration (if you just > > ' keep Time Limit at the default of "(same as duration)" then this > > ' will not pose a problem). > > > > Const LptDataPort as Integer = &H0378 ' adjust this for your system > > Const SignalData as Integer = &HFF ' adjust this for your device > > Const LoopDelay as Long = 2 'ms; set as small as possible for your > > ' system > > > > Do While StimText.InputMasks.IsPending() > > ' Some slower machines (such as my > home laptop) need a delay so that > > ' EP can detect & handle input: > > Sleep LoopDelay > > Loop > > WritePort LptDataPort, SignalData > > '\---------------------------------------------------------------------- > > > > This is fine as long as you limit the response to coming during the > > stimulus. If you want to present a train of stimuli during the > > response period then you must do a little more. I also have a > > solution for that, but it is rather intricate and too much trouble to > > go into here, so I hope this is good enough for now. > > > > -- David McFarlane, Professional Faultfinder > > > > At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: > > > > > > > > >I was wondering if there is a way to send trigger signals locked on > > >the response time. > > > > >For instance, > > > > >Stim.OnsetSignalEnabled = True > > >Stim.OnsetSignalPort = &H378 > > >Stim.OnsetSignalData = 1 > > > > >WritePort &h378, 0 > > > > >the above code send triggers at the onset of the object "Stim". > > > > >However, I am trying to figure out a way to send triggers at the time > > >of response of "Stim". > > > > >I would greatly appreciate all tips and advices from you. 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 jasoncraggs at gmail.com Fri Sep 3 15:39:12 2010 From: jasoncraggs at gmail.com (Jason) Date: Fri, 3 Sep 2010 08:39:12 -0700 Subject: (Not) Understanding edat time variable(s) Message-ID: Greetings, In my edat file there are several time related variables with values that vex me. For example, the variable 'RunTime' = 14:45:07, which I understand. However the variable 'RunStartTime' = 162726 completely vexes me. Any insight into this would be greatly appreciated. Best regards, Jason -- 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 Sep 3 15:46:12 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 11:46:12 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: Message-ID: Jason, I have a *lot* of experience with EP and .edat files, and I do not recognize these as standard attributes that would be added automatically. Therefore, they must have been added by whoever made your specific EP program, and you have to ask that person. No one here will be able to help you, sorry. -- David McFarlane, Professional Faultfinder >In my edat file there are several time related variables with values >that vex me. For example, the variable 'RunTime' = 14:45:07, which I >understand. However the variable 'RunStartTime' = 162726 completely >vexes me. Any insight into this would be greatly appreciated. > >Best regards, >Jason -- 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 Sep 3 16:28:40 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 12:28:40 -0400 Subject: Wisconsin card sorting test In-Reply-To: <4c7d74b5.8b19e70a.3af0.4a3fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: After casting about far & wide, I found a complete set of WCST materials right here at my own institution. So I am all set there now, my thanks to everyone who replied. Now I need to finish this project and submit it to STEP. I will probably do this in stages. As stated earlier, programming the basic control logic for merely administering the test is the easy part, and I have that worked out already with a mere text-only keyboard-response model. Adding the graphics and improving the response methods will take a little more tedious work. I might submit a first draft once I get that far. Then the hard work comes when I add computation of all the customary raw WCST scores. With that accomplished I would consider the project finished -- I have no hope of going the extra yard to have it convert raw summary scores into demographically corrected normed scores, for that users will need to consult the Wisconsion Card Sorting Test Manual, Revised and Expanded, by Robert K. Heaton et al. (1993), Psychological Assessment Resources, Inc., Lutz, Florida, USA, or use WCST scoring software. -- David McFarlane, Professional Faultfinder At 8/31/2010 05:31 PM Tuesday, David McFarlane wrote: >Oh, forgot to say, if interested then please contact me directly by >e-mail (off the list). > >Thanks, >David McFarlane, Professional Faultfinder > > >>For those of you who might not read beyond the first line: I will >>write a professional quality WCST in EP for no charge, if I can >>only get a bit of help. Read on if interested... >> >>Well, despite the reservations I expressed earlier, on my own time >>I went ahead and threw together a working skeleton in EP for the >>WCST, just to flex my E-Prime muscles. The basic control logic is >>really quite simple, and with a couple of tricks (e.g., nested >>attribute references) the E-Prime design is rather sleek. >> >>I would like to complete this project to my usual professional >>standards and then submit it for inclusion in the public STEP >>library so that everyone can use it. In short, I aim to make this >>no less than a completely faithful computerized replica of the >>standardized test, in EP. But to do that I will need many more >>specific details on the mechanics of the standardized test. E.g., >>I have been told that the standardized test presents the "response" >>cards in the same pre-ordained sequence for each run, and I need to >>know that sequence. Also, if I can get hold of the scoring rules >>then I might even have a whack at that, although I think it enough >>just to have the program administer the test & record raw >>data. (It would also be nice if I could get someone else to do the >>card graphics, as I am lousy at graphics -- I would need only 16 >>image files, not all 64, since I know how to make EP change the >>colors.) I should be able to learn all I need from the official >>WCST Manual, with perhaps a look at a printed card deck. But a >>manual costs $115, and a card deck $170, more than I care to spend >>for something that is, for me at least, only a hobby project. >> >>So here's the deal: If any of you can help me get access to >>materials that fully specify the mechanics of the test (ideally the >>printed Manual and/or cards) then I will complete this project in >>short order and you will all have a professional quality WCST in EP. >> >>-- David McFarlane, Professional Faultfinder >> >> >>At 8/23/2010 05:24 PM Monday, David McFarlane wrote: >>>Well, I toyed with the idea of making a simple WCST in E-Prime >>>just to amuse myself. But when I looked into it further, I got puzzled. >>> >>>The WCST started off with simple printed materials administered >>>manually by a human examiner. Clearly the WCST does not require >>>millisecond precision. So if we simply want to automate it, why >>>use such an expensive, specialized, and heavyweight platform as >>>E-Prime? Wouldn't it make more sense to use some more common >>>platform such as JavaScript, or Flash, or Python, or even straight >>>Visual Basic? Note that the WCST was automated using simple Turbo >>>Basic (for DOS?) as far back as 1996. Isn't this another case of, >>>"When all you have is a hammer, every problem looks like a >>>nail" Or, insofar as I have not kept up with the literature on >>>the WCST, am I just missing something that is obvious to the rest of you? >>> >>>Also, apparently scoring the test is quite complex (perseverative >>>errors, nonperseverative errors, etc.), so building that into the >>>program (as opposed to leaving that to later data analysis) would >>>take some care. >>> >>>Finally, did anyone else know that the term "Wisconsin Card >>>Sorting Test" was trademarked by Wells Printing and Digital >>>Services of Madison, Wisconsin, USA (see >>>http://en.wikipedia.org/wiki/Wisconsin_card_sort )? So we cannot >>>give the name "Wisconsin Card Sorting Test" to any printed >>>materials that we produce, but since the trademark does not cover >>>computerized versions we may continue to use the name "Wisconsin >>>Card Sorting Test" for our computerized versions. >>> >>>With all that said, note that someone did make an automated WCST >>>demo for Inquisit's Millisecond >>>(http://www.millisecond.com/download/samples/v3/CardSort ), though >>>I do not know what data it stores or how it handles the test scoring. >>> >>>-- David McFarlane, Professional Faultfinder >>> >>> >>>At 8/20/2010 12:10 PM Friday, David McFarlane wrote: >>>>As far as I can tell no one has made an E-Prime WCST available on >>>>the Web. It would be quite interesting to make one. As I >>>>recall, in essence the task involves operantly rewarding the >>>>subject for correctly following an undisclosed rule, changing the >>>>rule whenever the subject achieves an overall success criterion, >>>>and seeing how well the subject can adapt to the changing >>>>rules. This would require some interesting code in E-Prime, in >>>>particular scoring the success rate and then changing the >>>>"correct" rule on the fly, but it could be done. Wish I had the >>>>liberty to do it myself. >>>> >>>>-- David McFarlane, Professional Faultfinder -- 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 jasoncraggs at gmail.com Fri Sep 3 16:42:05 2010 From: jasoncraggs at gmail.com (Jason) Date: Fri, 3 Sep 2010 09:42:05 -0700 Subject: (Not) Understanding edat time variable(s) In-Reply-To: <4c811849.45b9e70a.4094.ffffe0aaSMTPIN_ADDED@gmr-mx.google.com> Message-ID: David, Thanks for the quick response and "unfortunate" information about the variables. As this paradigm will be used for fMRI research, perhaps these are variables declared by IFIS. Regardless, more legwork is needed. Cheers, Jason On Sep 3, 11:46 am, David McFarlane wrote: > Jason, > > I have a *lot* of experience with EP and .edat files, and I do not > recognize these as standard attributes that would be added > automatically.  Therefore, they must have been added by whoever made > your specific EP program, and you have to ask that person.  No one > here will be able to help you, sorry. > > -- David McFarlane, Professional Faultfinder > > >In my edat file there are several time related variables with values > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I > >understand. However the variable 'RunStartTime' = 162726 completely > >vexes me. Any insight into this would be greatly appreciated. > > >Best regards, > >Jason -- 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 Sep 3 17:15:14 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 13:15:14 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: Message-ID: Jason, Ah, IFIS! You didn't say that at the start, in that case all bets are off! We used IFIS for many years and finally abondoned it a few years back for our own custom setup, what a relief! I can't believe anyone still uses that outmoded system. IFIS is a mess, it forces a draconian task structure using several PackageCalls, it adds all sorts of attributes and overrides your E-Prime settings with settings that it hides in several Lists in Unreferenced E-Objects without explanation, and generally completely violates the well-designed task representation already provided by the designers of E-Prime. And it requires two computers for no good reason, and requires leaving a wide open network share, what an invitation for hackers! And the documentation is even worse than that for E-Prime, I had to work out all the principles and "gotchas" myself and distilled it down to a three-page writeup that explained more than their entire sorry excuse for a manual. Don't get me started! I feel sorry for you. -- David McFarlane, Professional Faultfinder At 9/3/2010 12:42 PM Friday, you wrote: >David, > >Thanks for the quick response and "unfortunate" information about the >variables. As this paradigm will be used for fMRI research, perhaps >these are variables declared by IFIS. Regardless, more legwork is >needed. > >Cheers, >Jason > > > >On Sep 3, 11:46 am, David McFarlane wrote: > > Jason, > > > > I have a *lot* of experience with EP and .edat files, and I do not > > recognize these as standard attributes that would be added > > automatically. Therefore, they must have been added by whoever made > > your specific EP program, and you have to ask that person. No one > > here will be able to help you, sorry. > > > > -- David McFarlane, Professional Faultfinder > > > > >In my edat file there are several time related variables with values > > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I > > >understand. However the variable 'RunStartTime' = 162726 completely > > >vexes me. Any insight into this would be greatly appreciated. > > > > >Best regards, > > >Jason -- 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 neuropsych76 at gmail.com Fri Sep 3 17:16:43 2010 From: neuropsych76 at gmail.com (cogneuroisfun) Date: Fri, 3 Sep 2010 10:16:43 -0700 Subject: Combing two different tasks into one program In-Reply-To: <9eea91aa-cfb5-4585-991a-d624caca486d@a36g2000yqc.googlegroups.com> Message-ID: I kept receiving errors such as: "error found during compile. Get attrib:missing parameters. Variable not defined" The problem is I did check through my procedure and my variable was defined and I wasn't missing any parameters. I don't think I had any items that were the same name between the tasks. I'm sure pasting the procedure inside another task can cause problems but I'm just not sure where to look since it looks like I have everything I need to run both tasks. On Sep 3, 6:32 am, liwenna wrote: > I can imagine a whole bunch of different errors that could occur when > combining tasks in the way you did now... > > make sure that all inlines that concern a procedure are nested on the > same procedure. I couldnt'tell you the exact mechanics top of my head > but I remember errors occurring from variables being declared (the dim > lines) on a different level of the total task then where they are > used. > > Also: variables can be declared only once... if both your tasks that > have been merged now share a variable (or actually have two variables > that have the same name but shouldn't be shared between the tasks) and > both have inlines that declare this variables, this gives an error > too. > > Just two possible errors that come to mind... carefully 'walk' trough > your experiment to check all your inlines on discrepanties. > > Additionally you could post an error here to see if we can 'make > anything of it' > > best, > > liw > > On Sep 3, 2:37 am, dkmcf wrote: > > > You need to sign up for a course in Introduction to Computer > > Programming. > > > -- David McFarlane, Professional Faultfinder > > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > > Thank you for the reply. I did follow your advice and I understand how > > > the nested list works. (i forgot i could do that for tasks) however, i > > > keep on getting error messages about my inline script for one of my > > > tasks. i keep on getting error messages about my script saying it > > > cannot find certain things. however, everything for the task is > > > there. > > > > does in line script often have problems when copying a procedure into > > > another e-prime program? > > > > i cannot figure out how to stop getting error messages because it > > > appears as everything should be there and working > > > On Aug 9, 4:54 am, liwenna wrote: > > > > > hmmz how about.... > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > for task A, into level 2 nest the main list for task B, set both main > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > order) as many times as your total number of trials. > > > > > I think something like that should do the trick :) > > > > > best, > > > > > liw > > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > them alternate without butchering either task. Is there any option > > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > I've been trying to play around with having new procedure making the > > > > > tasks alternate but I don't know how to only have each task do one > > > > > trial at a time. > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > appreciated! > > > > > > 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 neuropsych76 at gmail.com Fri Sep 3 17:18:58 2010 From: neuropsych76 at gmail.com (cogneuroisfun) Date: Fri, 3 Sep 2010 10:18:58 -0700 Subject: Combing two different tasks into one program In-Reply-To: Message-ID: I had someone with a programming background look at my program and were uncertain how to fix it as well. Is copying over a procedure a bad way to add another task in? Would creating both programs from scratch avoid some script compile problems? On Sep 2, 8:37 pm, dkmcf wrote: > You need to sign up for a course in Introduction to Computer > Programming. > > -- David McFarlane, Professional Faultfinder > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > Thank you for the reply. I did follow your advice and I understand how > > the nested list works. (i forgot i could do that for tasks) however, i > > keep on getting error messages about my inline script for one of my > > tasks. i keep on getting error messages about my script saying it > > cannot find certain things. however, everything for the task is > > there. > > > does in line script often have problems when copying a procedure into > > another e-prime program? > > > i cannot figure out how to stop getting error messages because it > > appears as everything should be there and working > > On Aug 9, 4:54 am, liwenna wrote: > > > > hmmz how about.... > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > for task A, into level 2 nest the main list for task B, set both main > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > order) as many times as your total number of trials. > > > > I think something like that should do the trick :) > > > > best, > > > > liw > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > condition 2 with task A alternating with task B. So, it would be like > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > them alternate without butchering either task. Is there any option > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > I've been trying to play around with having new procedure making the > > > > tasks alternate but I don't know how to only have each task do one > > > > trial at a time. > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > appreciated! > > > > > 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 jasoncraggs at gmail.com Fri Sep 3 18:02:40 2010 From: jasoncraggs at gmail.com (Jason Craggs) Date: Fri, 3 Sep 2010 14:02:40 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: <4c812d49.194de70a.479e.ffffee60SMTPIN_ADDED@gmr-mx.google.com> Message-ID: David, Yes, I've apparently waded into a quagmire, one successfully avoided for years... While I am grateful for your response, learning that you've never come across such a variable given your experiences with IFIS is not great news. That said however, you wouldn't happen to have a copy of that "documentation" that you'd be willing to "share" would you? Cheers, Jason On Fri, Sep 3, 2010 at 1:15 PM, David McFarlane wrote: > Jason, > > Ah, IFIS! You didn't say that at the start, in that case all bets are off! > We used IFIS for many years and finally abondoned it a few years back for > our own custom setup, what a relief! I can't believe anyone still uses that > outmoded system. IFIS is a mess, it forces a draconian task structure using > several PackageCalls, it adds all sorts of attributes and overrides your > E-Prime settings with settings that it hides in several Lists in > Unreferenced E-Objects without explanation, and generally completely > violates the well-designed task representation already provided by the > designers of E-Prime. And it requires two computers for no good reason, and > requires leaving a wide open network share, what an invitation for hackers! > And the documentation is even worse than that for E-Prime, I had to work > out all the principles and "gotchas" myself and distilled it down to a > three-page writeup that explained more than their entire sorry excuse for a > manual. Don't get me started! I feel sorry for you. > > -- David McFarlane, Professional Faultfinder > > > > At 9/3/2010 12:42 PM Friday, you wrote: > >> David, >> >> Thanks for the quick response and "unfortunate" information about the >> variables. As this paradigm will be used for fMRI research, perhaps >> these are variables declared by IFIS. Regardless, more legwork is >> needed. >> >> Cheers, >> Jason >> >> >> >> On Sep 3, 11:46 am, David McFarlane wrote: >> > Jason, >> > >> > I have a *lot* of experience with EP and .edat files, and I do not >> > recognize these as standard attributes that would be added >> > automatically. Therefore, they must have been added by whoever made >> > your specific EP program, and you have to ask that person. No one >> > here will be able to help you, sorry. >> > >> > -- David McFarlane, Professional Faultfinder >> > >> > >In my edat file there are several time related variables with values >> > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I >> > >understand. However the variable 'RunStartTime' = 162726 completely >> > >vexes me. Any insight into this would be greatly appreciated. >> > >> > >Best regards, >> > >Jason >> > > -- > 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 mcfarla9 at msu.edu Fri Sep 3 18:21:20 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 14:21:20 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: Message-ID: Jason, Oops, let's clarify that for the record -- I never said that I never came across such "variables" (the correct term is "attribute", variables are something very different and we must not get them mixed up) in IFIS, I only said that I had never come across such attributes in standard E-Prime .edat files. Those attributes may very well be a standard part of IFIS, but my memory of IFIS is so painful that I do not care to recall such details. It would make more sense to re-post this thread as "(Not) Understanding IFIS time attribute(s)". As to my little writeup, well, I might just dredge that up and send it to you separately, as long as you promise not to ask me any further questions about it. But that will have to wait -- it's 2:15p here in the Easter Time Zone of the USA, I have not had lunch, I have been officially off duty since 1p, I am sitll facing a flurry and backlog of e-mail, and I have tons of other work to take care of for others. So you will understand if I treat this as low priority. Maybe some time after the weekend. In the meantime, see what you can make of the IFIS documentation yourself. Regards, -- David McFarlane, Professional Faultfinder >Yes, I've apparently waded into a quagmire, one successfully avoided >for years... While I am grateful for your response, learning that >you've never come across such a variable given your experiences with >IFIS is not great news. That said however, you wouldn't happen to >have a copy of that "documentation" that you'd be willing to "share" would you? > >Cheers, >Jason > > >On Fri, Sep 3, 2010 at 1:15 PM, David McFarlane ><mcfarla9 at msu.edu> wrote: >Jason, > >Ah, IFIS! You didn't say that at the start, in that case all bets >are off! We used IFIS for many years and finally abondoned it a few >years back for our own custom setup, what a relief! I can't believe >anyone still uses that outmoded system. IFIS is a mess, it forces a >draconian task structure using several PackageCalls, it adds all >sorts of attributes and overrides your E-Prime settings with >settings that it hides in several Lists in Unreferenced E-Objects >without explanation, and generally completely violates the >well-designed task representation already provided by the designers >of E-Prime. And it requires two computers for no good reason, and >requires leaving a wide open network share, what an invitation for >hackers! And the documentation is even worse than that for E-Prime, >I had to work out all the principles and "gotchas" myself and >distilled it down to a three-page writeup that explained more than >their entire sorry excuse for a manual. Don't get me started! I >feel sorry for you. > >-- David McFarlane, Professional Faultfinder > > > >At 9/3/2010 12:42 PM Friday, you wrote: >David, > >Thanks for the quick response and "unfortunate" information about the >variables. As this paradigm will be used for fMRI research, perhaps >these are variables declared by IFIS. Regardless, more legwork is >needed. > >Cheers, >Jason > > > >On Sep 3, 11:46 am, David McFarlane ><mcfar... at msu.edu> wrote: > > Jason, > > > > I have a *lot* of experience with EP and .edat files, and I do not > > recognize these as standard attributes that would be added > > automatically. Therefore, they must have been added by whoever made > > your specific EP program, and you have to ask that person. No one > > here will be able to help you, sorry. > > > > -- David McFarlane, Professional Faultfinder > > > > >In my edat file there are several time related variables with values > > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I > > >understand. However the variable 'RunStartTime' = 162726 completely > > >vexes me. Any insight into this would be greatly appreciated. > > > > >Best regards, > > >Jason -- 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 Sep 3 18:09:43 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 14:09:43 -0400 Subject: Combing two different tasks into one program In-Reply-To: <4dfd84d3-59db-4ba4-a529-5e8bd1b77e46@u4g2000prn.googlegrou ps.com> Message-ID: Having someone with a "programming background" look at it is a good start, they should at least now grasp elementary programming concepts that will help them understand the issues involved. Now they need to train themselves in the specifics of E-Prime, or perhaps more generally in Microsoft Visual Basic, upon which EP is based. Better if you were to become that person yourself. I think most of your problem comes from just lacking sufficient training in general, which then interferes with the insight you will need to make any use of advice here -- in short, like all too many EP users, you are trying to learn to run before you can walk. Regards, -- David McFarlane, Professional Faultfinder >I had someone with a programming background look at my program and >were uncertain how to fix it as well. Is copying over a procedure a >bad way to add another task in? Would creating both programs from >scratch avoid some script compile problems? > >On Sep 2, 8:37 pm, dkmcf wrote: > > You need to sign up for a course in Introduction to Computer > > Programming. > > > > -- David McFarlane, Professional Faultfinder > > > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > > > Thank you for the reply. I did follow your advice and I understand how > > > the nested list works. (i forgot i could do that for tasks) however, i > > > keep on getting error messages about my inline script for one of my > > > tasks. i keep on getting error messages about my script saying it > > > cannot find certain things. however, everything for the task is > > > there. > > > > > does in line script often have problems when copying a procedure into > > > another e-prime program? > > > > > i cannot figure out how to stop getting error messages because it > > > appears as everything should be there and working > > > On Aug 9, 4:54 am, liwenna wrote: > > > > > > hmmz how about.... > > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > for task A, into level 2 nest the main list for task B, set both main > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > order) as many times as your total number of trials. > > > > > > I think something like that should do the trick :) > > > > > > best, > > > > > > liw > > > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > them alternate without butchering either task. Is there any option > > > > > where I could only have the tasks alternate on a trial by > trial basis? > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > I've been trying to play around with having new procedure making the > > > > > tasks alternate but I don't know how to only have each task do one > > > > > trial at a time. > > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > appreciated! > > > > > > > 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 liwenna at gmail.com Sat Sep 4 10:54:27 2010 From: liwenna at gmail.com (liwenna) Date: Sat, 4 Sep 2010 03:54:27 -0700 Subject: Combing two different tasks into one program In-Reply-To: <4c813cdd.194de70a.479e.fffff46fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: variable not defined, sounds as if a dim line (declaring the variable) is missing or misplaced. Carefully go trough your inlines to see if al variables are declared either within the procedure (context) that it has to be used in or on the usertab of the script window. On 3 sep, 20:09, David McFarlane wrote: > Having someone with a "programming background" look at it is a good > start, they should at least now grasp elementary programming concepts > that will help them understand the issues involved.  Now they need to > train themselves in the specifics of E-Prime, or perhaps more > generally in Microsoft Visual Basic, upon which EP is based.  Better > if you were to become that person yourself.  I think most of your > problem comes from just lacking sufficient training in general, which > then interferes with the insight you will need to make any use of > advice here -- in short, like all too many EP users, you are trying > to learn to run before you can walk. > > Regards, > -- David McFarlane, Professional Faultfinder > > >I had someone with a programming background look at my program and > >were uncertain how to fix it as well. Is copying over a procedure a > >bad way to add another task in? Would creating both programs from > >scratch avoid some script compile problems? > > >On Sep 2, 8:37 pm, dkmcf wrote: > > > You need to sign up for a course in Introduction to Computer > > > Programming. > > > > -- David McFarlane, Professional Faultfinder > > > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > > > Thank you for the reply. I did follow your advice and I understand how > > > > the nested list works. (i forgot i could do that for tasks) however, i > > > > keep on getting error messages about my inline script for one of my > > > > tasks. i keep on getting error messages about my script saying it > > > > cannot find certain things. however, everything for the task is > > > > there. > > > > > does in line script often have problems when copying a procedure into > > > > another e-prime program? > > > > > i cannot figure out how to stop getting error messages because it > > > > appears as everything should be there and working > > > > On Aug 9, 4:54 am, liwenna wrote: > > > > > > hmmz how about.... > > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > > for task A, into level 2 nest the main list for task B, set both main > > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > > order) as many times as your total number of trials. > > > > > > I think something like that should do the trick :) > > > > > > best, > > > > > > liw > > > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > > them alternate without butchering either task. Is there any option > > > > > > where I could only have the tasks alternate on a trial by > > trial basis? > > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > > I've been trying to play around with having new procedure making the > > > > > > tasks alternate but I don't know how to only have each task do one > > > > > > trial at a time. > > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > > appreciated! > > > > > > > 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 Michiel.Spape at nottingham.ac.uk Mon Sep 6 12:56:59 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 6 Sep 2010 13:56:59 +0100 Subject: Combing two different tasks into one program In-Reply-To: Message-ID: Hi, Just to voice my agreement with what David said before, as this "The problem is I did check through my procedure and my variable was defined and I wasn't missing any parameters." This makes no sense from a programming point of view. E-Prime can be exasperating, but it is not a liar: your variable was not found as defined, and you were (i.e. your code was) missing parameters. Possibly, you wrote something like "Get attrib", (instead of, for example, c.GetAttrib("myAttrib") - mind that every little symbol is important here, except the casing, and that Get Attrib does not mean anything in EPrime) which would return something you describe, which sounds exactly like David's comment about running (writing inline, which people often find more advanced) before learning how to walk (understanding attributes, working with E-Prime basics). Sorry if that sounds needlessly mean; it is not my intention. If you want help from this list, here's a few tips: - As said below: post an error, not summarise it and vainly hope people can make sense. Copy-paste the output, note the exact error number, and explain at what point it runs into this error. - None of us has telepathic capabilities: explain the whole issue. What type of procedure are you trying to copy? Are you using EPrime 2? Does the procedure contain inlines, textdisplays, etc? Have you tried copying single objects (not procedures) instead? Where does the error occur? Start? End? Randomly? Or is it always the same line of inline code? If so, copy the code. I've never copied procedures between programmes, and I don't think it is even possible (but if it is, it wouldn't help much, because, all in all, the procedure itself is nothing but 'first do this' 'now do this'). Copying single objects (that define what 'this' is) is, however. It's a bit like forgetting the ORDER between the items of your shopping list isn't nearly as annoying as losing either the shopping list (i.e. the List object), or forgetting some items (textdisplays, etc). - Have a look at the getting-started guide/e-primer, etc. Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of cogneuroisfun Sent: 03 September 2010 18:17 To: E-Prime Subject: Re: Combing two different tasks into one program I kept receiving errors such as: "error found during compile. Get attrib:missing parameters. Variable not defined" The problem is I did check through my procedure and my variable was defined and I wasn't missing any parameters. I don't think I had any items that were the same name between the tasks. I'm sure pasting the procedure inside another task can cause problems but I'm just not sure where to look since it looks like I have everything I need to run both tasks. On Sep 3, 6:32 am, liwenna wrote: > I can imagine a whole bunch of different errors that could occur when > combining tasks in the way you did now... > > make sure that all inlines that concern a procedure are nested on the > same procedure. I couldnt'tell you the exact mechanics top of my head > but I remember errors occurring from variables being declared (the dim > lines) on a different level of the total task then where they are > used. > > Also: variables can be declared only once... if both your tasks that > have been merged now share a variable (or actually have two variables > that have the same name but shouldn't be shared between the tasks) and > both have inlines that declare this variables, this gives an error > too. > > Just two possible errors that come to mind... carefully 'walk' trough > your experiment to check all your inlines on discrepanties. > > Additionally you could post an error here to see if we can 'make > anything of it' > > best, > > liw > > On Sep 3, 2:37 am, dkmcf wrote: > > > You need to sign up for a course in Introduction to Computer > > Programming. > > > -- David McFarlane, Professional Faultfinder > > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > > Thank you for the reply. I did follow your advice and I understand how > > > the nested list works. (i forgot i could do that for tasks) however, i > > > keep on getting error messages about my inline script for one of my > > > tasks. i keep on getting error messages about my script saying it > > > cannot find certain things. however, everything for the task is > > > there. > > > > does in line script often have problems when copying a procedure into > > > another e-prime program? > > > > i cannot figure out how to stop getting error messages because it > > > appears as everything should be there and working > > > On Aug 9, 4:54 am, liwenna wrote: > > > > > hmmz how about.... > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > for task A, into level 2 nest the main list for task B, set both main > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > order) as many times as your total number of trials. > > > > > I think something like that should do the trick :) > > > > > best, > > > > > liw > > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > them alternate without butchering either task. Is there any option > > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > I've been trying to play around with having new procedure making the > > > > > tasks alternate but I don't know how to only have each task do one > > > > > trial at a time. > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > appreciated! > > > > > > 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 people82 at gmail.com Tue Sep 7 05:32:53 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Mon, 6 Sep 2010 22:32:53 -0700 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: <4c80faf5.194de70a.4fd7.ffffcc35SMTPIN_ADDED@gmr-mx.google.com> Message-ID: I suggest couple of ways to upload e-prime related files. One way is to open a ftp. I can personally run a server computer for it. The advantage of it is that files can be uploaded at unlimited numbers and capacity. Also, access to the file is comparatively simple. The downside is that the server computer can be unstable. I can guarantee you that I will run it 24/7 for at least a year. Another solution is to simply use a file-hosting site. As most of you know the 'RapidShare' provides 200 mb of space for each upload. It does not require any personal information other that the email address. Simply uploading the file on rapidshare and distributing the URL will probably let the people in this forum share the source file. On 9월3일, 오후10시41분, David McFarlane wrote: > Well, here's the deal.  That solution is too > involved for me to write out as a post to the > Group.  But I have it all arranged in a very nice > demo program.  But I cannot let myself become a > curator for a library of demo programs (I have > more than this in my growing collection).  So, if > someone can send me instructions for how to > upload my demo program file to a place where > *everyone* can download it from then on, then I > would be very happy to share that and more with the community. > > -- David McFarlane, Professional Faultfinder > > > > >Dear Professional Faultfinder, > > >Thanks for posting your script! > >In my experiment the response comes after the offset of the target > >stimulus. > >If it is not too much of a trouble, I would appreciate to hear about > >your > >solution to presenting other stimuli during the response period. > > >Thanks again! > > >On 9ì›”3ì ¼, ì˜¤ì „4ì‹œ08분, David McFarlane wrote: > > > Good timing -- It just so happens that I have been working on this > > > very issue for a lab here.  You have to make the proper settings in > > > your stimulus, and use a bit of inline code following the > > > stimulus.  Here is the fully-commented inline code for my solution: > > > > '/---------------------------------------------------------------------- > > > ' We wish to present a stimulus (in this case, StimText), get a > > > ' response during that stimlus, and raise a signal as soon as the > > > ' subject responds. > > > ' > > > ' To do that, we need to run this inline code during StimText.  We > > > ' could simply set the Duration of StimText to 0 or so (depending on > > > ' considerations such as leaving some time between stimulus .OnsetSignal > > > ' and .OffsetSignal) and then our code would have to also handle > > > ' further stimulus timing.  But with judicious use of Duration and > > > ' PreRelease, E-Prime will automatically take care of stimulus timing > > > ' for us. > > > ' > > > ' So instead we simply set the Duration of StimText as desired (which > > > ' as a result automatically determines the target onset time for the > > > ' next stimulus object), and we set the PreRelease of StimText to a > > > ' suitably large value (preferably >= Duration, but perhaps less due > > > ' to other considerations as mentioned earlier).  Now this code will > > > ' start to run soon after the onset of StimText, and handle the > > > ' reaction to the subject response. > > > ' > > > ' Finally, this code simply makes use of .IsPending() to detect the > > > ' response (see the InputMask.IsPending topic in the online E-Basic > > > ' Help).  Note that as a result StimText will last at least as long > > > ' its input mask Time Limit, regardless of its Duration (if you just > > > ' keep Time Limit at the default of "(same as duration)" then this > > > ' will not pose a problem). > > > > Const  LptDataPort as Integer = &H0378  ' adjust this for your system > > > Const  SignalData as Integer = &HFF  ' adjust this for your device > > > Const  LoopDelay as Long = 2  'ms; set as small as possible for your > > >          ' system > > > > Do While StimText.InputMasks.IsPending() > > >          ' Some slower machines (such as my > > home laptop) need a delay so that > > >          ' EP can detect & handle input: > > >          Sleep LoopDelay > > > Loop > > > WritePort LptDataPort, SignalData > > > '\---------------------------------------------------------------------- > > > > This is fine as long as you limit the response to coming during the > > > stimulus.  If you want to present a train of stimuli during the > > > response period then you must do a little more.  I also have a > > > solution for that, but it is rather intricate and too much trouble to > > > go into here, so I hope this is good enough for now. > > > > -- David McFarlane, Professional Faultfinder > > > > At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: > > > > >I was wondering if there is a way to send trigger signals locked on > > > >the response time. > > > > >For instance, > > > > >Stim.OnsetSignalEnabled = True > > > >Stim.OnsetSignalPort = &H378 > > > >Stim.OnsetSignalData = 1 > > > > >WritePort &h378, 0 > > > > >the above code send triggers at the onset of the object "Stim". > > > > >However, I am trying to figure out a way to send triggers at the time > > > >of response of "Stim". > > > > >I would greatly appreciate all tips and advices from you.  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 ucfmicah at gmail.com Fri Sep 10 08:58:46 2010 From: ucfmicah at gmail.com (Micah) Date: Fri, 10 Sep 2010 01:58:46 -0700 Subject: Problems with randomizing nested lists by condition Message-ID: Hello, I am relatively new to E-prime programming, and have hit a roadblock in developing an fMRI paradigm. The paradigm I am trying to replicate is basically a passive trait-adjective viewing task. You can view the paper I'm getting the paradigm from here: http://scan.oxfordjournals.org/content/2/4/313.long Anyway, here are the essentials of the design: Participants are pre-trained in the distinction between narrative focus (NF) and experiential focus (EF). For the task, participants view a cue (either the word 'judge' or 'sense' with a corresponding picture below it) followed by 6 trait-adjectives. These adjectives are selected from 8 list of words, and it is important that the selection of each list is randomized by condition (judge or sense). The paradigm proceeds in 2 runs, with each condition running twice per run, and the lists should be also randomized between runs. This is where I have had problems- I can get the wordlists to be randomly selected via nested lists for each condition, but checking my logs I can see that some lists are being selected twice. Here is an attempted summary of my set up: SessionProc -Blocklist1 -BlockProc -DesignList -? [ListNumber:1] -? [ListNumber:2] -? [ListNumber:3] -? [ListNumber:4] -TrialProc -Slide1 -Stimulus -ISI -Stimulus -ISI -Stimulus -ISI -Stimulus -ISI -Stimulus -ISI -Stimulus My BlockList is just a 4-row list with the vairable ListNumber and WordList1 through WordList4. I am using 8 nested lists for each individual 6-item word list. My design list uses nested lists [ListNumber:1-4], with variables for Condition, PrimeImage, PrimeText, and [Stim:1] through [Stim:6]. [Stim] is a variable in each of the wordlists and is used in each stimulus text display. I then repeat this entire structure for Run2, but with the BlockList listing WordLists 5-8. I hope this is at all clear. It is a relatively simply paradigm with no response task, but I cannot seem to get it to work right. -- 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 ucfmicah at gmail.com Fri Sep 10 09:00:45 2010 From: ucfmicah at gmail.com (Micah) Date: Fri, 10 Sep 2010 02:00:45 -0700 Subject: Problems with randomizing nested lists by condition In-Reply-To: Message-ID: Also, this setup seems terrible for logging purposes, as my logs look like complete chaos, with only 4 rows and all of the onset times for individual stimuli separated by multiple columns. I need a good suggestion for a redesign. On Sep 10, 10:58 am, Micah wrote: > Hello, > > I am relatively new to E-prime programming, and have hit a roadblock > in developing an fMRI paradigm. The paradigm I am trying to replicate > is basically a passive trait-adjective viewing task. You can view the > paper I'm getting the paradigm from here: > > http://scan.oxfordjournals.org/content/2/4/313.long > > Anyway, here are the essentials of the design: > > Participants are pre-trained in the distinction between narrative > focus (NF) and experiential focus (EF). For the task, participants > view a cue (either the word 'judge' or 'sense' with a corresponding > picture below it) followed by 6 trait-adjectives. These adjectives are > selected from 8 list of words, and it is important that the selection > of each list is randomized by condition (judge or sense). The paradigm > proceeds in 2 runs, with each condition running twice per run, and the > lists should be also randomized between runs. This is where I have had > problems- I can get the wordlists to be randomly selected via nested > lists for each condition, but checking my logs I can see that some > lists are being selected twice. Here is an attempted summary of my set > up: > > SessionProc > -Blocklist1 >  -BlockProc >   -DesignList >    -? [ListNumber:1] >    -? [ListNumber:2] >    -? [ListNumber:3] >    -? [ListNumber:4] >       -TrialProc >        -Slide1 >        -Stimulus >        -ISI >        -Stimulus >        -ISI >        -Stimulus >        -ISI >        -Stimulus >        -ISI >        -Stimulus >        -ISI >        -Stimulus > > My BlockList is just a 4-row list with the vairable ListNumber and > WordList1 through WordList4. I am using 8 nested lists for each > individual 6-item word list. My design list uses nested lists > [ListNumber:1-4], with variables for Condition, PrimeImage, PrimeText, > and [Stim:1] through [Stim:6]. [Stim] is a variable in each of the > wordlists and is used in each stimulus text display. I then repeat > this entire structure for Run2, but with the BlockList listing > WordLists 5-8. > > I hope this is at all clear. It is a relatively simply paradigm with > no response task, but I cannot seem to get it to work right. -- 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 Sep 10 13:46:03 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 09:46:03 -0400 Subject: Mastering E-Prime: Meaning of all time audit measures. Message-ID: When you look at the Logging tab on the properties page of any stimulus object, you will find a host of items available for logging. Most of these are time audit data. But what do all these items mean, and what are they good for? Chapter 3 of the E-Prime User's Guide discusses time auditing to some degree, and the timing diagram at Appendix E provides one way to see the relationships between these items. As an alternative, here I try to set out, in order, a brief description of these items. First let us distinguish between timing control *settings* and time audit *measures*. The following items do not reflect any results formed during the course of a stimulus but simply log the settings provided by the user (e.g., you). You may choose to have any of these logged just to keep a record of settings active during the experiment: - Duration: To reiterate, this does *not* show the actual duration of the stimulus, only the setting as provided by the user. - PreRelease: Affects the TargetOffsetTime (see below). - TimingMode: Event, Cumulative, or Custom, as set by the user (see the online E-Basic Help). - CustomOffsetTime: In Custom timing mode, overrides the TargetOnsetTime (see the online E-Basic Help). - CustomOnsetTime: In Custom timing mode, overrides the TargetOffsetTime (see the online E-Basic Help). Now, the raw time audit measures, listed in the order in which events occur during the execution of a stimulus object. These are all time stamps in milliseconds from the start of the current program run: - StartTime: Time at which E-Prime started executing the stimulus object. - TargetOnsetTime: Scheduled time at which presentation of stimulus was to begin; set automatically from GetNextTargetOnsetTime (see online E-Basic Help). - OnsetTime: Time when E-Prime actually submitted the stimulus data for presentation (e.g., proceeded to copy data to display memory or load sound buffer). This may not coincide with when the stimulus actually got presented, e.g., if data are submitted in the middle of a display refresh cycle then they may not get presented until the next refresh. - ActionTime: According to the online E-Basic Help, time at which E-Prime completed the "critical action" of the stimulus. The documentation remains somewhat vague about this -- perhaps "critical action" means copying data to display memory, or loading a sound or video buffer. In my tests, ActionTime never lags more than 1 ms behind OnsetTime, so it serves practically the same purpose as OnsetTime. - TargetOffsetTime: Scheduled time at which offset actions (e.g., clean-up, ClearAfter, StopAfter) of stimulus object were to begin, e.g., OnsetTime + Duration - PreRelease (Event timing mode), or TargetOnsetTime + Duration - PreRelease (Cumulative timing mode). - OffsetTime: Time when E-Prime actually began the offset actions of the object. Actions may not take practical effect until next vertical blank, or until presentation of next stimulus. - FinishTime: Time when E-Prime exited from execution of the stimulus object and proceeded to execute the next section of the program (e.g., next stimulus object or inline code). Note that *execution* of a stimulus *object* may end before *presentation* of the *stimulus* ends; this is the point of PreRelease (as well as happening as a matter of course with some stimuli such as some sounds). Finally, a few composite time audit measures derived from the raw measures above and provided for convenience: - OnsetDelay = OnsetTime - TargetOnsetTime - ActionDelay = ActionTime - OnsetTime - OffsetDelay = OffsetTime - TargetOffsetTime - DurationError = OffsetTime + PreRelease - OnsetTime - Duration Note: - Time audit measures include the ActionTime that follows upon OnsetTime, but no corresponding item to follow upon OffsetTime. - No time audit item for time stamp of vertical blank, although many stimuli do not take full effect until just after a vertical blank. -- David McFarlane, Professional Faultfinder -- 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 Sep 10 14:20:39 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 10:20:39 -0400 Subject: Mastering E-Prime: Meaning of all time audit measures. In-Reply-To: <4c8a36a3.8b19e70a.5fdc.ffff90d0SMTPIN_ADDED@gmr-mx.google. com> Message-ID: I worked on getting that little write-up done exactly right for at least a week, and after posting it still find things to revise; in particular, looking back at the E-Prime Reference Guide, I concede that the documention was not quite as vague about "Critical Action" as I stated (but I still had to do my own tests in E-Prime to clarify this). Anyway, I should have closed with a list of references, so here it is: References: - E-Prime User's Guide, Chapter 3 & Appendix E. - E-Prime Reference Guide, section 1.3.1.4 Logging Tab. - E-Basic online help, topic "Time Audit". -- David McFarlane, Professional Faultfinder >When you look at the Logging tab on the properties page of any >stimulus object, you will find a host of items available for >logging. Most of these are time audit data. But what do all these >items mean, and what are they good for? Chapter 3 of the E-Prime >User's Guide discusses time auditing to some degree, and the timing >diagram at Appendix E provides one way to see the relationships >between these items. As an alternative, here I try to set out, in >order, a brief description of these items. > >First let us distinguish between timing control *settings* and time >audit *measures*. The following items do not reflect any results >formed during the course of a stimulus but simply log the settings >provided by the user (e.g., you). You may choose to have any of >these logged just to keep a record of settings active during the experiment: >- Duration: To reiterate, this does *not* show the actual duration of > the stimulus, only the setting as provided by the user. >- PreRelease: Affects the TargetOffsetTime (see below). >- TimingMode: Event, Cumulative, or Custom, as set by the user (see > the online E-Basic Help). >- CustomOffsetTime: In Custom timing mode, overrides the > TargetOnsetTime (see the online E-Basic Help). >- CustomOnsetTime: In Custom timing mode, overrides the > TargetOffsetTime (see the online E-Basic Help). > >Now, the raw time audit measures, listed in the order in which >events occur during the execution of a stimulus object. These are >all time stamps in milliseconds from the start of the current program run: >- StartTime: Time at which E-Prime started executing the stimulus > object. >- TargetOnsetTime: Scheduled time at which presentation of stimulus was > to begin; set automatically from GetNextTargetOnsetTime (see online > E-Basic Help). >- OnsetTime: Time when E-Prime actually submitted the stimulus data for > presentation (e.g., proceeded to copy data to display memory or load > sound buffer). This may not coincide with when the stimulus actually > got presented, e.g., if data are submitted in the middle of a display > refresh cycle then they may not get presented until the next refresh. >- ActionTime: According to the online E-Basic Help, time at which > E-Prime completed the "critical action" of the stimulus. The > documentation remains somewhat vague about this -- perhaps "critical > action" means copying data to display memory, or loading a sound or > video buffer. In my tests, ActionTime never lags more than 1 ms > behind OnsetTime, so it serves practically the same purpose as > OnsetTime. >- TargetOffsetTime: Scheduled time at which offset actions (e.g., > clean-up, ClearAfter, StopAfter) of stimulus object were to begin, > e.g., OnsetTime + Duration - PreRelease (Event timing mode), or > TargetOnsetTime + Duration - PreRelease (Cumulative timing mode). >- OffsetTime: Time when E-Prime actually began the offset actions of > the object. Actions may not take practical effect until next > vertical blank, or until presentation of next stimulus. >- FinishTime: Time when E-Prime exited from execution of the > stimulus object and proceeded to execute the next section of the > program (e.g., next stimulus object or inline code). Note that > *execution* of a stimulus *object* may end before *presentation* of > the *stimulus* ends; this is the point of PreRelease (as well as > happening as a matter of course with some stimuli such as some > sounds). > >Finally, a few composite time audit measures derived from the raw >measures above and provided for convenience: >- OnsetDelay = OnsetTime - TargetOnsetTime >- ActionDelay = ActionTime - OnsetTime >- OffsetDelay = OffsetTime - TargetOffsetTime >- DurationError = OffsetTime + PreRelease - OnsetTime - Duration > >Note: >- Time audit measures include the ActionTime that follows upon > OnsetTime, but no corresponding item to follow upon OffsetTime. >- No time audit item for time stamp of vertical blank, although many > stimuli do not take full effect until just after a vertical blank. > >-- David McFarlane, Professional Faultfinder -- 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 ucfmicah at gmail.com Fri Sep 10 14:30:24 2010 From: ucfmicah at gmail.com (Micah) Date: Fri, 10 Sep 2010 07:30:24 -0700 Subject: Problems with randomizing nested lists by condition In-Reply-To: <7972247a-8f0c-4a05-8764-e4dd173d7ca7@q18g2000vbm.googlegroups.com> Message-ID: I think I may have actually solved my own problem! I have implemented a much simpler solution that seems to be working. Now I just need to work on the logs and make sure all the timing looks good! Any standard tips for what needs to be logged by e-Prime for a standard fMRI analysis? Micah wrote: > Also, this setup seems terrible for logging purposes, as my logs look > like complete chaos, with only 4 rows and all of the onset times for > individual stimuli separated by multiple columns. I need a good > suggestion for a redesign. > > On Sep 10, 10:58 am, Micah wrote: > > Hello, > > > > I am relatively new to E-prime programming, and have hit a roadblock > > in developing an fMRI paradigm. The paradigm I am trying to replicate > > is basically a passive trait-adjective viewing task. You can view the > > paper I'm getting the paradigm from here: > > > > http://scan.oxfordjournals.org/content/2/4/313.long > > > > Anyway, here are the essentials of the design: > > > > Participants are pre-trained in the distinction between narrative > > focus (NF) and experiential focus (EF). For the task, participants > > view a cue (either the word 'judge' or 'sense' with a corresponding > > picture below it) followed by 6 trait-adjectives. These adjectives are > > selected from 8 list of words, and it is important that the selection > > of each list is randomized by condition (judge or sense). The paradigm > > proceeds in 2 runs, with each condition running twice per run, and the > > lists should be also randomized between runs. This is where I have had > > problems- I can get the wordlists to be randomly selected via nested > > lists for each condition, but checking my logs I can see that some > > lists are being selected twice. Here is an attempted summary of my set > > up: > > > > SessionProc > > -Blocklist1 > >  -BlockProc > >   -DesignList > >    -? [ListNumber:1] > >    -? [ListNumber:2] > >    -? [ListNumber:3] > >    -? [ListNumber:4] > >       -TrialProc > >        -Slide1 > >        -Stimulus > >        -ISI > >        -Stimulus > >        -ISI > >        -Stimulus > >        -ISI > >        -Stimulus > >        -ISI > >        -Stimulus > >        -ISI > >        -Stimulus > > > > My BlockList is just a 4-row list with the vairable ListNumber and > > WordList1 through WordList4. I am using 8 nested lists for each > > individual 6-item word list. My design list uses nested lists > > [ListNumber:1-4], with variables for Condition, PrimeImage, PrimeText, > > and [Stim:1] through [Stim:6]. [Stim] is a variable in each of the > > wordlists and is used in each stimulus text display. I then repeat > > this entire structure for Run2, but with the BlockList listing > > WordLists 5-8. > > > > I hope this is at all clear. It is a relatively simply paradigm with > > no response task, but I cannot seem to get it to work right. -- 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 kiekseltje at gmail.com Fri Sep 10 18:20:12 2010 From: kiekseltje at gmail.com (Annika) Date: Fri, 10 Sep 2010 11:20:12 -0700 Subject: Resize window Message-ID: Hi all, I was wondering whether you can change the size of the window in which the experiment is run. Is there a way to let E-Prime take up only, say, half the computer screen, so that you can still see (half) the desktop in the background while running the experiment? Thanks, Annika -- 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 Sep 10 18:49:42 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 14:49:42 -0400 Subject: Resize window In-Reply-To: <65a1f106-11f9-4fbd-aa0d-a49706e3c571@c16g2000vbp.googlegro ups.com> Message-ID: Annika, Stock reminder: 1) I do not work for PST. 2) PST's trained staff takes 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 (although current estimates are more like 10 days) -- this is pretty much their substitute for proper documentation, so make full use of it. 3) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... Hmm, interesting thought. I don't see any hope of doing that in E-Prime, but I would be glad to be found wrong. You can, of course, set E-Prime's display resolution to whatever you like, but that always still takes up the full display. As an alternative, I suppose you might use a dual physical display, so that E-Prime would take up one display screen, and you would still have a desktop visible on the other display screen. -- David McFarlane, Professional Faultfinder >I was wondering whether you can change the size of the window in which >the experiment is run. Is there a way to let E-Prime take up only, >say, half the computer screen, so that you can still see (half) the >desktop in the background while running the experiment? >Thanks, >Annika -- 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 kiekseltje at gmail.com Fri Sep 10 19:51:14 2010 From: kiekseltje at gmail.com (Annika) Date: Fri, 10 Sep 2010 12:51:14 -0700 Subject: Resize window In-Reply-To: <4c8a7dcf.8b19e70a.5fdc.ffffa38fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks a lot for your quick reply. I had thought of using a dual display, but I am not sure if I could make this work in the scanner. I am also afraid that the two display screens would end up being too small to be clearly visible (the same would probably apply to showing the experiment and the desktop simultaneously, on second thought). Perhaps it would be easier if I explained what I would like to do: At certain points during my experiment, subjects need to receive direct video feedback from a webcam (connected to the computer that runs E- Prime). I cannot use the movie object for this purpose, because it can only play saved (not live) video clips. I considered calling a dll routine to bring up the webcam (in the same runtime environment), but this would probably interfere with E-Prime. Finally, I tried to turn on the webcam, start the experiment, and then bring the webcam to the foreground at specific time points. The problem is that E-Prime quits as soon as it is no longer in the foreground (runtime error 11011). Do you know if there is a way (e.g., using an inLine) to keep E-Prime running in the background? That way I could call the webcam to the foreground (and push it back to the background again a few seconds later), without having the experiment quit in the mean time. I appreciate your help, Annika On Sep 10, 2:49 pm, David McFarlane wrote: > Annika, > > Stock reminder:  1) I do not work for PST.  2) PST's trained staff > takes 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 (although current > estimates are more like 10 days) -- this is pretty much their > substitute for proper documentation, so make full use of it.  3) If > you do get an answer from PST Web Support, please extend the courtesy > of posting their reply back here for the sake of others. > > That said, here is my take... > > Hmm, interesting thought.  I don't see any hope of doing that in > E-Prime, but I would be glad to be found wrong.  You can, of course, > set E-Prime's display resolution to whatever you like, but that > always still takes up the full display. > > As an alternative, I suppose you might use a dual physical display, > so that E-Prime would take up one display screen, and you would still > have a desktop visible on the other display screen. > > -- David McFarlane, Professional Faultfinder > > >I was wondering whether you can change the size of the window in which > >the experiment is run.  Is there a way to let E-Prime take up only, > >say, half the computer screen, so that you can still see (half) the > >desktop in the background while running the experiment? > >Thanks, > >Annika -- 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 Sep 10 21:15:49 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 17:15:49 -0400 Subject: Resize window In-Reply-To: Message-ID: Annika, I still think that you should contact PST Web Support with this and see what they say. Other than that, if it were me then at this point I would resort to some sort of low-tech kludge. E.g., feed both the EP video and the web cam video output into some sort of video switch box that goes to the one display monitor, then see if I can use some digital I/O output (e.g., the lpt port) to have EP control which video goes through the switch to the display; or in a pinch, if display switch timing is not critical, just flip the switch as needed by hand; or use two displays and physically move a mirror to show one display or the other. IOW, I would just try to think "outside the EP box" to get a working solution to this. OK, I am late getting home for the weekend now, I have a fish dinner waiting and then a symphony concert tonight, so off I go... -- David McFarlane, Professional Faultfinder >Hi David, > >Thanks a lot for your quick reply. >I had thought of using a dual display, but I am not sure if I could >make this work in the scanner. I am also afraid that the two display >screens would end up being too small to be clearly visible (the same >would probably apply to showing the experiment and the desktop >simultaneously, on second thought). >Perhaps it would be easier if I explained what I would like to do: At >certain points during my experiment, subjects need to receive direct >video feedback from a webcam (connected to the computer that runs E- >Prime). >I cannot use the movie object for this purpose, because it can only >play saved (not live) video clips. I considered calling a dll routine >to bring up the webcam (in the same runtime environment), but this >would probably interfere with E-Prime. Finally, I tried to turn on the >webcam, start the experiment, and then bring the webcam to the >foreground at specific time points. The problem is that E-Prime quits >as soon as it is no longer in the foreground (runtime error 11011). >Do you know if there is a way (e.g., using an inLine) to keep E-Prime >running in the background? That way I could call the webcam to the >foreground (and push it back to the background again a few seconds >later), without having the experiment quit in the mean time. > >I appreciate your help, > >Annika > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > Annika, > > > > Stock reminder: 1) I do not work for PST. 2) PST's trained staff > > takes 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 (although current > > estimates are more like 10 days) -- this is pretty much their > > substitute for proper documentation, so make full use of it. 3) If > > you do get an answer from PST Web Support, please extend the courtesy > > of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Hmm, interesting thought. I don't see any hope of doing that in > > E-Prime, but I would be glad to be found wrong. You can, of course, > > set E-Prime's display resolution to whatever you like, but that > > always still takes up the full display. > > > > As an alternative, I suppose you might use a dual physical display, > > so that E-Prime would take up one display screen, and you would still > > have a desktop visible on the other display screen. > > > > -- David McFarlane, Professional Faultfinder > > > > >I was wondering whether you can change the size of the window in which > > >the experiment is run. Is there a way to let E-Prime take up only, > > >say, half the computer screen, so that you can still see (half) the > > >desktop in the background while running the experiment? > > >Thanks, > > >Annika -- 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 kiekseltje at gmail.com Sat Sep 11 21:16:47 2010 From: kiekseltje at gmail.com (Annika) Date: Sat, 11 Sep 2010 14:16:47 -0700 Subject: Resize window In-Reply-To: <4c8aa02d.8b19e70a.5961.ffffa920SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thanks again for your suggestions. I would have liked to make it work through EP, but you're right; I'll just start working on a low-tech solution. I contacted PST web support, by the way, but they always take long to get back to me - I really appreciate your quick and helpful replies! Have a good weekend, Annika On Sep 10, 5:15 pm, David McFarlane wrote: > Annika, > > I still think that you should contact PST Web Support with this and > see what they say. > > Other than that, if it were me then at this point I would resort to > some sort of low-tech kludge.  E.g., feed both the EP video and the > web cam video output into some sort of video switch box that goes to > the one display monitor, then see if I can use some digital I/O > output (e.g., the lpt port) to have EP control which video goes > through the switch to the display; or in a pinch, if display switch > timing is not critical, just flip the switch as needed by hand; or > use two displays and physically move a mirror to show one display or > the other.  IOW, I would just try to think "outside the EP box" to > get a working solution to this. > > OK, I am late getting home for the weekend now, I have a fish dinner > waiting and then a symphony concert tonight, so off I go... > > -- David McFarlane, Professional Faultfinder > > >Hi David, > > >Thanks a lot for your quick reply. > >I had thought of using a dual display, but I am not sure if I could > >make this work in the scanner. I am also afraid that the two display > >screens would end up being too small to be clearly visible (the same > >would probably apply to showing the experiment and the desktop > >simultaneously, on second thought). > >Perhaps it would be easier if I explained what I would like to do: At > >certain points during my experiment, subjects need to receive direct > >video feedback from a webcam (connected to the computer that runs E- > >Prime). > >I cannot use the movie object for this purpose, because it can only > >play saved (not live) video clips. I considered calling a dll routine > >to bring up the webcam (in the same runtime environment), but this > >would probably interfere with E-Prime. Finally, I tried to turn on the > >webcam, start the experiment, and then bring the webcam to the > >foreground at specific time points. The problem is that E-Prime quits > >as soon as it is no longer in the foreground (runtime error 11011). > >Do you know if there is a way (e.g., using an inLine) to keep E-Prime > >running in the background? That way I could call the webcam to the > >foreground (and push it back to the background again a few seconds > >later), without having the experiment quit in the mean time. > > >I appreciate your help, > > >Annika > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > > Annika, > > > > Stock reminder:  1) I do not work for PST.  2) PST's trained staff > > > takes 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 (although current > > > estimates are more like 10 days) -- this is pretty much their > > > substitute for proper documentation, so make full use of it.  3) If > > > you do get an answer from PST Web Support, please extend the courtesy > > > of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Hmm, interesting thought.  I don't see any hope of doing that in > > > E-Prime, but I would be glad to be found wrong.  You can, of course, > > > set E-Prime's display resolution to whatever you like, but that > > > always still takes up the full display. > > > > As an alternative, I suppose you might use a dual physical display, > > > so that E-Prime would take up one display screen, and you would still > > > have a desktop visible on the other display screen. > > > > -- David McFarlane, Professional Faultfinder > > > > >I was wondering whether you can change the size of the window in which > > > >the experiment is run.  Is there a way to let E-Prime take up only, > > > >say, half the computer screen, so that you can still see (half) the > > > >desktop in the background while running the experiment? > > > >Thanks, > > > >Annika -- 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 mplenhart at gmail.com Mon Sep 13 19:50:22 2010 From: mplenhart at gmail.com (Matt) Date: Mon, 13 Sep 2010 12:50:22 -0700 Subject: Resize window In-Reply-To: Message-ID: Hi Annika, Basically, E-Prime takes complete control of the display device when it starts an experiment. It needs to do this in order for the timing to be accurate. If it gives up even a part of the screen to another program, it would lose this control and the timing data could suffer. You could try using a DLL to tap into the camera feed during the experiment (present it on-screen at the same time). I'm not sure of the specifics for the camera/app you are using, but it should be possible. If you try to switch to another application while an experiment is running, Windows takes control of the display and E-Prime will throw an error since it has lost control. The Windows key and ALT+Tab will both do this. Matt On Sep 11, 5:16 pm, Annika wrote: > Thanks again for your suggestions. I would have liked to make it work > through EP, but you're right; I'll just start working on a low-tech > solution. > I contacted PST web support, by the way, but they always take long to > get back to me - I really appreciate your quick and helpful replies! > > Have a good weekend, > > Annika > > On Sep 10, 5:15 pm, David McFarlane wrote: > > > > > Annika, > > > I still think that you should contact PST Web Support with this and > > see what they say. > > > Other than that, if it were me then at this point I would resort to > > some sort of low-tech kludge.  E.g., feed both the EP video and the > > web cam video output into some sort of video switch box that goes to > > the one display monitor, then see if I can use some digital I/O > > output (e.g., the lpt port) to have EP control which video goes > > through the switch to the display; or in a pinch, if display switch > > timing is not critical, just flip the switch as needed by hand; or > > use two displays and physically move a mirror to show one display or > > the other.  IOW, I would just try to think "outside the EP box" to > > get a working solution to this. > > > OK, I am late getting home for the weekend now, I have a fish dinner > > waiting and then a symphony concert tonight, so off I go... > > > -- David McFarlane, Professional Faultfinder > > > >Hi David, > > > >Thanks a lot for your quick reply. > > >I had thought of using a dual display, but I am not sure if I could > > >make this work in the scanner. I am also afraid that the two display > > >screens would end up being too small to be clearly visible (the same > > >would probably apply to showing the experiment and the desktop > > >simultaneously, on second thought). > > >Perhaps it would be easier if I explained what I would like to do: At > > >certain points during my experiment, subjects need to receive direct > > >video feedback from a webcam (connected to the computer that runs E- > > >Prime). > > >I cannot use the movie object for this purpose, because it can only > > >play saved (not live) video clips. I considered calling a dll routine > > >to bring up the webcam (in the same runtime environment), but this > > >would probably interfere with E-Prime. Finally, I tried to turn on the > > >webcam, start the experiment, and then bring the webcam to the > > >foreground at specific time points. The problem is that E-Prime quits > > >as soon as it is no longer in the foreground (runtime error 11011). > > >Do you know if there is a way (e.g., using an inLine) to keep E-Prime > > >running in the background? That way I could call the webcam to the > > >foreground (and push it back to the background again a few seconds > > >later), without having the experiment quit in the mean time. > > > >I appreciate your help, > > > >Annika > > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > > > Annika, > > > > > Stock reminder:  1) I do not work for PST.  2) PST's trained staff > > > > takes 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 (although current > > > > estimates are more like 10 days) -- this is pretty much their > > > > substitute for proper documentation, so make full use of it.  3) If > > > > you do get an answer from PST Web Support, please extend the courtesy > > > > of posting their reply back here for the sake of others. > > > > > That said, here is my take... > > > > > Hmm, interesting thought.  I don't see any hope of doing that in > > > > E-Prime, but I would be glad to be found wrong.  You can, of course, > > > > set E-Prime's display resolution to whatever you like, but that > > > > always still takes up the full display. > > > > > As an alternative, I suppose you might use a dual physical display, > > > > so that E-Prime would take up one display screen, and you would still > > > > have a desktop visible on the other display screen. > > > > > -- David McFarlane, Professional Faultfinder > > > > > >I was wondering whether you can change the size of the window in which > > > > >the experiment is run.  Is there a way to let E-Prime take up only, > > > > >say, half the computer screen, so that you can still see (half) the > > > > >desktop in the background while running the experiment? > > > > >Thanks, > > > > >Annika -- 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 Michiel.Spape at nottingham.ac.uk Thu Sep 16 13:46:23 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 16 Sep 2010 14:46:23 +0100 Subject: joysticks Message-ID: Dear group, Finally, my turn to ask a question! I know that several here seem to want, or have, used joysticks in E-Prime. Though I don't need E-Prime (or plan to use it), my question is the following: what kind of joystick do you use? I know E-Prime (2), much like DirectX (which I do plan to use), support all joysticks that can be autodetected by Windows. Problem is that most things on the gaming market is absolutely horrendously embarrassing; buttons everywhere, spacey show, whatnot, whereas I would rather doubt they have any actual scientific credibility. Scientific stuff, e.g. fMRI stuff looks better, probably works better, but is A) extremely expensive and B) not necessarily well integrated into Windows (which might make programming difficult). I would prefer something USB type, rather than conventional gaming (i.e. midi) or serial port, for easy installation. Tips, anyone? Best, Michiel Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 mplenhart at gmail.com Thu Sep 16 20:12:17 2010 From: mplenhart at gmail.com (Matt) Date: Thu, 16 Sep 2010 13:12:17 -0700 Subject: joysticks In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03F5D479@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: I know people have used joysticks/gamepads from Microsoft and Logitech successfully with E-Prime. Some of the Microsoft joysticks are pretty simple and only have a couple of buttons. Logitech makes some gamepads with a similar layout to Playstation 3 or XBox, which might be more familiar for some subjects. I believe these are all USB- driven and should be really easy to set up. -- 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 jasoncraggs at gmail.com Fri Sep 17 13:18:35 2010 From: jasoncraggs at gmail.com (Jason Craggs) Date: Fri, 17 Sep 2010 09:18:35 -0400 Subject: Resize window In-Reply-To: <207f4ef9-380a-464c-8c24-c10e77db4efd@k11g2000vbf.googlegroups.com> Message-ID: Hi Annika, As a fellow neuroimager I have a couple of suggestions. First and foremost, stick with low-tech. Second, depending on how critical your timing needs are, a two-system solution using a KVM switch may be an effective solution. Cheers, Jason On Mon, Sep 13, 2010 at 3:50 PM, Matt wrote: > Hi Annika, > > Basically, E-Prime takes complete control of the display device when > it starts an experiment. It needs to do this in order for the timing > to be accurate. If it gives up even a part of the screen to another > program, it would lose this control and the timing data could suffer. > > You could try using a DLL to tap into the camera feed during the > experiment (present it on-screen at the same time). I'm not sure of > the specifics for the camera/app you are using, but it should be > possible. > > If you try to switch to another application while an experiment is > running, Windows takes control of the display and E-Prime will throw > an error since it has lost control. The Windows key and ALT+Tab will > both do this. > > > Matt > > > On Sep 11, 5:16 pm, Annika wrote: > > Thanks again for your suggestions. I would have liked to make it work > > through EP, but you're right; I'll just start working on a low-tech > > solution. > > I contacted PST web support, by the way, but they always take long to > > get back to me - I really appreciate your quick and helpful replies! > > > > Have a good weekend, > > > > Annika > > > > On Sep 10, 5:15 pm, David McFarlane wrote: > > > > > > > > > Annika, > > > > > I still think that you should contact PST Web Support with this and > > > see what they say. > > > > > Other than that, if it were me then at this point I would resort to > > > some sort of low-tech kludge. E.g., feed both the EP video and the > > > web cam video output into some sort of video switch box that goes to > > > the one display monitor, then see if I can use some digital I/O > > > output (e.g., the lpt port) to have EP control which video goes > > > through the switch to the display; or in a pinch, if display switch > > > timing is not critical, just flip the switch as needed by hand; or > > > use two displays and physically move a mirror to show one display or > > > the other. IOW, I would just try to think "outside the EP box" to > > > get a working solution to this. > > > > > OK, I am late getting home for the weekend now, I have a fish dinner > > > waiting and then a symphony concert tonight, so off I go... > > > > > -- David McFarlane, Professional Faultfinder > > > > > >Hi David, > > > > > >Thanks a lot for your quick reply. > > > >I had thought of using a dual display, but I am not sure if I could > > > >make this work in the scanner. I am also afraid that the two display > > > >screens would end up being too small to be clearly visible (the same > > > >would probably apply to showing the experiment and the desktop > > > >simultaneously, on second thought). > > > >Perhaps it would be easier if I explained what I would like to do: At > > > >certain points during my experiment, subjects need to receive direct > > > >video feedback from a webcam (connected to the computer that runs E- > > > >Prime). > > > >I cannot use the movie object for this purpose, because it can only > > > >play saved (not live) video clips. I considered calling a dll routine > > > >to bring up the webcam (in the same runtime environment), but this > > > >would probably interfere with E-Prime. Finally, I tried to turn on the > > > >webcam, start the experiment, and then bring the webcam to the > > > >foreground at specific time points. The problem is that E-Prime quits > > > >as soon as it is no longer in the foreground (runtime error 11011). > > > >Do you know if there is a way (e.g., using an inLine) to keep E-Prime > > > >running in the background? That way I could call the webcam to the > > > >foreground (and push it back to the background again a few seconds > > > >later), without having the experiment quit in the mean time. > > > > > >I appreciate your help, > > > > > >Annika > > > > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > > > > Annika, > > > > > > > Stock reminder: 1) I do not work for PST. 2) PST's trained staff > > > > > takes 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 (although current > > > > > estimates are more like 10 days) -- this is pretty much their > > > > > substitute for proper documentation, so make full use of it. 3) If > > > > > you do get an answer from PST Web Support, please extend the > courtesy > > > > > of posting their reply back here for the sake of others. > > > > > > > That said, here is my take... > > > > > > > Hmm, interesting thought. I don't see any hope of doing that in > > > > > E-Prime, but I would be glad to be found wrong. You can, of > course, > > > > > set E-Prime's display resolution to whatever you like, but that > > > > > always still takes up the full display. > > > > > > > As an alternative, I suppose you might use a dual physical display, > > > > > so that E-Prime would take up one display screen, and you would > still > > > > > have a desktop visible on the other display screen. > > > > > > > -- David McFarlane, Professional Faultfinder > > > > > > > >I was wondering whether you can change the size of the window in > which > > > > > >the experiment is run. Is there a way to let E-Prime take up > only, > > > > > >say, half the computer screen, so that you can still see (half) > the > > > > > >desktop in the background while running the experiment? > > > > > >Thanks, > > > > > >Annika > > -- > 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 Michiel.Spape at nottingham.ac.uk Fri Sep 17 13:48:08 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 17 Sep 2010 14:48:08 +0100 Subject: joysticks In-Reply-To: <2bfd6029-6631-4610-86aa-0e82c315cbf7@j2g2000vbo.googlegroups.com> Message-ID: Hi, Thanks for your input! I used the XBOX360 controller before (for one, because it can easily connect to a pc via USB, but more importantly, because there are some very convenient SDKs provided by Microsoft for it), but its sticks aren't all that brilliant - they're quite small and not very smooth in the operation. Also, I looked at the entire range of sidewinder stuff, but compared to someone who last used a joystick to do Winter Games on the Commodore 64 (ahhh, does that bring back memories to anyone? Langlaufen, running, whatnot, all by moving the joystick as fast as possible left and right, thus ruining your wrist for life... beautiful), simple isn't exactly the way I'd describe it. Closest possible I got was coming up with 'arcade style' controllers (my C64 joystick is, apparently, a 'lollypop' style one... is it me or are game-controllers seriously off in their naming conventions?). I hope I can get our technician to work something out using such parts, rather than getting a cognitive 'fmri-compatible' 'precision timing' unit at the price of a small island in Fiji... Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Sent: 16 September 2010 21:12 To: E-Prime Subject: Re: joysticks I know people have used joysticks/gamepads from Microsoft and Logitech successfully with E-Prime. Some of the Microsoft joysticks are pretty simple and only have a couple of buttons. Logitech makes some gamepads with a similar layout to Playstation 3 or XBox, which might be more familiar for some subjects. I believe these are all USB- driven and should be really easy to set up. -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Sep 17 14:09:22 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 17 Sep 2010 10:09:22 -0400 Subject: joysticks In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03F5D769@VUIEXCHC.ad.notti ngham.ac.uk> Message-ID: Mich, OK, I will jump in here if only to clarify the discussion a little for myself. By "joystick" do you mean a pointing device that indicates both direction & distance (i.e., how *far* one moves the stick), or a pointing device the indicates only direction (e.g., only whether the stick moves up, down, left, or right)? As you know, modern gaming-style joysticks are of the first variety, whereas older arcade-style joysticks are of the latter. I find that users confuse these two all the time -- the last time someone asked me about a joystick here, after a lot of questioning I figured out that they needed only an old-fashioned 4- or 8-way joystick (based on simple microswitches), which we could read very simply through any digital I/O port (e.g., lpt). So I bought one on eBay and rigged it up, it was very solid and worked great. (BTW, love your story about the Commodore 64, I still have mine and, at the request of my 12-year old nephew who has an interest in old computer games, bought a Donkey Kong game on eBay and ran it for him on the C=64. Did a lot of lab programming on that machine through the early 1990s, wrote my first assembly code hardware interrupt service routine on it. Those were the days.) -- dkm At 9/17/2010 09:48 AM Friday, you wrote: >Hi, >Thanks for your input! I used the XBOX360 >controller before (for one, because it can >easily connect to a pc via USB, but more >importantly, because there are some very >convenient SDKs provided by Microsoft for it), >but its sticks aren't all that brilliant - >they're quite small and not very smooth in the >operation. Also, I looked at the entire range of >sidewinder stuff, but compared to someone who >last used a joystick to do Winter Games on the >Commodore 64 (ahhh, does that bring back >memories to anyone? Langlaufen, running, >whatnot, all by moving the joystick as fast as >possible left and right, thus ruining your wrist >for life... beautiful), simple isn't exactly the >way I'd describe it. Closest possible I got was >coming up with 'arcade style' controllers (my >C64 joystick is, apparently, a 'lollypop' style >one... is it me or are game-controllers >seriously off in their naming conventions?). I >hope I can get our technician to work something >out using such parts, rather than getting a >cognitive 'fmri-compatible' 'precision timing' >unit at the price of a small island in Fiji... > >Cheers, >Mich > >Michiel Spapé >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology >www.cognitology.eu > > >-----Original Message----- >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of Matt >Sent: 16 September 2010 21:12 >To: E-Prime >Subject: Re: joysticks > >I know people have used joysticks/gamepads from Microsoft and Logitech >successfully with E-Prime. Some of the Microsoft joysticks are pretty >simple and only have a couple of buttons. Logitech makes some >gamepads with a similar layout to Playstation 3 or XBox, which might >be more familiar for some subjects. I believe these are all USB- >driven and should be really easy to set up. -- 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 Michiel.Spape at nottingham.ac.uk Fri Sep 17 14:49:00 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 17 Sep 2010 15:49:00 +0100 Subject: joysticks In-Reply-To: <4c937742.a577e70a.0ede.7804SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks for the clarification. The ambiguity isn't really helped by manufacturers of 'arcade style' joystick parts (c.f. http://www.ultimarc.com/ultrastik_info.html) who promise analogue style sticks "for today's games", but yes, I do require one that provides a biaxial vector rather than merely a direction. As such, a 'flight simulator X6000 mega supersonic pro XP' or whatever would be a better choice than a C64 joystick, but the latter just seems more appropriate for any self-respecting lab! Sadly, my technical abilities are rather limited when it comes to actually fiddling with screwdrivers and components (my new IKEA desk at home was quite the failure), but I'll have a chat with the lab technician. As for C=64: it's brilliant, I also did my first programming on those machines (though badly, of course, I'm no Mozart!), although I was 8 or 10 or so. These days, with consoles and whatnot, I doubt kids will learn programming as being closely related to games... Oh, and speaking of Donkey Kong, I believe it was 'Super Mario's ('Jumper', in Donkey Kong, if I'm not mistaken) 25th birthday this week... Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 17 September 2010 15:09 To: e-prime at googlegroups.com Subject: RE: joysticks Mich, OK, I will jump in here if only to clarify the discussion a little for myself. By "joystick" do you mean a pointing device that indicates both direction & distance (i.e., how *far* one moves the stick), or a pointing device the indicates only direction (e.g., only whether the stick moves up, down, left, or right)? As you know, modern gaming-style joysticks are of the first variety, whereas older arcade-style joysticks are of the latter. I find that users confuse these two all the time -- the last time someone asked me about a joystick here, after a lot of questioning I figured out that they needed only an old-fashioned 4- or 8-way joystick (based on simple microswitches), which we could read very simply through any digital I/O port (e.g., lpt). So I bought one on eBay and rigged it up, it was very solid and worked great. (BTW, love your story about the Commodore 64, I still have mine and, at the request of my 12-year old nephew who has an interest in old computer games, bought a Donkey Kong game on eBay and ran it for him on the C=64. Did a lot of lab programming on that machine through the early 1990s, wrote my first assembly code hardware interrupt service routine on it. Those were the days.) -- dkm At 9/17/2010 09:48 AM Friday, you wrote: >Hi, >Thanks for your input! I used the XBOX360 >controller before (for one, because it can >easily connect to a pc via USB, but more >importantly, because there are some very >convenient SDKs provided by Microsoft for it), >but its sticks aren't all that brilliant - >they're quite small and not very smooth in the >operation. Also, I looked at the entire range of >sidewinder stuff, but compared to someone who >last used a joystick to do Winter Games on the >Commodore 64 (ahhh, does that bring back >memories to anyone? Langlaufen, running, >whatnot, all by moving the joystick as fast as >possible left and right, thus ruining your wrist >for life... beautiful), simple isn't exactly the >way I'd describe it. Closest possible I got was >coming up with 'arcade style' controllers (my >C64 joystick is, apparently, a 'lollypop' style >one... is it me or are game-controllers >seriously off in their naming conventions?). I >hope I can get our technician to work something >out using such parts, rather than getting a >cognitive 'fmri-compatible' 'precision timing' >unit at the price of a small island in Fiji... > >Cheers, >Mich > >Michiel Spapé >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology >www.cognitology.eu > > >-----Original Message----- >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of Matt >Sent: 16 September 2010 21:12 >To: E-Prime >Subject: Re: joysticks > >I know people have used joysticks/gamepads from Microsoft and Logitech >successfully with E-Prime. Some of the Microsoft joysticks are pretty >simple and only have a couple of buttons. Logitech makes some >gamepads with a similar layout to Playstation 3 or XBox, which might >be more familiar for some subjects. I believe these are all USB- >driven and should be really easy to set up. -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 katie.umberson at gmail.com Wed Sep 22 15:41:59 2010 From: katie.umberson at gmail.com (Katie U) Date: Wed, 22 Sep 2010 08:41:59 -0700 Subject: video files Message-ID: Hi all, I'm trying to load a film clip into E-Prime and for some reason it won't load the movie file. I've tried multiple formats (both mpg and avi) to no avail. Other film clips load fine into the same experiment file, but they're much smaller. Does E-Prime have a limit on the size of the movie file and that's why it won't load? Thanks in advance! -- 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 Wed Sep 22 16:07:42 2010 From: d.vinson at ucl.ac.uk (David Vinson) Date: Wed, 22 Sep 2010 17:07:42 +0100 Subject: video files In-Reply-To: <08defcb2-998b-4fcb-aee4-dd117c4356a5@c16g2000vbp.googlegroups.com> Message-ID: Hi Katie, It's hard to guess what your problem might be without knowing a little more (eg video file size, etc). In my experience trying to get videos of various types to work in E-Prime, most video problems tend to be codec problems rather than anything else. You can also do a simple experiment to test whether size matters - create a video that includes only a few frames of your large/problematic video, and see whether E-Prime likes it. If it still doesn't work, this should rule out size as a source of your problem. If it's a codec problem, here's a very quick summary of what PST Support suggested to me with a similar problem: download VirtualDub (stable 32-bit version), compress using ffdshow video codec, encoder type MJPEG, save as AVI. The very latest build of E-Studio (2.0.8.79) has added a Codec Config tool, which allows you to render these newly compressed video files before using them in an experiment. Seems handy in solving such problems although I haven't worked with this in detail yet. Your problem could also be something completely different - is the problem movie file in the experiment directory? (or does it have the path correctly designated). good luck, David V On 22/09/2010 16:41, Katie U wrote: > I'm trying to load a film clip into E-Prime and for some reason it > won't load the movie file. I've tried multiple formats (both mpg and > avi) to no avail. Other film clips load fine into the same experiment > file, but they're much smaller. Does E-Prime have a limit on the size > of the movie file and that's why it won't load? Thanks in advance! > -- 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 dmccoy at temple.edu Wed Sep 22 16:46:40 2010 From: dmccoy at temple.edu (David McCoy) Date: Wed, 22 Sep 2010 12:46:40 -0400 Subject: video files In-Reply-To: <4C9A29CE.2000704@ucl.ac.uk> Message-ID: www.tbi-impact.org/cde/mod_templates/12_F_08_TMT.pdf On Wed, Sep 22, 2010 at 12:07 PM, David Vinson wrote: > Hi Katie, > > It's hard to guess what your problem might be without knowing a little more > (eg video file size, etc). In my experience trying to get videos of various > types to work in E-Prime, most video problems tend to be codec problems > rather than anything else. > > You can also do a simple experiment to test whether size matters - create a > video that includes only a few frames of your large/problematic video, and > see whether E-Prime likes it. If it still doesn't work, this should rule > out size as a source of your problem. > > If it's a codec problem, here's a very quick summary of what PST Support > suggested to me with a similar problem: download VirtualDub (stable 32-bit > version), compress using ffdshow video codec, encoder type MJPEG, save as > AVI. > The very latest build of E-Studio (2.0.8.79) has added a Codec Config tool, > which allows you to render these newly compressed video files before using > them in an experiment. Seems handy in solving such problems although I > haven't worked with this in detail yet. > > > Your problem could also be something completely different - is the problem > movie file in the experiment directory? (or does it have the path correctly > designated). > > good luck, > David V > > > On 22/09/2010 16:41, Katie U wrote: > >> I'm trying to load a film clip into E-Prime and for some reason it >> won't load the movie file. I've tried multiple formats (both mpg and >> avi) to no avail. Other film clips load fine into the same experiment >> file, but they're much smaller. Does E-Prime have a limit on the size >> of the movie file and that's why it won't load? Thanks in advance! >> >> > > -- > 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. > > -- David B. McCoy Research Specialist - Olson Lab Department of Psychology Temple University - College of Liberal Arts dmccoy at temple.edu 215-204-1708 Center for Cognitive Neuroscience Department of Psychology University of Pennsylvania dmccoy at psych.upenn.edu -- 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 katie.umberson at gmail.com Wed Sep 22 18:13:18 2010 From: katie.umberson at gmail.com (Katie U) Date: Wed, 22 Sep 2010 11:13:18 -0700 Subject: video files In-Reply-To: <4C9A29CE.2000704@ucl.ac.uk> Message-ID: Hi David, Thanks for the suggestion! I think it is a codec problem because the size of the file isn't an issue and the file path is also correct. I'm trying VirtualDub, but I keep getting this error when I try to upload the video file: "VirtualDub requires a Video for Windows (VFW) compatible codec to decompress video. DirectShow codecs, such as those used by Windows Media Player, are not suitable". I've tried this on multiple computers with different types of files (avi, mpeg, mpeg4, etc.)- is it just that they all do not have the right codecs to play the file? Do I need to download some type of converter to use VirtualDub? Thanks again for your help! -Katie On Sep 22, 12:07 pm, David Vinson wrote: > Hi Katie, > > It's hard to guess what your problem might be without knowing a little > more (eg video file size, etc).  In my experience trying to get videos > of various types to work in E-Prime, most video problems tend to be > codec problems rather than anything else. > > You can also do a simple experiment to test whether size matters - > create a video that includes only a few frames of your large/problematic > video, and see whether E-Prime likes it.  If it still doesn't work, this > should rule out size as a source of your problem. > > If it's a codec problem, here's a very quick summary of what PST Support > suggested to me with a similar problem: download VirtualDub (stable > 32-bit version), compress using ffdshow video codec, encoder type MJPEG, > save as AVI. > The very latest build of E-Studio (2.0.8.79) has added a Codec Config > tool, which allows you to render these newly compressed video files > before using them in an experiment. Seems handy in solving such problems > although I haven't worked with this in detail yet. > > Your problem could also be something completely different - is the > problem movie file in the experiment directory? (or does it have the > path correctly designated). > > good luck, > David V > > On 22/09/2010 16:41, Katie U wrote: > > > I'm trying to load a film clip into E-Prime and for some reason it > > won't load the movie file. I've tried multiple formats (both mpg and > > avi) to no avail. Other film clips load fine into the same experiment > > file, but they're much smaller. Does E-Prime have a limit on the size > > of the movie file and that's why it won't load? Thanks in advance! > > -- > 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 psychophysics.lab at gmail.com Wed Sep 22 20:25:55 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 13:25:55 -0700 Subject: Cumulative RT for Two Events Message-ID: Hi All, As my subject indicates, I'm interested in obtaining the RT for two successive events individually and cumulatively. The latter will be used for feedback but have accuracy ONLY for the first event. Now, from what I can tell, the experiment 'NestingXRT' provides an example of how this can be accomplished. In the second event, 'time audit only' is selected in the duration/ input window data logging and 'cumulative' is selected in the data audit window. From what I can tell, this would seem to mean that this event retains information from the previous two ('stimulus 1' and 'stimulus 2'), however, I'm more concerned about where the accumulation process starts and how this is specified. In short, 1) I want to record each event individually; 2) I want to have a way to obtain the cumulative RT for events 1 and 2 (but not fixation or anything else that precedes the stims); 3) Present RT feedback based on cumulative RT (but accuracy only for the first event). Any help would be of great assistance! Cheers, Jordan -- 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 psychophysics.lab at gmail.com Wed Sep 22 21:00:37 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 14:00:37 -0700 Subject: Cumulative RT for Two Events In-Reply-To: Message-ID: I'll just post on my own thread: So it seems that each event that is given a cumulative value is placed in the RT recording sequence and RT feedback is provided for the final event. I'm still interested in whether I can use the acc from the first event in the feedback sequence? On Sep 22, 4:25 pm, Jordan Schoenherr wrote: > Hi All, > > As my subject indicates, I'm interested in obtaining the RT for two > successive events individually and cumulatively. The latter will be > used for feedback but have accuracy ONLY for the first event. Now, > from what I can tell, the experiment 'NestingXRT' provides an example > of how this can be accomplished. > > In the second event, 'time audit only' is selected in the duration/ > input window data logging and 'cumulative' is selected in the data > audit window. From what I can tell, this would seem to mean that this > event retains information from the previous two ('stimulus 1' and > 'stimulus 2'), however, I'm more concerned about where the > accumulation process starts and how this is specified. > > In short, > > 1) I want to record each event individually; > 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > (but not fixation or anything else that precedes the stims); > 3) Present RT feedback based on cumulative RT (but accuracy only for > the first event). > > Any help would be of great assistance! > > Cheers, > > Jordan -- 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 psychophysics.lab at gmail.com Wed Sep 22 21:07:34 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 14:07:34 -0700 Subject: Cumulative RT for Two Events In-Reply-To: <20b4f949-6a76-43dd-9f01-2f9e8c994822@c21g2000vba.googlegroups.com> Message-ID: And now for my final realization: if I turn off the logging function for the second event, that should do the trick. On Sep 22, 5:00 pm, Jordan Schoenherr wrote: > I'll just post on my own thread: > > So it seems that each event that is given a cumulative value is placed > in the RT recording sequence and RT feedback is provided for the final > event. I'm still interested in whether I can use the acc from the > first event in the feedback sequence? > > On Sep 22, 4:25 pm, Jordan Schoenherr > wrote: > > > > > Hi All, > > > As my subject indicates, I'm interested in obtaining the RT for two > > successive events individually and cumulatively. The latter will be > > used for feedback but have accuracy ONLY for the first event. Now, > > from what I can tell, the experiment 'NestingXRT' provides an example > > of how this can be accomplished. > > > In the second event, 'time audit only' is selected in the duration/ > > input window data logging and 'cumulative' is selected in the data > > audit window. From what I can tell, this would seem to mean that this > > event retains information from the previous two ('stimulus 1' and > > 'stimulus 2'), however, I'm more concerned about where the > > accumulation process starts and how this is specified. > > > In short, > > > 1) I want to record each event individually; > > 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > > (but not fixation or anything else that precedes the stims); > > 3) Present RT feedback based on cumulative RT (but accuracy only for > > the first event). > > > Any help would be of great assistance! > > > Cheers, > > > Jordan -- 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 Wed Sep 22 21:27:46 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 22 Sep 2010 17:27:46 -0400 Subject: Cumulative RT for Two Events In-Reply-To: <7886359f-d112-4ec0-8371-fdc3ae4560cd@k11g2000vbf.googlegroups.com> Message-ID: Jordan, Just making sure... Please be advised that "Cumulative" timing mode does *not* in any way, shape, or form produce a "cumulative RT", whatever that means. Cumulative timing mode only affects how E-Prime schedules the onset time of the next object. For details, study Chapter 3 of the User's Guide that came with EP; you might also look at my earlier post, "Mastering E-Prime: Meaning of all time audit measures" at http://groups.google.com/group/e-prime/browse_thread/thread/39e899d3457d4917 . -- David McFarlane, Professional Faultfinder Jordan Schoenherr wrote: > And now for my final realization: if I turn off the logging function > for the second event, that should do the trick. > > On Sep 22, 5:00 pm, Jordan Schoenherr > wrote: >> I'll just post on my own thread: >> >> So it seems that each event that is given a cumulative value is placed >> in the RT recording sequence and RT feedback is provided for the final >> event. I'm still interested in whether I can use the acc from the >> first event in the feedback sequence? >> >> On Sep 22, 4:25 pm, Jordan Schoenherr >> wrote: >> >> >> >>> Hi All, >>> As my subject indicates, I'm interested in obtaining the RT for two >>> successive events individually and cumulatively. The latter will be >>> used for feedback but have accuracy ONLY for the first event. Now, >>> from what I can tell, the experiment 'NestingXRT' provides an example >>> of how this can be accomplished. >>> In the second event, 'time audit only' is selected in the duration/ >>> input window data logging and 'cumulative' is selected in the data >>> audit window. From what I can tell, this would seem to mean that this >>> event retains information from the previous two ('stimulus 1' and >>> 'stimulus 2'), however, I'm more concerned about where the >>> accumulation process starts and how this is specified. >>> In short, >>> 1) I want to record each event individually; >>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 >>> (but not fixation or anything else that precedes the stims); >>> 3) Present RT feedback based on cumulative RT (but accuracy only for >>> the first event). >>> Any help would be of great assistance! >>> Cheers, >>> Jordan -- 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 mpaffel at gmail.com Wed Sep 22 21:34:48 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Wed, 22 Sep 2010 14:34:48 -0700 Subject: If...Or...Then Message-ID: Hello I have Multiple slideslates that I'm tring to change based on the script below, however the script isn't performing as I'd like it to. The message from the output window after debugging states: 3Lose3 False 2Lose3 False 1Lose3 False This tells me that it's collecting the responses correctly and setting a slide state but it looks as though the program is going through the arguments and declaring them all false, which is not the case. Is there something I need to include as the arguments make use of the "OR" statement or is something else such as my overzealous use of the If...Then statement? Note: I've added indents here to make it easier to look at. If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose3" End If -- 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 mpaffel at gmail.com Wed Sep 22 21:37:23 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Wed, 22 Sep 2010 14:37:23 -0700 Subject: If...Or...Then In-Reply-To: <4e6b58e4-31d8-4fbc-a7c9-efcfa2eb961b@a30g2000vbt.googlegroups.com> Message-ID: sorry about the lack of "_", apparently hitting the spacebar to make indents automatically posts messages On Sep 22, 4:34 pm, Matt Paffel wrote: > Hello > > I have Multiple slideslates that I'm tring to change based on the > script below, however the script isn't performing as I'd like it to. > > The message from the output window after debugging states: > > 3Lose3 > False > 2Lose3 > False > 1Lose3 > False > > This tells me that it's collecting the responses correctly and setting > a slide state but it looks as though the program is going through the > arguments and declaring them all false, which is not the case. Is > there something I need to include as the arguments make use of the > "OR" statement or is something else such as my overzealous use of the > If...Then statement? > > Note: I've added indents here to make it easier to look at. > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ >  OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > Then >  Set Slide1.ActiveState = "Default1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then >  Set Slide1.ActiveState = "Default2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then >  Set Slide1.ActiveState = "Default3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then >  Set Slide1.ActiveState = "Victory1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then >  Set Slide1.ActiveState = "Victory2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then >  Set Slide1.ActiveState = "Victory3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then >  Set Slide1.ActiveState = "Lose1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then >  Set Slide1.ActiveState = "Lose2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then >  Set Slide1.ActiveState = "Lose3" > End If -- 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 psychophysics.lab at gmail.com Thu Sep 23 01:20:20 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 18:20:20 -0700 Subject: Cumulative RT for Two Events In-Reply-To: <4C9A74D2.8050605@msu.edu> Message-ID: Hi David, I'll definitely check this out. Concerning my meaning, I have two successive events and I want to sum the RT for event 1 and event 2 to create a cumulative RT. On Sep 22, 5:27 pm, David McFarlane wrote: > Jordan, > > Just making sure...  Please be advised that "Cumulative" timing mode > does *not* in any way, shape, or form produce a "cumulative RT", > whatever that means.  Cumulative timing mode only affects how E-Prime > schedules the onset time of the next object.  For details, study Chapter > 3 of the User's Guide that came with EP; you might also look at my > earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... > . > > -- David McFarlane, Professional Faultfinder > > > > Jordan Schoenherr wrote: > > And now for my final realization: if I turn off the logging function > > for the second event, that should do the trick. > > > On Sep 22, 5:00 pm, Jordan Schoenherr > > wrote: > >> I'll just post on my own thread: > > >> So it seems that each event that is given a cumulative value is placed > >> in the RT recording sequence and RT feedback is provided for the final > >> event. I'm still interested in whether I can use the acc from the > >> first event in the feedback sequence? > > >> On Sep 22, 4:25 pm, Jordan Schoenherr > >> wrote: > > >>> Hi All, > >>> As my subject indicates, I'm interested in obtaining the RT for two > >>> successive events individually and cumulatively. The latter will be > >>> used for feedback but have accuracy ONLY for the first event. Now, > >>> from what I can tell, the experiment 'NestingXRT' provides an example > >>> of how this can be accomplished. > >>> In the second event, 'time audit only' is selected in the duration/ > >>> input window data logging and 'cumulative' is selected in the data > >>> audit window. From what I can tell, this would seem to mean that this > >>> event retains information from the previous two ('stimulus 1' and > >>> 'stimulus 2'), however, I'm more concerned about where the > >>> accumulation process starts and how this is specified. > >>> In short, > >>> 1) I want to record each event individually; > >>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > >>> (but not fixation or anything else that precedes the stims); > >>> 3) Present RT feedback based on cumulative RT (but accuracy only for > >>> the first event). > >>> Any help would be of great assistance! > >>> Cheers, > >>> Jordan -- 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 Michiel.Spape at nottingham.ac.uk Thu Sep 23 09:00:55 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 23 Sep 2010 10:00:55 +0100 Subject: Cumulative RT for Two Events In-Reply-To: <32cdb428-6054-44ec-9785-0bbb9a7165ae@z25g2000vbn.googlegroups.com> Message-ID: Hi, Personally, I find feedback displays, which I expect you'll be using, a huge bother. They never exactly display what I want them to display, their default properties and colours are always off, and they stop the experiment from running as soon as their input object is missing. Instead, if you have two TextDisplays acting as stimulus displays, say Stim1 and Stim2, and both are responded to, what's the problem with: 1. Adding yet another textdisplay after Stim2, let's call it myFeedback. Don't add any text to it. 2. Adding an inline between Stim2 and myFeedback: myFeedback.Text = "Your cumulative reaction time was: " & cstr(Stim1.RT + Stim2.RT) ? There's an example somewhere in the e-primer (though it might be an exercise?) on giving feedback based on the amount of correct responses within a block - http://www.cognitology.eu/pubs/AnE-Primer2009.pdf Shouldn't be too difficult to change that into giving feedback based on the cumulative RT. Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Jordan Schoenherr Sent: 23 September 2010 02:20 To: E-Prime Subject: Re: Cumulative RT for Two Events Hi David, I'll definitely check this out. Concerning my meaning, I have two successive events and I want to sum the RT for event 1 and event 2 to create a cumulative RT. On Sep 22, 5:27 pm, David McFarlane wrote: > Jordan, > > Just making sure...  Please be advised that "Cumulative" timing mode > does *not* in any way, shape, or form produce a "cumulative RT", > whatever that means.  Cumulative timing mode only affects how E-Prime > schedules the onset time of the next object.  For details, study Chapter > 3 of the User's Guide that came with EP; you might also look at my > earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... > . > > -- David McFarlane, Professional Faultfinder > > > > Jordan Schoenherr wrote: > > And now for my final realization: if I turn off the logging function > > for the second event, that should do the trick. > > > On Sep 22, 5:00 pm, Jordan Schoenherr > > wrote: > >> I'll just post on my own thread: > > >> So it seems that each event that is given a cumulative value is placed > >> in the RT recording sequence and RT feedback is provided for the final > >> event. I'm still interested in whether I can use the acc from the > >> first event in the feedback sequence? > > >> On Sep 22, 4:25 pm, Jordan Schoenherr > >> wrote: > > >>> Hi All, > >>> As my subject indicates, I'm interested in obtaining the RT for two > >>> successive events individually and cumulatively. The latter will be > >>> used for feedback but have accuracy ONLY for the first event. Now, > >>> from what I can tell, the experiment 'NestingXRT' provides an example > >>> of how this can be accomplished. > >>> In the second event, 'time audit only' is selected in the duration/ > >>> input window data logging and 'cumulative' is selected in the data > >>> audit window. From what I can tell, this would seem to mean that this > >>> event retains information from the previous two ('stimulus 1' and > >>> 'stimulus 2'), however, I'm more concerned about where the > >>> accumulation process starts and how this is specified. > >>> In short, > >>> 1) I want to record each event individually; > >>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > >>> (but not fixation or anything else that precedes the stims); > >>> 3) Present RT feedback based on cumulative RT (but accuracy only for > >>> the first event). > >>> Any help would be of great assistance! > >>> Cheers, > >>> Jordan -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Michiel.Spape at nottingham.ac.uk Thu Sep 23 09:17:31 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 23 Sep 2010 10:17:31 +0100 Subject: If...Or...Then In-Reply-To: <4e6b58e4-31d8-4fbc-a7c9-efcfa2eb961b@a30g2000vbt.googlegroups.com> Message-ID: Hi, It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? 3. how about: ---- If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 End if .... 4. Do stuff with else and cases. Also, you might wish to nest bits. 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). Cheers, Mich If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose3" End If Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel Sent: 22 September 2010 22:35 To: E-Prime Subject: If...Or...Then Hello I have Multiple slideslates that I'm tring to change based on the script below, however the script isn't performing as I'd like it to. The message from the output window after debugging states: 3Lose3 False 2Lose3 False 1Lose3 False This tells me that it's collecting the responses correctly and setting a slide state but it looks as though the program is going through the arguments and declaring them all false, which is not the case. Is there something I need to include as the arguments make use of the "OR" statement or is something else such as my overzealous use of the If...Then statement? Note: I've added indents here to make it easier to look at. If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose3" End If -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Sep 23 13:06:01 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 09:06:01 -0400 Subject: Cumulative RT for Two Events In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD7FF8@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Mich, May I suggest a variant on this? First, let's call myFeedback "FeedbackText", just for the sake of clarity. Then, in FeedbackText, put Your cumulative reaction time was: [RTcum] Then in the inline between Stim2 and FeedbackText, do c.SetAttrib "RTcum", Stim1.RT + Stim2.RT In general I prefer not to manipulate the .Text property directly because then there is no clue in the object itself that its text will change at run time, which could lead to some programming confusion. Oh yes, I could put "This text will change at run time" right into FeedbackText, but using text plus an attribute reference seems much clearer to me. Finally, this also leaves RTcum in the log, which in this case you would want anyway. Regards, -- David McFarlane, Professional Faultfinder Michiel Spape wrote: > Hi, > Personally, I find feedback displays, which I expect you'll be using, a huge bother. They never exactly display what I want them to display, their default properties and colours are always off, and they stop the experiment from running as soon as their input object is missing. > > Instead, if you have two TextDisplays acting as stimulus displays, say Stim1 and Stim2, and both are responded to, what's the problem with: > 1. Adding yet another textdisplay after Stim2, let's call it myFeedback. Don't add any text to it. > 2. Adding an inline between Stim2 and myFeedback: myFeedback.Text = "Your cumulative reaction time was: " & cstr(Stim1.RT + Stim2.RT) > ? > > There's an example somewhere in the e-primer (though it might be an exercise?) on giving feedback based on the amount of correct responses within a block - http://www.cognitology.eu/pubs/AnE-Primer2009.pdf > Shouldn't be too difficult to change that into giving feedback based on the cumulative RT. > > Cheers, > Mich > > Michiel Spapé > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > www.cognitology.eu > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Jordan Schoenherr > Sent: 23 September 2010 02:20 > To: E-Prime > Subject: Re: Cumulative RT for Two Events > > Hi David, > > I'll definitely check this out. Concerning my meaning, I have two > successive events and I want to sum the RT for event 1 and event 2 to > create a cumulative RT. > > On Sep 22, 5:27 pm, David McFarlane wrote: >> Jordan, >> >> Just making sure... Please be advised that "Cumulative" timing mode >> does *not* in any way, shape, or form produce a "cumulative RT", >> whatever that means. Cumulative timing mode only affects how E-Prime >> schedules the onset time of the next object. For details, study Chapter >> 3 of the User's Guide that came with EP; you might also look at my >> earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... >> . >> >> -- David McFarlane, Professional Faultfinder >> >> >> >> Jordan Schoenherr wrote: >>> And now for my final realization: if I turn off the logging function >>> for the second event, that should do the trick. >>> On Sep 22, 5:00 pm, Jordan Schoenherr >>> wrote: >>>> I'll just post on my own thread: >>>> So it seems that each event that is given a cumulative value is placed >>>> in the RT recording sequence and RT feedback is provided for the final >>>> event. I'm still interested in whether I can use the acc from the >>>> first event in the feedback sequence? >>>> On Sep 22, 4:25 pm, Jordan Schoenherr >>>> wrote: >>>>> Hi All, >>>>> As my subject indicates, I'm interested in obtaining the RT for two >>>>> successive events individually and cumulatively. The latter will be >>>>> used for feedback but have accuracy ONLY for the first event. Now, >>>>> from what I can tell, the experiment 'NestingXRT' provides an example >>>>> of how this can be accomplished. >>>>> In the second event, 'time audit only' is selected in the duration/ >>>>> input window data logging and 'cumulative' is selected in the data >>>>> audit window. From what I can tell, this would seem to mean that this >>>>> event retains information from the previous two ('stimulus 1' and >>>>> 'stimulus 2'), however, I'm more concerned about where the >>>>> accumulation process starts and how this is specified. >>>>> In short, >>>>> 1) I want to record each event individually; >>>>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 >>>>> (but not fixation or anything else that precedes the stims); >>>>> 3) Present RT feedback based on cumulative RT (but accuracy only for >>>>> the first event). >>>>> Any help would be of great assistance! >>>>> Cheers, >>>>> Jordan -- 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 Sep 23 13:23:44 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 09:23:44 -0400 Subject: Cumulative RT for Two Events In-Reply-To: <32cdb428-6054-44ec-9785-0bbb9a7165ae@z25g2000vbn.googlegroups.com> Message-ID: Jordan, OK, just for the sake of the record, let's see if I understand your design. Here is the timeline I imagine: - Stim1 is presented to subject - subject responds, producing Stim1.RT - some time intervenes, whether we want it to or not - Stim2 is presented to subject - subject responds, producing Stim2.RT And you call the sum Stim1.RT + Stim2.RT the "cumulative" RT. Well... I would *not* by any means call that a "cumulative" RT, that seems to me to fight against the ordinary sense of the term "cumulative". To me, "cumulative" refers to a sum with no intervening gaps, which you do not have here. For instance, if I set my trip odometer to 0 and drove errands to the grocery store, the hardware store, and the filling station, I might say that I drove 0.5 miles to the grocery, 1.5 miles to the hardware, 0.5 miles to the filling station, and 1 mile to home, for a cumulative distance of 3.5 miles. But I would *not* say that the cumulative distance for the grocery and filling station segments was 1 mile, that would just be a weird use of the term "cumulative". I might instead say that the *sum* distance for the grocery and filling station segments was 1 mile. So what you mean instead is a mere sum of RTs, not a "cumulative" RT, so why not just say that? Words are important my friend. And once again, if you are to proceed in this line of work then you must, MUST, thoroughly study Chapter 3 of the User's Guide. I cannot stress that enough. -- David McFarlane, Professional Faultfinder Jordan Schoenherr wrote: > Hi David, > > I'll definitely check this out. Concerning my meaning, I have two > successive events and I want to sum the RT for event 1 and event 2 to > create a cumulative RT. > > On Sep 22, 5:27 pm, David McFarlane wrote: >> Jordan, >> >> Just making sure... Please be advised that "Cumulative" timing mode >> does *not* in any way, shape, or form produce a "cumulative RT", >> whatever that means. Cumulative timing mode only affects how E-Prime >> schedules the onset time of the next object. For details, study Chapter >> 3 of the User's Guide that came with EP; you might also look at my >> earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... >> . >> >> -- David McFarlane, Professional Faultfinder >> >> >> >> Jordan Schoenherr wrote: >>> And now for my final realization: if I turn off the logging function >>> for the second event, that should do the trick. >>> On Sep 22, 5:00 pm, Jordan Schoenherr >>> wrote: >>>> I'll just post on my own thread: >>>> So it seems that each event that is given a cumulative value is placed >>>> in the RT recording sequence and RT feedback is provided for the final >>>> event. I'm still interested in whether I can use the acc from the >>>> first event in the feedback sequence? >>>> On Sep 22, 4:25 pm, Jordan Schoenherr >>>> wrote: >>>>> Hi All, >>>>> As my subject indicates, I'm interested in obtaining the RT for two >>>>> successive events individually and cumulatively. The latter will be >>>>> used for feedback but have accuracy ONLY for the first event. Now, >>>>> from what I can tell, the experiment 'NestingXRT' provides an example >>>>> of how this can be accomplished. >>>>> In the second event, 'time audit only' is selected in the duration/ >>>>> input window data logging and 'cumulative' is selected in the data >>>>> audit window. From what I can tell, this would seem to mean that this >>>>> event retains information from the previous two ('stimulus 1' and >>>>> 'stimulus 2'), however, I'm more concerned about where the >>>>> accumulation process starts and how this is specified. >>>>> In short, >>>>> 1) I want to record each event individually; >>>>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 >>>>> (but not fixation or anything else that precedes the stims); >>>>> 3) Present RT feedback based on cumulative RT (but accuracy only for >>>>> the first event). >>>>> Any help would be of great assistance! >>>>> Cheers, >>>>> Jordan -- 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 Sep 23 13:52:19 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 09:52:19 -0400 Subject: If...Or...Then In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD8017@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Matt, I second Mich's sentiment, and will use stronger language -- your code is a horrible mess! It is just plain ugly! People may complain that I harp too much on the virtue of making code "beautiful", but I find that making code beautiful also often makes it just work better, and many code problems result just from ugliness. So... - Your code is yet another ugly case of using multiple If...End If instead of If...ElseIf...Else...End If. I will leave this as an exercise for you. See the online E-Basic Help, and my many other complaints about this here on the Google Group. - Better yet, as Mich hinted, see if you can cast this into a Select...Case structure. - As Mich also said, use parentheses liberally. I just had a private argument with Brandon Cernicky at PST about this very issue, you prove my point that more parentheses are generally desirable. - Even better, looking at your code it looks like you actually have a cascade of several different conditions. In that case, just reorganize this into a set of nested If...Then or Select...Case. That could also eliminate the And clause, possibly more. So, something along the lines of Select LotteryChoice.RESP Case 1 If ((c.GetAttrib("FeedBack1") = "0") OR _ (c.GetAttrib("FeedBack2") = "0") OR _ (c.GetAttrib("FeedBack3") = "0")) Then _ Set Slide1.ActiveState = "Default1" .... Case 2 .... Case 3 .... Case Else MsgBox "Invalid LotteryChoice.RESP" End Select - Finally, before you even set about to code this any further, first sit down and make a complete logic table of all the combinatoric conditional possibilities and the desired result for each combination. You have a small finite set of conditions, so this should not take much trouble. I do this all the time whenever I face a similar situation, it really helps to untangle the logic and then I can code it rationally and quickly. And if you do not understand what I am talking about, then take a class that covers propositional (i.e., Boolean) logic and combinatorics, its not that hard. -- David McFarlane, Professional Faultfinder Michiel Spape wrote: > Hi, > It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: > 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > 3. how about: > ---- > If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 > End if > .... > 4. Do stuff with else and cases. Also, you might wish to nest bits. > 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). > Cheers, > Mich > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > Then > Set Slide1.ActiveState = "Default1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose3" > End If > > > Michiel Spapé > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > www.cognitology.eu > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > Sent: 22 September 2010 22:35 > To: E-Prime > Subject: If...Or...Then > > Hello > > I have Multiple slideslates that I'm tring to change based on the > script below, however the script isn't performing as I'd like it to. > > The message from the output window after debugging states: > > 3Lose3 > False > 2Lose3 > False > 1Lose3 > False > > This tells me that it's collecting the responses correctly and setting > a slide state but it looks as though the program is going through the > arguments and declaring them all false, which is not the case. Is > there something I need to include as the arguments make use of the > "OR" statement or is something else such as my overzealous use of the > If...Then statement? > > Note: I've added indents here to make it easier to look at. > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > Then > Set Slide1.ActiveState = "Default1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose3" > End If -- 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 mpaffel at gmail.com Thu Sep 23 14:26:54 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Thu, 23 Sep 2010 07:26:54 -0700 Subject: If...Or...Then In-Reply-To: <4C9B5B93.1070307@msu.edu> Message-ID: I knew this was going to raise some 'brows when i posted it and I thank you both for the advice. i was actually going to make a table this afternoon when i got into the office just to see if i could work it out on paper first and then retry. I'll let you know how it goes and again, thank you. On Sep 23, 8:52 am, David McFarlane wrote: > Matt, > > I second Mich's sentiment, and will use stronger language -- your code > is a horrible mess!  It is just plain ugly!  People may complain that I > harp too much on the virtue of making code "beautiful", but I find that > making code beautiful also often makes it just work better, and many > code problems result just from ugliness.  So... > > - Your code is yet another ugly case of using multiple If...End If > instead of If...ElseIf...Else...End If.  I will leave this as an > exercise for you.  See the online E-Basic Help, and my many other > complaints about this here on the Google Group. > > - Better yet, as Mich hinted, see if you can cast this into a > Select...Case structure. > > - As Mich also said, use parentheses liberally.  I just had a private > argument with Brandon Cernicky at PST about this very issue, you prove > my point that more parentheses are generally desirable. > > - Even better, looking at your code it looks like you actually have a > cascade of several different conditions.  In that case, just reorganize > this into a set of nested If...Then or Select...Case.  That could also > eliminate the And clause, possibly more.  So, something along the lines of > > Select LotteryChoice.RESP > Case 1 >      If ((c.GetAttrib("FeedBack1") = "0") OR _ >          (c.GetAttrib("FeedBack2") = "0") OR _ >          (c.GetAttrib("FeedBack3") = "0")) Then _ >          Set Slide1.ActiveState = "Default1" >      .... > Case 2 >      .... > Case 3 >      .... > Case Else >      MsgBox "Invalid LotteryChoice.RESP" > End Select > > - Finally, before you even set about to code this any further, first sit > down and make a complete logic table of all the combinatoric conditional > possibilities and the desired result for each combination.  You have a > small finite set of conditions, so this should not take much trouble.  I > do this all the time whenever I face a similar situation, it really > helps to untangle the logic and then I can code it rationally and > quickly.  And if you do not understand what I am talking about, then > take a class that covers propositional (i.e., Boolean) logic and > combinatorics, its not that hard. > > -- David McFarlane, Professional Faultfinder > > Michiel Spape wrote: > > Hi, > > It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: > > 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > 3. how about: > > ---- > > If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > >   Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > End if > > .... > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). > > Cheers, > > Mich > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > >  OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > Then > >  Set Slide1.ActiveState = "Default1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > >  Set Slide1.ActiveState = "Default2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > >  Set Slide1.ActiveState = "Default3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > >  Set Slide1.ActiveState = "Victory1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > >  Set Slide1.ActiveState = "Victory2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > >  Set Slide1.ActiveState = "Victory3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > >  Set Slide1.ActiveState = "Lose1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > >  Set Slide1.ActiveState = "Lose2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > >  Set Slide1.ActiveState = "Lose3" > > End If > > > Michiel Spap� > > Research Fellow > > Perception & Action group > > University of Nottingham > > School of Psychology > >www.cognitology.eu > > > -----Original Message----- > > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > Sent: 22 September 2010 22:35 > > To: E-Prime > > Subject: If...Or...Then > > > Hello > > > I have Multiple slideslates that I'm tring to change based on the > > script below, however the script isn't performing as I'd like it to. > > > The message from the output window after debugging states: > > > 3Lose3 > > False > > 2Lose3 > > False > > 1Lose3 > > False > > > This tells me that it's collecting the responses correctly and setting > > a slide state but it looks as though the program is going through the > > arguments and declaring them all false, which is not the case. Is > > there something I need to include as the arguments make use of the > > "OR" statement or is something else such as my overzealous use of the > > If...Then statement? > > > Note: I've added indents here to make it easier to look at. > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > >  OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > Then > >  Set Slide1.ActiveState = "Default1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > >  Set Slide1.ActiveState = "Default2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > >  Set Slide1.ActiveState = "Default3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > >  Set Slide1.ActiveState = "Victory1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > >  Set Slide1.ActiveState = "Victory2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > >  Set Slide1.ActiveState = "Victory3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > >  Set Slide1.ActiveState = "Lose1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > >  Set Slide1.ActiveState = "Lose2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > >  Set Slide1.ActiveState = "Lose3" > > End If -- 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 mpaffel at gmail.com Thu Sep 23 22:10:17 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Thu, 23 Sep 2010 15:10:17 -0700 Subject: If...Or...Then In-Reply-To: <7d1e0068-9d1e-4321-802e-26cc67ac28e1@k11g2000vbf.googlegroups.com> Message-ID: update: Here's something interesting. I was in the process of rewritting the script and as I was working through it I noticed that Attrib("FeedBack1"), ("FeedBack2") and ("FeedBack3") weren't always being referenced properly. I took out all the script that woudl change any of the programming and debugged using this script: Debug.Print "FeedBack1 was"&c.GetAttrib("FeedBack1") Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") Debug.Print "FeedBack3 was"&c.GetAttrib("FeedBack3") what I found was that half the cases the feedback2 was the wrong number, feedback1 was wrong only 2x, and feedback3 was never referenced incorrectly. have either of run into this? I'm currently using 2.8.79 if that makes 3 any difference. On Sep 23, 9:26 am, Matt Paffel wrote: > I knew this was going to raise some 'brows when i posted it and I > thank you both for the advice. > i was actually going to make a table this afternoon when i got into > the office just to see if i could work it out > on paper first and then retry. I'll let you know how it goes and > again, thank you. > > On Sep 23, 8:52 am, David McFarlane wrote: > > > > > Matt, > > > I second Mich's sentiment, and will use stronger language -- your code > > is a horrible mess!  It is just plain ugly!  People may complain that I > > harp too much on the virtue of making code "beautiful", but I find that > > making code beautiful also often makes it just work better, and many > > code problems result just from ugliness.  So... > > > - Your code is yet another ugly case of using multiple If...End If > > instead of If...ElseIf...Else...End If.  I will leave this as an > > exercise for you.  See the online E-Basic Help, and my many other > > complaints about this here on the Google Group. > > > - Better yet, as Mich hinted, see if you can cast this into a > > Select...Case structure. > > > - As Mich also said, use parentheses liberally.  I just had a private > > argument with Brandon Cernicky at PST about this very issue, you prove > > my point that more parentheses are generally desirable. > > > - Even better, looking at your code it looks like you actually have a > > cascade of several different conditions.  In that case, just reorganize > > this into a set of nested If...Then or Select...Case.  That could also > > eliminate the And clause, possibly more.  So, something along the lines of > > > Select LotteryChoice.RESP > > Case 1 > >      If ((c.GetAttrib("FeedBack1") = "0") OR _ > >          (c.GetAttrib("FeedBack2") = "0") OR _ > >          (c.GetAttrib("FeedBack3") = "0")) Then _ > >          Set Slide1.ActiveState = "Default1" > >      .... > > Case 2 > >      .... > > Case 3 > >      .... > > Case Else > >      MsgBox "Invalid LotteryChoice.RESP" > > End Select > > > - Finally, before you even set about to code this any further, first sit > > down and make a complete logic table of all the combinatoric conditional > > possibilities and the desired result for each combination.  You have a > > small finite set of conditions, so this should not take much trouble.  I > > do this all the time whenever I face a similar situation, it really > > helps to untangle the logic and then I can code it rationally and > > quickly.  And if you do not understand what I am talking about, then > > take a class that covers propositional (i.e., Boolean) logic and > > combinatorics, its not that hard. > > > -- David McFarlane, Professional Faultfinder > > > Michiel Spape wrote: > > > Hi, > > > It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: > > > 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > > Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > > 3. how about: > > > ---- > > > If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > > >   Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > > End if > > > .... > > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > > 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? > > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > > If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). > > > Cheers, > > > Mich > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > > >  OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > Then > > >  Set Slide1.ActiveState = "Default1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > >  Set Slide1.ActiveState = "Default2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > >  Set Slide1.ActiveState = "Default3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > >  Set Slide1.ActiveState = "Victory1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > >  Set Slide1.ActiveState = "Victory2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > >  Set Slide1.ActiveState = "Victory3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > >  Set Slide1.ActiveState = "Lose1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > >  Set Slide1.ActiveState = "Lose2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > >  Set Slide1.ActiveState = "Lose3" > > > End If > > > > Michiel Spap� > > > Research Fellow > > > Perception & Action group > > > University of Nottingham > > > School of Psychology > > >www.cognitology.eu > > > > -----Original Message----- > > > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > > Sent: 22 September 2010 22:35 > > > To: E-Prime > > > Subject: If...Or...Then > > > > Hello > > > > I have Multiple slideslates that I'm tring to change based on the > > > script below, however the script isn't performing as I'd like it to. > > > > The message from the output window after debugging states: > > > > 3Lose3 > > > False > > > 2Lose3 > > > False > > > 1Lose3 > > > False > > > > This tells me that it's collecting the responses correctly and setting > > > a slide state but it looks as though the program is going through the > > > arguments and declaring them all false, which is not the case. Is > > > there something I need to include as the arguments make use of the > > > "OR" statement or is something else such as my overzealous use of the > > > If...Then statement? > > > > Note: I've added indents here to make it easier to look at. > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > > >  OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > Then > > >  Set Slide1.ActiveState = "Default1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > >  Set Slide1.ActiveState = "Default2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > >  Set Slide1.ActiveState = "Default3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > >  Set Slide1.ActiveState = "Victory1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > >  Set Slide1.ActiveState = "Victory2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > >  Set Slide1.ActiveState = "Victory3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > >  Set Slide1.ActiveState = "Lose1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > >  Set Slide1.ActiveState = "Lose2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > >  Set Slide1.ActiveState = "Lose3" > > > End If- Hide quoted text - > > - Show quoted text - -- 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 pquain at une.edu.au Thu Sep 23 22:19:49 2010 From: pquain at une.edu.au (Peter Quain) Date: Fri, 24 Sep 2010 08:19:49 +1000 Subject: If...Or...Then In-Reply-To: <742458ca-388e-4753-beb2-daab467c855a@h25g2000vba.googlegro ups.com> Message-ID: tis not eprime, tis messy code and/or list values. One example - Printing FeedBack3 value when you think it is FeedBack2: Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") At 08:10 AM 24/09/2010, you wrote: >update: Here's something interesting. I was in the process of >rewritting the script and as I was working through it >I noticed that Attrib("FeedBack1"), ("FeedBack2") and ("FeedBack3") >weren't always being referenced properly. >I took out all the script that woudl change any of the programming and >debugged using this script: > >Debug.Print "FeedBack1 was"&c.GetAttrib("FeedBack1") >Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") >Debug.Print "FeedBack3 was"&c.GetAttrib("FeedBack3") > >what I found was that half the cases the feedback2 was the wrong >number, feedback1 was wrong only 2x, and >feedback3 was never referenced incorrectly. have either of run into >this? I'm currently using 2.8.79 if that makes 3 >any difference. > >On Sep 23, 9:26 am, Matt Paffel wrote: > > I knew this was going to raise some 'brows when i posted it and I > > thank you both for the advice. > > i was actually going to make a table this afternoon when i got into > > the office just to see if i could work it out > > on paper first and then retry. I'll let you know how it goes and > > again, thank you. > > > > On Sep 23, 8:52 am, David McFarlane wrote: > > > > > > > > > Matt, > > > > > I second Mich's sentiment, and will use stronger language -- your code > > > is a horrible mess! It is just plain ugly! People may complain that I > > > harp too much on the virtue of making code "beautiful", but I find that > > > making code beautiful also often makes it just work better, and many > > > code problems result just from ugliness. So... > > > > > - Your code is yet another ugly case of using multiple If...End If > > > instead of If...ElseIf...Else...End If. I will leave this as an > > > exercise for you. See the online E-Basic Help, and my many other > > > complaints about this here on the Google Group. > > > > > - Better yet, as Mich hinted, see if you can cast this into a > > > Select...Case structure. > > > > > - As Mich also said, use parentheses liberally. I just had a private > > > argument with Brandon Cernicky at PST about this very issue, you prove > > > my point that more parentheses are generally desirable. > > > > > - Even better, looking at your code it looks like you actually have a > > > cascade of several different conditions. In that case, just reorganize > > > this into a set of nested If...Then or Select...Case. That could also > > > eliminate the And clause, possibly > more. So, something along the lines of > > > > > Select LotteryChoice.RESP > > > Case 1 > > > If ((c.GetAttrib("FeedBack1") = "0") OR _ > > > (c.GetAttrib("FeedBack2") = "0") OR _ > > > (c.GetAttrib("FeedBack3") = "0")) Then _ > > > Set Slide1.ActiveState = "Default1" > > > .... > > > Case 2 > > > .... > > > Case 3 > > > .... > > > Case Else > > > MsgBox "Invalid LotteryChoice.RESP" > > > End Select > > > > > - Finally, before you even set about to code this any further, first sit > > > down and make a complete logic table of all the combinatoric conditional > > > possibilities and the desired result for each combination. You have a > > > small finite set of conditions, so this should not take much trouble. I > > > do this all the time whenever I face a similar situation, it really > > > helps to untangle the logic and then I can code it rationally and > > > quickly. And if you do not understand what I am talking about, then > > > take a class that covers propositional (i.e., Boolean) logic and > > > combinatorics, its not that hard. > > > > > -- David McFarlane, Professional Faultfinder > > > > > Michiel Spape wrote: > > > > Hi, > > > > It gives me headache just looking at it! > I'm sure David mcF would be better at cleaning this up, but: > > > > 1. try to separate multiple AND/ORs using > brackets, unless you're REALLY sure about > eBasic's priority: does AND go before =, does > equal go before OR, does AND go before OR? I'm > assuming you mean IF (LotteryChoice.RESP = "1" > and (c.GetAttrib("Feedback1") = "0" or > c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > > > Is the same as c.GetAttrib("Feedback1") * > c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > > > 3. how about: > > > > ---- > > > > If (c.GetAttrib("FeedBack1") * > c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > > > > Set Slide1.ActiveState = "Default" & > LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > > > End if > > > > .... > > > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > > > 5. The problem, if you say every IF here > turns out wrong is indeed either in your ifs, > so you need to clean those up, or in the > premises (LotteryChoice.RESP, > c.GetAttrib("Feedback")). Why don't you > debug.print what the answer to the premises is? > > > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > > > If it so happens that these are correctly > found at the level of your script, and your IF > statements still all turn false, then your IF > statements are false, so your IF-THENs are not > working (I also make messy ones from time to time!). > > > > Cheers, > > > > Mich > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If > > > > > > Michiel Spap� > > > > Research Fellow > > > > Perception & Action group > > > > University of Nottingham > > > > School of Psychology > > > >www.cognitology.eu > > > > > > -----Original Message----- > > > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > > > Sent: 22 September 2010 22:35 > > > > To: E-Prime > > > > Subject: If...Or...Then > > > > > > Hello > > > > > > I have Multiple slideslates that I'm tring to change based on the > > > > script below, however the script isn't performing as I'd like it to. > > > > > > The message from the output window after debugging states: > > > > > > 3Lose3 > > > > False > > > > 2Lose3 > > > > False > > > > 1Lose3 > > > > False > > > > > > This tells me that it's collecting the responses correctly and setting > > > > a slide state but it looks as though the program is going through the > > > > arguments and declaring them all false, which is not the case. Is > > > > there something I need to include as the arguments make use of the > > > > "OR" statement or is something else such as my overzealous use of the > > > > If...Then statement? > > > > > > Note: I've added indents here to make it easier to look at. > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If- Hide quoted text - > > > > - Show quoted text - > >-- >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 Sep 23 22:27:16 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 18:27:16 -0400 Subject: If...Or...Then In-Reply-To: <742458ca-388e-4753-beb2-daab467c855a@h25g2000vba.googlegro ups.com> Message-ID: Matt, Well, it always helps to go back and check your assumptions as you have done, so kudos for that. Beyond that, your question strikes me as asking something like, "Why was there no ball in the box?" IOW, we are missing any sort of prior information about what box, what ball, and how a ball would get into the box. In this case, without seeing whatever code is reponsible for assigning the values for these Feedback attributes, there is nothing we can say about why they do not take the desired or expected values. All I can say, based on extensive experience of EP as well as a host of other programming systems, is that if EP says the value of, say, Feedback1 is "1", then that is exactly the value that *you* asked EP to give it, so the problem is not with EP but in the instructions that you gave EP. As a general rule, machines follow our instructions exactly, so the error almost always lies in our instructions or our understanding & assumptions of how the machine interprets our instructions. One more hint. I know that Mich likes to use Debug.Print, and in some cases that is just the right tool. I, however, generally prefer to use c.SetAttrib to add values to the log and then inspect the values there. -- David McFarlane, Professional Faultfinder >update: Here's something interesting. I was in the process of >rewritting the script and as I was working through it >I noticed that Attrib("FeedBack1"), ("FeedBack2") and ("FeedBack3") >weren't always being referenced properly. >I took out all the script that woudl change any of the programming and >debugged using this script: > >Debug.Print "FeedBack1 was"&c.GetAttrib("FeedBack1") >Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") >Debug.Print "FeedBack3 was"&c.GetAttrib("FeedBack3") > >what I found was that half the cases the feedback2 was the wrong >number, feedback1 was wrong only 2x, and >feedback3 was never referenced incorrectly. have either of run into >this? I'm currently using 2.8.79 if that makes 3 >any difference. > >On Sep 23, 9:26 am, Matt Paffel wrote: > > I knew this was going to raise some 'brows when i posted it and I > > thank you both for the advice. > > i was actually going to make a table this afternoon when i got into > > the office just to see if i could work it out > > on paper first and then retry. I'll let you know how it goes and > > again, thank you. > > > > On Sep 23, 8:52 am, David McFarlane wrote: > > > > > > > > > Matt, > > > > > I second Mich's sentiment, and will use stronger language -- your code > > > is a horrible mess! It is just plain ugly! People may complain that I > > > harp too much on the virtue of making code "beautiful", but I find that > > > making code beautiful also often makes it just work better, and many > > > code problems result just from ugliness. So... > > > > > - Your code is yet another ugly case of using multiple If...End If > > > instead of If...ElseIf...Else...End If. I will leave this as an > > > exercise for you. See the online E-Basic Help, and my many other > > > complaints about this here on the Google Group. > > > > > - Better yet, as Mich hinted, see if you can cast this into a > > > Select...Case structure. > > > > > - As Mich also said, use parentheses liberally. I just had a private > > > argument with Brandon Cernicky at PST about this very issue, you prove > > > my point that more parentheses are generally desirable. > > > > > - Even better, looking at your code it looks like you actually have a > > > cascade of several different conditions. In that case, just reorganize > > > this into a set of nested If...Then or Select...Case. That could also > > > eliminate the And clause, possibly > more. So, something along the lines of > > > > > Select LotteryChoice.RESP > > > Case 1 > > > If ((c.GetAttrib("FeedBack1") = "0") OR _ > > > (c.GetAttrib("FeedBack2") = "0") OR _ > > > (c.GetAttrib("FeedBack3") = "0")) Then _ > > > Set Slide1.ActiveState = "Default1" > > > .... > > > Case 2 > > > .... > > > Case 3 > > > .... > > > Case Else > > > MsgBox "Invalid LotteryChoice.RESP" > > > End Select > > > > > - Finally, before you even set about to code this any further, first sit > > > down and make a complete logic table of all the combinatoric conditional > > > possibilities and the desired result for each combination. You have a > > > small finite set of conditions, so this should not take much trouble. I > > > do this all the time whenever I face a similar situation, it really > > > helps to untangle the logic and then I can code it rationally and > > > quickly. And if you do not understand what I am talking about, then > > > take a class that covers propositional (i.e., Boolean) logic and > > > combinatorics, its not that hard. > > > > > -- David McFarlane, Professional Faultfinder > > > > > Michiel Spape wrote: > > > > Hi, > > > > It gives me headache just looking at it! > I'm sure David mcF would be better at cleaning this up, but: > > > > 1. try to separate multiple AND/ORs using > brackets, unless you're REALLY sure about > eBasic's priority: does AND go before =, does > equal go before OR, does AND go before OR? I'm > assuming you mean IF (LotteryChoice.RESP = "1" > and (c.GetAttrib("Feedback1") = "0" or > c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > > > Is the same as c.GetAttrib("Feedback1") * > c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > > > 3. how about: > > > > ---- > > > > If (c.GetAttrib("FeedBack1") * > c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > > > > Set Slide1.ActiveState = "Default" & > LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > > > End if > > > > .... > > > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > > > 5. The problem, if you say every IF here > turns out wrong is indeed either in your ifs, > so you need to clean those up, or in the > premises (LotteryChoice.RESP, > c.GetAttrib("Feedback")). Why don't you > debug.print what the answer to the premises is? > > > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > > > If it so happens that these are correctly > found at the level of your script, and your IF > statements still all turn false, then your IF > statements are false, so your IF-THENs are not > working (I also make messy ones from time to time!). > > > > Cheers, > > > > Mich > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If > > > > > > Michiel Spap� > > > > Research Fellow > > > > Perception & Action group > > > > University of Nottingham > > > > School of Psychology > > > >www.cognitology.eu > > > > > > -----Original Message----- > > > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > > > Sent: 22 September 2010 22:35 > > > > To: E-Prime > > > > Subject: If...Or...Then > > > > > > Hello > > > > > > I have Multiple slideslates that I'm tring to change based on the > > > > script below, however the script isn't performing as I'd like it to. > > > > > > The message from the output window after debugging states: > > > > > > 3Lose3 > > > > False > > > > 2Lose3 > > > > False > > > > 1Lose3 > > > > False > > > > > > This tells me that it's collecting the responses correctly and setting > > > > a slide state but it looks as though the program is going through the > > > > arguments and declaring them all false, which is not the case. Is > > > > there something I need to include as the arguments make use of the > > > > "OR" statement or is something else such as my overzealous use of the > > > > If...Then statement? > > > > > > Note: I've added indents here to make it easier to look at. > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If- Hide quoted text - > > > > - Show quoted text - > >-- >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 tudor3 at gmail.com Fri Sep 24 08:01:49 2010 From: tudor3 at gmail.com (tudor) Date: Fri, 24 Sep 2010 01:01:49 -0700 Subject: Running E-Prime experiments online Message-ID: Hello everyone, I have an E-Prime script for an experiment that measures subjects' reaction times to a simple number comparison task. The design of the experiment is such that the subjects need to run the experiment daily for 3 weeks, which is why I intend to have them run it from their homes, online, rather than asking them to come each day into the lab. I thought it would be the easiest for the subjects if their daily task is to login to a website and run the script through their Internet browser. This will enable me to monitor their performance every day, which is quite important. The data files (which are small, < 1 MB) would be stored on the server. However I am concerned that, in this case, the reaction times will not be accurate, because, unless the script is somehow ran "locally", there will probably be a significant (and variable) Internet lag between their response and the moment the response is registered. On the other hand, if I choose to run the experiment "offline" by having them run a copy of the script on their computers, I will have no knowledge of their performance before the end of the 3 weeks (I would not want to ask them to submit the data files every day). Since I am very new to E-Prime, I am not sure what would be the best way to go about running this experiment. Can anyone help? Many thanks in advance! -- 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 baltimore.ben at gmail.com Fri Sep 24 12:15:36 2010 From: baltimore.ben at gmail.com (ben robinson) Date: Fri, 24 Sep 2010 08:15:36 -0400 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: why not have them run it locally and email you their data file when they've finished? On Fri, Sep 24, 2010 at 4:01 AM, tudor wrote: > Hello everyone, > > I have an E-Prime script for an experiment that measures subjects' > reaction times to a simple number comparison task. The design of the > experiment is such that the subjects need to run the experiment daily > for 3 weeks, which is why I intend to have them run it from their > homes, online, rather than asking them to come each day into the lab. > > I thought it would be the easiest for the subjects if their daily task > is to login to a website and run the script through their Internet > browser. This will enable me to monitor their performance every day, > which is quite important. The data files (which are small, < 1 MB) > would be stored on the server. > However I am concerned that, in this case, the reaction times will not > be accurate, because, unless the script is somehow ran "locally", > there will probably be a significant (and variable) Internet lag > between their response and the moment the response is registered. > On the other hand, if I choose to run the experiment "offline" by > having them run a copy of the script on their computers, I will have > no knowledge of their performance before the end of the 3 weeks (I > would not want to ask them to submit the data files every day). > > Since I am very new to E-Prime, I am not sure what would be the best > way to go about running this experiment. Can anyone help? Many thanks > in advance! > > -- > 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 Michiel.Spape at nottingham.ac.uk Fri Sep 24 12:39:50 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 24 Sep 2010 13:39:50 +0100 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: Couple of thoughts: - That would be far easier. The only thing I could think of which you might try is to have people log on to your system through remote desktop (mstsc) and see if you can run E-Prime that way. Last time I tried that (i.e. last time I tried to work on an e-prime experiment from home), this failed, however. - The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). Alternatively, and MUCH easier, is to learn a simple bit of Flash and let them run Flash experiments from your server. It's very easy to program (in comparison with trying to figure out how, if at all possible, to run E-Prime on a server!), rather easy to learn (Flash comes with a very easy tutorial that gets you doing cool things within hours), and although the timing is rather inaccurate, it's better than nothing. Cheaper, and to mind, better, is to run stuff on Silverlight and design experiments using Expression Blend. It's free for university students (google 'Microsoft Dreamspark'), can do Visual Basic (but later versions), and more properly object based than Flash. You should consider: - Running experiments from a server (rather than a local computer) brings inaccuracy due to latency problems; - Running experiments from local computers connected to a server brings inaccuracy due to the fact that you don't have a clue as to what they're running. Therefore, E-Prime won't do much better than anything other out there. If you're very new to E-Prime, I recommend learning something else instead - transition from E-Prime to proper programming is harsher than the other way around. Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of ben robinson Sent: 24 September 2010 13:16 To: e-prime at googlegroups.com Subject: Re: Running E-Prime experiments online why not have them run it locally and email you their data file when they've finished? On Fri, Sep 24, 2010 at 4:01 AM, tudor wrote: Hello everyone, I have an E-Prime script for an experiment that measures subjects' reaction times to a simple number comparison task. The design of the experiment is such that the subjects need to run the experiment daily for 3 weeks, which is why I intend to have them run it from their homes, online, rather than asking them to come each day into the lab. I thought it would be the easiest for the subjects if their daily task is to login to a website and run the script through their Internet browser. This will enable me to monitor their performance every day, which is quite important. The data files (which are small, < 1 MB) would be stored on the server. However I am concerned that, in this case, the reaction times will not be accurate, because, unless the script is somehow ran "locally", there will probably be a significant (and variable) Internet lag between their response and the moment the response is registered. On the other hand, if I choose to run the experiment "offline" by having them run a copy of the script on their computers, I will have no knowledge of their performance before the end of the 3 weeks (I would not want to ask them to submit the data files every day). Since I am very new to E-Prime, I am not sure what would be the best way to go about running this experiment. Can anyone help? Many thanks in advance! -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Fri Sep 24 13:51:27 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 24 Sep 2010 09:51:27 -0400 Subject: Running E-Prime experiments online In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD8440@VUIEXCHC.ad.notti ngham.ac.uk> Message-ID: And more thoughts... In general, I do not think that E-Prime is set up to run over a network, certainly not with ms accuracy, and I do not expect PST to have any such plans for the future. If you do want ms accuracy for tasks run over a network, then try Inquisit by Millisecond, http://www.millisecond.com . Put briefly, with a program written in Inquisit, subjects can go to a web site, and it will install an add-on or plug-in to their local machine, which they must do only once (much like installing Flash to run Flash content from the web). Now when they launch the Inquisit program from their web browser, the program will actually run locally on their own machine, with all the power of DirectX to provide ms accuracy. Clever, eh? And then you can have the data posted directly to a network repository of your own choice, which you may then examine remotely at any time. I think this covers exactly what you asked for, and it is all covered by the terms of the Inquisit license. I generally find Inquisit an inferior product to E-Prime, but in this instance it exceeds EP. And the company that handles Inquisit is much friendlier than PST. -- David McFarlane, Professional Faultfinder >Couple of thoughts: >- That would be far easier. The only >thing I could think of which you might try is to >have people log on to your system through remote >desktop (mstsc) and see if you can run E-Prime >that way. Last time I tried that (i.e. last time >I tried to work on an e-prime experiment from home), this failed, however. >- The problem with Ben’s idea here is >that you’d require each of your subjects to have >an E-Prime license key (cost of which is about 650 Euro, last time I checked). > >Alternatively, and MUCH easier, is to learn a >simple bit of Flash and let them run Flash >experiments from your server. It’s very easy to >program (in comparison with trying to figure out >how, if at all possible, to run E-Prime on a >server!), rather easy to learn (Flash comes with >a very easy tutorial that gets you doing cool >things within hours), and although the timing is >rather inaccurate, it’s better than nothing. >Cheaper, and to mind, better, is to run stuff on >Silverlight and design experiments using >Expression Blend. It’s free for university >students (google ‘Microsoft Dreamspark’), can do >Visual Basic (but later versions), and more properly object based than Flash. > >You should consider: >- Running experiments from a server >(rather than a local computer) brings inaccuracy due to latency problems; >- Running experiments from local >computers connected to a server brings >inaccuracy due to the fact that you don’t have a >clue as to what they’re running. >Therefore, E-Prime won’t do much better than >anything other out there. If you’re very new to >E-Prime, I recommend learning something else >instead – transition from E-Prime to proper >programming is harsher than the other way around. > >Cheers, >Mich > > > >Michiel Spapé >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology >www.cognitology.eu > >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of ben robinson >Sent: 24 September 2010 13:16 >To: e-prime at googlegroups.com >Subject: Re: Running E-Prime experiments online > >why not have them run it locally and email you >their data file when they've finished? >On Fri, Sep 24, 2010 at 4:01 AM, tudor ><tudor3 at gmail.com> wrote: >Hello everyone, > >I have an E-Prime script for an experiment that measures subjects' >reaction times to a simple number comparison task. The design of the >experiment is such that the subjects need to run the experiment daily >for 3 weeks, which is why I intend to have them run it from their >homes, online, rather than asking them to come each day into the lab. > >I thought it would be the easiest for the subjects if their daily task >is to login to a website and run the script through their Internet >browser. This will enable me to monitor their performance every day, >which is quite important. The data files (which are small, < 1 MB) >would be stored on the server. >However I am concerned that, in this case, the reaction times will not >be accurate, because, unless the script is somehow ran "locally", >there will probably be a significant (and variable) Internet lag >between their response and the moment the response is registered. >On the other hand, if I choose to run the experiment "offline" by >having them run a copy of the script on their computers, I will have >no knowledge of their performance before the end of the 3 weeks (I >would not want to ask them to submit the data files every day). > >Since I am very new to E-Prime, I am not sure what would be the best >way to go about running this experiment. Can anyone help? Many thanks >in advance! -- 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 wangshusandra at gmail.com Fri Sep 24 16:48:03 2010 From: wangshusandra at gmail.com (Sandra Wang) Date: Fri, 24 Sep 2010 09:48:03 -0700 Subject: Help! A noun-pair lookup task. Message-ID: Hi, I am going to start with an experiment with a noun-pair lookup task and I am wondering if anyone could help with the programming. I am such a beginner in E-prime. Here is that task: 9 pairs of words are presented at the top of the screen and a prime pair is presented in the middle of the screen. Participants need to decide whether the prime pair matches any of the 9 pairs in the top. Also, the 9 pairs changes from trial to trial for 40 trials. Feedback on RT and accuracy will be provided after every 10 trials. I am not sure how to present the 9 pairs and make them change from trial to trial. Also, I am not sure how to make E-Prime recognize a correct response ( I know how to do it with one word presented at a time but ...). Please help! Thanks very much! Sandra -- 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 mplenhart at gmail.com Sun Sep 26 15:47:42 2010 From: mplenhart at gmail.com (Matt) Date: Sun, 26 Sep 2010 08:47:42 -0700 Subject: Running E-Prime experiments online In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD8440@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: The subjects shouldn't need a full E-Prime license to run experiments locally and then e-mail back the EDAT files. The run-time only license of E-Prime should be enough to let you distribute it to whoever you need to participate, have them install it, and then run the EBS files locally. The run-time is around $100-200. On Sep 24, 8:39 am, Michiel Spape wrote: > -          The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). -- 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 mplenhart at gmail.com Sun Sep 26 16:07:14 2010 From: mplenhart at gmail.com (Matt) Date: Sun, 26 Sep 2010 09:07:14 -0700 Subject: video files In-Reply-To: Message-ID: If you are using the latest version of EP2, definitely run the Codec Config utility on the movie files to get a better idea of what the problem is. It will highlight codecs or other issues that are preventing the movie from being rendered and allow you to make different selections. On Sep 22, 2:13 pm, Katie U wrote: > Hi David, > > Thanks for the suggestion! I think it is a codec problem because the > size of the file isn't an issue and the file path is also correct. I'm > trying VirtualDub, but I keep getting this error when I try to upload > the video file: "VirtualDub requires a Video for Windows (VFW) > compatible codec to decompress video. DirectShow codecs, such as those > used by Windows Media Player, are not suitable". > > I've tried this on multiple computers with different types of files > (avi, mpeg, mpeg4, etc.)- is it just that they all do not have the > right codecs to play the file? Do I need to download some type of > converter to use VirtualDub? Thanks again for your help! > > -Katie > > On Sep 22, 12:07 pm, David Vinson wrote: > > > > > Hi Katie, > > > It's hard to guess what your problem might be without knowing a little > > more (eg video file size, etc).  In my experience trying to get videos > > of various types to work in E-Prime, most video problems tend to be > > codec problems rather than anything else. > > > You can also do a simple experiment to test whether size matters - > > create a video that includes only a few frames of your large/problematic > > video, and see whether E-Prime likes it.  If it still doesn't work, this > > should rule out size as a source of your problem. > > > If it's a codec problem, here's a very quick summary of what PST Support > > suggested to me with a similar problem: download VirtualDub (stable > > 32-bit version), compress using ffdshow video codec, encoder type MJPEG, > > save as AVI. > > The very latest build of E-Studio (2.0.8.79) has added a Codec Config > > tool, which allows you to render these newly compressed video files > > before using them in an experiment. Seems handy in solving such problems > > although I haven't worked with this in detail yet. > > > Your problem could also be something completely different - is the > > problem movie file in the experiment directory? (or does it have the > > path correctly designated). > > > good luck, > > David V > > > On 22/09/2010 16:41, Katie U wrote: > > > > I'm trying to load a film clip into E-Prime and for some reason it > > > won't load the movie file. I've tried multiple formats (both mpg and > > > avi) to no avail. Other film clips load fine into the same experiment > > > file, but they're much smaller. Does E-Prime have a limit on the size > > > of the movie file and that's why it won't load? Thanks in advance! > > > -- > > 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 Michiel.Spape at nottingham.ac.uk Mon Sep 27 08:21:06 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 27 Sep 2010 09:21:06 +0100 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: Hi, Wish I lived in a country where the university would be willing to spend $100-200 per subject for an online experiment! Actually, I think it is pretty insane one has to pay 96,15 EU (looked it up) just to get such a runtime engine... Another idea, experimentally more valid (since the problem of different systems still persists whether you use the solution below, or David's, or mine (Flash/Silverlight), and perhaps more pragmatic, is to install your experiment on a decent laptop and drive around the country to get data from all your participants. Don't know what the price of petrol is these days, though! Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Sent: 26 September 2010 16:48 To: E-Prime Subject: Re: Running E-Prime experiments online The subjects shouldn't need a full E-Prime license to run experiments locally and then e-mail back the EDAT files. The run-time only license of E-Prime should be enough to let you distribute it to whoever you need to participate, have them install it, and then run the EBS files locally. The run-time is around $100-200. On Sep 24, 8:39 am, Michiel Spape wrote: > -          The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 nitz.david at googlemail.com Mon Sep 27 11:02:01 2010 From: nitz.david at googlemail.com (Dave) Date: Mon, 27 Sep 2010 04:02:01 -0700 Subject: Google groups to discontinue files and pages support Message-ID: Hi all, I just got word that Google is about to discontinue some Google groups features which are relevant to this group: As of November 2010 no new files can be uploaded, no new pages can be created. As of February 2011 all existing files and pages will be removed. Source: http://groups-announcements.blogspot.com/2010/09/notice-about-pages-and-files.html?hl=en Just thought I'd let you know... -David -- 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 mplenhart at gmail.com Mon Sep 27 11:12:58 2010 From: mplenhart at gmail.com (Matt) Date: Mon, 27 Sep 2010 04:12:58 -0700 Subject: Running E-Prime experiments online In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF04052AA2@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Sorry for not being clear - what I meant is that a single run-time license might allow you to distribute to all of the participants to run the experiment. So $100-200 total for all of the participants, not $100-200 each. PST would have to give the official word on whether or not the license covers this situation. But yes, installing on a laptop and taking it to each participant is the ideal option and no run-time is needed for that. On Sep 27, 4:21 am, Michiel Spape wrote: > Hi, > Wish I lived in a country where the university would be willing to spend $100-200 per subject for an online experiment! Actually, I think it is pretty insane one has to pay 96,15 EU (looked it up) just to get such a runtime engine... > > Another idea, experimentally more valid (since the problem of different systems still persists whether you use the solution below, or David's, or mine (Flash/Silverlight), and perhaps more pragmatic, is to install your experiment on a decent laptop and drive around the country to get data from all your participants. Don't know what the price of petrol is these days, though! > > Cheers, > Mich > > Michiel Spapé > Research Fellow > Perception & Action group > University of Nottingham > School of Psychologywww.cognitology.eu-----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt > Sent: 26 September 2010 16:48 > To: E-Prime > Subject: Re: Running E-Prime experiments online > > The subjects shouldn't need a full E-Prime license to run experiments > locally and then e-mail back the EDAT files.  The run-time only > license of E-Prime should be enough to let you distribute it to > whoever you need to participate, have them install it, and then run > the EBS files locally. > > The run-time is around $100-200. > > On Sep 24, 8:39 am, Michiel Spape > wrote: > > -          The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). > > -- > 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. > > This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it.   Please do not use, copy or disclose the information contained in this message or in any attachment.  Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. > > This message has been checked for viruses but the contents of an attachment > may still contain software viruses which could damage your computer system: > you are advised to perform your own checks. Email communications with the > University of Nottingham may be monitored as permitted by UK legislation. -- 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 pquain at une.edu.au Mon Sep 27 08:03:39 2010 From: pquain at une.edu.au (Peter Quain) Date: Mon, 27 Sep 2010 18:03:39 +1000 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: Timing would be shot no matter what, so if timing was important, and/or DV was RT there would be problems... different machines, different times to execute the same blocks of code, or load the same stimuli. Different refresh rates ... You'd have to make sure that there was lots of slack built in (no 4ms load times, for instance) to account for different processors, RAM, HDD access time etc. etc. etc.; that refresh was changed to the same value on each host machine; that timing utility was run on each machine, and the values also sent back to home; that the paradigm included code to check .. the list might go on, perhaps At 01:47 AM 27/09/2010, you wrote: >The subjects shouldn't need a full E-Prime license to run experiments >locally and then e-mail back the EDAT files. The run-time only >license of E-Prime should be enough to let you distribute it to >whoever you need to participate, have them install it, and then run >the EBS files locally. > >The run-time is around $100-200. > > >On Sep 24, 8:39 am, Michiel Spape >wrote: > > - The problem with Ben's idea here is that you'd require > each of your subjects to have an E-Prime license key (cost of which > is about 650 Euro, last time I checked). > >-- >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 wangshusandra at gmail.com Mon Sep 27 15:19:32 2010 From: wangshusandra at gmail.com (Sandra Wang) Date: Mon, 27 Sep 2010 08:19:32 -0700 Subject: Presenting multiple stimuli in random orders Message-ID: Hi all, I went ahead with the noun-pair lookup task and made some progress so far. But I still have one problem unsolved: I want to present the same 9 pairs of words at the same time for each trial, but the orders of the 9 pairs should be randomized from trial to trial. Can E-prime do that and how? Thanks! I'd really appreciate your help! Sandra -- 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 tudor3 at gmail.com Mon Sep 27 16:52:27 2010 From: tudor3 at gmail.com (tudor) Date: Mon, 27 Sep 2010 09:52:27 -0700 Subject: Running E-Prime experiments online In-Reply-To: <201009271135.o8RBZ1NT022371@mail15.tpg.com.au> Message-ID: Many thanks for all your replies. Unfortunately, taking the laptop to each participant would not be possible (although I agree it is the ideal option), nor asking them to send data files at the end of each day. My experiment does not require a lot of accuracy in the measurement of RTs, so I think an online solution could work well. It would be good to find a solution that doesn't require writing new code but rather using the existing E-Prime code, either directly (if running on the same platform) or machine-translated into a different language (e.g. Flash). I heard that there might be a special version of Flash for running experiments online, does anyone know anything about this? -- 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 Sep 27 18:40:25 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 27 Sep 2010 14:40:25 -0400 Subject: Google groups to discontinue files and pages support In-Reply-To: <47d45e3b-a80e-4ba2-b5e2-9dd47915c58b@k10g2000yqa.googlegro ups.com> Message-ID: David, Thanks for the notice, I had no idea. And just when, with Brian MacWhinney's help, I was getting ready to post some of my demo programs on the Group, darn. But we may work out another possibility, so stay tuned. -- David McFarlane, Professional Faultfinder >I just got word that Google is about to discontinue some Google groups >features which are relevant to this group: >As of November 2010 no new files can be uploaded, no new pages can be >created. As of February 2011 all existing files and pages will be >removed. >Source: >http://groups-announcements.blogspot.com/2010/09/notice-about-pages-and-files.html?hl=en > >Just thought I'd let you know... >-David -- 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 Sep 27 18:36:51 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 27 Sep 2010 14:36:51 -0400 Subject: Presenting multiple stimuli in random orders In-Reply-To: Message-ID: Sandra, Stock reminder: 1) I do not work for PST. 2) PST's trained staff takes 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 (although current estimates are more like 10 days) -- this is pretty much their substitute for proper documentation, so make full use of it. 3) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... How about nested Lists and colon syntax? See the tutorial in Appendix C of the User's Guide that came with E-Prime, and look up colon syntax in the index. -- David McFarlane, Professional Faultfinder >I went ahead with the noun-pair lookup task and made some progress so >far. But I still have one problem unsolved: I want to present the same >9 pairs of words at the same time for each trial, but the orders of >the 9 pairs should be randomized from trial to trial. Can E-prime do >that and how? > >Thanks! I'd really appreciate your help! > >Sandra -- 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 wangshusandra at gmail.com Tue Sep 28 01:33:12 2010 From: wangshusandra at gmail.com (Sandra Wang) Date: Mon, 27 Sep 2010 18:33:12 -0700 Subject: Presenting multiple stimuli in random orders In-Reply-To: <4ca0e44b.194de70a.3563.15cfSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks for the suggestion! I will look at colon syntax and see whether it will work. I will post the reply from PST Web Support if I get any. Thanks, Sandra On Sep 27, 1:36 pm, David McFarlane wrote: > Sandra, > > Stock reminder:  1) I do not work for PST.  2) PST's trained staff > takes 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 (although current > estimates are more like 10 days) -- this is pretty much their > substitute for proper documentation, so make full use of it.  3) If > you do get an answer from PST Web Support, please extend the courtesy > of posting their reply back here for the sake of others. > > That said, here is my take... > > How about nested Lists and colon syntax?  See the tutorial in > Appendix C of the User's Guide that came with E-Prime, and look up > colon syntax in the index. > > -- David McFarlane, Professional Faultfinder > > >I went ahead with the noun-pair lookup task and made some progress so > >far. But I still have one problem unsolved: I want to present the same > >9 pairs of words at the same time for each trial, but the orders of > >the 9 pairs should be randomized from trial to trial. Can E-prime do > >that and how? > > >Thanks! I'd really appreciate your help! > > >Sandra -- 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 jemorriss at googlemail.com Tue Sep 28 13:27:30 2010 From: jemorriss at googlemail.com (Jayne Morriss) Date: Tue, 28 Sep 2010 06:27:30 -0700 Subject: Equal to or more than ? Message-ID: Hi all, I am writing script for a behavioural experiment, whereby 12 triangles are presented together. I have a problem with the triangles overlapping each other on the screen. I would like to write some script to assign each triangle to a matrix where the triangle can move randomly within those specific co ordinates. I need to be able to write in the script for the co ordinates to be more than or less than a specific value. However, E-prime is not accepting the symbol <> and is asking me to set a parameter name or parameter? See general script below without <>; (note that I only have 6 images scripted so far) dim x1,y1 as integer x1 = random (30,190) y1 = random (30,190) c.SetAttrib "posx1", x1 c.SetAttrib "posy1", y1 dim x2,y2 as integer x2 = random (30,190) y2 = random (220,380) c.SetAttrib "posx2", x2 c.SetAttrib "posy2", y2 dim x3,y3 as integer x1 = random (30,190) y1 = random (410,570) c.SetAttrib "posx3", x3 c.SetAttrib "posy3", y3 dim x4,y4 as integer x4 = random (30,190) y4 = random (600,760) c.SetAttrib "posx4", x4 c.SetAttrib "posy4", y4 dim x5,y5 as integer x5 = random (220,380) y5 = random (30,190) c.SetAttrib "posx5", x5 c.SetAttrib "posy5", y5 dim x6,y6 as integer x6 = random (220,380) y6 = random (220,380) c.SetAttrib "posx6", x6 c.SetAttrib "posy6", y6 Any help would be much appreciated Many thanks, Jayne Morriss -- 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 Sep 28 14:18:27 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 28 Sep 2010 10:18:27 -0400 Subject: Equal to or more than ? In-Reply-To: Message-ID: Jayne, Hmm. Let's start with the advice that you don't want to hear and that others here are tired of hearing me say: You need to take a class in Introduction to Computer Programming. If you had done that then you would already know the answer to such a fundamental question, and your not knowing that tells me that, even if you make it over this one hurdle, you are just heading into deeper and deeper frustration the further you go unless you step back and get a proper education. Nevertheless, I will address your specific question (without even looking at your specific code): In E-Basic (i.e., Visual Basic), the token "<>" means "does not equal"; since ASCII plain text does not contain an actual "not equal to" symbol (just as the typewriters that preceeded computers had no such symbol because you could simply type "=", backspace, and then add the "/"; and yes, I do go back that far), mnemonically you should think that x cannot be simultaneously < y and > y, thus x <> y must mean x does not equal y. (By contrast, in the language C you would write x != y.) So, you cannot simply test for y1 < x < y2 in that compact symbolic form, or however you tried to do it with <> (you did not give us any example). Instead, you must expand that into two clauses joined by a logical operator, thus, If (y1 < x) and (x < y2) Then ... That's it. Now go sign up for a class where you would learn all this properly. -- David McFarlane, Professional Faultfinder >I am writing script for a behavioural experiment, whereby 12 triangles >are presented together. I have a problem with the triangles >overlapping each other on the screen. I would like to write some >script to assign each triangle to a matrix where the triangle can move >randomly within those specific co ordinates. I need to be able to >write in the script for the co ordinates to be more than or less than >a specific value. However, E-prime is not accepting the symbol <> and >is asking me to set a parameter name or parameter? > > See general script below without <>; > >(note that I only have 6 images scripted so far) > > dim x1,y1 as integer >x1 = random (30,190) >y1 = random (30,190) >c.SetAttrib "posx1", x1 >c.SetAttrib "posy1", y1 >dim x2,y2 as integer >x2 = random (30,190) >y2 = random (220,380) >c.SetAttrib "posx2", x2 >c.SetAttrib "posy2", y2 >dim x3,y3 as integer >x1 = random (30,190) >y1 = random (410,570) >c.SetAttrib "posx3", x3 >c.SetAttrib "posy3", y3 >dim x4,y4 as integer >x4 = random (30,190) >y4 = random (600,760) >c.SetAttrib "posx4", x4 >c.SetAttrib "posy4", y4 >dim x5,y5 as integer >x5 = random (220,380) >y5 = random (30,190) >c.SetAttrib "posx5", x5 >c.SetAttrib "posy5", y5 >dim x6,y6 as integer >x6 = random (220,380) >y6 = random (220,380) >c.SetAttrib "posx6", x6 >c.SetAttrib "posy6", y6 > >Any help would be much appreciated > >Many thanks, > >Jayne Morriss -- 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 Michiel.Spape at nottingham.ac.uk Tue Sep 28 16:54:20 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Tue, 28 Sep 2010 17:54:20 +0100 Subject: Equal to or more than ? In-Reply-To: <4ca1f93c.a577e70a.0d89.ffff91e8SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi, I'd like to voice my agreement with the sentiments expressed below: a short introduction to computer programming is of immense help for any modern scientist. That said, I think the question was rather odd and not wholly answered: E-Prime does not accept unequal? Not to accuse you of anything, but it sounds highly likely that your (not included) syntax must be wrong, or there's something very wrong with your E-Prime installation, since it _does_ accept said operator. Make a new experiment, and add the following inline: dim i,j as integer i = "this works" j = "this doesn't" Run and... Sorry, that was actually for someone else who used the above syntax. Note that the awkward Ebasic syntax makes i a variant, and j an integer. Delete this, now add the following instead: dim i as integer i = 3 if i <> 4 then debug.print "i is unequal to 3 since i equals " & cstr(i) if i <> 2 then debug.print "i is unequal to 2 since i equals " & cstr(i) if i = 3 then debug.print "i is equal to 3." if not(i <> "3") then debug.print "i is not unequal to '3'. What?" As you see, <> works fine. Notice that each if statement is true even though it means eBasic converts "3" into 3. Normal programming languages would not swallow this so easily, but VB does (some might but blatantly say 3 <> "3", therefore false). Notice that my example ends with the difficult to comprehend "not(i <> 3)". This is exactly what I expect is wrong in your code: make it logically too difficult for yourself and you - not EPrime - will sooner or later make errors. There are some very fine Aristotelian syllogisms that can obfuscate the most obvious truth. Cheers, Mich PS: neat trick typewriter-wise, David! Perhaps you should have one of these: http://steampunkworkshop.com/images/Kb41.jpg Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 28 September 2010 15:18 To: e-prime at googlegroups.com Subject: Re: Equal to or more than ? Jayne, Hmm. Let's start with the advice that you don't want to hear and that others here are tired of hearing me say: You need to take a class in Introduction to Computer Programming. If you had done that then you would already know the answer to such a fundamental question, and your not knowing that tells me that, even if you make it over this one hurdle, you are just heading into deeper and deeper frustration the further you go unless you step back and get a proper education. Nevertheless, I will address your specific question (without even looking at your specific code): In E-Basic (i.e., Visual Basic), the token "<>" means "does not equal"; since ASCII plain text does not contain an actual "not equal to" symbol (just as the typewriters that preceeded computers had no such symbol because you could simply type "=", backspace, and then add the "/"; and yes, I do go back that far), mnemonically you should think that x cannot be simultaneously < y and > y, thus x <> y must mean x does not equal y. (By contrast, in the language C you would write x != y.) So, you cannot simply test for y1 < x < y2 in that compact symbolic form, or however you tried to do it with <> (you did not give us any example). Instead, you must expand that into two clauses joined by a logical operator, thus, If (y1 < x) and (x < y2) Then ... That's it. Now go sign up for a class where you would learn all this properly. -- David McFarlane, Professional Faultfinder >I am writing script for a behavioural experiment, whereby 12 triangles >are presented together. I have a problem with the triangles >overlapping each other on the screen. I would like to write some >script to assign each triangle to a matrix where the triangle can move >randomly within those specific co ordinates. I need to be able to >write in the script for the co ordinates to be more than or less than >a specific value. However, E-prime is not accepting the symbol <> and >is asking me to set a parameter name or parameter? > > See general script below without <>; > >(note that I only have 6 images scripted so far) > > dim x1,y1 as integer >x1 = random (30,190) >y1 = random (30,190) >c.SetAttrib "posx1", x1 >c.SetAttrib "posy1", y1 >dim x2,y2 as integer >x2 = random (30,190) >y2 = random (220,380) >c.SetAttrib "posx2", x2 >c.SetAttrib "posy2", y2 >dim x3,y3 as integer >x1 = random (30,190) >y1 = random (410,570) >c.SetAttrib "posx3", x3 >c.SetAttrib "posy3", y3 >dim x4,y4 as integer >x4 = random (30,190) >y4 = random (600,760) >c.SetAttrib "posx4", x4 >c.SetAttrib "posy4", y4 >dim x5,y5 as integer >x5 = random (220,380) >y5 = random (30,190) >c.SetAttrib "posx5", x5 >c.SetAttrib "posy5", y5 >dim x6,y6 as integer >x6 = random (220,380) >y6 = random (220,380) >c.SetAttrib "posx6", x6 >c.SetAttrib "posy6", y6 > >Any help would be much appreciated > >Many thanks, > >Jayne Morriss -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 people82 at gmail.com Wed Sep 1 06:24:39 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Tue, 31 Aug 2010 23:24:39 -0700 Subject: using cedrus RB with e-prime Message-ID: Hi. I am trying to use the Cedrus RB with the e-prime. The response box needs a driver to work with the e-prime but the Cedrus support webpage has been out of order for over a month. Do any of you have the required driver downloaded in your computer? I would really appreciate it if you could send me the driver file. Thanks in ahead. ps. If anybody wants to know how to use the cedrus rb with e-prime I can send a manual from the cedrus homepage which I have downloaded before it shut down. -- 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 people82 at gmail.com Wed Sep 1 06:38:08 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Tue, 31 Aug 2010 23:38:08 -0700 Subject: sending trigger to other devices locked on to the time of response Message-ID: Hi to all. I was wondering if there is a way to send trigger signals locked on the response time. For instance, Stim.OnsetSignalEnabled = True Stim.OnsetSignalPort = &H378 Stim.OnsetSignalData = 1 WritePort &h378, 0 the above code send triggers at the onset of the object "Stim". However, I am trying to figure out a way to send triggers at the time of response of "Stim". I would greatly appreciate all tips and advices from you. 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 katie.umberson at gmail.com Thu Sep 2 13:45:50 2010 From: katie.umberson at gmail.com (Katie U) Date: Thu, 2 Sep 2010 06:45:50 -0700 Subject: sync E-Prime with other hardware Message-ID: I'm trying to sync E-Prime with psychophysiology hardware (Psylab, to be specific), and I was wondering if anyone knows about a device that will do this? -- 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 Sep 2 19:08:49 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 2 Sep 2010 15:08:49 -0400 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: Message-ID: Good timing -- It just so happens that I have been working on this very issue for a lab here. You have to make the proper settings in your stimulus, and use a bit of inline code following the stimulus. Here is the fully-commented inline code for my solution: '/---------------------------------------------------------------------- ' We wish to present a stimulus (in this case, StimText), get a ' response during that stimlus, and raise a signal as soon as the ' subject responds. ' ' To do that, we need to run this inline code during StimText. We ' could simply set the Duration of StimText to 0 or so (depending on ' considerations such as leaving some time between stimulus .OnsetSignal ' and .OffsetSignal) and then our code would have to also handle ' further stimulus timing. But with judicious use of Duration and ' PreRelease, E-Prime will automatically take care of stimulus timing ' for us. ' ' So instead we simply set the Duration of StimText as desired (which ' as a result automatically determines the target onset time for the ' next stimulus object), and we set the PreRelease of StimText to a ' suitably large value (preferably >= Duration, but perhaps less due ' to other considerations as mentioned earlier). Now this code will ' start to run soon after the onset of StimText, and handle the ' reaction to the subject response. ' ' Finally, this code simply makes use of .IsPending() to detect the ' response (see the InputMask.IsPending topic in the online E-Basic ' Help). Note that as a result StimText will last at least as long ' its input mask Time Limit, regardless of its Duration (if you just ' keep Time Limit at the default of "(same as duration)" then this ' will not pose a problem). Const LptDataPort as Integer = &H0378 ' adjust this for your system Const SignalData as Integer = &HFF ' adjust this for your device Const LoopDelay as Long = 2 'ms; set as small as possible for your ' system Do While StimText.InputMasks.IsPending() ' Some slower machines (such as my home laptop) need a delay so that ' EP can detect & handle input: Sleep LoopDelay Loop WritePort LptDataPort, SignalData '\---------------------------------------------------------------------- This is fine as long as you limit the response to coming during the stimulus. If you want to present a train of stimuli during the response period then you must do a little more. I also have a solution for that, but it is rather intricate and too much trouble to go into here, so I hope this is good enough for now. -- David McFarlane, Professional Faultfinder At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: >I was wondering if there is a way to send trigger signals locked on >the response time. > >For instance, > >Stim.OnsetSignalEnabled = True >Stim.OnsetSignalPort = &H378 >Stim.OnsetSignalData = 1 > > >WritePort &h378, 0 > >the above code send triggers at the onset of the object "Stim". > >However, I am trying to figure out a way to send triggers at the time >of response of "Stim". > >I would greatly appreciate all tips and advices from you. 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 neuropsych76 at gmail.com Thu Sep 2 22:41:46 2010 From: neuropsych76 at gmail.com (cogneuroisfun) Date: Thu, 2 Sep 2010 15:41:46 -0700 Subject: Combing two different tasks into one program In-Reply-To: <06db27fb-64fc-42cd-94d1-c9b86e027fd5@x25g2000yqj.googlegroups.com> Message-ID: Thank you for the reply. I did follow your advice and I understand how the nested list works. (i forgot i could do that for tasks) however, i keep on getting error messages about my inline script for one of my tasks. i keep on getting error messages about my script saying it cannot find certain things. however, everything for the task is there. does in line script often have problems when copying a procedure into another e-prime program? i cannot figure out how to stop getting error messages because it appears as everything should be there and working On Aug 9, 4:54?am, liwenna wrote: > hmmz how about.... > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > for task A, into level 2 nest the main list for task B, set both main > lists to exit after 1 trial. Tell the master list to repeat (in fixed > order) as many times as your total number of trials. > > I think something like that should do the trick :) > > best, > > liw > > On Aug 8, 5:09?pm, cogneuroisfun wrote: > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > condition 2 with task A alternating with task B. So, it would be like > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > Both task A and B work great by themselves but I'm unsure how to make > > them alternate without butchering either task. Is there any option > > where I could only have the tasks alternate on a trial by trial basis? > > Right now I just can have task A do 50 trials and then task B do 50. > > I've been trying to play around with having new procedure making the > > tasks alternate but I don't know how to only have each task do one > > trial at a time. > > > Hopefully that made some sense, any help or guidance is greatly > > appreciated! > > > 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 mcfarla9 at msu.edu Fri Sep 3 00:37:35 2010 From: mcfarla9 at msu.edu (dkmcf) Date: Thu, 2 Sep 2010 17:37:35 -0700 Subject: Combing two different tasks into one program In-Reply-To: <4effe45c-35e0-4cb7-bd99-54ddf976fa60@f25g2000yqc.googlegroups.com> Message-ID: You need to sign up for a course in Introduction to Computer Programming. -- David McFarlane, Professional Faultfinder On Sep 2, 6:41?pm, cogneuroisfun wrote: > Thank you for the reply. I did follow your advice and I understand how > the nested list works. (i forgot i could do that for tasks) however, i > keep on getting error messages about my inline script for one of my > tasks. i keep on getting error messages about my script saying it > cannot find certain things. however, everything for the task is > there. > > does in line script often have problems when copying a procedure into > another e-prime program? > > i cannot figure out how to stop getting error messages because it > appears as everything should be there and working > On Aug 9, 4:54?am, liwenna wrote: > > > hmmz how about.... > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > for task A, into level 2 nest the main list for task B, set both main > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > order) as many times as your total number of trials. > > > I think something like that should do the trick :) > > > best, > > > liw > > > On Aug 8, 5:09?pm, cogneuroisfun wrote: > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > condition 2 with task A alternating with task B. So, it would be like > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > Both task A and B work great by themselves but I'm unsure how to make > > > them alternate without butchering either task. Is there any option > > > where I could only have the tasks alternate on a trial by trial basis? > > > Right now I just can have task A do 50 trials and then task B do 50. > > > I've been trying to play around with having new procedure making the > > > tasks alternate but I don't know how to only have each task do one > > > trial at a time. > > > > Hopefully that made some sense, any help or guidance is greatly > > > appreciated! > > > > 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 people82 at gmail.com Fri Sep 3 05:55:52 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Thu, 2 Sep 2010 22:55:52 -0700 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: <4c7ff663.8b19e70a.0de6.788bSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Dear Professional Faultfinder, Thanks for posting your script! In my experiment the response comes after the offset of the target stimulus. If it is not too much of a trouble, I would appreciate to hear about your solution to presenting other stimuli during the response period. Thanks again! On 9?3?, ??4?08?, David McFarlane wrote: > Good timing -- It just so happens that I have been working on this > very issue for a lab here. You have to make the proper settings in > your stimulus, and use a bit of inline code following the > stimulus. Here is the fully-commented inline code for my solution: > > '/---------------------------------------------------------------------- > ' We wish to present a stimulus (in this case, StimText), get a > ' response during that stimlus, and raise a signal as soon as the > ' subject responds. > ' > ' To do that, we need to run this inline code during StimText. We > ' could simply set the Duration of StimText to 0 or so (depending on > ' considerations such as leaving some time between stimulus .OnsetSignal > ' and .OffsetSignal) and then our code would have to also handle > ' further stimulus timing. But with judicious use of Duration and > ' PreRelease, E-Prime will automatically take care of stimulus timing > ' for us. > ' > ' So instead we simply set the Duration of StimText as desired (which > ' as a result automatically determines the target onset time for the > ' next stimulus object), and we set the PreRelease of StimText to a > ' suitably large value (preferably >= Duration, but perhaps less due > ' to other considerations as mentioned earlier). Now this code will > ' start to run soon after the onset of StimText, and handle the > ' reaction to the subject response. > ' > ' Finally, this code simply makes use of .IsPending() to detect the > ' response (see the InputMask.IsPending topic in the online E-Basic > ' Help). Note that as a result StimText will last at least as long > ' its input mask Time Limit, regardless of its Duration (if you just > ' keep Time Limit at the default of "(same as duration)" then this > ' will not pose a problem). > > Const LptDataPort as Integer = &H0378 ' adjust this for your system > Const SignalData as Integer = &HFF ' adjust this for your device > Const LoopDelay as Long = 2 'ms; set as small as possible for your > ' system > > Do While StimText.InputMasks.IsPending() > ' Some slower machines (such as my home laptop) need a delay so that > ' EP can detect & handle input: > Sleep LoopDelay > Loop > WritePort LptDataPort, SignalData > '\---------------------------------------------------------------------- > > This is fine as long as you limit the response to coming during the > stimulus. If you want to present a train of stimuli during the > response period then you must do a little more. I also have a > solution for that, but it is rather intricate and too much trouble to > go into here, so I hope this is good enough for now. > > -- David McFarlane, Professional Faultfinder > > At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: > > > > >I was wondering if there is a way to send trigger signals locked on > >the response time. > > >For instance, > > >Stim.OnsetSignalEnabled = True > >Stim.OnsetSignalPort = &H378 > >Stim.OnsetSignalData = 1 > > >WritePort &h378, 0 > > >the above code send triggers at the onset of the object "Stim". > > >However, I am trying to figure out a way to send triggers at the time > >of response of "Stim". > > >I would greatly appreciate all tips and advices from you. 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 people82 at gmail.com Fri Sep 3 06:09:32 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Thu, 2 Sep 2010 23:09:32 -0700 Subject: sync E-Prime with other hardware In-Reply-To: <75888418-fdef-412a-a4f3-3e00941e1923@z28g2000yqh.googlegroups.com> Message-ID: I am not sure how the Psylab works, but if it can receive trigger information, you can send out triggers through the parallel port using the script below. Use the inline object and place it before the object you want to synchronize with. Stim is the name of object you want to send triggers on. Hope this works for you. Stim.OnsetSignalEnabled = True Stim.OnsetSignalPort = &H378 Stim.OnsetSignalData = 1 WritePort &h378, 0 On 9?2?, ??10?45?, Katie U wrote: > I'm trying to sync E-Prime with psychophysiology hardware (Psylab, to > be specific), and I was wondering if anyone knows about a device that > will do this? -- 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 Sep 3 10:32:01 2010 From: liwenna at gmail.com (liwenna) Date: Fri, 3 Sep 2010 03:32:01 -0700 Subject: Combing two different tasks into one program In-Reply-To: Message-ID: I can imagine a whole bunch of different errors that could occur when combining tasks in the way you did now... make sure that all inlines that concern a procedure are nested on the same procedure. I couldnt'tell you the exact mechanics top of my head but I remember errors occurring from variables being declared (the dim lines) on a different level of the total task then where they are used. Also: variables can be declared only once... if both your tasks that have been merged now share a variable (or actually have two variables that have the same name but shouldn't be shared between the tasks) and both have inlines that declare this variables, this gives an error too. Just two possible errors that come to mind... carefully 'walk' trough your experiment to check all your inlines on discrepanties. Additionally you could post an error here to see if we can 'make anything of it' best, liw On Sep 3, 2:37?am, dkmcf wrote: > You need to sign up for a course in Introduction to Computer > Programming. > > -- David McFarlane, Professional Faultfinder > > On Sep 2, 6:41?pm, cogneuroisfun wrote: > > > Thank you for the reply. I did follow your advice and I understand how > > the nested list works. (i forgot i could do that for tasks) however, i > > keep on getting error messages about my inline script for one of my > > tasks. i keep on getting error messages about my script saying it > > cannot find certain things. however, everything for the task is > > there. > > > does in line script often have problems when copying a procedure into > > another e-prime program? > > > i cannot figure out how to stop getting error messages because it > > appears as everything should be there and working > > On Aug 9, 4:54?am, liwenna wrote: > > > > hmmz how about.... > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > for task A, into level 2 nest the main list for task B, set both main > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > order) as many times as your total number of trials. > > > > I think something like that should do the trick :) > > > > best, > > > > liw > > > > On Aug 8, 5:09?pm, cogneuroisfun wrote: > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > condition 2 with task A alternating with task B. So, it would be like > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > them alternate without butchering either task. Is there any option > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > I've been trying to play around with having new procedure making the > > > > tasks alternate but I don't know how to only have each task do one > > > > trial at a time. > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > appreciated! > > > > > 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 mcfarla9 at msu.edu Fri Sep 3 13:41:06 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 09:41:06 -0400 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: <16ea7cbc-8171-4ed9-a9b6-082aeb66a7e2@l32g2000prn.googlegro ups.com> Message-ID: Well, here's the deal. That solution is too involved for me to write out as a post to the Group. But I have it all arranged in a very nice demo program. But I cannot let myself become a curator for a library of demo programs (I have more than this in my growing collection). So, if someone can send me instructions for how to upload my demo program file to a place where *everyone* can download it from then on, then I would be very happy to share that and more with the community. -- David McFarlane, Professional Faultfinder >Dear Professional Faultfinder, > >Thanks for posting your script! >In my experiment the response comes after the offset of the target >stimulus. >If it is not too much of a trouble, I would appreciate to hear about >your >solution to presenting other stimuli during the response period. > >Thanks again! > > >On 9???3? ?, ???? ?4???08???, David McFarlane wrote: > > Good timing -- It just so happens that I have been working on this > > very issue for a lab here. You have to make the proper settings in > > your stimulus, and use a bit of inline code following the > > stimulus. Here is the fully-commented inline code for my solution: > > > > '/---------------------------------------------------------------------- > > ' We wish to present a stimulus (in this case, StimText), get a > > ' response during that stimlus, and raise a signal as soon as the > > ' subject responds. > > ' > > ' To do that, we need to run this inline code during StimText. We > > ' could simply set the Duration of StimText to 0 or so (depending on > > ' considerations such as leaving some time between stimulus .OnsetSignal > > ' and .OffsetSignal) and then our code would have to also handle > > ' further stimulus timing. But with judicious use of Duration and > > ' PreRelease, E-Prime will automatically take care of stimulus timing > > ' for us. > > ' > > ' So instead we simply set the Duration of StimText as desired (which > > ' as a result automatically determines the target onset time for the > > ' next stimulus object), and we set the PreRelease of StimText to a > > ' suitably large value (preferably >= Duration, but perhaps less due > > ' to other considerations as mentioned earlier). Now this code will > > ' start to run soon after the onset of StimText, and handle the > > ' reaction to the subject response. > > ' > > ' Finally, this code simply makes use of .IsPending() to detect the > > ' response (see the InputMask.IsPending topic in the online E-Basic > > ' Help). Note that as a result StimText will last at least as long > > ' its input mask Time Limit, regardless of its Duration (if you just > > ' keep Time Limit at the default of "(same as duration)" then this > > ' will not pose a problem). > > > > Const LptDataPort as Integer = &H0378 ' adjust this for your system > > Const SignalData as Integer = &HFF ' adjust this for your device > > Const LoopDelay as Long = 2 'ms; set as small as possible for your > > ' system > > > > Do While StimText.InputMasks.IsPending() > > ' Some slower machines (such as my > home laptop) need a delay so that > > ' EP can detect & handle input: > > Sleep LoopDelay > > Loop > > WritePort LptDataPort, SignalData > > '\---------------------------------------------------------------------- > > > > This is fine as long as you limit the response to coming during the > > stimulus. If you want to present a train of stimuli during the > > response period then you must do a little more. I also have a > > solution for that, but it is rather intricate and too much trouble to > > go into here, so I hope this is good enough for now. > > > > -- David McFarlane, Professional Faultfinder > > > > At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: > > > > > > > > >I was wondering if there is a way to send trigger signals locked on > > >the response time. > > > > >For instance, > > > > >Stim.OnsetSignalEnabled = True > > >Stim.OnsetSignalPort = &H378 > > >Stim.OnsetSignalData = 1 > > > > >WritePort &h378, 0 > > > > >the above code send triggers at the onset of the object "Stim". > > > > >However, I am trying to figure out a way to send triggers at the time > > >of response of "Stim". > > > > >I would greatly appreciate all tips and advices from you. 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 jasoncraggs at gmail.com Fri Sep 3 15:39:12 2010 From: jasoncraggs at gmail.com (Jason) Date: Fri, 3 Sep 2010 08:39:12 -0700 Subject: (Not) Understanding edat time variable(s) Message-ID: Greetings, In my edat file there are several time related variables with values that vex me. For example, the variable 'RunTime' = 14:45:07, which I understand. However the variable 'RunStartTime' = 162726 completely vexes me. Any insight into this would be greatly appreciated. Best regards, Jason -- 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 Sep 3 15:46:12 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 11:46:12 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: Message-ID: Jason, I have a *lot* of experience with EP and .edat files, and I do not recognize these as standard attributes that would be added automatically. Therefore, they must have been added by whoever made your specific EP program, and you have to ask that person. No one here will be able to help you, sorry. -- David McFarlane, Professional Faultfinder >In my edat file there are several time related variables with values >that vex me. For example, the variable 'RunTime' = 14:45:07, which I >understand. However the variable 'RunStartTime' = 162726 completely >vexes me. Any insight into this would be greatly appreciated. > >Best regards, >Jason -- 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 Sep 3 16:28:40 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 12:28:40 -0400 Subject: Wisconsin card sorting test In-Reply-To: <4c7d74b5.8b19e70a.3af0.4a3fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: After casting about far & wide, I found a complete set of WCST materials right here at my own institution. So I am all set there now, my thanks to everyone who replied. Now I need to finish this project and submit it to STEP. I will probably do this in stages. As stated earlier, programming the basic control logic for merely administering the test is the easy part, and I have that worked out already with a mere text-only keyboard-response model. Adding the graphics and improving the response methods will take a little more tedious work. I might submit a first draft once I get that far. Then the hard work comes when I add computation of all the customary raw WCST scores. With that accomplished I would consider the project finished -- I have no hope of going the extra yard to have it convert raw summary scores into demographically corrected normed scores, for that users will need to consult the Wisconsion Card Sorting Test Manual, Revised and Expanded, by Robert K. Heaton et al. (1993), Psychological Assessment Resources, Inc., Lutz, Florida, USA, or use WCST scoring software. -- David McFarlane, Professional Faultfinder At 8/31/2010 05:31 PM Tuesday, David McFarlane wrote: >Oh, forgot to say, if interested then please contact me directly by >e-mail (off the list). > >Thanks, >David McFarlane, Professional Faultfinder > > >>For those of you who might not read beyond the first line: I will >>write a professional quality WCST in EP for no charge, if I can >>only get a bit of help. Read on if interested... >> >>Well, despite the reservations I expressed earlier, on my own time >>I went ahead and threw together a working skeleton in EP for the >>WCST, just to flex my E-Prime muscles. The basic control logic is >>really quite simple, and with a couple of tricks (e.g., nested >>attribute references) the E-Prime design is rather sleek. >> >>I would like to complete this project to my usual professional >>standards and then submit it for inclusion in the public STEP >>library so that everyone can use it. In short, I aim to make this >>no less than a completely faithful computerized replica of the >>standardized test, in EP. But to do that I will need many more >>specific details on the mechanics of the standardized test. E.g., >>I have been told that the standardized test presents the "response" >>cards in the same pre-ordained sequence for each run, and I need to >>know that sequence. Also, if I can get hold of the scoring rules >>then I might even have a whack at that, although I think it enough >>just to have the program administer the test & record raw >>data. (It would also be nice if I could get someone else to do the >>card graphics, as I am lousy at graphics -- I would need only 16 >>image files, not all 64, since I know how to make EP change the >>colors.) I should be able to learn all I need from the official >>WCST Manual, with perhaps a look at a printed card deck. But a >>manual costs $115, and a card deck $170, more than I care to spend >>for something that is, for me at least, only a hobby project. >> >>So here's the deal: If any of you can help me get access to >>materials that fully specify the mechanics of the test (ideally the >>printed Manual and/or cards) then I will complete this project in >>short order and you will all have a professional quality WCST in EP. >> >>-- David McFarlane, Professional Faultfinder >> >> >>At 8/23/2010 05:24 PM Monday, David McFarlane wrote: >>>Well, I toyed with the idea of making a simple WCST in E-Prime >>>just to amuse myself. But when I looked into it further, I got puzzled. >>> >>>The WCST started off with simple printed materials administered >>>manually by a human examiner. Clearly the WCST does not require >>>millisecond precision. So if we simply want to automate it, why >>>use such an expensive, specialized, and heavyweight platform as >>>E-Prime? Wouldn't it make more sense to use some more common >>>platform such as JavaScript, or Flash, or Python, or even straight >>>Visual Basic? Note that the WCST was automated using simple Turbo >>>Basic (for DOS?) as far back as 1996. Isn't this another case of, >>>"When all you have is a hammer, every problem looks like a >>>nail" Or, insofar as I have not kept up with the literature on >>>the WCST, am I just missing something that is obvious to the rest of you? >>> >>>Also, apparently scoring the test is quite complex (perseverative >>>errors, nonperseverative errors, etc.), so building that into the >>>program (as opposed to leaving that to later data analysis) would >>>take some care. >>> >>>Finally, did anyone else know that the term "Wisconsin Card >>>Sorting Test" was trademarked by Wells Printing and Digital >>>Services of Madison, Wisconsin, USA (see >>>http://en.wikipedia.org/wiki/Wisconsin_card_sort )? So we cannot >>>give the name "Wisconsin Card Sorting Test" to any printed >>>materials that we produce, but since the trademark does not cover >>>computerized versions we may continue to use the name "Wisconsin >>>Card Sorting Test" for our computerized versions. >>> >>>With all that said, note that someone did make an automated WCST >>>demo for Inquisit's Millisecond >>>(http://www.millisecond.com/download/samples/v3/CardSort ), though >>>I do not know what data it stores or how it handles the test scoring. >>> >>>-- David McFarlane, Professional Faultfinder >>> >>> >>>At 8/20/2010 12:10 PM Friday, David McFarlane wrote: >>>>As far as I can tell no one has made an E-Prime WCST available on >>>>the Web. It would be quite interesting to make one. As I >>>>recall, in essence the task involves operantly rewarding the >>>>subject for correctly following an undisclosed rule, changing the >>>>rule whenever the subject achieves an overall success criterion, >>>>and seeing how well the subject can adapt to the changing >>>>rules. This would require some interesting code in E-Prime, in >>>>particular scoring the success rate and then changing the >>>>"correct" rule on the fly, but it could be done. Wish I had the >>>>liberty to do it myself. >>>> >>>>-- David McFarlane, Professional Faultfinder -- 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 jasoncraggs at gmail.com Fri Sep 3 16:42:05 2010 From: jasoncraggs at gmail.com (Jason) Date: Fri, 3 Sep 2010 09:42:05 -0700 Subject: (Not) Understanding edat time variable(s) In-Reply-To: <4c811849.45b9e70a.4094.ffffe0aaSMTPIN_ADDED@gmr-mx.google.com> Message-ID: David, Thanks for the quick response and "unfortunate" information about the variables. As this paradigm will be used for fMRI research, perhaps these are variables declared by IFIS. Regardless, more legwork is needed. Cheers, Jason On Sep 3, 11:46?am, David McFarlane wrote: > Jason, > > I have a *lot* of experience with EP and .edat files, and I do not > recognize these as standard attributes that would be added > automatically. ?Therefore, they must have been added by whoever made > your specific EP program, and you have to ask that person. ?No one > here will be able to help you, sorry. > > -- David McFarlane, Professional Faultfinder > > >In my edat file there are several time related variables with values > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I > >understand. However the variable 'RunStartTime' = 162726 completely > >vexes me. Any insight into this would be greatly appreciated. > > >Best regards, > >Jason -- 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 Sep 3 17:15:14 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 13:15:14 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: Message-ID: Jason, Ah, IFIS! You didn't say that at the start, in that case all bets are off! We used IFIS for many years and finally abondoned it a few years back for our own custom setup, what a relief! I can't believe anyone still uses that outmoded system. IFIS is a mess, it forces a draconian task structure using several PackageCalls, it adds all sorts of attributes and overrides your E-Prime settings with settings that it hides in several Lists in Unreferenced E-Objects without explanation, and generally completely violates the well-designed task representation already provided by the designers of E-Prime. And it requires two computers for no good reason, and requires leaving a wide open network share, what an invitation for hackers! And the documentation is even worse than that for E-Prime, I had to work out all the principles and "gotchas" myself and distilled it down to a three-page writeup that explained more than their entire sorry excuse for a manual. Don't get me started! I feel sorry for you. -- David McFarlane, Professional Faultfinder At 9/3/2010 12:42 PM Friday, you wrote: >David, > >Thanks for the quick response and "unfortunate" information about the >variables. As this paradigm will be used for fMRI research, perhaps >these are variables declared by IFIS. Regardless, more legwork is >needed. > >Cheers, >Jason > > > >On Sep 3, 11:46 am, David McFarlane wrote: > > Jason, > > > > I have a *lot* of experience with EP and .edat files, and I do not > > recognize these as standard attributes that would be added > > automatically. Therefore, they must have been added by whoever made > > your specific EP program, and you have to ask that person. No one > > here will be able to help you, sorry. > > > > -- David McFarlane, Professional Faultfinder > > > > >In my edat file there are several time related variables with values > > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I > > >understand. However the variable 'RunStartTime' = 162726 completely > > >vexes me. Any insight into this would be greatly appreciated. > > > > >Best regards, > > >Jason -- 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 neuropsych76 at gmail.com Fri Sep 3 17:16:43 2010 From: neuropsych76 at gmail.com (cogneuroisfun) Date: Fri, 3 Sep 2010 10:16:43 -0700 Subject: Combing two different tasks into one program In-Reply-To: <9eea91aa-cfb5-4585-991a-d624caca486d@a36g2000yqc.googlegroups.com> Message-ID: I kept receiving errors such as: "error found during compile. Get attrib:missing parameters. Variable not defined" The problem is I did check through my procedure and my variable was defined and I wasn't missing any parameters. I don't think I had any items that were the same name between the tasks. I'm sure pasting the procedure inside another task can cause problems but I'm just not sure where to look since it looks like I have everything I need to run both tasks. On Sep 3, 6:32?am, liwenna wrote: > I can imagine a whole bunch of different errors that could occur when > combining tasks in the way you did now... > > make sure that all inlines that concern a procedure are nested on the > same procedure. I couldnt'tell you the exact mechanics top of my head > but I remember errors occurring from variables being declared (the dim > lines) on a different level of the total task then where they are > used. > > Also: variables can be declared only once... if both your tasks that > have been merged now share a variable (or actually have two variables > that have the same name but shouldn't be shared between the tasks) and > both have inlines that declare this variables, this gives an error > too. > > Just two possible errors that come to mind... carefully 'walk' trough > your experiment to check all your inlines on discrepanties. > > Additionally you could post an error here to see if we can 'make > anything of it' > > best, > > liw > > On Sep 3, 2:37?am, dkmcf wrote: > > > You need to sign up for a course in Introduction to Computer > > Programming. > > > -- David McFarlane, Professional Faultfinder > > > On Sep 2, 6:41?pm, cogneuroisfun wrote: > > > > Thank you for the reply. I did follow your advice and I understand how > > > the nested list works. (i forgot i could do that for tasks) however, i > > > keep on getting error messages about my inline script for one of my > > > tasks. i keep on getting error messages about my script saying it > > > cannot find certain things. however, everything for the task is > > > there. > > > > does in line script often have problems when copying a procedure into > > > another e-prime program? > > > > i cannot figure out how to stop getting error messages because it > > > appears as everything should be there and working > > > On Aug 9, 4:54?am, liwenna wrote: > > > > > hmmz how about.... > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > for task A, into level 2 nest the main list for task B, set both main > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > order) as many times as your total number of trials. > > > > > I think something like that should do the trick :) > > > > > best, > > > > > liw > > > > > On Aug 8, 5:09?pm, cogneuroisfun wrote: > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > them alternate without butchering either task. Is there any option > > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > I've been trying to play around with having new procedure making the > > > > > tasks alternate but I don't know how to only have each task do one > > > > > trial at a time. > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > appreciated! > > > > > > 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 neuropsych76 at gmail.com Fri Sep 3 17:18:58 2010 From: neuropsych76 at gmail.com (cogneuroisfun) Date: Fri, 3 Sep 2010 10:18:58 -0700 Subject: Combing two different tasks into one program In-Reply-To: Message-ID: I had someone with a programming background look at my program and were uncertain how to fix it as well. Is copying over a procedure a bad way to add another task in? Would creating both programs from scratch avoid some script compile problems? On Sep 2, 8:37?pm, dkmcf wrote: > You need to sign up for a course in Introduction to Computer > Programming. > > -- David McFarlane, Professional Faultfinder > > On Sep 2, 6:41?pm, cogneuroisfun wrote: > > > Thank you for the reply. I did follow your advice and I understand how > > the nested list works. (i forgot i could do that for tasks) however, i > > keep on getting error messages about my inline script for one of my > > tasks. i keep on getting error messages about my script saying it > > cannot find certain things. however, everything for the task is > > there. > > > does in line script often have problems when copying a procedure into > > another e-prime program? > > > i cannot figure out how to stop getting error messages because it > > appears as everything should be there and working > > On Aug 9, 4:54?am, liwenna wrote: > > > > hmmz how about.... > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > for task A, into level 2 nest the main list for task B, set both main > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > order) as many times as your total number of trials. > > > > I think something like that should do the trick :) > > > > best, > > > > liw > > > > On Aug 8, 5:09?pm, cogneuroisfun wrote: > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > condition 2 with task A alternating with task B. So, it would be like > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > them alternate without butchering either task. Is there any option > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > I've been trying to play around with having new procedure making the > > > > tasks alternate but I don't know how to only have each task do one > > > > trial at a time. > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > appreciated! > > > > > 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 jasoncraggs at gmail.com Fri Sep 3 18:02:40 2010 From: jasoncraggs at gmail.com (Jason Craggs) Date: Fri, 3 Sep 2010 14:02:40 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: <4c812d49.194de70a.479e.ffffee60SMTPIN_ADDED@gmr-mx.google.com> Message-ID: David, Yes, I've apparently waded into a quagmire, one successfully avoided for years... While I am grateful for your response, learning that you've never come across such a variable given your experiences with IFIS is not great news. That said however, you wouldn't happen to have a copy of that "documentation" that you'd be willing to "share" would you? Cheers, Jason On Fri, Sep 3, 2010 at 1:15 PM, David McFarlane wrote: > Jason, > > Ah, IFIS! You didn't say that at the start, in that case all bets are off! > We used IFIS for many years and finally abondoned it a few years back for > our own custom setup, what a relief! I can't believe anyone still uses that > outmoded system. IFIS is a mess, it forces a draconian task structure using > several PackageCalls, it adds all sorts of attributes and overrides your > E-Prime settings with settings that it hides in several Lists in > Unreferenced E-Objects without explanation, and generally completely > violates the well-designed task representation already provided by the > designers of E-Prime. And it requires two computers for no good reason, and > requires leaving a wide open network share, what an invitation for hackers! > And the documentation is even worse than that for E-Prime, I had to work > out all the principles and "gotchas" myself and distilled it down to a > three-page writeup that explained more than their entire sorry excuse for a > manual. Don't get me started! I feel sorry for you. > > -- David McFarlane, Professional Faultfinder > > > > At 9/3/2010 12:42 PM Friday, you wrote: > >> David, >> >> Thanks for the quick response and "unfortunate" information about the >> variables. As this paradigm will be used for fMRI research, perhaps >> these are variables declared by IFIS. Regardless, more legwork is >> needed. >> >> Cheers, >> Jason >> >> >> >> On Sep 3, 11:46 am, David McFarlane wrote: >> > Jason, >> > >> > I have a *lot* of experience with EP and .edat files, and I do not >> > recognize these as standard attributes that would be added >> > automatically. Therefore, they must have been added by whoever made >> > your specific EP program, and you have to ask that person. No one >> > here will be able to help you, sorry. >> > >> > -- David McFarlane, Professional Faultfinder >> > >> > >In my edat file there are several time related variables with values >> > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I >> > >understand. However the variable 'RunStartTime' = 162726 completely >> > >vexes me. Any insight into this would be greatly appreciated. >> > >> > >Best regards, >> > >Jason >> > > -- > 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 mcfarla9 at msu.edu Fri Sep 3 18:21:20 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 14:21:20 -0400 Subject: (Not) Understanding edat time variable(s) In-Reply-To: Message-ID: Jason, Oops, let's clarify that for the record -- I never said that I never came across such "variables" (the correct term is "attribute", variables are something very different and we must not get them mixed up) in IFIS, I only said that I had never come across such attributes in standard E-Prime .edat files. Those attributes may very well be a standard part of IFIS, but my memory of IFIS is so painful that I do not care to recall such details. It would make more sense to re-post this thread as "(Not) Understanding IFIS time attribute(s)". As to my little writeup, well, I might just dredge that up and send it to you separately, as long as you promise not to ask me any further questions about it. But that will have to wait -- it's 2:15p here in the Easter Time Zone of the USA, I have not had lunch, I have been officially off duty since 1p, I am sitll facing a flurry and backlog of e-mail, and I have tons of other work to take care of for others. So you will understand if I treat this as low priority. Maybe some time after the weekend. In the meantime, see what you can make of the IFIS documentation yourself. Regards, -- David McFarlane, Professional Faultfinder >Yes, I've apparently waded into a quagmire, one successfully avoided >for years... While I am grateful for your response, learning that >you've never come across such a variable given your experiences with >IFIS is not great news. That said however, you wouldn't happen to >have a copy of that "documentation" that you'd be willing to "share" would you? > >Cheers, >Jason > > >On Fri, Sep 3, 2010 at 1:15 PM, David McFarlane ><mcfarla9 at msu.edu> wrote: >Jason, > >Ah, IFIS! You didn't say that at the start, in that case all bets >are off! We used IFIS for many years and finally abondoned it a few >years back for our own custom setup, what a relief! I can't believe >anyone still uses that outmoded system. IFIS is a mess, it forces a >draconian task structure using several PackageCalls, it adds all >sorts of attributes and overrides your E-Prime settings with >settings that it hides in several Lists in Unreferenced E-Objects >without explanation, and generally completely violates the >well-designed task representation already provided by the designers >of E-Prime. And it requires two computers for no good reason, and >requires leaving a wide open network share, what an invitation for >hackers! And the documentation is even worse than that for E-Prime, >I had to work out all the principles and "gotchas" myself and >distilled it down to a three-page writeup that explained more than >their entire sorry excuse for a manual. Don't get me started! I >feel sorry for you. > >-- David McFarlane, Professional Faultfinder > > > >At 9/3/2010 12:42 PM Friday, you wrote: >David, > >Thanks for the quick response and "unfortunate" information about the >variables. As this paradigm will be used for fMRI research, perhaps >these are variables declared by IFIS. Regardless, more legwork is >needed. > >Cheers, >Jason > > > >On Sep 3, 11:46 am, David McFarlane ><mcfar... at msu.edu> wrote: > > Jason, > > > > I have a *lot* of experience with EP and .edat files, and I do not > > recognize these as standard attributes that would be added > > automatically. Therefore, they must have been added by whoever made > > your specific EP program, and you have to ask that person. No one > > here will be able to help you, sorry. > > > > -- David McFarlane, Professional Faultfinder > > > > >In my edat file there are several time related variables with values > > >that vex me. For example, the variable 'RunTime' = 14:45:07, which I > > >understand. However the variable 'RunStartTime' = 162726 completely > > >vexes me. Any insight into this would be greatly appreciated. > > > > >Best regards, > > >Jason -- 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 Sep 3 18:09:43 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 3 Sep 2010 14:09:43 -0400 Subject: Combing two different tasks into one program In-Reply-To: <4dfd84d3-59db-4ba4-a529-5e8bd1b77e46@u4g2000prn.googlegrou ps.com> Message-ID: Having someone with a "programming background" look at it is a good start, they should at least now grasp elementary programming concepts that will help them understand the issues involved. Now they need to train themselves in the specifics of E-Prime, or perhaps more generally in Microsoft Visual Basic, upon which EP is based. Better if you were to become that person yourself. I think most of your problem comes from just lacking sufficient training in general, which then interferes with the insight you will need to make any use of advice here -- in short, like all too many EP users, you are trying to learn to run before you can walk. Regards, -- David McFarlane, Professional Faultfinder >I had someone with a programming background look at my program and >were uncertain how to fix it as well. Is copying over a procedure a >bad way to add another task in? Would creating both programs from >scratch avoid some script compile problems? > >On Sep 2, 8:37 pm, dkmcf wrote: > > You need to sign up for a course in Introduction to Computer > > Programming. > > > > -- David McFarlane, Professional Faultfinder > > > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > > > Thank you for the reply. I did follow your advice and I understand how > > > the nested list works. (i forgot i could do that for tasks) however, i > > > keep on getting error messages about my inline script for one of my > > > tasks. i keep on getting error messages about my script saying it > > > cannot find certain things. however, everything for the task is > > > there. > > > > > does in line script often have problems when copying a procedure into > > > another e-prime program? > > > > > i cannot figure out how to stop getting error messages because it > > > appears as everything should be there and working > > > On Aug 9, 4:54 am, liwenna wrote: > > > > > > hmmz how about.... > > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > for task A, into level 2 nest the main list for task B, set both main > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > order) as many times as your total number of trials. > > > > > > I think something like that should do the trick :) > > > > > > best, > > > > > > liw > > > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > them alternate without butchering either task. Is there any option > > > > > where I could only have the tasks alternate on a trial by > trial basis? > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > I've been trying to play around with having new procedure making the > > > > > tasks alternate but I don't know how to only have each task do one > > > > > trial at a time. > > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > appreciated! > > > > > > > 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 liwenna at gmail.com Sat Sep 4 10:54:27 2010 From: liwenna at gmail.com (liwenna) Date: Sat, 4 Sep 2010 03:54:27 -0700 Subject: Combing two different tasks into one program In-Reply-To: <4c813cdd.194de70a.479e.fffff46fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: variable not defined, sounds as if a dim line (declaring the variable) is missing or misplaced. Carefully go trough your inlines to see if al variables are declared either within the procedure (context) that it has to be used in or on the usertab of the script window. On 3 sep, 20:09, David McFarlane wrote: > Having someone with a "programming background" look at it is a good > start, they should at least now grasp elementary programming concepts > that will help them understand the issues involved. ?Now they need to > train themselves in the specifics of E-Prime, or perhaps more > generally in Microsoft Visual Basic, upon which EP is based. ?Better > if you were to become that person yourself. ?I think most of your > problem comes from just lacking sufficient training in general, which > then interferes with the insight you will need to make any use of > advice here -- in short, like all too many EP users, you are trying > to learn to run before you can walk. > > Regards, > -- David McFarlane, Professional Faultfinder > > >I had someone with a programming background look at my program and > >were uncertain how to fix it as well. Is copying over a procedure a > >bad way to add another task in? Would creating both programs from > >scratch avoid some script compile problems? > > >On Sep 2, 8:37 pm, dkmcf wrote: > > > You need to sign up for a course in Introduction to Computer > > > Programming. > > > > -- David McFarlane, Professional Faultfinder > > > > On Sep 2, 6:41 pm, cogneuroisfun wrote: > > > > > Thank you for the reply. I did follow your advice and I understand how > > > > the nested list works. (i forgot i could do that for tasks) however, i > > > > keep on getting error messages about my inline script for one of my > > > > tasks. i keep on getting error messages about my script saying it > > > > cannot find certain things. however, everything for the task is > > > > there. > > > > > does in line script often have problems when copying a procedure into > > > > another e-prime program? > > > > > i cannot figure out how to stop getting error messages because it > > > > appears as everything should be there and working > > > > On Aug 9, 4:54 am, liwenna wrote: > > > > > > hmmz how about.... > > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > > for task A, into level 2 nest the main list for task B, set both main > > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > > order) as many times as your total number of trials. > > > > > > I think something like that should do the trick :) > > > > > > best, > > > > > > liw > > > > > > On Aug 8, 5:09 pm, cogneuroisfun wrote: > > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > > them alternate without butchering either task. Is there any option > > > > > > where I could only have the tasks alternate on a trial by > > trial basis? > > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > > I've been trying to play around with having new procedure making the > > > > > > tasks alternate but I don't know how to only have each task do one > > > > > > trial at a time. > > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > > appreciated! > > > > > > > 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 Michiel.Spape at nottingham.ac.uk Mon Sep 6 12:56:59 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 6 Sep 2010 13:56:59 +0100 Subject: Combing two different tasks into one program In-Reply-To: Message-ID: Hi, Just to voice my agreement with what David said before, as this "The problem is I did check through my procedure and my variable was defined and I wasn't missing any parameters." This makes no sense from a programming point of view. E-Prime can be exasperating, but it is not a liar: your variable was not found as defined, and you were (i.e. your code was) missing parameters. Possibly, you wrote something like "Get attrib", (instead of, for example, c.GetAttrib("myAttrib") - mind that every little symbol is important here, except the casing, and that Get Attrib does not mean anything in EPrime) which would return something you describe, which sounds exactly like David's comment about running (writing inline, which people often find more advanced) before learning how to walk (understanding attributes, working with E-Prime basics). Sorry if that sounds needlessly mean; it is not my intention. If you want help from this list, here's a few tips: - As said below: post an error, not summarise it and vainly hope people can make sense. Copy-paste the output, note the exact error number, and explain at what point it runs into this error. - None of us has telepathic capabilities: explain the whole issue. What type of procedure are you trying to copy? Are you using EPrime 2? Does the procedure contain inlines, textdisplays, etc? Have you tried copying single objects (not procedures) instead? Where does the error occur? Start? End? Randomly? Or is it always the same line of inline code? If so, copy the code. I've never copied procedures between programmes, and I don't think it is even possible (but if it is, it wouldn't help much, because, all in all, the procedure itself is nothing but 'first do this' 'now do this'). Copying single objects (that define what 'this' is) is, however. It's a bit like forgetting the ORDER between the items of your shopping list isn't nearly as annoying as losing either the shopping list (i.e. the List object), or forgetting some items (textdisplays, etc). - Have a look at the getting-started guide/e-primer, etc. Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of cogneuroisfun Sent: 03 September 2010 18:17 To: E-Prime Subject: Re: Combing two different tasks into one program I kept receiving errors such as: "error found during compile. Get attrib:missing parameters. Variable not defined" The problem is I did check through my procedure and my variable was defined and I wasn't missing any parameters. I don't think I had any items that were the same name between the tasks. I'm sure pasting the procedure inside another task can cause problems but I'm just not sure where to look since it looks like I have everything I need to run both tasks. On Sep 3, 6:32?am, liwenna wrote: > I can imagine a whole bunch of different errors that could occur when > combining tasks in the way you did now... > > make sure that all inlines that concern a procedure are nested on the > same procedure. I couldnt'tell you the exact mechanics top of my head > but I remember errors occurring from variables being declared (the dim > lines) on a different level of the total task then where they are > used. > > Also: variables can be declared only once... if both your tasks that > have been merged now share a variable (or actually have two variables > that have the same name but shouldn't be shared between the tasks) and > both have inlines that declare this variables, this gives an error > too. > > Just two possible errors that come to mind... carefully 'walk' trough > your experiment to check all your inlines on discrepanties. > > Additionally you could post an error here to see if we can 'make > anything of it' > > best, > > liw > > On Sep 3, 2:37?am, dkmcf wrote: > > > You need to sign up for a course in Introduction to Computer > > Programming. > > > -- David McFarlane, Professional Faultfinder > > > On Sep 2, 6:41?pm, cogneuroisfun wrote: > > > > Thank you for the reply. I did follow your advice and I understand how > > > the nested list works. (i forgot i could do that for tasks) however, i > > > keep on getting error messages about my inline script for one of my > > > tasks. i keep on getting error messages about my script saying it > > > cannot find certain things. however, everything for the task is > > > there. > > > > does in line script often have problems when copying a procedure into > > > another e-prime program? > > > > i cannot figure out how to stop getting error messages because it > > > appears as everything should be there and working > > > On Aug 9, 4:54?am, liwenna wrote: > > > > > hmmz how about.... > > > > > make a 'masterlist' with two levels. Into level 1 nest the 'main list' > > > > for task A, into level 2 nest the main list for task B, set both main > > > > lists to exit after 1 trial. Tell the master list to repeat (in fixed > > > > order) as many times as your total number of trials. > > > > > I think something like that should do the trick :) > > > > > best, > > > > > liw > > > > > On Aug 8, 5:09?pm, cogneuroisfun wrote: > > > > > > Okay, so for my experiment, I have condition 1 (task A trials), and > > > > > condition 2 with task A alternating with task B. So, it would be like > > > > > one trial of A, one trial of B, one trial of A, one trial of B ect. > > > > > Both task A and B work great by themselves but I'm unsure how to make > > > > > them alternate without butchering either task. Is there any option > > > > > where I could only have the tasks alternate on a trial by trial basis? > > > > > Right now I just can have task A do 50 trials and then task B do 50. > > > > > I've been trying to play around with having new procedure making the > > > > > tasks alternate but I don't know how to only have each task do one > > > > > trial at a time. > > > > > > Hopefully that made some sense, any help or guidance is greatly > > > > > appreciated! > > > > > > 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 people82 at gmail.com Tue Sep 7 05:32:53 2010 From: people82 at gmail.com (Jaeyong Lee) Date: Mon, 6 Sep 2010 22:32:53 -0700 Subject: sending trigger to other devices locked on to the time of response In-Reply-To: <4c80faf5.194de70a.4fd7.ffffcc35SMTPIN_ADDED@gmr-mx.google.com> Message-ID: I suggest couple of ways to upload e-prime related files. One way is to open a ftp. I can personally run a server computer for it. The advantage of it is that files can be uploaded at unlimited numbers and capacity. Also, access to the file is comparatively simple. The downside is that the server computer can be unstable. I can guarantee you that I will run it 24/7 for at least a year. Another solution is to simply use a file-hosting site. As most of you know the 'RapidShare' provides 200 mb of space for each upload. It does not require any personal information other that the email address. Simply uploading the file on rapidshare and distributing the URL will probably let the people in this forum share the source file. On 9?3?, ??10?41?, David McFarlane wrote: > Well, here's the deal. ?That solution is too > involved for me to write out as a post to the > Group. ?But I have it all arranged in a very nice > demo program. ?But I cannot let myself become a > curator for a library of demo programs (I have > more than this in my growing collection). ?So, if > someone can send me instructions for how to > upload my demo program file to a place where > *everyone* can download it from then on, then I > would be very happy to share that and more with the community. > > -- David McFarlane, Professional Faultfinder > > > > >Dear Professional Faultfinder, > > >Thanks for posting your script! > >In my experiment the response comes after the offset of the target > >stimulus. > >If it is not too much of a trouble, I would appreciate to hear about > >your > >solution to presenting other stimuli during the response period. > > >Thanks again! > > >On 9???3? ?, ???? ?4???08???, David McFarlane wrote: > > > Good timing -- It just so happens that I have been working on this > > > very issue for a lab here. ?You have to make the proper settings in > > > your stimulus, and use a bit of inline code following the > > > stimulus. ?Here is the fully-commented inline code for my solution: > > > > '/---------------------------------------------------------------------- > > > ' We wish to present a stimulus (in this case, StimText), get a > > > ' response during that stimlus, and raise a signal as soon as the > > > ' subject responds. > > > ' > > > ' To do that, we need to run this inline code during StimText. ?We > > > ' could simply set the Duration of StimText to 0 or so (depending on > > > ' considerations such as leaving some time between stimulus .OnsetSignal > > > ' and .OffsetSignal) and then our code would have to also handle > > > ' further stimulus timing. ?But with judicious use of Duration and > > > ' PreRelease, E-Prime will automatically take care of stimulus timing > > > ' for us. > > > ' > > > ' So instead we simply set the Duration of StimText as desired (which > > > ' as a result automatically determines the target onset time for the > > > ' next stimulus object), and we set the PreRelease of StimText to a > > > ' suitably large value (preferably >= Duration, but perhaps less due > > > ' to other considerations as mentioned earlier). ?Now this code will > > > ' start to run soon after the onset of StimText, and handle the > > > ' reaction to the subject response. > > > ' > > > ' Finally, this code simply makes use of .IsPending() to detect the > > > ' response (see the InputMask.IsPending topic in the online E-Basic > > > ' Help). ?Note that as a result StimText will last at least as long > > > ' its input mask Time Limit, regardless of its Duration (if you just > > > ' keep Time Limit at the default of "(same as duration)" then this > > > ' will not pose a problem). > > > > Const ?LptDataPort as Integer = &H0378 ?' adjust this for your system > > > Const ?SignalData as Integer = &HFF ?' adjust this for your device > > > Const ?LoopDelay as Long = 2 ?'ms; set as small as possible for your > > > ? ? ? ? ?' system > > > > Do While StimText.InputMasks.IsPending() > > > ? ? ? ? ?' Some slower machines (such as my > > home laptop) need a delay so that > > > ? ? ? ? ?' EP can detect & handle input: > > > ? ? ? ? ?Sleep LoopDelay > > > Loop > > > WritePort LptDataPort, SignalData > > > '\---------------------------------------------------------------------- > > > > This is fine as long as you limit the response to coming during the > > > stimulus. ?If you want to present a train of stimuli during the > > > response period then you must do a little more. ?I also have a > > > solution for that, but it is rather intricate and too much trouble to > > > go into here, so I hope this is good enough for now. > > > > -- David McFarlane, Professional Faultfinder > > > > At 9/1/2010 02:38 AM Wednesday, Jaeyong Lee wrote: > > > > >I was wondering if there is a way to send trigger signals locked on > > > >the response time. > > > > >For instance, > > > > >Stim.OnsetSignalEnabled = True > > > >Stim.OnsetSignalPort = &H378 > > > >Stim.OnsetSignalData = 1 > > > > >WritePort &h378, 0 > > > > >the above code send triggers at the onset of the object "Stim". > > > > >However, I am trying to figure out a way to send triggers at the time > > > >of response of "Stim". > > > > >I would greatly appreciate all tips and advices from you. ?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 ucfmicah at gmail.com Fri Sep 10 08:58:46 2010 From: ucfmicah at gmail.com (Micah) Date: Fri, 10 Sep 2010 01:58:46 -0700 Subject: Problems with randomizing nested lists by condition Message-ID: Hello, I am relatively new to E-prime programming, and have hit a roadblock in developing an fMRI paradigm. The paradigm I am trying to replicate is basically a passive trait-adjective viewing task. You can view the paper I'm getting the paradigm from here: http://scan.oxfordjournals.org/content/2/4/313.long Anyway, here are the essentials of the design: Participants are pre-trained in the distinction between narrative focus (NF) and experiential focus (EF). For the task, participants view a cue (either the word 'judge' or 'sense' with a corresponding picture below it) followed by 6 trait-adjectives. These adjectives are selected from 8 list of words, and it is important that the selection of each list is randomized by condition (judge or sense). The paradigm proceeds in 2 runs, with each condition running twice per run, and the lists should be also randomized between runs. This is where I have had problems- I can get the wordlists to be randomly selected via nested lists for each condition, but checking my logs I can see that some lists are being selected twice. Here is an attempted summary of my set up: SessionProc -Blocklist1 -BlockProc -DesignList -? [ListNumber:1] -? [ListNumber:2] -? [ListNumber:3] -? [ListNumber:4] -TrialProc -Slide1 -Stimulus -ISI -Stimulus -ISI -Stimulus -ISI -Stimulus -ISI -Stimulus -ISI -Stimulus My BlockList is just a 4-row list with the vairable ListNumber and WordList1 through WordList4. I am using 8 nested lists for each individual 6-item word list. My design list uses nested lists [ListNumber:1-4], with variables for Condition, PrimeImage, PrimeText, and [Stim:1] through [Stim:6]. [Stim] is a variable in each of the wordlists and is used in each stimulus text display. I then repeat this entire structure for Run2, but with the BlockList listing WordLists 5-8. I hope this is at all clear. It is a relatively simply paradigm with no response task, but I cannot seem to get it to work right. -- 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 ucfmicah at gmail.com Fri Sep 10 09:00:45 2010 From: ucfmicah at gmail.com (Micah) Date: Fri, 10 Sep 2010 02:00:45 -0700 Subject: Problems with randomizing nested lists by condition In-Reply-To: Message-ID: Also, this setup seems terrible for logging purposes, as my logs look like complete chaos, with only 4 rows and all of the onset times for individual stimuli separated by multiple columns. I need a good suggestion for a redesign. On Sep 10, 10:58?am, Micah wrote: > Hello, > > I am relatively new to E-prime programming, and have hit a roadblock > in developing an fMRI paradigm. The paradigm I am trying to replicate > is basically a passive trait-adjective viewing task. You can view the > paper I'm getting the paradigm from here: > > http://scan.oxfordjournals.org/content/2/4/313.long > > Anyway, here are the essentials of the design: > > Participants are pre-trained in the distinction between narrative > focus (NF) and experiential focus (EF). For the task, participants > view a cue (either the word 'judge' or 'sense' with a corresponding > picture below it) followed by 6 trait-adjectives. These adjectives are > selected from 8 list of words, and it is important that the selection > of each list is randomized by condition (judge or sense). The paradigm > proceeds in 2 runs, with each condition running twice per run, and the > lists should be also randomized between runs. This is where I have had > problems- I can get the wordlists to be randomly selected via nested > lists for each condition, but checking my logs I can see that some > lists are being selected twice. Here is an attempted summary of my set > up: > > SessionProc > -Blocklist1 > ?-BlockProc > ? -DesignList > ? ?-? [ListNumber:1] > ? ?-? [ListNumber:2] > ? ?-? [ListNumber:3] > ? ?-? [ListNumber:4] > ? ? ? -TrialProc > ? ? ? ?-Slide1 > ? ? ? ?-Stimulus > ? ? ? ?-ISI > ? ? ? ?-Stimulus > ? ? ? ?-ISI > ? ? ? ?-Stimulus > ? ? ? ?-ISI > ? ? ? ?-Stimulus > ? ? ? ?-ISI > ? ? ? ?-Stimulus > ? ? ? ?-ISI > ? ? ? ?-Stimulus > > My BlockList is just a 4-row list with the vairable ListNumber and > WordList1 through WordList4. I am using 8 nested lists for each > individual 6-item word list. My design list uses nested lists > [ListNumber:1-4], with variables for Condition, PrimeImage, PrimeText, > and [Stim:1] through [Stim:6]. [Stim] is a variable in each of the > wordlists and is used in each stimulus text display. I then repeat > this entire structure for Run2, but with the BlockList listing > WordLists 5-8. > > I hope this is at all clear. It is a relatively simply paradigm with > no response task, but I cannot seem to get it to work right. -- 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 Sep 10 13:46:03 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 09:46:03 -0400 Subject: Mastering E-Prime: Meaning of all time audit measures. Message-ID: When you look at the Logging tab on the properties page of any stimulus object, you will find a host of items available for logging. Most of these are time audit data. But what do all these items mean, and what are they good for? Chapter 3 of the E-Prime User's Guide discusses time auditing to some degree, and the timing diagram at Appendix E provides one way to see the relationships between these items. As an alternative, here I try to set out, in order, a brief description of these items. First let us distinguish between timing control *settings* and time audit *measures*. The following items do not reflect any results formed during the course of a stimulus but simply log the settings provided by the user (e.g., you). You may choose to have any of these logged just to keep a record of settings active during the experiment: - Duration: To reiterate, this does *not* show the actual duration of the stimulus, only the setting as provided by the user. - PreRelease: Affects the TargetOffsetTime (see below). - TimingMode: Event, Cumulative, or Custom, as set by the user (see the online E-Basic Help). - CustomOffsetTime: In Custom timing mode, overrides the TargetOnsetTime (see the online E-Basic Help). - CustomOnsetTime: In Custom timing mode, overrides the TargetOffsetTime (see the online E-Basic Help). Now, the raw time audit measures, listed in the order in which events occur during the execution of a stimulus object. These are all time stamps in milliseconds from the start of the current program run: - StartTime: Time at which E-Prime started executing the stimulus object. - TargetOnsetTime: Scheduled time at which presentation of stimulus was to begin; set automatically from GetNextTargetOnsetTime (see online E-Basic Help). - OnsetTime: Time when E-Prime actually submitted the stimulus data for presentation (e.g., proceeded to copy data to display memory or load sound buffer). This may not coincide with when the stimulus actually got presented, e.g., if data are submitted in the middle of a display refresh cycle then they may not get presented until the next refresh. - ActionTime: According to the online E-Basic Help, time at which E-Prime completed the "critical action" of the stimulus. The documentation remains somewhat vague about this -- perhaps "critical action" means copying data to display memory, or loading a sound or video buffer. In my tests, ActionTime never lags more than 1 ms behind OnsetTime, so it serves practically the same purpose as OnsetTime. - TargetOffsetTime: Scheduled time at which offset actions (e.g., clean-up, ClearAfter, StopAfter) of stimulus object were to begin, e.g., OnsetTime + Duration - PreRelease (Event timing mode), or TargetOnsetTime + Duration - PreRelease (Cumulative timing mode). - OffsetTime: Time when E-Prime actually began the offset actions of the object. Actions may not take practical effect until next vertical blank, or until presentation of next stimulus. - FinishTime: Time when E-Prime exited from execution of the stimulus object and proceeded to execute the next section of the program (e.g., next stimulus object or inline code). Note that *execution* of a stimulus *object* may end before *presentation* of the *stimulus* ends; this is the point of PreRelease (as well as happening as a matter of course with some stimuli such as some sounds). Finally, a few composite time audit measures derived from the raw measures above and provided for convenience: - OnsetDelay = OnsetTime - TargetOnsetTime - ActionDelay = ActionTime - OnsetTime - OffsetDelay = OffsetTime - TargetOffsetTime - DurationError = OffsetTime + PreRelease - OnsetTime - Duration Note: - Time audit measures include the ActionTime that follows upon OnsetTime, but no corresponding item to follow upon OffsetTime. - No time audit item for time stamp of vertical blank, although many stimuli do not take full effect until just after a vertical blank. -- David McFarlane, Professional Faultfinder -- 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 Sep 10 14:20:39 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 10:20:39 -0400 Subject: Mastering E-Prime: Meaning of all time audit measures. In-Reply-To: <4c8a36a3.8b19e70a.5fdc.ffff90d0SMTPIN_ADDED@gmr-mx.google. com> Message-ID: I worked on getting that little write-up done exactly right for at least a week, and after posting it still find things to revise; in particular, looking back at the E-Prime Reference Guide, I concede that the documention was not quite as vague about "Critical Action" as I stated (but I still had to do my own tests in E-Prime to clarify this). Anyway, I should have closed with a list of references, so here it is: References: - E-Prime User's Guide, Chapter 3 & Appendix E. - E-Prime Reference Guide, section 1.3.1.4 Logging Tab. - E-Basic online help, topic "Time Audit". -- David McFarlane, Professional Faultfinder >When you look at the Logging tab on the properties page of any >stimulus object, you will find a host of items available for >logging. Most of these are time audit data. But what do all these >items mean, and what are they good for? Chapter 3 of the E-Prime >User's Guide discusses time auditing to some degree, and the timing >diagram at Appendix E provides one way to see the relationships >between these items. As an alternative, here I try to set out, in >order, a brief description of these items. > >First let us distinguish between timing control *settings* and time >audit *measures*. The following items do not reflect any results >formed during the course of a stimulus but simply log the settings >provided by the user (e.g., you). You may choose to have any of >these logged just to keep a record of settings active during the experiment: >- Duration: To reiterate, this does *not* show the actual duration of > the stimulus, only the setting as provided by the user. >- PreRelease: Affects the TargetOffsetTime (see below). >- TimingMode: Event, Cumulative, or Custom, as set by the user (see > the online E-Basic Help). >- CustomOffsetTime: In Custom timing mode, overrides the > TargetOnsetTime (see the online E-Basic Help). >- CustomOnsetTime: In Custom timing mode, overrides the > TargetOffsetTime (see the online E-Basic Help). > >Now, the raw time audit measures, listed in the order in which >events occur during the execution of a stimulus object. These are >all time stamps in milliseconds from the start of the current program run: >- StartTime: Time at which E-Prime started executing the stimulus > object. >- TargetOnsetTime: Scheduled time at which presentation of stimulus was > to begin; set automatically from GetNextTargetOnsetTime (see online > E-Basic Help). >- OnsetTime: Time when E-Prime actually submitted the stimulus data for > presentation (e.g., proceeded to copy data to display memory or load > sound buffer). This may not coincide with when the stimulus actually > got presented, e.g., if data are submitted in the middle of a display > refresh cycle then they may not get presented until the next refresh. >- ActionTime: According to the online E-Basic Help, time at which > E-Prime completed the "critical action" of the stimulus. The > documentation remains somewhat vague about this -- perhaps "critical > action" means copying data to display memory, or loading a sound or > video buffer. In my tests, ActionTime never lags more than 1 ms > behind OnsetTime, so it serves practically the same purpose as > OnsetTime. >- TargetOffsetTime: Scheduled time at which offset actions (e.g., > clean-up, ClearAfter, StopAfter) of stimulus object were to begin, > e.g., OnsetTime + Duration - PreRelease (Event timing mode), or > TargetOnsetTime + Duration - PreRelease (Cumulative timing mode). >- OffsetTime: Time when E-Prime actually began the offset actions of > the object. Actions may not take practical effect until next > vertical blank, or until presentation of next stimulus. >- FinishTime: Time when E-Prime exited from execution of the > stimulus object and proceeded to execute the next section of the > program (e.g., next stimulus object or inline code). Note that > *execution* of a stimulus *object* may end before *presentation* of > the *stimulus* ends; this is the point of PreRelease (as well as > happening as a matter of course with some stimuli such as some > sounds). > >Finally, a few composite time audit measures derived from the raw >measures above and provided for convenience: >- OnsetDelay = OnsetTime - TargetOnsetTime >- ActionDelay = ActionTime - OnsetTime >- OffsetDelay = OffsetTime - TargetOffsetTime >- DurationError = OffsetTime + PreRelease - OnsetTime - Duration > >Note: >- Time audit measures include the ActionTime that follows upon > OnsetTime, but no corresponding item to follow upon OffsetTime. >- No time audit item for time stamp of vertical blank, although many > stimuli do not take full effect until just after a vertical blank. > >-- David McFarlane, Professional Faultfinder -- 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 ucfmicah at gmail.com Fri Sep 10 14:30:24 2010 From: ucfmicah at gmail.com (Micah) Date: Fri, 10 Sep 2010 07:30:24 -0700 Subject: Problems with randomizing nested lists by condition In-Reply-To: <7972247a-8f0c-4a05-8764-e4dd173d7ca7@q18g2000vbm.googlegroups.com> Message-ID: I think I may have actually solved my own problem! I have implemented a much simpler solution that seems to be working. Now I just need to work on the logs and make sure all the timing looks good! Any standard tips for what needs to be logged by e-Prime for a standard fMRI analysis? Micah wrote: > Also, this setup seems terrible for logging purposes, as my logs look > like complete chaos, with only 4 rows and all of the onset times for > individual stimuli separated by multiple columns. I need a good > suggestion for a redesign. > > On Sep 10, 10:58?am, Micah wrote: > > Hello, > > > > I am relatively new to E-prime programming, and have hit a roadblock > > in developing an fMRI paradigm. The paradigm I am trying to replicate > > is basically a passive trait-adjective viewing task. You can view the > > paper I'm getting the paradigm from here: > > > > http://scan.oxfordjournals.org/content/2/4/313.long > > > > Anyway, here are the essentials of the design: > > > > Participants are pre-trained in the distinction between narrative > > focus (NF) and experiential focus (EF). For the task, participants > > view a cue (either the word 'judge' or 'sense' with a corresponding > > picture below it) followed by 6 trait-adjectives. These adjectives are > > selected from 8 list of words, and it is important that the selection > > of each list is randomized by condition (judge or sense). The paradigm > > proceeds in 2 runs, with each condition running twice per run, and the > > lists should be also randomized between runs. This is where I have had > > problems- I can get the wordlists to be randomly selected via nested > > lists for each condition, but checking my logs I can see that some > > lists are being selected twice. Here is an attempted summary of my set > > up: > > > > SessionProc > > -Blocklist1 > > ?-BlockProc > > ? -DesignList > > ? ?-? [ListNumber:1] > > ? ?-? [ListNumber:2] > > ? ?-? [ListNumber:3] > > ? ?-? [ListNumber:4] > > ? ? ? -TrialProc > > ? ? ? ?-Slide1 > > ? ? ? ?-Stimulus > > ? ? ? ?-ISI > > ? ? ? ?-Stimulus > > ? ? ? ?-ISI > > ? ? ? ?-Stimulus > > ? ? ? ?-ISI > > ? ? ? ?-Stimulus > > ? ? ? ?-ISI > > ? ? ? ?-Stimulus > > ? ? ? ?-ISI > > ? ? ? ?-Stimulus > > > > My BlockList is just a 4-row list with the vairable ListNumber and > > WordList1 through WordList4. I am using 8 nested lists for each > > individual 6-item word list. My design list uses nested lists > > [ListNumber:1-4], with variables for Condition, PrimeImage, PrimeText, > > and [Stim:1] through [Stim:6]. [Stim] is a variable in each of the > > wordlists and is used in each stimulus text display. I then repeat > > this entire structure for Run2, but with the BlockList listing > > WordLists 5-8. > > > > I hope this is at all clear. It is a relatively simply paradigm with > > no response task, but I cannot seem to get it to work right. -- 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 kiekseltje at gmail.com Fri Sep 10 18:20:12 2010 From: kiekseltje at gmail.com (Annika) Date: Fri, 10 Sep 2010 11:20:12 -0700 Subject: Resize window Message-ID: Hi all, I was wondering whether you can change the size of the window in which the experiment is run. Is there a way to let E-Prime take up only, say, half the computer screen, so that you can still see (half) the desktop in the background while running the experiment? Thanks, Annika -- 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 Sep 10 18:49:42 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 14:49:42 -0400 Subject: Resize window In-Reply-To: <65a1f106-11f9-4fbd-aa0d-a49706e3c571@c16g2000vbp.googlegro ups.com> Message-ID: Annika, Stock reminder: 1) I do not work for PST. 2) PST's trained staff takes 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 (although current estimates are more like 10 days) -- this is pretty much their substitute for proper documentation, so make full use of it. 3) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... Hmm, interesting thought. I don't see any hope of doing that in E-Prime, but I would be glad to be found wrong. You can, of course, set E-Prime's display resolution to whatever you like, but that always still takes up the full display. As an alternative, I suppose you might use a dual physical display, so that E-Prime would take up one display screen, and you would still have a desktop visible on the other display screen. -- David McFarlane, Professional Faultfinder >I was wondering whether you can change the size of the window in which >the experiment is run. Is there a way to let E-Prime take up only, >say, half the computer screen, so that you can still see (half) the >desktop in the background while running the experiment? >Thanks, >Annika -- 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 kiekseltje at gmail.com Fri Sep 10 19:51:14 2010 From: kiekseltje at gmail.com (Annika) Date: Fri, 10 Sep 2010 12:51:14 -0700 Subject: Resize window In-Reply-To: <4c8a7dcf.8b19e70a.5fdc.ffffa38fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks a lot for your quick reply. I had thought of using a dual display, but I am not sure if I could make this work in the scanner. I am also afraid that the two display screens would end up being too small to be clearly visible (the same would probably apply to showing the experiment and the desktop simultaneously, on second thought). Perhaps it would be easier if I explained what I would like to do: At certain points during my experiment, subjects need to receive direct video feedback from a webcam (connected to the computer that runs E- Prime). I cannot use the movie object for this purpose, because it can only play saved (not live) video clips. I considered calling a dll routine to bring up the webcam (in the same runtime environment), but this would probably interfere with E-Prime. Finally, I tried to turn on the webcam, start the experiment, and then bring the webcam to the foreground at specific time points. The problem is that E-Prime quits as soon as it is no longer in the foreground (runtime error 11011). Do you know if there is a way (e.g., using an inLine) to keep E-Prime running in the background? That way I could call the webcam to the foreground (and push it back to the background again a few seconds later), without having the experiment quit in the mean time. I appreciate your help, Annika On Sep 10, 2:49?pm, David McFarlane wrote: > Annika, > > Stock reminder: ?1) I do not work for PST. ?2) PST's trained staff > takes 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 (although current > estimates are more like 10 days) -- this is pretty much their > substitute for proper documentation, so make full use of it. ?3) If > you do get an answer from PST Web Support, please extend the courtesy > of posting their reply back here for the sake of others. > > That said, here is my take... > > Hmm, interesting thought. ?I don't see any hope of doing that in > E-Prime, but I would be glad to be found wrong. ?You can, of course, > set E-Prime's display resolution to whatever you like, but that > always still takes up the full display. > > As an alternative, I suppose you might use a dual physical display, > so that E-Prime would take up one display screen, and you would still > have a desktop visible on the other display screen. > > -- David McFarlane, Professional Faultfinder > > >I was wondering whether you can change the size of the window in which > >the experiment is run. ?Is there a way to let E-Prime take up only, > >say, half the computer screen, so that you can still see (half) the > >desktop in the background while running the experiment? > >Thanks, > >Annika -- 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 Sep 10 21:15:49 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 10 Sep 2010 17:15:49 -0400 Subject: Resize window In-Reply-To: Message-ID: Annika, I still think that you should contact PST Web Support with this and see what they say. Other than that, if it were me then at this point I would resort to some sort of low-tech kludge. E.g., feed both the EP video and the web cam video output into some sort of video switch box that goes to the one display monitor, then see if I can use some digital I/O output (e.g., the lpt port) to have EP control which video goes through the switch to the display; or in a pinch, if display switch timing is not critical, just flip the switch as needed by hand; or use two displays and physically move a mirror to show one display or the other. IOW, I would just try to think "outside the EP box" to get a working solution to this. OK, I am late getting home for the weekend now, I have a fish dinner waiting and then a symphony concert tonight, so off I go... -- David McFarlane, Professional Faultfinder >Hi David, > >Thanks a lot for your quick reply. >I had thought of using a dual display, but I am not sure if I could >make this work in the scanner. I am also afraid that the two display >screens would end up being too small to be clearly visible (the same >would probably apply to showing the experiment and the desktop >simultaneously, on second thought). >Perhaps it would be easier if I explained what I would like to do: At >certain points during my experiment, subjects need to receive direct >video feedback from a webcam (connected to the computer that runs E- >Prime). >I cannot use the movie object for this purpose, because it can only >play saved (not live) video clips. I considered calling a dll routine >to bring up the webcam (in the same runtime environment), but this >would probably interfere with E-Prime. Finally, I tried to turn on the >webcam, start the experiment, and then bring the webcam to the >foreground at specific time points. The problem is that E-Prime quits >as soon as it is no longer in the foreground (runtime error 11011). >Do you know if there is a way (e.g., using an inLine) to keep E-Prime >running in the background? That way I could call the webcam to the >foreground (and push it back to the background again a few seconds >later), without having the experiment quit in the mean time. > >I appreciate your help, > >Annika > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > Annika, > > > > Stock reminder: 1) I do not work for PST. 2) PST's trained staff > > takes 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 (although current > > estimates are more like 10 days) -- this is pretty much their > > substitute for proper documentation, so make full use of it. 3) If > > you do get an answer from PST Web Support, please extend the courtesy > > of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Hmm, interesting thought. I don't see any hope of doing that in > > E-Prime, but I would be glad to be found wrong. You can, of course, > > set E-Prime's display resolution to whatever you like, but that > > always still takes up the full display. > > > > As an alternative, I suppose you might use a dual physical display, > > so that E-Prime would take up one display screen, and you would still > > have a desktop visible on the other display screen. > > > > -- David McFarlane, Professional Faultfinder > > > > >I was wondering whether you can change the size of the window in which > > >the experiment is run. Is there a way to let E-Prime take up only, > > >say, half the computer screen, so that you can still see (half) the > > >desktop in the background while running the experiment? > > >Thanks, > > >Annika -- 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 kiekseltje at gmail.com Sat Sep 11 21:16:47 2010 From: kiekseltje at gmail.com (Annika) Date: Sat, 11 Sep 2010 14:16:47 -0700 Subject: Resize window In-Reply-To: <4c8aa02d.8b19e70a.5961.ffffa920SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thanks again for your suggestions. I would have liked to make it work through EP, but you're right; I'll just start working on a low-tech solution. I contacted PST web support, by the way, but they always take long to get back to me - I really appreciate your quick and helpful replies! Have a good weekend, Annika On Sep 10, 5:15?pm, David McFarlane wrote: > Annika, > > I still think that you should contact PST Web Support with this and > see what they say. > > Other than that, if it were me then at this point I would resort to > some sort of low-tech kludge. ?E.g., feed both the EP video and the > web cam video output into some sort of video switch box that goes to > the one display monitor, then see if I can use some digital I/O > output (e.g., the lpt port) to have EP control which video goes > through the switch to the display; or in a pinch, if display switch > timing is not critical, just flip the switch as needed by hand; or > use two displays and physically move a mirror to show one display or > the other. ?IOW, I would just try to think "outside the EP box" to > get a working solution to this. > > OK, I am late getting home for the weekend now, I have a fish dinner > waiting and then a symphony concert tonight, so off I go... > > -- David McFarlane, Professional Faultfinder > > >Hi David, > > >Thanks a lot for your quick reply. > >I had thought of using a dual display, but I am not sure if I could > >make this work in the scanner. I am also afraid that the two display > >screens would end up being too small to be clearly visible (the same > >would probably apply to showing the experiment and the desktop > >simultaneously, on second thought). > >Perhaps it would be easier if I explained what I would like to do: At > >certain points during my experiment, subjects need to receive direct > >video feedback from a webcam (connected to the computer that runs E- > >Prime). > >I cannot use the movie object for this purpose, because it can only > >play saved (not live) video clips. I considered calling a dll routine > >to bring up the webcam (in the same runtime environment), but this > >would probably interfere with E-Prime. Finally, I tried to turn on the > >webcam, start the experiment, and then bring the webcam to the > >foreground at specific time points. The problem is that E-Prime quits > >as soon as it is no longer in the foreground (runtime error 11011). > >Do you know if there is a way (e.g., using an inLine) to keep E-Prime > >running in the background? That way I could call the webcam to the > >foreground (and push it back to the background again a few seconds > >later), without having the experiment quit in the mean time. > > >I appreciate your help, > > >Annika > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > > Annika, > > > > Stock reminder: ?1) I do not work for PST. ?2) PST's trained staff > > > takes 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 (although current > > > estimates are more like 10 days) -- this is pretty much their > > > substitute for proper documentation, so make full use of it. ?3) If > > > you do get an answer from PST Web Support, please extend the courtesy > > > of posting their reply back here for the sake of others. > > > > That said, here is my take... > > > > Hmm, interesting thought. ?I don't see any hope of doing that in > > > E-Prime, but I would be glad to be found wrong. ?You can, of course, > > > set E-Prime's display resolution to whatever you like, but that > > > always still takes up the full display. > > > > As an alternative, I suppose you might use a dual physical display, > > > so that E-Prime would take up one display screen, and you would still > > > have a desktop visible on the other display screen. > > > > -- David McFarlane, Professional Faultfinder > > > > >I was wondering whether you can change the size of the window in which > > > >the experiment is run. ?Is there a way to let E-Prime take up only, > > > >say, half the computer screen, so that you can still see (half) the > > > >desktop in the background while running the experiment? > > > >Thanks, > > > >Annika -- 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 mplenhart at gmail.com Mon Sep 13 19:50:22 2010 From: mplenhart at gmail.com (Matt) Date: Mon, 13 Sep 2010 12:50:22 -0700 Subject: Resize window In-Reply-To: Message-ID: Hi Annika, Basically, E-Prime takes complete control of the display device when it starts an experiment. It needs to do this in order for the timing to be accurate. If it gives up even a part of the screen to another program, it would lose this control and the timing data could suffer. You could try using a DLL to tap into the camera feed during the experiment (present it on-screen at the same time). I'm not sure of the specifics for the camera/app you are using, but it should be possible. If you try to switch to another application while an experiment is running, Windows takes control of the display and E-Prime will throw an error since it has lost control. The Windows key and ALT+Tab will both do this. Matt On Sep 11, 5:16?pm, Annika wrote: > Thanks again for your suggestions. I would have liked to make it work > through EP, but you're right; I'll just start working on a low-tech > solution. > I contacted PST web support, by the way, but they always take long to > get back to me - I really appreciate your quick and helpful replies! > > Have a good weekend, > > Annika > > On Sep 10, 5:15?pm, David McFarlane wrote: > > > > > Annika, > > > I still think that you should contact PST Web Support with this and > > see what they say. > > > Other than that, if it were me then at this point I would resort to > > some sort of low-tech kludge. ?E.g., feed both the EP video and the > > web cam video output into some sort of video switch box that goes to > > the one display monitor, then see if I can use some digital I/O > > output (e.g., the lpt port) to have EP control which video goes > > through the switch to the display; or in a pinch, if display switch > > timing is not critical, just flip the switch as needed by hand; or > > use two displays and physically move a mirror to show one display or > > the other. ?IOW, I would just try to think "outside the EP box" to > > get a working solution to this. > > > OK, I am late getting home for the weekend now, I have a fish dinner > > waiting and then a symphony concert tonight, so off I go... > > > -- David McFarlane, Professional Faultfinder > > > >Hi David, > > > >Thanks a lot for your quick reply. > > >I had thought of using a dual display, but I am not sure if I could > > >make this work in the scanner. I am also afraid that the two display > > >screens would end up being too small to be clearly visible (the same > > >would probably apply to showing the experiment and the desktop > > >simultaneously, on second thought). > > >Perhaps it would be easier if I explained what I would like to do: At > > >certain points during my experiment, subjects need to receive direct > > >video feedback from a webcam (connected to the computer that runs E- > > >Prime). > > >I cannot use the movie object for this purpose, because it can only > > >play saved (not live) video clips. I considered calling a dll routine > > >to bring up the webcam (in the same runtime environment), but this > > >would probably interfere with E-Prime. Finally, I tried to turn on the > > >webcam, start the experiment, and then bring the webcam to the > > >foreground at specific time points. The problem is that E-Prime quits > > >as soon as it is no longer in the foreground (runtime error 11011). > > >Do you know if there is a way (e.g., using an inLine) to keep E-Prime > > >running in the background? That way I could call the webcam to the > > >foreground (and push it back to the background again a few seconds > > >later), without having the experiment quit in the mean time. > > > >I appreciate your help, > > > >Annika > > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > > > Annika, > > > > > Stock reminder: ?1) I do not work for PST. ?2) PST's trained staff > > > > takes 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 (although current > > > > estimates are more like 10 days) -- this is pretty much their > > > > substitute for proper documentation, so make full use of it. ?3) If > > > > you do get an answer from PST Web Support, please extend the courtesy > > > > of posting their reply back here for the sake of others. > > > > > That said, here is my take... > > > > > Hmm, interesting thought. ?I don't see any hope of doing that in > > > > E-Prime, but I would be glad to be found wrong. ?You can, of course, > > > > set E-Prime's display resolution to whatever you like, but that > > > > always still takes up the full display. > > > > > As an alternative, I suppose you might use a dual physical display, > > > > so that E-Prime would take up one display screen, and you would still > > > > have a desktop visible on the other display screen. > > > > > -- David McFarlane, Professional Faultfinder > > > > > >I was wondering whether you can change the size of the window in which > > > > >the experiment is run. ?Is there a way to let E-Prime take up only, > > > > >say, half the computer screen, so that you can still see (half) the > > > > >desktop in the background while running the experiment? > > > > >Thanks, > > > > >Annika -- 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 Michiel.Spape at nottingham.ac.uk Thu Sep 16 13:46:23 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 16 Sep 2010 14:46:23 +0100 Subject: joysticks Message-ID: Dear group, Finally, my turn to ask a question! I know that several here seem to want, or have, used joysticks in E-Prime. Though I don't need E-Prime (or plan to use it), my question is the following: what kind of joystick do you use? I know E-Prime (2), much like DirectX (which I do plan to use), support all joysticks that can be autodetected by Windows. Problem is that most things on the gaming market is absolutely horrendously embarrassing; buttons everywhere, spacey show, whatnot, whereas I would rather doubt they have any actual scientific credibility. Scientific stuff, e.g. fMRI stuff looks better, probably works better, but is A) extremely expensive and B) not necessarily well integrated into Windows (which might make programming difficult). I would prefer something USB type, rather than conventional gaming (i.e. midi) or serial port, for easy installation. Tips, anyone? Best, Michiel Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 mplenhart at gmail.com Thu Sep 16 20:12:17 2010 From: mplenhart at gmail.com (Matt) Date: Thu, 16 Sep 2010 13:12:17 -0700 Subject: joysticks In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03F5D479@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: I know people have used joysticks/gamepads from Microsoft and Logitech successfully with E-Prime. Some of the Microsoft joysticks are pretty simple and only have a couple of buttons. Logitech makes some gamepads with a similar layout to Playstation 3 or XBox, which might be more familiar for some subjects. I believe these are all USB- driven and should be really easy to set up. -- 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 jasoncraggs at gmail.com Fri Sep 17 13:18:35 2010 From: jasoncraggs at gmail.com (Jason Craggs) Date: Fri, 17 Sep 2010 09:18:35 -0400 Subject: Resize window In-Reply-To: <207f4ef9-380a-464c-8c24-c10e77db4efd@k11g2000vbf.googlegroups.com> Message-ID: Hi Annika, As a fellow neuroimager I have a couple of suggestions. First and foremost, stick with low-tech. Second, depending on how critical your timing needs are, a two-system solution using a KVM switch may be an effective solution. Cheers, Jason On Mon, Sep 13, 2010 at 3:50 PM, Matt wrote: > Hi Annika, > > Basically, E-Prime takes complete control of the display device when > it starts an experiment. It needs to do this in order for the timing > to be accurate. If it gives up even a part of the screen to another > program, it would lose this control and the timing data could suffer. > > You could try using a DLL to tap into the camera feed during the > experiment (present it on-screen at the same time). I'm not sure of > the specifics for the camera/app you are using, but it should be > possible. > > If you try to switch to another application while an experiment is > running, Windows takes control of the display and E-Prime will throw > an error since it has lost control. The Windows key and ALT+Tab will > both do this. > > > Matt > > > On Sep 11, 5:16 pm, Annika wrote: > > Thanks again for your suggestions. I would have liked to make it work > > through EP, but you're right; I'll just start working on a low-tech > > solution. > > I contacted PST web support, by the way, but they always take long to > > get back to me - I really appreciate your quick and helpful replies! > > > > Have a good weekend, > > > > Annika > > > > On Sep 10, 5:15 pm, David McFarlane wrote: > > > > > > > > > Annika, > > > > > I still think that you should contact PST Web Support with this and > > > see what they say. > > > > > Other than that, if it were me then at this point I would resort to > > > some sort of low-tech kludge. E.g., feed both the EP video and the > > > web cam video output into some sort of video switch box that goes to > > > the one display monitor, then see if I can use some digital I/O > > > output (e.g., the lpt port) to have EP control which video goes > > > through the switch to the display; or in a pinch, if display switch > > > timing is not critical, just flip the switch as needed by hand; or > > > use two displays and physically move a mirror to show one display or > > > the other. IOW, I would just try to think "outside the EP box" to > > > get a working solution to this. > > > > > OK, I am late getting home for the weekend now, I have a fish dinner > > > waiting and then a symphony concert tonight, so off I go... > > > > > -- David McFarlane, Professional Faultfinder > > > > > >Hi David, > > > > > >Thanks a lot for your quick reply. > > > >I had thought of using a dual display, but I am not sure if I could > > > >make this work in the scanner. I am also afraid that the two display > > > >screens would end up being too small to be clearly visible (the same > > > >would probably apply to showing the experiment and the desktop > > > >simultaneously, on second thought). > > > >Perhaps it would be easier if I explained what I would like to do: At > > > >certain points during my experiment, subjects need to receive direct > > > >video feedback from a webcam (connected to the computer that runs E- > > > >Prime). > > > >I cannot use the movie object for this purpose, because it can only > > > >play saved (not live) video clips. I considered calling a dll routine > > > >to bring up the webcam (in the same runtime environment), but this > > > >would probably interfere with E-Prime. Finally, I tried to turn on the > > > >webcam, start the experiment, and then bring the webcam to the > > > >foreground at specific time points. The problem is that E-Prime quits > > > >as soon as it is no longer in the foreground (runtime error 11011). > > > >Do you know if there is a way (e.g., using an inLine) to keep E-Prime > > > >running in the background? That way I could call the webcam to the > > > >foreground (and push it back to the background again a few seconds > > > >later), without having the experiment quit in the mean time. > > > > > >I appreciate your help, > > > > > >Annika > > > > > >On Sep 10, 2:49 pm, David McFarlane wrote: > > > > > Annika, > > > > > > > Stock reminder: 1) I do not work for PST. 2) PST's trained staff > > > > > takes 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 (although current > > > > > estimates are more like 10 days) -- this is pretty much their > > > > > substitute for proper documentation, so make full use of it. 3) If > > > > > you do get an answer from PST Web Support, please extend the > courtesy > > > > > of posting their reply back here for the sake of others. > > > > > > > That said, here is my take... > > > > > > > Hmm, interesting thought. I don't see any hope of doing that in > > > > > E-Prime, but I would be glad to be found wrong. You can, of > course, > > > > > set E-Prime's display resolution to whatever you like, but that > > > > > always still takes up the full display. > > > > > > > As an alternative, I suppose you might use a dual physical display, > > > > > so that E-Prime would take up one display screen, and you would > still > > > > > have a desktop visible on the other display screen. > > > > > > > -- David McFarlane, Professional Faultfinder > > > > > > > >I was wondering whether you can change the size of the window in > which > > > > > >the experiment is run. Is there a way to let E-Prime take up > only, > > > > > >say, half the computer screen, so that you can still see (half) > the > > > > > >desktop in the background while running the experiment? > > > > > >Thanks, > > > > > >Annika > > -- > 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 Michiel.Spape at nottingham.ac.uk Fri Sep 17 13:48:08 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 17 Sep 2010 14:48:08 +0100 Subject: joysticks In-Reply-To: <2bfd6029-6631-4610-86aa-0e82c315cbf7@j2g2000vbo.googlegroups.com> Message-ID: Hi, Thanks for your input! I used the XBOX360 controller before (for one, because it can easily connect to a pc via USB, but more importantly, because there are some very convenient SDKs provided by Microsoft for it), but its sticks aren't all that brilliant - they're quite small and not very smooth in the operation. Also, I looked at the entire range of sidewinder stuff, but compared to someone who last used a joystick to do Winter Games on the Commodore 64 (ahhh, does that bring back memories to anyone? Langlaufen, running, whatnot, all by moving the joystick as fast as possible left and right, thus ruining your wrist for life... beautiful), simple isn't exactly the way I'd describe it. Closest possible I got was coming up with 'arcade style' controllers (my C64 joystick is, apparently, a 'lollypop' style one... is it me or are game-controllers seriously off in their naming conventions?). I hope I can get our technician to work something out using such parts, rather than getting a cognitive 'fmri-compatible' 'precision timing' unit at the price of a small island in Fiji... Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Sent: 16 September 2010 21:12 To: E-Prime Subject: Re: joysticks I know people have used joysticks/gamepads from Microsoft and Logitech successfully with E-Prime. Some of the Microsoft joysticks are pretty simple and only have a couple of buttons. Logitech makes some gamepads with a similar layout to Playstation 3 or XBox, which might be more familiar for some subjects. I believe these are all USB- driven and should be really easy to set up. -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Sep 17 14:09:22 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 17 Sep 2010 10:09:22 -0400 Subject: joysticks In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03F5D769@VUIEXCHC.ad.notti ngham.ac.uk> Message-ID: Mich, OK, I will jump in here if only to clarify the discussion a little for myself. By "joystick" do you mean a pointing device that indicates both direction & distance (i.e., how *far* one moves the stick), or a pointing device the indicates only direction (e.g., only whether the stick moves up, down, left, or right)? As you know, modern gaming-style joysticks are of the first variety, whereas older arcade-style joysticks are of the latter. I find that users confuse these two all the time -- the last time someone asked me about a joystick here, after a lot of questioning I figured out that they needed only an old-fashioned 4- or 8-way joystick (based on simple microswitches), which we could read very simply through any digital I/O port (e.g., lpt). So I bought one on eBay and rigged it up, it was very solid and worked great. (BTW, love your story about the Commodore 64, I still have mine and, at the request of my 12-year old nephew who has an interest in old computer games, bought a Donkey Kong game on eBay and ran it for him on the C=64. Did a lot of lab programming on that machine through the early 1990s, wrote my first assembly code hardware interrupt service routine on it. Those were the days.) -- dkm At 9/17/2010 09:48 AM Friday, you wrote: >Hi, >Thanks for your input! I used the XBOX360 >controller before (for one, because it can >easily connect to a pc via USB, but more >importantly, because there are some very >convenient SDKs provided by Microsoft for it), >but its sticks aren't all that brilliant - >they're quite small and not very smooth in the >operation. Also, I looked at the entire range of >sidewinder stuff, but compared to someone who >last used a joystick to do Winter Games on the >Commodore 64 (ahhh, does that bring back >memories to anyone? Langlaufen, running, >whatnot, all by moving the joystick as fast as >possible left and right, thus ruining your wrist >for life... beautiful), simple isn't exactly the >way I'd describe it. Closest possible I got was >coming up with 'arcade style' controllers (my >C64 joystick is, apparently, a 'lollypop' style >one... is it me or are game-controllers >seriously off in their naming conventions?). I >hope I can get our technician to work something >out using such parts, rather than getting a >cognitive 'fmri-compatible' 'precision timing' >unit at the price of a small island in Fiji... > >Cheers, >Mich > >Michiel Spap? >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology >www.cognitology.eu > > >-----Original Message----- >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of Matt >Sent: 16 September 2010 21:12 >To: E-Prime >Subject: Re: joysticks > >I know people have used joysticks/gamepads from Microsoft and Logitech >successfully with E-Prime. Some of the Microsoft joysticks are pretty >simple and only have a couple of buttons. Logitech makes some >gamepads with a similar layout to Playstation 3 or XBox, which might >be more familiar for some subjects. I believe these are all USB- >driven and should be really easy to set up. -- 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 Michiel.Spape at nottingham.ac.uk Fri Sep 17 14:49:00 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 17 Sep 2010 15:49:00 +0100 Subject: joysticks In-Reply-To: <4c937742.a577e70a.0ede.7804SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks for the clarification. The ambiguity isn't really helped by manufacturers of 'arcade style' joystick parts (c.f. http://www.ultimarc.com/ultrastik_info.html) who promise analogue style sticks "for today's games", but yes, I do require one that provides a biaxial vector rather than merely a direction. As such, a 'flight simulator X6000 mega supersonic pro XP' or whatever would be a better choice than a C64 joystick, but the latter just seems more appropriate for any self-respecting lab! Sadly, my technical abilities are rather limited when it comes to actually fiddling with screwdrivers and components (my new IKEA desk at home was quite the failure), but I'll have a chat with the lab technician. As for C=64: it's brilliant, I also did my first programming on those machines (though badly, of course, I'm no Mozart!), although I was 8 or 10 or so. These days, with consoles and whatnot, I doubt kids will learn programming as being closely related to games... Oh, and speaking of Donkey Kong, I believe it was 'Super Mario's ('Jumper', in Donkey Kong, if I'm not mistaken) 25th birthday this week... Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 17 September 2010 15:09 To: e-prime at googlegroups.com Subject: RE: joysticks Mich, OK, I will jump in here if only to clarify the discussion a little for myself. By "joystick" do you mean a pointing device that indicates both direction & distance (i.e., how *far* one moves the stick), or a pointing device the indicates only direction (e.g., only whether the stick moves up, down, left, or right)? As you know, modern gaming-style joysticks are of the first variety, whereas older arcade-style joysticks are of the latter. I find that users confuse these two all the time -- the last time someone asked me about a joystick here, after a lot of questioning I figured out that they needed only an old-fashioned 4- or 8-way joystick (based on simple microswitches), which we could read very simply through any digital I/O port (e.g., lpt). So I bought one on eBay and rigged it up, it was very solid and worked great. (BTW, love your story about the Commodore 64, I still have mine and, at the request of my 12-year old nephew who has an interest in old computer games, bought a Donkey Kong game on eBay and ran it for him on the C=64. Did a lot of lab programming on that machine through the early 1990s, wrote my first assembly code hardware interrupt service routine on it. Those were the days.) -- dkm At 9/17/2010 09:48 AM Friday, you wrote: >Hi, >Thanks for your input! I used the XBOX360 >controller before (for one, because it can >easily connect to a pc via USB, but more >importantly, because there are some very >convenient SDKs provided by Microsoft for it), >but its sticks aren't all that brilliant - >they're quite small and not very smooth in the >operation. Also, I looked at the entire range of >sidewinder stuff, but compared to someone who >last used a joystick to do Winter Games on the >Commodore 64 (ahhh, does that bring back >memories to anyone? Langlaufen, running, >whatnot, all by moving the joystick as fast as >possible left and right, thus ruining your wrist >for life... beautiful), simple isn't exactly the >way I'd describe it. Closest possible I got was >coming up with 'arcade style' controllers (my >C64 joystick is, apparently, a 'lollypop' style >one... is it me or are game-controllers >seriously off in their naming conventions?). I >hope I can get our technician to work something >out using such parts, rather than getting a >cognitive 'fmri-compatible' 'precision timing' >unit at the price of a small island in Fiji... > >Cheers, >Mich > >Michiel Spap? >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology >www.cognitology.eu > > >-----Original Message----- >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of Matt >Sent: 16 September 2010 21:12 >To: E-Prime >Subject: Re: joysticks > >I know people have used joysticks/gamepads from Microsoft and Logitech >successfully with E-Prime. Some of the Microsoft joysticks are pretty >simple and only have a couple of buttons. Logitech makes some >gamepads with a similar layout to Playstation 3 or XBox, which might >be more familiar for some subjects. I believe these are all USB- >driven and should be really easy to set up. -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 katie.umberson at gmail.com Wed Sep 22 15:41:59 2010 From: katie.umberson at gmail.com (Katie U) Date: Wed, 22 Sep 2010 08:41:59 -0700 Subject: video files Message-ID: Hi all, I'm trying to load a film clip into E-Prime and for some reason it won't load the movie file. I've tried multiple formats (both mpg and avi) to no avail. Other film clips load fine into the same experiment file, but they're much smaller. Does E-Prime have a limit on the size of the movie file and that's why it won't load? Thanks in advance! -- 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 Wed Sep 22 16:07:42 2010 From: d.vinson at ucl.ac.uk (David Vinson) Date: Wed, 22 Sep 2010 17:07:42 +0100 Subject: video files In-Reply-To: <08defcb2-998b-4fcb-aee4-dd117c4356a5@c16g2000vbp.googlegroups.com> Message-ID: Hi Katie, It's hard to guess what your problem might be without knowing a little more (eg video file size, etc). In my experience trying to get videos of various types to work in E-Prime, most video problems tend to be codec problems rather than anything else. You can also do a simple experiment to test whether size matters - create a video that includes only a few frames of your large/problematic video, and see whether E-Prime likes it. If it still doesn't work, this should rule out size as a source of your problem. If it's a codec problem, here's a very quick summary of what PST Support suggested to me with a similar problem: download VirtualDub (stable 32-bit version), compress using ffdshow video codec, encoder type MJPEG, save as AVI. The very latest build of E-Studio (2.0.8.79) has added a Codec Config tool, which allows you to render these newly compressed video files before using them in an experiment. Seems handy in solving such problems although I haven't worked with this in detail yet. Your problem could also be something completely different - is the problem movie file in the experiment directory? (or does it have the path correctly designated). good luck, David V On 22/09/2010 16:41, Katie U wrote: > I'm trying to load a film clip into E-Prime and for some reason it > won't load the movie file. I've tried multiple formats (both mpg and > avi) to no avail. Other film clips load fine into the same experiment > file, but they're much smaller. Does E-Prime have a limit on the size > of the movie file and that's why it won't load? Thanks in advance! > -- 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 dmccoy at temple.edu Wed Sep 22 16:46:40 2010 From: dmccoy at temple.edu (David McCoy) Date: Wed, 22 Sep 2010 12:46:40 -0400 Subject: video files In-Reply-To: <4C9A29CE.2000704@ucl.ac.uk> Message-ID: www.tbi-impact.org/cde/mod_templates/12_F_08_TMT.pdf On Wed, Sep 22, 2010 at 12:07 PM, David Vinson wrote: > Hi Katie, > > It's hard to guess what your problem might be without knowing a little more > (eg video file size, etc). In my experience trying to get videos of various > types to work in E-Prime, most video problems tend to be codec problems > rather than anything else. > > You can also do a simple experiment to test whether size matters - create a > video that includes only a few frames of your large/problematic video, and > see whether E-Prime likes it. If it still doesn't work, this should rule > out size as a source of your problem. > > If it's a codec problem, here's a very quick summary of what PST Support > suggested to me with a similar problem: download VirtualDub (stable 32-bit > version), compress using ffdshow video codec, encoder type MJPEG, save as > AVI. > The very latest build of E-Studio (2.0.8.79) has added a Codec Config tool, > which allows you to render these newly compressed video files before using > them in an experiment. Seems handy in solving such problems although I > haven't worked with this in detail yet. > > > Your problem could also be something completely different - is the problem > movie file in the experiment directory? (or does it have the path correctly > designated). > > good luck, > David V > > > On 22/09/2010 16:41, Katie U wrote: > >> I'm trying to load a film clip into E-Prime and for some reason it >> won't load the movie file. I've tried multiple formats (both mpg and >> avi) to no avail. Other film clips load fine into the same experiment >> file, but they're much smaller. Does E-Prime have a limit on the size >> of the movie file and that's why it won't load? Thanks in advance! >> >> > > -- > 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. > > -- David B. McCoy Research Specialist - Olson Lab Department of Psychology Temple University - College of Liberal Arts dmccoy at temple.edu 215-204-1708 Center for Cognitive Neuroscience Department of Psychology University of Pennsylvania dmccoy at psych.upenn.edu -- 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 katie.umberson at gmail.com Wed Sep 22 18:13:18 2010 From: katie.umberson at gmail.com (Katie U) Date: Wed, 22 Sep 2010 11:13:18 -0700 Subject: video files In-Reply-To: <4C9A29CE.2000704@ucl.ac.uk> Message-ID: Hi David, Thanks for the suggestion! I think it is a codec problem because the size of the file isn't an issue and the file path is also correct. I'm trying VirtualDub, but I keep getting this error when I try to upload the video file: "VirtualDub requires a Video for Windows (VFW) compatible codec to decompress video. DirectShow codecs, such as those used by Windows Media Player, are not suitable". I've tried this on multiple computers with different types of files (avi, mpeg, mpeg4, etc.)- is it just that they all do not have the right codecs to play the file? Do I need to download some type of converter to use VirtualDub? Thanks again for your help! -Katie On Sep 22, 12:07?pm, David Vinson wrote: > Hi Katie, > > It's hard to guess what your problem might be without knowing a little > more (eg video file size, etc). ?In my experience trying to get videos > of various types to work in E-Prime, most video problems tend to be > codec problems rather than anything else. > > You can also do a simple experiment to test whether size matters - > create a video that includes only a few frames of your large/problematic > video, and see whether E-Prime likes it. ?If it still doesn't work, this > should rule out size as a source of your problem. > > If it's a codec problem, here's a very quick summary of what PST Support > suggested to me with a similar problem: download VirtualDub (stable > 32-bit version), compress using ffdshow video codec, encoder type MJPEG, > save as AVI. > The very latest build of E-Studio (2.0.8.79) has added a Codec Config > tool, which allows you to render these newly compressed video files > before using them in an experiment. Seems handy in solving such problems > although I haven't worked with this in detail yet. > > Your problem could also be something completely different - is the > problem movie file in the experiment directory? (or does it have the > path correctly designated). > > good luck, > David V > > On 22/09/2010 16:41, Katie U wrote: > > > I'm trying to load a film clip into E-Prime and for some reason it > > won't load the movie file. I've tried multiple formats (both mpg and > > avi) to no avail. Other film clips load fine into the same experiment > > file, but they're much smaller. Does E-Prime have a limit on the size > > of the movie file and that's why it won't load? Thanks in advance! > > -- > 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 psychophysics.lab at gmail.com Wed Sep 22 20:25:55 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 13:25:55 -0700 Subject: Cumulative RT for Two Events Message-ID: Hi All, As my subject indicates, I'm interested in obtaining the RT for two successive events individually and cumulatively. The latter will be used for feedback but have accuracy ONLY for the first event. Now, from what I can tell, the experiment 'NestingXRT' provides an example of how this can be accomplished. In the second event, 'time audit only' is selected in the duration/ input window data logging and 'cumulative' is selected in the data audit window. From what I can tell, this would seem to mean that this event retains information from the previous two ('stimulus 1' and 'stimulus 2'), however, I'm more concerned about where the accumulation process starts and how this is specified. In short, 1) I want to record each event individually; 2) I want to have a way to obtain the cumulative RT for events 1 and 2 (but not fixation or anything else that precedes the stims); 3) Present RT feedback based on cumulative RT (but accuracy only for the first event). Any help would be of great assistance! Cheers, Jordan -- 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 psychophysics.lab at gmail.com Wed Sep 22 21:00:37 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 14:00:37 -0700 Subject: Cumulative RT for Two Events In-Reply-To: Message-ID: I'll just post on my own thread: So it seems that each event that is given a cumulative value is placed in the RT recording sequence and RT feedback is provided for the final event. I'm still interested in whether I can use the acc from the first event in the feedback sequence? On Sep 22, 4:25?pm, Jordan Schoenherr wrote: > Hi All, > > As my subject indicates, I'm interested in obtaining the RT for two > successive events individually and cumulatively. The latter will be > used for feedback but have accuracy ONLY for the first event. Now, > from what I can tell, the experiment 'NestingXRT' provides an example > of how this can be accomplished. > > In the second event, 'time audit only' is selected in the duration/ > input window data logging and 'cumulative' is selected in the data > audit window. From what I can tell, this would seem to mean that this > event retains information from the previous two ('stimulus 1' and > 'stimulus 2'), however, I'm more concerned about where the > accumulation process starts and how this is specified. > > In short, > > 1) I want to record each event individually; > 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > (but not fixation or anything else that precedes the stims); > 3) Present RT feedback based on cumulative RT (but accuracy only for > the first event). > > Any help would be of great assistance! > > Cheers, > > Jordan -- 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 psychophysics.lab at gmail.com Wed Sep 22 21:07:34 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 14:07:34 -0700 Subject: Cumulative RT for Two Events In-Reply-To: <20b4f949-6a76-43dd-9f01-2f9e8c994822@c21g2000vba.googlegroups.com> Message-ID: And now for my final realization: if I turn off the logging function for the second event, that should do the trick. On Sep 22, 5:00?pm, Jordan Schoenherr wrote: > I'll just post on my own thread: > > So it seems that each event that is given a cumulative value is placed > in the RT recording sequence and RT feedback is provided for the final > event. I'm still interested in whether I can use the acc from the > first event in the feedback sequence? > > On Sep 22, 4:25?pm, Jordan Schoenherr > wrote: > > > > > Hi All, > > > As my subject indicates, I'm interested in obtaining the RT for two > > successive events individually and cumulatively. The latter will be > > used for feedback but have accuracy ONLY for the first event. Now, > > from what I can tell, the experiment 'NestingXRT' provides an example > > of how this can be accomplished. > > > In the second event, 'time audit only' is selected in the duration/ > > input window data logging and 'cumulative' is selected in the data > > audit window. From what I can tell, this would seem to mean that this > > event retains information from the previous two ('stimulus 1' and > > 'stimulus 2'), however, I'm more concerned about where the > > accumulation process starts and how this is specified. > > > In short, > > > 1) I want to record each event individually; > > 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > > (but not fixation or anything else that precedes the stims); > > 3) Present RT feedback based on cumulative RT (but accuracy only for > > the first event). > > > Any help would be of great assistance! > > > Cheers, > > > Jordan -- 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 Wed Sep 22 21:27:46 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 22 Sep 2010 17:27:46 -0400 Subject: Cumulative RT for Two Events In-Reply-To: <7886359f-d112-4ec0-8371-fdc3ae4560cd@k11g2000vbf.googlegroups.com> Message-ID: Jordan, Just making sure... Please be advised that "Cumulative" timing mode does *not* in any way, shape, or form produce a "cumulative RT", whatever that means. Cumulative timing mode only affects how E-Prime schedules the onset time of the next object. For details, study Chapter 3 of the User's Guide that came with EP; you might also look at my earlier post, "Mastering E-Prime: Meaning of all time audit measures" at http://groups.google.com/group/e-prime/browse_thread/thread/39e899d3457d4917 . -- David McFarlane, Professional Faultfinder Jordan Schoenherr wrote: > And now for my final realization: if I turn off the logging function > for the second event, that should do the trick. > > On Sep 22, 5:00 pm, Jordan Schoenherr > wrote: >> I'll just post on my own thread: >> >> So it seems that each event that is given a cumulative value is placed >> in the RT recording sequence and RT feedback is provided for the final >> event. I'm still interested in whether I can use the acc from the >> first event in the feedback sequence? >> >> On Sep 22, 4:25 pm, Jordan Schoenherr >> wrote: >> >> >> >>> Hi All, >>> As my subject indicates, I'm interested in obtaining the RT for two >>> successive events individually and cumulatively. The latter will be >>> used for feedback but have accuracy ONLY for the first event. Now, >>> from what I can tell, the experiment 'NestingXRT' provides an example >>> of how this can be accomplished. >>> In the second event, 'time audit only' is selected in the duration/ >>> input window data logging and 'cumulative' is selected in the data >>> audit window. From what I can tell, this would seem to mean that this >>> event retains information from the previous two ('stimulus 1' and >>> 'stimulus 2'), however, I'm more concerned about where the >>> accumulation process starts and how this is specified. >>> In short, >>> 1) I want to record each event individually; >>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 >>> (but not fixation or anything else that precedes the stims); >>> 3) Present RT feedback based on cumulative RT (but accuracy only for >>> the first event). >>> Any help would be of great assistance! >>> Cheers, >>> Jordan -- 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 mpaffel at gmail.com Wed Sep 22 21:34:48 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Wed, 22 Sep 2010 14:34:48 -0700 Subject: If...Or...Then Message-ID: Hello I have Multiple slideslates that I'm tring to change based on the script below, however the script isn't performing as I'd like it to. The message from the output window after debugging states: 3Lose3 False 2Lose3 False 1Lose3 False This tells me that it's collecting the responses correctly and setting a slide state but it looks as though the program is going through the arguments and declaring them all false, which is not the case. Is there something I need to include as the arguments make use of the "OR" statement or is something else such as my overzealous use of the If...Then statement? Note: I've added indents here to make it easier to look at. If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose3" End If -- 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 mpaffel at gmail.com Wed Sep 22 21:37:23 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Wed, 22 Sep 2010 14:37:23 -0700 Subject: If...Or...Then In-Reply-To: <4e6b58e4-31d8-4fbc-a7c9-efcfa2eb961b@a30g2000vbt.googlegroups.com> Message-ID: sorry about the lack of "_", apparently hitting the spacebar to make indents automatically posts messages On Sep 22, 4:34?pm, Matt Paffel wrote: > Hello > > I have Multiple slideslates that I'm tring to change based on the > script below, however the script isn't performing as I'd like it to. > > The message from the output window after debugging states: > > 3Lose3 > False > 2Lose3 > False > 1Lose3 > False > > This tells me that it's collecting the responses correctly and setting > a slide state but it looks as though the program is going through the > arguments and declaring them all false, which is not the case. Is > there something I need to include as the arguments make use of the > "OR" statement or is something else such as my overzealous use of the > If...Then statement? > > Note: I've added indents here to make it easier to look at. > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > ?OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > Then > ?Set Slide1.ActiveState = "Default1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > ?Set Slide1.ActiveState = "Default2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > ?Set Slide1.ActiveState = "Default3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > ?Set Slide1.ActiveState = "Victory1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > ?Set Slide1.ActiveState = "Victory2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > ?Set Slide1.ActiveState = "Victory3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > ?Set Slide1.ActiveState = "Lose1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > ?Set Slide1.ActiveState = "Lose2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > ?Set Slide1.ActiveState = "Lose3" > End If -- 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 psychophysics.lab at gmail.com Thu Sep 23 01:20:20 2010 From: psychophysics.lab at gmail.com (Jordan Schoenherr) Date: Wed, 22 Sep 2010 18:20:20 -0700 Subject: Cumulative RT for Two Events In-Reply-To: <4C9A74D2.8050605@msu.edu> Message-ID: Hi David, I'll definitely check this out. Concerning my meaning, I have two successive events and I want to sum the RT for event 1 and event 2 to create a cumulative RT. On Sep 22, 5:27?pm, David McFarlane wrote: > Jordan, > > Just making sure... ?Please be advised that "Cumulative" timing mode > does *not* in any way, shape, or form produce a "cumulative RT", > whatever that means. ?Cumulative timing mode only affects how E-Prime > schedules the onset time of the next object. ?For details, study Chapter > 3 of the User's Guide that came with EP; you might also look at my > earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... > . > > -- David McFarlane, Professional Faultfinder > > > > Jordan Schoenherr wrote: > > And now for my final realization: if I turn off the logging function > > for the second event, that should do the trick. > > > On Sep 22, 5:00 pm, Jordan Schoenherr > > wrote: > >> I'll just post on my own thread: > > >> So it seems that each event that is given a cumulative value is placed > >> in the RT recording sequence and RT feedback is provided for the final > >> event. I'm still interested in whether I can use the acc from the > >> first event in the feedback sequence? > > >> On Sep 22, 4:25 pm, Jordan Schoenherr > >> wrote: > > >>> Hi All, > >>> As my subject indicates, I'm interested in obtaining the RT for two > >>> successive events individually and cumulatively. The latter will be > >>> used for feedback but have accuracy ONLY for the first event. Now, > >>> from what I can tell, the experiment 'NestingXRT' provides an example > >>> of how this can be accomplished. > >>> In the second event, 'time audit only' is selected in the duration/ > >>> input window data logging and 'cumulative' is selected in the data > >>> audit window. From what I can tell, this would seem to mean that this > >>> event retains information from the previous two ('stimulus 1' and > >>> 'stimulus 2'), however, I'm more concerned about where the > >>> accumulation process starts and how this is specified. > >>> In short, > >>> 1) I want to record each event individually; > >>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > >>> (but not fixation or anything else that precedes the stims); > >>> 3) Present RT feedback based on cumulative RT (but accuracy only for > >>> the first event). > >>> Any help would be of great assistance! > >>> Cheers, > >>> Jordan -- 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 Michiel.Spape at nottingham.ac.uk Thu Sep 23 09:00:55 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 23 Sep 2010 10:00:55 +0100 Subject: Cumulative RT for Two Events In-Reply-To: <32cdb428-6054-44ec-9785-0bbb9a7165ae@z25g2000vbn.googlegroups.com> Message-ID: Hi, Personally, I find feedback displays, which I expect you'll be using, a huge bother. They never exactly display what I want them to display, their default properties and colours are always off, and they stop the experiment from running as soon as their input object is missing. Instead, if you have two TextDisplays acting as stimulus displays, say Stim1 and Stim2, and both are responded to, what's the problem with: 1. Adding yet another textdisplay after Stim2, let's call it myFeedback. Don't add any text to it. 2. Adding an inline between Stim2 and myFeedback: myFeedback.Text = "Your cumulative reaction time was: " & cstr(Stim1.RT + Stim2.RT) ? There's an example somewhere in the e-primer (though it might be an exercise?) on giving feedback based on the amount of correct responses within a block - http://www.cognitology.eu/pubs/AnE-Primer2009.pdf Shouldn't be too difficult to change that into giving feedback based on the cumulative RT. Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Jordan Schoenherr Sent: 23 September 2010 02:20 To: E-Prime Subject: Re: Cumulative RT for Two Events Hi David, I'll definitely check this out. Concerning my meaning, I have two successive events and I want to sum the RT for event 1 and event 2 to create a cumulative RT. On Sep 22, 5:27?pm, David McFarlane wrote: > Jordan, > > Just making sure... ?Please be advised that "Cumulative" timing mode > does *not* in any way, shape, or form produce a "cumulative RT", > whatever that means. ?Cumulative timing mode only affects how E-Prime > schedules the onset time of the next object. ?For details, study Chapter > 3 of the User's Guide that came with EP; you might also look at my > earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... > . > > -- David McFarlane, Professional Faultfinder > > > > Jordan Schoenherr wrote: > > And now for my final realization: if I turn off the logging function > > for the second event, that should do the trick. > > > On Sep 22, 5:00 pm, Jordan Schoenherr > > wrote: > >> I'll just post on my own thread: > > >> So it seems that each event that is given a cumulative value is placed > >> in the RT recording sequence and RT feedback is provided for the final > >> event. I'm still interested in whether I can use the acc from the > >> first event in the feedback sequence? > > >> On Sep 22, 4:25 pm, Jordan Schoenherr > >> wrote: > > >>> Hi All, > >>> As my subject indicates, I'm interested in obtaining the RT for two > >>> successive events individually and cumulatively. The latter will be > >>> used for feedback but have accuracy ONLY for the first event. Now, > >>> from what I can tell, the experiment 'NestingXRT' provides an example > >>> of how this can be accomplished. > >>> In the second event, 'time audit only' is selected in the duration/ > >>> input window data logging and 'cumulative' is selected in the data > >>> audit window. From what I can tell, this would seem to mean that this > >>> event retains information from the previous two ('stimulus 1' and > >>> 'stimulus 2'), however, I'm more concerned about where the > >>> accumulation process starts and how this is specified. > >>> In short, > >>> 1) I want to record each event individually; > >>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 > >>> (but not fixation or anything else that precedes the stims); > >>> 3) Present RT feedback based on cumulative RT (but accuracy only for > >>> the first event). > >>> Any help would be of great assistance! > >>> Cheers, > >>> Jordan -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Michiel.Spape at nottingham.ac.uk Thu Sep 23 09:17:31 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 23 Sep 2010 10:17:31 +0100 Subject: If...Or...Then In-Reply-To: <4e6b58e4-31d8-4fbc-a7c9-efcfa2eb961b@a30g2000vbt.googlegroups.com> Message-ID: Hi, It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? 3. how about: ---- If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 End if .... 4. Do stuff with else and cases. Also, you might wish to nest bits. 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). Cheers, Mich If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose3" End If Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel Sent: 22 September 2010 22:35 To: E-Prime Subject: If...Or...Then Hello I have Multiple slideslates that I'm tring to change based on the script below, however the script isn't performing as I'd like it to. The message from the output window after debugging states: 3Lose3 False 2Lose3 False 1Lose3 False This tells me that it's collecting the responses correctly and setting a slide state but it looks as though the program is going through the arguments and declaring them all false, which is not the case. Is there something I need to include as the arguments make use of the "OR" statement or is something else such as my overzealous use of the If...Then statement? Note: I've added indents here to make it easier to look at. If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then Set Slide1.ActiveState = "Default3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then Set Slide1.ActiveState = "Victory3" End If If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose1" End If If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose2" End If If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then Set Slide1.ActiveState = "Lose3" End If -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Sep 23 13:06:01 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 09:06:01 -0400 Subject: Cumulative RT for Two Events In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD7FF8@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Mich, May I suggest a variant on this? First, let's call myFeedback "FeedbackText", just for the sake of clarity. Then, in FeedbackText, put Your cumulative reaction time was: [RTcum] Then in the inline between Stim2 and FeedbackText, do c.SetAttrib "RTcum", Stim1.RT + Stim2.RT In general I prefer not to manipulate the .Text property directly because then there is no clue in the object itself that its text will change at run time, which could lead to some programming confusion. Oh yes, I could put "This text will change at run time" right into FeedbackText, but using text plus an attribute reference seems much clearer to me. Finally, this also leaves RTcum in the log, which in this case you would want anyway. Regards, -- David McFarlane, Professional Faultfinder Michiel Spape wrote: > Hi, > Personally, I find feedback displays, which I expect you'll be using, a huge bother. They never exactly display what I want them to display, their default properties and colours are always off, and they stop the experiment from running as soon as their input object is missing. > > Instead, if you have two TextDisplays acting as stimulus displays, say Stim1 and Stim2, and both are responded to, what's the problem with: > 1. Adding yet another textdisplay after Stim2, let's call it myFeedback. Don't add any text to it. > 2. Adding an inline between Stim2 and myFeedback: myFeedback.Text = "Your cumulative reaction time was: " & cstr(Stim1.RT + Stim2.RT) > ? > > There's an example somewhere in the e-primer (though it might be an exercise?) on giving feedback based on the amount of correct responses within a block - http://www.cognitology.eu/pubs/AnE-Primer2009.pdf > Shouldn't be too difficult to change that into giving feedback based on the cumulative RT. > > Cheers, > Mich > > Michiel Spap? > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > www.cognitology.eu > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Jordan Schoenherr > Sent: 23 September 2010 02:20 > To: E-Prime > Subject: Re: Cumulative RT for Two Events > > Hi David, > > I'll definitely check this out. Concerning my meaning, I have two > successive events and I want to sum the RT for event 1 and event 2 to > create a cumulative RT. > > On Sep 22, 5:27 pm, David McFarlane wrote: >> Jordan, >> >> Just making sure... Please be advised that "Cumulative" timing mode >> does *not* in any way, shape, or form produce a "cumulative RT", >> whatever that means. Cumulative timing mode only affects how E-Prime >> schedules the onset time of the next object. For details, study Chapter >> 3 of the User's Guide that came with EP; you might also look at my >> earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... >> . >> >> -- David McFarlane, Professional Faultfinder >> >> >> >> Jordan Schoenherr wrote: >>> And now for my final realization: if I turn off the logging function >>> for the second event, that should do the trick. >>> On Sep 22, 5:00 pm, Jordan Schoenherr >>> wrote: >>>> I'll just post on my own thread: >>>> So it seems that each event that is given a cumulative value is placed >>>> in the RT recording sequence and RT feedback is provided for the final >>>> event. I'm still interested in whether I can use the acc from the >>>> first event in the feedback sequence? >>>> On Sep 22, 4:25 pm, Jordan Schoenherr >>>> wrote: >>>>> Hi All, >>>>> As my subject indicates, I'm interested in obtaining the RT for two >>>>> successive events individually and cumulatively. The latter will be >>>>> used for feedback but have accuracy ONLY for the first event. Now, >>>>> from what I can tell, the experiment 'NestingXRT' provides an example >>>>> of how this can be accomplished. >>>>> In the second event, 'time audit only' is selected in the duration/ >>>>> input window data logging and 'cumulative' is selected in the data >>>>> audit window. From what I can tell, this would seem to mean that this >>>>> event retains information from the previous two ('stimulus 1' and >>>>> 'stimulus 2'), however, I'm more concerned about where the >>>>> accumulation process starts and how this is specified. >>>>> In short, >>>>> 1) I want to record each event individually; >>>>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 >>>>> (but not fixation or anything else that precedes the stims); >>>>> 3) Present RT feedback based on cumulative RT (but accuracy only for >>>>> the first event). >>>>> Any help would be of great assistance! >>>>> Cheers, >>>>> Jordan -- 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 Sep 23 13:23:44 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 09:23:44 -0400 Subject: Cumulative RT for Two Events In-Reply-To: <32cdb428-6054-44ec-9785-0bbb9a7165ae@z25g2000vbn.googlegroups.com> Message-ID: Jordan, OK, just for the sake of the record, let's see if I understand your design. Here is the timeline I imagine: - Stim1 is presented to subject - subject responds, producing Stim1.RT - some time intervenes, whether we want it to or not - Stim2 is presented to subject - subject responds, producing Stim2.RT And you call the sum Stim1.RT + Stim2.RT the "cumulative" RT. Well... I would *not* by any means call that a "cumulative" RT, that seems to me to fight against the ordinary sense of the term "cumulative". To me, "cumulative" refers to a sum with no intervening gaps, which you do not have here. For instance, if I set my trip odometer to 0 and drove errands to the grocery store, the hardware store, and the filling station, I might say that I drove 0.5 miles to the grocery, 1.5 miles to the hardware, 0.5 miles to the filling station, and 1 mile to home, for a cumulative distance of 3.5 miles. But I would *not* say that the cumulative distance for the grocery and filling station segments was 1 mile, that would just be a weird use of the term "cumulative". I might instead say that the *sum* distance for the grocery and filling station segments was 1 mile. So what you mean instead is a mere sum of RTs, not a "cumulative" RT, so why not just say that? Words are important my friend. And once again, if you are to proceed in this line of work then you must, MUST, thoroughly study Chapter 3 of the User's Guide. I cannot stress that enough. -- David McFarlane, Professional Faultfinder Jordan Schoenherr wrote: > Hi David, > > I'll definitely check this out. Concerning my meaning, I have two > successive events and I want to sum the RT for event 1 and event 2 to > create a cumulative RT. > > On Sep 22, 5:27 pm, David McFarlane wrote: >> Jordan, >> >> Just making sure... Please be advised that "Cumulative" timing mode >> does *not* in any way, shape, or form produce a "cumulative RT", >> whatever that means. Cumulative timing mode only affects how E-Prime >> schedules the onset time of the next object. For details, study Chapter >> 3 of the User's Guide that came with EP; you might also look at my >> earlier post, "Mastering E-Prime: Meaning of all time audit measures" athttp://groups.google.com/group/e-prime/browse_thread/thread/39e899d34... >> . >> >> -- David McFarlane, Professional Faultfinder >> >> >> >> Jordan Schoenherr wrote: >>> And now for my final realization: if I turn off the logging function >>> for the second event, that should do the trick. >>> On Sep 22, 5:00 pm, Jordan Schoenherr >>> wrote: >>>> I'll just post on my own thread: >>>> So it seems that each event that is given a cumulative value is placed >>>> in the RT recording sequence and RT feedback is provided for the final >>>> event. I'm still interested in whether I can use the acc from the >>>> first event in the feedback sequence? >>>> On Sep 22, 4:25 pm, Jordan Schoenherr >>>> wrote: >>>>> Hi All, >>>>> As my subject indicates, I'm interested in obtaining the RT for two >>>>> successive events individually and cumulatively. The latter will be >>>>> used for feedback but have accuracy ONLY for the first event. Now, >>>>> from what I can tell, the experiment 'NestingXRT' provides an example >>>>> of how this can be accomplished. >>>>> In the second event, 'time audit only' is selected in the duration/ >>>>> input window data logging and 'cumulative' is selected in the data >>>>> audit window. From what I can tell, this would seem to mean that this >>>>> event retains information from the previous two ('stimulus 1' and >>>>> 'stimulus 2'), however, I'm more concerned about where the >>>>> accumulation process starts and how this is specified. >>>>> In short, >>>>> 1) I want to record each event individually; >>>>> 2) I want to have a way to obtain the cumulative RT for events 1 and 2 >>>>> (but not fixation or anything else that precedes the stims); >>>>> 3) Present RT feedback based on cumulative RT (but accuracy only for >>>>> the first event). >>>>> Any help would be of great assistance! >>>>> Cheers, >>>>> Jordan -- 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 Sep 23 13:52:19 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 09:52:19 -0400 Subject: If...Or...Then In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD8017@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Matt, I second Mich's sentiment, and will use stronger language -- your code is a horrible mess! It is just plain ugly! People may complain that I harp too much on the virtue of making code "beautiful", but I find that making code beautiful also often makes it just work better, and many code problems result just from ugliness. So... - Your code is yet another ugly case of using multiple If...End If instead of If...ElseIf...Else...End If. I will leave this as an exercise for you. See the online E-Basic Help, and my many other complaints about this here on the Google Group. - Better yet, as Mich hinted, see if you can cast this into a Select...Case structure. - As Mich also said, use parentheses liberally. I just had a private argument with Brandon Cernicky at PST about this very issue, you prove my point that more parentheses are generally desirable. - Even better, looking at your code it looks like you actually have a cascade of several different conditions. In that case, just reorganize this into a set of nested If...Then or Select...Case. That could also eliminate the And clause, possibly more. So, something along the lines of Select LotteryChoice.RESP Case 1 If ((c.GetAttrib("FeedBack1") = "0") OR _ (c.GetAttrib("FeedBack2") = "0") OR _ (c.GetAttrib("FeedBack3") = "0")) Then _ Set Slide1.ActiveState = "Default1" .... Case 2 .... Case 3 .... Case Else MsgBox "Invalid LotteryChoice.RESP" End Select - Finally, before you even set about to code this any further, first sit down and make a complete logic table of all the combinatoric conditional possibilities and the desired result for each combination. You have a small finite set of conditions, so this should not take much trouble. I do this all the time whenever I face a similar situation, it really helps to untangle the logic and then I can code it rationally and quickly. And if you do not understand what I am talking about, then take a class that covers propositional (i.e., Boolean) logic and combinatorics, its not that hard. -- David McFarlane, Professional Faultfinder Michiel Spape wrote: > Hi, > It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: > 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > 3. how about: > ---- > If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 > End if > .... > 4. Do stuff with else and cases. Also, you might wish to nest bits. > 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). > Cheers, > Mich > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > Then > Set Slide1.ActiveState = "Default1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose3" > End If > > > Michiel Spap? > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > www.cognitology.eu > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > Sent: 22 September 2010 22:35 > To: E-Prime > Subject: If...Or...Then > > Hello > > I have Multiple slideslates that I'm tring to change based on the > script below, however the script isn't performing as I'd like it to. > > The message from the output window after debugging states: > > 3Lose3 > False > 2Lose3 > False > 1Lose3 > False > > This tells me that it's collecting the responses correctly and setting > a slide state but it looks as though the program is going through the > arguments and declaring them all false, which is not the case. Is > there something I need to include as the arguments make use of the > "OR" statement or is something else such as my overzealous use of the > If...Then statement? > > Note: I've added indents here to make it easier to look at. > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > Then > Set Slide1.ActiveState = "Default1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > Set Slide1.ActiveState = "Default3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > Set Slide1.ActiveState = "Victory3" > End If > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose1" > End If > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose2" > End If > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > Set Slide1.ActiveState = "Lose3" > End If -- 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 mpaffel at gmail.com Thu Sep 23 14:26:54 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Thu, 23 Sep 2010 07:26:54 -0700 Subject: If...Or...Then In-Reply-To: <4C9B5B93.1070307@msu.edu> Message-ID: I knew this was going to raise some 'brows when i posted it and I thank you both for the advice. i was actually going to make a table this afternoon when i got into the office just to see if i could work it out on paper first and then retry. I'll let you know how it goes and again, thank you. On Sep 23, 8:52?am, David McFarlane wrote: > Matt, > > I second Mich's sentiment, and will use stronger language -- your code > is a horrible mess! ?It is just plain ugly! ?People may complain that I > harp too much on the virtue of making code "beautiful", but I find that > making code beautiful also often makes it just work better, and many > code problems result just from ugliness. ?So... > > - Your code is yet another ugly case of using multiple If...End If > instead of If...ElseIf...Else...End If. ?I will leave this as an > exercise for you. ?See the online E-Basic Help, and my many other > complaints about this here on the Google Group. > > - Better yet, as Mich hinted, see if you can cast this into a > Select...Case structure. > > - As Mich also said, use parentheses liberally. ?I just had a private > argument with Brandon Cernicky at PST about this very issue, you prove > my point that more parentheses are generally desirable. > > - Even better, looking at your code it looks like you actually have a > cascade of several different conditions. ?In that case, just reorganize > this into a set of nested If...Then or Select...Case. ?That could also > eliminate the And clause, possibly more. ?So, something along the lines of > > Select LotteryChoice.RESP > Case 1 > ? ? ?If ((c.GetAttrib("FeedBack1") = "0") OR _ > ? ? ? ? ?(c.GetAttrib("FeedBack2") = "0") OR _ > ? ? ? ? ?(c.GetAttrib("FeedBack3") = "0")) Then _ > ? ? ? ? ?Set Slide1.ActiveState = "Default1" > ? ? ?.... > Case 2 > ? ? ?.... > Case 3 > ? ? ?.... > Case Else > ? ? ?MsgBox "Invalid LotteryChoice.RESP" > End Select > > - Finally, before you even set about to code this any further, first sit > down and make a complete logic table of all the combinatoric conditional > possibilities and the desired result for each combination. ?You have a > small finite set of conditions, so this should not take much trouble. ?I > do this all the time whenever I face a similar situation, it really > helps to untangle the logic and then I can code it rationally and > quickly. ?And if you do not understand what I am talking about, then > take a class that covers propositional (i.e., Boolean) logic and > combinatorics, its not that hard. > > -- David McFarlane, Professional Faultfinder > > Michiel Spape wrote: > > Hi, > > It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: > > 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > 3. how about: > > ---- > > If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > > ? Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > End if > > .... > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). > > Cheers, > > Mich > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > > ?OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > Then > > ?Set Slide1.ActiveState = "Default1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > ?Set Slide1.ActiveState = "Default2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > ?Set Slide1.ActiveState = "Default3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > ?Set Slide1.ActiveState = "Victory1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > ?Set Slide1.ActiveState = "Victory2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > ?Set Slide1.ActiveState = "Victory3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > ?Set Slide1.ActiveState = "Lose1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > ?Set Slide1.ActiveState = "Lose2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > ?Set Slide1.ActiveState = "Lose3" > > End If > > > Michiel Spap??? > > Research Fellow > > Perception & Action group > > University of Nottingham > > School of Psychology > >www.cognitology.eu > > > -----Original Message----- > > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > Sent: 22 September 2010 22:35 > > To: E-Prime > > Subject: If...Or...Then > > > Hello > > > I have Multiple slideslates that I'm tring to change based on the > > script below, however the script isn't performing as I'd like it to. > > > The message from the output window after debugging states: > > > 3Lose3 > > False > > 2Lose3 > > False > > 1Lose3 > > False > > > This tells me that it's collecting the responses correctly and setting > > a slide state but it looks as though the program is going through the > > arguments and declaring them all false, which is not the case. Is > > there something I need to include as the arguments make use of the > > "OR" statement or is something else such as my overzealous use of the > > If...Then statement? > > > Note: I've added indents here to make it easier to look at. > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > > ?OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > Then > > ?Set Slide1.ActiveState = "Default1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > ?Set Slide1.ActiveState = "Default2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > ?Set Slide1.ActiveState = "Default3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > ?Set Slide1.ActiveState = "Victory1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > ?Set Slide1.ActiveState = "Victory2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > ?Set Slide1.ActiveState = "Victory3" > > End If > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > ?Set Slide1.ActiveState = "Lose1" > > End If > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > ?Set Slide1.ActiveState = "Lose2" > > End If > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > ?Set Slide1.ActiveState = "Lose3" > > End If -- 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 mpaffel at gmail.com Thu Sep 23 22:10:17 2010 From: mpaffel at gmail.com (Matt Paffel) Date: Thu, 23 Sep 2010 15:10:17 -0700 Subject: If...Or...Then In-Reply-To: <7d1e0068-9d1e-4321-802e-26cc67ac28e1@k11g2000vbf.googlegroups.com> Message-ID: update: Here's something interesting. I was in the process of rewritting the script and as I was working through it I noticed that Attrib("FeedBack1"), ("FeedBack2") and ("FeedBack3") weren't always being referenced properly. I took out all the script that woudl change any of the programming and debugged using this script: Debug.Print "FeedBack1 was"&c.GetAttrib("FeedBack1") Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") Debug.Print "FeedBack3 was"&c.GetAttrib("FeedBack3") what I found was that half the cases the feedback2 was the wrong number, feedback1 was wrong only 2x, and feedback3 was never referenced incorrectly. have either of run into this? I'm currently using 2.8.79 if that makes 3 any difference. On Sep 23, 9:26?am, Matt Paffel wrote: > I knew this was going to raise some 'brows when i posted it and I > thank you both for the advice. > i was actually going to make a table this afternoon when i got into > the office just to see if i could work it out > on paper first and then retry. I'll let you know how it goes and > again, thank you. > > On Sep 23, 8:52?am, David McFarlane wrote: > > > > > Matt, > > > I second Mich's sentiment, and will use stronger language -- your code > > is a horrible mess! ?It is just plain ugly! ?People may complain that I > > harp too much on the virtue of making code "beautiful", but I find that > > making code beautiful also often makes it just work better, and many > > code problems result just from ugliness. ?So... > > > - Your code is yet another ugly case of using multiple If...End If > > instead of If...ElseIf...Else...End If. ?I will leave this as an > > exercise for you. ?See the online E-Basic Help, and my many other > > complaints about this here on the Google Group. > > > - Better yet, as Mich hinted, see if you can cast this into a > > Select...Case structure. > > > - As Mich also said, use parentheses liberally. ?I just had a private > > argument with Brandon Cernicky at PST about this very issue, you prove > > my point that more parentheses are generally desirable. > > > - Even better, looking at your code it looks like you actually have a > > cascade of several different conditions. ?In that case, just reorganize > > this into a set of nested If...Then or Select...Case. ?That could also > > eliminate the And clause, possibly more. ?So, something along the lines of > > > Select LotteryChoice.RESP > > Case 1 > > ? ? ?If ((c.GetAttrib("FeedBack1") = "0") OR _ > > ? ? ? ? ?(c.GetAttrib("FeedBack2") = "0") OR _ > > ? ? ? ? ?(c.GetAttrib("FeedBack3") = "0")) Then _ > > ? ? ? ? ?Set Slide1.ActiveState = "Default1" > > ? ? ?.... > > Case 2 > > ? ? ?.... > > Case 3 > > ? ? ?.... > > Case Else > > ? ? ?MsgBox "Invalid LotteryChoice.RESP" > > End Select > > > - Finally, before you even set about to code this any further, first sit > > down and make a complete logic table of all the combinatoric conditional > > possibilities and the desired result for each combination. ?You have a > > small finite set of conditions, so this should not take much trouble. ?I > > do this all the time whenever I face a similar situation, it really > > helps to untangle the logic and then I can code it rationally and > > quickly. ?And if you do not understand what I am talking about, then > > take a class that covers propositional (i.e., Boolean) logic and > > combinatorics, its not that hard. > > > -- David McFarlane, Professional Faultfinder > > > Michiel Spape wrote: > > > Hi, > > > It gives me headache just looking at it! I'm sure David mcF would be better at cleaning this up, but: > > > 1. try to separate multiple AND/ORs using brackets, unless you're REALLY sure about eBasic's priority: does AND go before =, does equal go before OR, does AND go before OR? I'm assuming you mean IF (LotteryChoice.RESP = "1" and (c.GetAttrib("Feedback1") = "0" or c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > > Is the same as c.GetAttrib("Feedback1") * c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > > 3. how about: > > > ---- > > > If (c.GetAttrib("FeedBack1") * c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > > > ? Set Slide1.ActiveState = "Default" & LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > > End if > > > .... > > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > > 5. The problem, if you say every IF here turns out wrong is indeed either in your ifs, so you need to clean those up, or in the premises (LotteryChoice.RESP, c.GetAttrib("Feedback")). Why don't you debug.print what the answer to the premises is? > > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > > If it so happens that these are correctly found at the level of your script, and your IF statements still all turn false, then your IF statements are false, so your IF-THENs are not working (I also make messy ones from time to time!). > > > Cheers, > > > Mich > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > > > ?OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > Then > > > ?Set Slide1.ActiveState = "Default1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > ?Set Slide1.ActiveState = "Default2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > ?Set Slide1.ActiveState = "Default3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > ?Set Slide1.ActiveState = "Victory1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > ?Set Slide1.ActiveState = "Victory2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > ?Set Slide1.ActiveState = "Victory3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > ?Set Slide1.ActiveState = "Lose1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > ?Set Slide1.ActiveState = "Lose2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > ?Set Slide1.ActiveState = "Lose3" > > > End If > > > > Michiel Spap??? > > > Research Fellow > > > Perception & Action group > > > University of Nottingham > > > School of Psychology > > >www.cognitology.eu > > > > -----Original Message----- > > > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > > Sent: 22 September 2010 22:35 > > > To: E-Prime > > > Subject: If...Or...Then > > > > Hello > > > > I have Multiple slideslates that I'm tring to change based on the > > > script below, however the script isn't performing as I'd like it to. > > > > The message from the output window after debugging states: > > > > 3Lose3 > > > False > > > 2Lose3 > > > False > > > 1Lose3 > > > False > > > > This tells me that it's collecting the responses correctly and setting > > > a slide state but it looks as though the program is going through the > > > arguments and declaring them all false, which is not the case. Is > > > there something I need to include as the arguments make use of the > > > "OR" statement or is something else such as my overzealous use of the > > > If...Then statement? > > > > Note: I've added indents here to make it easier to look at. > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > > > ?OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > Then > > > ?Set Slide1.ActiveState = "Default1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > ?Set Slide1.ActiveState = "Default2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > ?Set Slide1.ActiveState = "Default3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > ?Set Slide1.ActiveState = "Victory1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > ?Set Slide1.ActiveState = "Victory2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > ?Set Slide1.ActiveState = "Victory3" > > > End If > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > ?Set Slide1.ActiveState = "Lose1" > > > End If > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > ?Set Slide1.ActiveState = "Lose2" > > > End If > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > ?Set Slide1.ActiveState = "Lose3" > > > End If- Hide quoted text - > > - Show quoted text - -- 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 pquain at une.edu.au Thu Sep 23 22:19:49 2010 From: pquain at une.edu.au (Peter Quain) Date: Fri, 24 Sep 2010 08:19:49 +1000 Subject: If...Or...Then In-Reply-To: <742458ca-388e-4753-beb2-daab467c855a@h25g2000vba.googlegro ups.com> Message-ID: tis not eprime, tis messy code and/or list values. One example - Printing FeedBack3 value when you think it is FeedBack2: Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") At 08:10 AM 24/09/2010, you wrote: >update: Here's something interesting. I was in the process of >rewritting the script and as I was working through it >I noticed that Attrib("FeedBack1"), ("FeedBack2") and ("FeedBack3") >weren't always being referenced properly. >I took out all the script that woudl change any of the programming and >debugged using this script: > >Debug.Print "FeedBack1 was"&c.GetAttrib("FeedBack1") >Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") >Debug.Print "FeedBack3 was"&c.GetAttrib("FeedBack3") > >what I found was that half the cases the feedback2 was the wrong >number, feedback1 was wrong only 2x, and >feedback3 was never referenced incorrectly. have either of run into >this? I'm currently using 2.8.79 if that makes 3 >any difference. > >On Sep 23, 9:26 am, Matt Paffel wrote: > > I knew this was going to raise some 'brows when i posted it and I > > thank you both for the advice. > > i was actually going to make a table this afternoon when i got into > > the office just to see if i could work it out > > on paper first and then retry. I'll let you know how it goes and > > again, thank you. > > > > On Sep 23, 8:52 am, David McFarlane wrote: > > > > > > > > > Matt, > > > > > I second Mich's sentiment, and will use stronger language -- your code > > > is a horrible mess! It is just plain ugly! People may complain that I > > > harp too much on the virtue of making code "beautiful", but I find that > > > making code beautiful also often makes it just work better, and many > > > code problems result just from ugliness. So... > > > > > - Your code is yet another ugly case of using multiple If...End If > > > instead of If...ElseIf...Else...End If. I will leave this as an > > > exercise for you. See the online E-Basic Help, and my many other > > > complaints about this here on the Google Group. > > > > > - Better yet, as Mich hinted, see if you can cast this into a > > > Select...Case structure. > > > > > - As Mich also said, use parentheses liberally. I just had a private > > > argument with Brandon Cernicky at PST about this very issue, you prove > > > my point that more parentheses are generally desirable. > > > > > - Even better, looking at your code it looks like you actually have a > > > cascade of several different conditions. In that case, just reorganize > > > this into a set of nested If...Then or Select...Case. That could also > > > eliminate the And clause, possibly > more. So, something along the lines of > > > > > Select LotteryChoice.RESP > > > Case 1 > > > If ((c.GetAttrib("FeedBack1") = "0") OR _ > > > (c.GetAttrib("FeedBack2") = "0") OR _ > > > (c.GetAttrib("FeedBack3") = "0")) Then _ > > > Set Slide1.ActiveState = "Default1" > > > .... > > > Case 2 > > > .... > > > Case 3 > > > .... > > > Case Else > > > MsgBox "Invalid LotteryChoice.RESP" > > > End Select > > > > > - Finally, before you even set about to code this any further, first sit > > > down and make a complete logic table of all the combinatoric conditional > > > possibilities and the desired result for each combination. You have a > > > small finite set of conditions, so this should not take much trouble. I > > > do this all the time whenever I face a similar situation, it really > > > helps to untangle the logic and then I can code it rationally and > > > quickly. And if you do not understand what I am talking about, then > > > take a class that covers propositional (i.e., Boolean) logic and > > > combinatorics, its not that hard. > > > > > -- David McFarlane, Professional Faultfinder > > > > > Michiel Spape wrote: > > > > Hi, > > > > It gives me headache just looking at it! > I'm sure David mcF would be better at cleaning this up, but: > > > > 1. try to separate multiple AND/ORs using > brackets, unless you're REALLY sure about > eBasic's priority: does AND go before =, does > equal go before OR, does AND go before OR? I'm > assuming you mean IF (LotteryChoice.RESP = "1" > and (c.GetAttrib("Feedback1") = "0" or > c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > > > Is the same as c.GetAttrib("Feedback1") * > c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > > > 3. how about: > > > > ---- > > > > If (c.GetAttrib("FeedBack1") * > c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > > > > Set Slide1.ActiveState = "Default" & > LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > > > End if > > > > .... > > > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > > > 5. The problem, if you say every IF here > turns out wrong is indeed either in your ifs, > so you need to clean those up, or in the > premises (LotteryChoice.RESP, > c.GetAttrib("Feedback")). Why don't you > debug.print what the answer to the premises is? > > > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > > > If it so happens that these are correctly > found at the level of your script, and your IF > statements still all turn false, then your IF > statements are false, so your IF-THENs are not > working (I also make messy ones from time to time!). > > > > Cheers, > > > > Mich > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If > > > > > > Michiel Spap??? > > > > Research Fellow > > > > Perception & Action group > > > > University of Nottingham > > > > School of Psychology > > > >www.cognitology.eu > > > > > > -----Original Message----- > > > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > > > Sent: 22 September 2010 22:35 > > > > To: E-Prime > > > > Subject: If...Or...Then > > > > > > Hello > > > > > > I have Multiple slideslates that I'm tring to change based on the > > > > script below, however the script isn't performing as I'd like it to. > > > > > > The message from the output window after debugging states: > > > > > > 3Lose3 > > > > False > > > > 2Lose3 > > > > False > > > > 1Lose3 > > > > False > > > > > > This tells me that it's collecting the responses correctly and setting > > > > a slide state but it looks as though the program is going through the > > > > arguments and declaring them all false, which is not the case. Is > > > > there something I need to include as the arguments make use of the > > > > "OR" statement or is something else such as my overzealous use of the > > > > If...Then statement? > > > > > > Note: I've added indents here to make it easier to look at. > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If- Hide quoted text - > > > > - Show quoted text - > >-- >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 Sep 23 22:27:16 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 23 Sep 2010 18:27:16 -0400 Subject: If...Or...Then In-Reply-To: <742458ca-388e-4753-beb2-daab467c855a@h25g2000vba.googlegro ups.com> Message-ID: Matt, Well, it always helps to go back and check your assumptions as you have done, so kudos for that. Beyond that, your question strikes me as asking something like, "Why was there no ball in the box?" IOW, we are missing any sort of prior information about what box, what ball, and how a ball would get into the box. In this case, without seeing whatever code is reponsible for assigning the values for these Feedback attributes, there is nothing we can say about why they do not take the desired or expected values. All I can say, based on extensive experience of EP as well as a host of other programming systems, is that if EP says the value of, say, Feedback1 is "1", then that is exactly the value that *you* asked EP to give it, so the problem is not with EP but in the instructions that you gave EP. As a general rule, machines follow our instructions exactly, so the error almost always lies in our instructions or our understanding & assumptions of how the machine interprets our instructions. One more hint. I know that Mich likes to use Debug.Print, and in some cases that is just the right tool. I, however, generally prefer to use c.SetAttrib to add values to the log and then inspect the values there. -- David McFarlane, Professional Faultfinder >update: Here's something interesting. I was in the process of >rewritting the script and as I was working through it >I noticed that Attrib("FeedBack1"), ("FeedBack2") and ("FeedBack3") >weren't always being referenced properly. >I took out all the script that woudl change any of the programming and >debugged using this script: > >Debug.Print "FeedBack1 was"&c.GetAttrib("FeedBack1") >Debug.Print "FeedBack2 was"&c.GetAttrib("FeedBack3") >Debug.Print "FeedBack3 was"&c.GetAttrib("FeedBack3") > >what I found was that half the cases the feedback2 was the wrong >number, feedback1 was wrong only 2x, and >feedback3 was never referenced incorrectly. have either of run into >this? I'm currently using 2.8.79 if that makes 3 >any difference. > >On Sep 23, 9:26 am, Matt Paffel wrote: > > I knew this was going to raise some 'brows when i posted it and I > > thank you both for the advice. > > i was actually going to make a table this afternoon when i got into > > the office just to see if i could work it out > > on paper first and then retry. I'll let you know how it goes and > > again, thank you. > > > > On Sep 23, 8:52 am, David McFarlane wrote: > > > > > > > > > Matt, > > > > > I second Mich's sentiment, and will use stronger language -- your code > > > is a horrible mess! It is just plain ugly! People may complain that I > > > harp too much on the virtue of making code "beautiful", but I find that > > > making code beautiful also often makes it just work better, and many > > > code problems result just from ugliness. So... > > > > > - Your code is yet another ugly case of using multiple If...End If > > > instead of If...ElseIf...Else...End If. I will leave this as an > > > exercise for you. See the online E-Basic Help, and my many other > > > complaints about this here on the Google Group. > > > > > - Better yet, as Mich hinted, see if you can cast this into a > > > Select...Case structure. > > > > > - As Mich also said, use parentheses liberally. I just had a private > > > argument with Brandon Cernicky at PST about this very issue, you prove > > > my point that more parentheses are generally desirable. > > > > > - Even better, looking at your code it looks like you actually have a > > > cascade of several different conditions. In that case, just reorganize > > > this into a set of nested If...Then or Select...Case. That could also > > > eliminate the And clause, possibly > more. So, something along the lines of > > > > > Select LotteryChoice.RESP > > > Case 1 > > > If ((c.GetAttrib("FeedBack1") = "0") OR _ > > > (c.GetAttrib("FeedBack2") = "0") OR _ > > > (c.GetAttrib("FeedBack3") = "0")) Then _ > > > Set Slide1.ActiveState = "Default1" > > > .... > > > Case 2 > > > .... > > > Case 3 > > > .... > > > Case Else > > > MsgBox "Invalid LotteryChoice.RESP" > > > End Select > > > > > - Finally, before you even set about to code this any further, first sit > > > down and make a complete logic table of all the combinatoric conditional > > > possibilities and the desired result for each combination. You have a > > > small finite set of conditions, so this should not take much trouble. I > > > do this all the time whenever I face a similar situation, it really > > > helps to untangle the logic and then I can code it rationally and > > > quickly. And if you do not understand what I am talking about, then > > > take a class that covers propositional (i.e., Boolean) logic and > > > combinatorics, its not that hard. > > > > > -- David McFarlane, Professional Faultfinder > > > > > Michiel Spape wrote: > > > > Hi, > > > > It gives me headache just looking at it! > I'm sure David mcF would be better at cleaning this up, but: > > > > 1. try to separate multiple AND/ORs using > brackets, unless you're REALLY sure about > eBasic's priority: does AND go before =, does > equal go before OR, does AND go before OR? I'm > assuming you mean IF (LotteryChoice.RESP = "1" > and (c.GetAttrib("Feedback1") = "0" or > c.GetAttrib("Feedback2") = "0" or c.GetAttrib("Feedback3") = "0") then. > > > > 2. AND ...(c.GetAttrib("Feedback1") = "0" OR ... etc > > > > Is the same as c.GetAttrib("Feedback1") * > c.GetAttrib("Feedback2") * c.GetAttrib("Feedback3") = 0. Awesome trick, no? > > > > 3. how about: > > > > ---- > > > > If (c.GetAttrib("FeedBack1") * > c.GetAttrib("FeedBack2") * c.GetAttrib("Feedback3")) = 0 then > > > > Set Slide1.ActiveState = "Default" & > LotteryChoice.RESP ' ...assuming it can be 1 to 3 > > > > End if > > > > .... > > > > 4. Do stuff with else and cases. Also, you might wish to nest bits. > > > > 5. The problem, if you say every IF here > turns out wrong is indeed either in your ifs, > so you need to clean those up, or in the > premises (LotteryChoice.RESP, > c.GetAttrib("Feedback")). Why don't you > debug.print what the answer to the premises is? > > > > Debug.print "LotteryChoice.RESP was " & LotteryChoice.RESP > > > > Debug.print "Feedback1 was: " & c.GetAttrib("Feedback1"). > > > > If it so happens that these are correctly > found at the level of your script, and your IF > statements still all turn false, then your IF > statements are false, so your IF-THENs are not > working (I also make messy ones from time to time!). > > > > Cheers, > > > > Mich > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0" > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If > > > > > > Michiel Spap??? > > > > Research Fellow > > > > Perception & Action group > > > > University of Nottingham > > > > School of Psychology > > > >www.cognitology.eu > > > > > > -----Original Message----- > > > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of Matt Paffel > > > > Sent: 22 September 2010 22:35 > > > > To: E-Prime > > > > Subject: If...Or...Then > > > > > > Hello > > > > > > I have Multiple slideslates that I'm tring to change based on the > > > > script below, however the script isn't performing as I'd like it to. > > > > > > The message from the output window after debugging states: > > > > > > 3Lose3 > > > > False > > > > 2Lose3 > > > > False > > > > 1Lose3 > > > > False > > > > > > This tells me that it's collecting the responses correctly and setting > > > > a slide state but it looks as though the program is going through the > > > > arguments and declaring them all false, which is not the case. Is > > > > there something I need to include as the arguments make use of the > > > > "OR" statement or is something else such as my overzealous use of the > > > > If...Then statement? > > > > > > Note: I've added indents here to make it easier to look at. > > > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "0"_ > > > > OR c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" > > > > Then > > > > Set Slide1.ActiveState = "Default1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "0" OR > > > > c.GetAttrib("FeedBack2") = "0" OR c.GetAttrib("FeedBack3") = "0" Then > > > > Set Slide1.ActiveState = "Default3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "1" OR > > > > c.GetAttrib("FeedBack2") = "1" OR c.GetAttrib("FeedBack3") = "1" Then > > > > Set Slide1.ActiveState = "Victory3" > > > > End If > > > > If LotteryChoice.RESP = "1" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose1" > > > > End If > > > > If LotteryChoice.RESP = "2" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose2" > > > > End If > > > > If LotteryChoice.RESP = "3" And c.GetAttrib("FeedBack1") = "2" OR > > > > c.GetAttrib("FeedBack2") = "2" OR c.GetAttrib("FeedBack3") = "2" Then > > > > Set Slide1.ActiveState = "Lose3" > > > > End If- Hide quoted text - > > > > - Show quoted text - > >-- >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 tudor3 at gmail.com Fri Sep 24 08:01:49 2010 From: tudor3 at gmail.com (tudor) Date: Fri, 24 Sep 2010 01:01:49 -0700 Subject: Running E-Prime experiments online Message-ID: Hello everyone, I have an E-Prime script for an experiment that measures subjects' reaction times to a simple number comparison task. The design of the experiment is such that the subjects need to run the experiment daily for 3 weeks, which is why I intend to have them run it from their homes, online, rather than asking them to come each day into the lab. I thought it would be the easiest for the subjects if their daily task is to login to a website and run the script through their Internet browser. This will enable me to monitor their performance every day, which is quite important. The data files (which are small, < 1 MB) would be stored on the server. However I am concerned that, in this case, the reaction times will not be accurate, because, unless the script is somehow ran "locally", there will probably be a significant (and variable) Internet lag between their response and the moment the response is registered. On the other hand, if I choose to run the experiment "offline" by having them run a copy of the script on their computers, I will have no knowledge of their performance before the end of the 3 weeks (I would not want to ask them to submit the data files every day). Since I am very new to E-Prime, I am not sure what would be the best way to go about running this experiment. Can anyone help? Many thanks in advance! -- 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 baltimore.ben at gmail.com Fri Sep 24 12:15:36 2010 From: baltimore.ben at gmail.com (ben robinson) Date: Fri, 24 Sep 2010 08:15:36 -0400 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: why not have them run it locally and email you their data file when they've finished? On Fri, Sep 24, 2010 at 4:01 AM, tudor wrote: > Hello everyone, > > I have an E-Prime script for an experiment that measures subjects' > reaction times to a simple number comparison task. The design of the > experiment is such that the subjects need to run the experiment daily > for 3 weeks, which is why I intend to have them run it from their > homes, online, rather than asking them to come each day into the lab. > > I thought it would be the easiest for the subjects if their daily task > is to login to a website and run the script through their Internet > browser. This will enable me to monitor their performance every day, > which is quite important. The data files (which are small, < 1 MB) > would be stored on the server. > However I am concerned that, in this case, the reaction times will not > be accurate, because, unless the script is somehow ran "locally", > there will probably be a significant (and variable) Internet lag > between their response and the moment the response is registered. > On the other hand, if I choose to run the experiment "offline" by > having them run a copy of the script on their computers, I will have > no knowledge of their performance before the end of the 3 weeks (I > would not want to ask them to submit the data files every day). > > Since I am very new to E-Prime, I am not sure what would be the best > way to go about running this experiment. Can anyone help? Many thanks > in advance! > > -- > 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 Michiel.Spape at nottingham.ac.uk Fri Sep 24 12:39:50 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 24 Sep 2010 13:39:50 +0100 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: Couple of thoughts: - That would be far easier. The only thing I could think of which you might try is to have people log on to your system through remote desktop (mstsc) and see if you can run E-Prime that way. Last time I tried that (i.e. last time I tried to work on an e-prime experiment from home), this failed, however. - The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). Alternatively, and MUCH easier, is to learn a simple bit of Flash and let them run Flash experiments from your server. It's very easy to program (in comparison with trying to figure out how, if at all possible, to run E-Prime on a server!), rather easy to learn (Flash comes with a very easy tutorial that gets you doing cool things within hours), and although the timing is rather inaccurate, it's better than nothing. Cheaper, and to mind, better, is to run stuff on Silverlight and design experiments using Expression Blend. It's free for university students (google 'Microsoft Dreamspark'), can do Visual Basic (but later versions), and more properly object based than Flash. You should consider: - Running experiments from a server (rather than a local computer) brings inaccuracy due to latency problems; - Running experiments from local computers connected to a server brings inaccuracy due to the fact that you don't have a clue as to what they're running. Therefore, E-Prime won't do much better than anything other out there. If you're very new to E-Prime, I recommend learning something else instead - transition from E-Prime to proper programming is harsher than the other way around. Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of ben robinson Sent: 24 September 2010 13:16 To: e-prime at googlegroups.com Subject: Re: Running E-Prime experiments online why not have them run it locally and email you their data file when they've finished? On Fri, Sep 24, 2010 at 4:01 AM, tudor wrote: Hello everyone, I have an E-Prime script for an experiment that measures subjects' reaction times to a simple number comparison task. The design of the experiment is such that the subjects need to run the experiment daily for 3 weeks, which is why I intend to have them run it from their homes, online, rather than asking them to come each day into the lab. I thought it would be the easiest for the subjects if their daily task is to login to a website and run the script through their Internet browser. This will enable me to monitor their performance every day, which is quite important. The data files (which are small, < 1 MB) would be stored on the server. However I am concerned that, in this case, the reaction times will not be accurate, because, unless the script is somehow ran "locally", there will probably be a significant (and variable) Internet lag between their response and the moment the response is registered. On the other hand, if I choose to run the experiment "offline" by having them run a copy of the script on their computers, I will have no knowledge of their performance before the end of the 3 weeks (I would not want to ask them to submit the data files every day). Since I am very new to E-Prime, I am not sure what would be the best way to go about running this experiment. Can anyone help? Many thanks in advance! -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 Fri Sep 24 13:51:27 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 24 Sep 2010 09:51:27 -0400 Subject: Running E-Prime experiments online In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD8440@VUIEXCHC.ad.notti ngham.ac.uk> Message-ID: And more thoughts... In general, I do not think that E-Prime is set up to run over a network, certainly not with ms accuracy, and I do not expect PST to have any such plans for the future. If you do want ms accuracy for tasks run over a network, then try Inquisit by Millisecond, http://www.millisecond.com . Put briefly, with a program written in Inquisit, subjects can go to a web site, and it will install an add-on or plug-in to their local machine, which they must do only once (much like installing Flash to run Flash content from the web). Now when they launch the Inquisit program from their web browser, the program will actually run locally on their own machine, with all the power of DirectX to provide ms accuracy. Clever, eh? And then you can have the data posted directly to a network repository of your own choice, which you may then examine remotely at any time. I think this covers exactly what you asked for, and it is all covered by the terms of the Inquisit license. I generally find Inquisit an inferior product to E-Prime, but in this instance it exceeds EP. And the company that handles Inquisit is much friendlier than PST. -- David McFarlane, Professional Faultfinder >Couple of thoughts: >- That would be far easier. The only >thing I could think of which you might try is to >have people log on to your system through remote >desktop (mstsc) and see if you can run E-Prime >that way. Last time I tried that (i.e. last time >I tried to work on an e-prime experiment from home), this failed, however. >- The problem with Ben?s idea here is >that you?d require each of your subjects to have >an E-Prime license key (cost of which is about 650 Euro, last time I checked). > >Alternatively, and MUCH easier, is to learn a >simple bit of Flash and let them run Flash >experiments from your server. It?s very easy to >program (in comparison with trying to figure out >how, if at all possible, to run E-Prime on a >server!), rather easy to learn (Flash comes with >a very easy tutorial that gets you doing cool >things within hours), and although the timing is >rather inaccurate, it?s better than nothing. >Cheaper, and to mind, better, is to run stuff on >Silverlight and design experiments using >Expression Blend. It?s free for university >students (google ?Microsoft Dreamspark?), can do >Visual Basic (but later versions), and more properly object based than Flash. > >You should consider: >- Running experiments from a server >(rather than a local computer) brings inaccuracy due to latency problems; >- Running experiments from local >computers connected to a server brings >inaccuracy due to the fact that you don?t have a >clue as to what they?re running. >Therefore, E-Prime won?t do much better than >anything other out there. If you?re very new to >E-Prime, I recommend learning something else >instead ? transition from E-Prime to proper >programming is harsher than the other way around. > >Cheers, >Mich > > > >Michiel Spap? >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology >www.cognitology.eu > >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of ben robinson >Sent: 24 September 2010 13:16 >To: e-prime at googlegroups.com >Subject: Re: Running E-Prime experiments online > >why not have them run it locally and email you >their data file when they've finished? >On Fri, Sep 24, 2010 at 4:01 AM, tudor ><tudor3 at gmail.com> wrote: >Hello everyone, > >I have an E-Prime script for an experiment that measures subjects' >reaction times to a simple number comparison task. The design of the >experiment is such that the subjects need to run the experiment daily >for 3 weeks, which is why I intend to have them run it from their >homes, online, rather than asking them to come each day into the lab. > >I thought it would be the easiest for the subjects if their daily task >is to login to a website and run the script through their Internet >browser. This will enable me to monitor their performance every day, >which is quite important. The data files (which are small, < 1 MB) >would be stored on the server. >However I am concerned that, in this case, the reaction times will not >be accurate, because, unless the script is somehow ran "locally", >there will probably be a significant (and variable) Internet lag >between their response and the moment the response is registered. >On the other hand, if I choose to run the experiment "offline" by >having them run a copy of the script on their computers, I will have >no knowledge of their performance before the end of the 3 weeks (I >would not want to ask them to submit the data files every day). > >Since I am very new to E-Prime, I am not sure what would be the best >way to go about running this experiment. Can anyone help? Many thanks >in advance! -- 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 wangshusandra at gmail.com Fri Sep 24 16:48:03 2010 From: wangshusandra at gmail.com (Sandra Wang) Date: Fri, 24 Sep 2010 09:48:03 -0700 Subject: Help! A noun-pair lookup task. Message-ID: Hi, I am going to start with an experiment with a noun-pair lookup task and I am wondering if anyone could help with the programming. I am such a beginner in E-prime. Here is that task: 9 pairs of words are presented at the top of the screen and a prime pair is presented in the middle of the screen. Participants need to decide whether the prime pair matches any of the 9 pairs in the top. Also, the 9 pairs changes from trial to trial for 40 trials. Feedback on RT and accuracy will be provided after every 10 trials. I am not sure how to present the 9 pairs and make them change from trial to trial. Also, I am not sure how to make E-Prime recognize a correct response ( I know how to do it with one word presented at a time but ...). Please help! Thanks very much! Sandra -- 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 mplenhart at gmail.com Sun Sep 26 15:47:42 2010 From: mplenhart at gmail.com (Matt) Date: Sun, 26 Sep 2010 08:47:42 -0700 Subject: Running E-Prime experiments online In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF03FD8440@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: The subjects shouldn't need a full E-Prime license to run experiments locally and then e-mail back the EDAT files. The run-time only license of E-Prime should be enough to let you distribute it to whoever you need to participate, have them install it, and then run the EBS files locally. The run-time is around $100-200. On Sep 24, 8:39?am, Michiel Spape wrote: > - ? ? ? ? ?The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). -- 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 mplenhart at gmail.com Sun Sep 26 16:07:14 2010 From: mplenhart at gmail.com (Matt) Date: Sun, 26 Sep 2010 09:07:14 -0700 Subject: video files In-Reply-To: Message-ID: If you are using the latest version of EP2, definitely run the Codec Config utility on the movie files to get a better idea of what the problem is. It will highlight codecs or other issues that are preventing the movie from being rendered and allow you to make different selections. On Sep 22, 2:13?pm, Katie U wrote: > Hi David, > > Thanks for the suggestion! I think it is a codec problem because the > size of the file isn't an issue and the file path is also correct. I'm > trying VirtualDub, but I keep getting this error when I try to upload > the video file: "VirtualDub requires a Video for Windows (VFW) > compatible codec to decompress video. DirectShow codecs, such as those > used by Windows Media Player, are not suitable". > > I've tried this on multiple computers with different types of files > (avi, mpeg, mpeg4, etc.)- is it just that they all do not have the > right codecs to play the file? Do I need to download some type of > converter to use VirtualDub? Thanks again for your help! > > -Katie > > On Sep 22, 12:07?pm, David Vinson wrote: > > > > > Hi Katie, > > > It's hard to guess what your problem might be without knowing a little > > more (eg video file size, etc). ?In my experience trying to get videos > > of various types to work in E-Prime, most video problems tend to be > > codec problems rather than anything else. > > > You can also do a simple experiment to test whether size matters - > > create a video that includes only a few frames of your large/problematic > > video, and see whether E-Prime likes it. ?If it still doesn't work, this > > should rule out size as a source of your problem. > > > If it's a codec problem, here's a very quick summary of what PST Support > > suggested to me with a similar problem: download VirtualDub (stable > > 32-bit version), compress using ffdshow video codec, encoder type MJPEG, > > save as AVI. > > The very latest build of E-Studio (2.0.8.79) has added a Codec Config > > tool, which allows you to render these newly compressed video files > > before using them in an experiment. Seems handy in solving such problems > > although I haven't worked with this in detail yet. > > > Your problem could also be something completely different - is the > > problem movie file in the experiment directory? (or does it have the > > path correctly designated). > > > good luck, > > David V > > > On 22/09/2010 16:41, Katie U wrote: > > > > I'm trying to load a film clip into E-Prime and for some reason it > > > won't load the movie file. I've tried multiple formats (both mpg and > > > avi) to no avail. Other film clips load fine into the same experiment > > > file, but they're much smaller. Does E-Prime have a limit on the size > > > of the movie file and that's why it won't load? Thanks in advance! > > > -- > > 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 Michiel.Spape at nottingham.ac.uk Mon Sep 27 08:21:06 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 27 Sep 2010 09:21:06 +0100 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: Hi, Wish I lived in a country where the university would be willing to spend $100-200 per subject for an online experiment! Actually, I think it is pretty insane one has to pay 96,15 EU (looked it up) just to get such a runtime engine... Another idea, experimentally more valid (since the problem of different systems still persists whether you use the solution below, or David's, or mine (Flash/Silverlight), and perhaps more pragmatic, is to install your experiment on a decent laptop and drive around the country to get data from all your participants. Don't know what the price of petrol is these days, though! Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt Sent: 26 September 2010 16:48 To: E-Prime Subject: Re: Running E-Prime experiments online The subjects shouldn't need a full E-Prime license to run experiments locally and then e-mail back the EDAT files. The run-time only license of E-Prime should be enough to let you distribute it to whoever you need to participate, have them install it, and then run the EBS files locally. The run-time is around $100-200. On Sep 24, 8:39?am, Michiel Spape wrote: > - ? ? ? ? ?The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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 nitz.david at googlemail.com Mon Sep 27 11:02:01 2010 From: nitz.david at googlemail.com (Dave) Date: Mon, 27 Sep 2010 04:02:01 -0700 Subject: Google groups to discontinue files and pages support Message-ID: Hi all, I just got word that Google is about to discontinue some Google groups features which are relevant to this group: As of November 2010 no new files can be uploaded, no new pages can be created. As of February 2011 all existing files and pages will be removed. Source: http://groups-announcements.blogspot.com/2010/09/notice-about-pages-and-files.html?hl=en Just thought I'd let you know... -David -- 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 mplenhart at gmail.com Mon Sep 27 11:12:58 2010 From: mplenhart at gmail.com (Matt) Date: Mon, 27 Sep 2010 04:12:58 -0700 Subject: Running E-Prime experiments online In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF04052AA2@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Sorry for not being clear - what I meant is that a single run-time license might allow you to distribute to all of the participants to run the experiment. So $100-200 total for all of the participants, not $100-200 each. PST would have to give the official word on whether or not the license covers this situation. But yes, installing on a laptop and taking it to each participant is the ideal option and no run-time is needed for that. On Sep 27, 4:21?am, Michiel Spape wrote: > Hi, > Wish I lived in a country where the university would be willing to spend $100-200 per subject for an online experiment! Actually, I think it is pretty insane one has to pay 96,15 EU (looked it up) just to get such a runtime engine... > > Another idea, experimentally more valid (since the problem of different systems still persists whether you use the solution below, or David's, or mine (Flash/Silverlight), and perhaps more pragmatic, is to install your experiment on a decent laptop and drive around the country to get data from all your participants. Don't know what the price of petrol is these days, though! > > Cheers, > Mich > > Michiel Spap? > Research Fellow > Perception & Action group > University of Nottingham > School of Psychologywww.cognitology.eu-----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Matt > Sent: 26 September 2010 16:48 > To: E-Prime > Subject: Re: Running E-Prime experiments online > > The subjects shouldn't need a full E-Prime license to run experiments > locally and then e-mail back the EDAT files. ?The run-time only > license of E-Prime should be enough to let you distribute it to > whoever you need to participate, have them install it, and then run > the EBS files locally. > > The run-time is around $100-200. > > On Sep 24, 8:39?am, Michiel Spape > wrote: > > - ? ? ? ? ?The problem with Ben's idea here is that you'd require each of your subjects to have an E-Prime license key (cost of which is about 650 Euro, last time I checked). > > -- > 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. > > This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. ? Please do not use, copy or disclose the information contained in this message or in any attachment. ?Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. > > This message has been checked for viruses but the contents of an attachment > may still contain software viruses which could damage your computer system: > you are advised to perform your own checks. Email communications with the > University of Nottingham may be monitored as permitted by UK legislation. -- 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 pquain at une.edu.au Mon Sep 27 08:03:39 2010 From: pquain at une.edu.au (Peter Quain) Date: Mon, 27 Sep 2010 18:03:39 +1000 Subject: Running E-Prime experiments online In-Reply-To: Message-ID: Timing would be shot no matter what, so if timing was important, and/or DV was RT there would be problems... different machines, different times to execute the same blocks of code, or load the same stimuli. Different refresh rates ... You'd have to make sure that there was lots of slack built in (no 4ms load times, for instance) to account for different processors, RAM, HDD access time etc. etc. etc.; that refresh was changed to the same value on each host machine; that timing utility was run on each machine, and the values also sent back to home; that the paradigm included code to check .. the list might go on, perhaps At 01:47 AM 27/09/2010, you wrote: >The subjects shouldn't need a full E-Prime license to run experiments >locally and then e-mail back the EDAT files. The run-time only >license of E-Prime should be enough to let you distribute it to >whoever you need to participate, have them install it, and then run >the EBS files locally. > >The run-time is around $100-200. > > >On Sep 24, 8:39 am, Michiel Spape >wrote: > > - The problem with Ben's idea here is that you'd require > each of your subjects to have an E-Prime license key (cost of which > is about 650 Euro, last time I checked). > >-- >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 wangshusandra at gmail.com Mon Sep 27 15:19:32 2010 From: wangshusandra at gmail.com (Sandra Wang) Date: Mon, 27 Sep 2010 08:19:32 -0700 Subject: Presenting multiple stimuli in random orders Message-ID: Hi all, I went ahead with the noun-pair lookup task and made some progress so far. But I still have one problem unsolved: I want to present the same 9 pairs of words at the same time for each trial, but the orders of the 9 pairs should be randomized from trial to trial. Can E-prime do that and how? Thanks! I'd really appreciate your help! Sandra -- 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 tudor3 at gmail.com Mon Sep 27 16:52:27 2010 From: tudor3 at gmail.com (tudor) Date: Mon, 27 Sep 2010 09:52:27 -0700 Subject: Running E-Prime experiments online In-Reply-To: <201009271135.o8RBZ1NT022371@mail15.tpg.com.au> Message-ID: Many thanks for all your replies. Unfortunately, taking the laptop to each participant would not be possible (although I agree it is the ideal option), nor asking them to send data files at the end of each day. My experiment does not require a lot of accuracy in the measurement of RTs, so I think an online solution could work well. It would be good to find a solution that doesn't require writing new code but rather using the existing E-Prime code, either directly (if running on the same platform) or machine-translated into a different language (e.g. Flash). I heard that there might be a special version of Flash for running experiments online, does anyone know anything about this? -- 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 Sep 27 18:40:25 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 27 Sep 2010 14:40:25 -0400 Subject: Google groups to discontinue files and pages support In-Reply-To: <47d45e3b-a80e-4ba2-b5e2-9dd47915c58b@k10g2000yqa.googlegro ups.com> Message-ID: David, Thanks for the notice, I had no idea. And just when, with Brian MacWhinney's help, I was getting ready to post some of my demo programs on the Group, darn. But we may work out another possibility, so stay tuned. -- David McFarlane, Professional Faultfinder >I just got word that Google is about to discontinue some Google groups >features which are relevant to this group: >As of November 2010 no new files can be uploaded, no new pages can be >created. As of February 2011 all existing files and pages will be >removed. >Source: >http://groups-announcements.blogspot.com/2010/09/notice-about-pages-and-files.html?hl=en > >Just thought I'd let you know... >-David -- 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 Sep 27 18:36:51 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 27 Sep 2010 14:36:51 -0400 Subject: Presenting multiple stimuli in random orders In-Reply-To: Message-ID: Sandra, Stock reminder: 1) I do not work for PST. 2) PST's trained staff takes 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 (although current estimates are more like 10 days) -- this is pretty much their substitute for proper documentation, so make full use of it. 3) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... How about nested Lists and colon syntax? See the tutorial in Appendix C of the User's Guide that came with E-Prime, and look up colon syntax in the index. -- David McFarlane, Professional Faultfinder >I went ahead with the noun-pair lookup task and made some progress so >far. But I still have one problem unsolved: I want to present the same >9 pairs of words at the same time for each trial, but the orders of >the 9 pairs should be randomized from trial to trial. Can E-prime do >that and how? > >Thanks! I'd really appreciate your help! > >Sandra -- 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 wangshusandra at gmail.com Tue Sep 28 01:33:12 2010 From: wangshusandra at gmail.com (Sandra Wang) Date: Mon, 27 Sep 2010 18:33:12 -0700 Subject: Presenting multiple stimuli in random orders In-Reply-To: <4ca0e44b.194de70a.3563.15cfSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks for the suggestion! I will look at colon syntax and see whether it will work. I will post the reply from PST Web Support if I get any. Thanks, Sandra On Sep 27, 1:36?pm, David McFarlane wrote: > Sandra, > > Stock reminder: ?1) I do not work for PST. ?2) PST's trained staff > takes 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 (although current > estimates are more like 10 days) -- this is pretty much their > substitute for proper documentation, so make full use of it. ?3) If > you do get an answer from PST Web Support, please extend the courtesy > of posting their reply back here for the sake of others. > > That said, here is my take... > > How about nested Lists and colon syntax? ?See the tutorial in > Appendix C of the User's Guide that came with E-Prime, and look up > colon syntax in the index. > > -- David McFarlane, Professional Faultfinder > > >I went ahead with the noun-pair lookup task and made some progress so > >far. But I still have one problem unsolved: I want to present the same > >9 pairs of words at the same time for each trial, but the orders of > >the 9 pairs should be randomized from trial to trial. Can E-prime do > >that and how? > > >Thanks! I'd really appreciate your help! > > >Sandra -- 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 jemorriss at googlemail.com Tue Sep 28 13:27:30 2010 From: jemorriss at googlemail.com (Jayne Morriss) Date: Tue, 28 Sep 2010 06:27:30 -0700 Subject: Equal to or more than ? Message-ID: Hi all, I am writing script for a behavioural experiment, whereby 12 triangles are presented together. I have a problem with the triangles overlapping each other on the screen. I would like to write some script to assign each triangle to a matrix where the triangle can move randomly within those specific co ordinates. I need to be able to write in the script for the co ordinates to be more than or less than a specific value. However, E-prime is not accepting the symbol <> and is asking me to set a parameter name or parameter? See general script below without <>; (note that I only have 6 images scripted so far) dim x1,y1 as integer x1 = random (30,190) y1 = random (30,190) c.SetAttrib "posx1", x1 c.SetAttrib "posy1", y1 dim x2,y2 as integer x2 = random (30,190) y2 = random (220,380) c.SetAttrib "posx2", x2 c.SetAttrib "posy2", y2 dim x3,y3 as integer x1 = random (30,190) y1 = random (410,570) c.SetAttrib "posx3", x3 c.SetAttrib "posy3", y3 dim x4,y4 as integer x4 = random (30,190) y4 = random (600,760) c.SetAttrib "posx4", x4 c.SetAttrib "posy4", y4 dim x5,y5 as integer x5 = random (220,380) y5 = random (30,190) c.SetAttrib "posx5", x5 c.SetAttrib "posy5", y5 dim x6,y6 as integer x6 = random (220,380) y6 = random (220,380) c.SetAttrib "posx6", x6 c.SetAttrib "posy6", y6 Any help would be much appreciated Many thanks, Jayne Morriss -- 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 Sep 28 14:18:27 2010 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 28 Sep 2010 10:18:27 -0400 Subject: Equal to or more than ? In-Reply-To: Message-ID: Jayne, Hmm. Let's start with the advice that you don't want to hear and that others here are tired of hearing me say: You need to take a class in Introduction to Computer Programming. If you had done that then you would already know the answer to such a fundamental question, and your not knowing that tells me that, even if you make it over this one hurdle, you are just heading into deeper and deeper frustration the further you go unless you step back and get a proper education. Nevertheless, I will address your specific question (without even looking at your specific code): In E-Basic (i.e., Visual Basic), the token "<>" means "does not equal"; since ASCII plain text does not contain an actual "not equal to" symbol (just as the typewriters that preceeded computers had no such symbol because you could simply type "=", backspace, and then add the "/"; and yes, I do go back that far), mnemonically you should think that x cannot be simultaneously < y and > y, thus x <> y must mean x does not equal y. (By contrast, in the language C you would write x != y.) So, you cannot simply test for y1 < x < y2 in that compact symbolic form, or however you tried to do it with <> (you did not give us any example). Instead, you must expand that into two clauses joined by a logical operator, thus, If (y1 < x) and (x < y2) Then ... That's it. Now go sign up for a class where you would learn all this properly. -- David McFarlane, Professional Faultfinder >I am writing script for a behavioural experiment, whereby 12 triangles >are presented together. I have a problem with the triangles >overlapping each other on the screen. I would like to write some >script to assign each triangle to a matrix where the triangle can move >randomly within those specific co ordinates. I need to be able to >write in the script for the co ordinates to be more than or less than >a specific value. However, E-prime is not accepting the symbol <> and >is asking me to set a parameter name or parameter? > > See general script below without <>; > >(note that I only have 6 images scripted so far) > > dim x1,y1 as integer >x1 = random (30,190) >y1 = random (30,190) >c.SetAttrib "posx1", x1 >c.SetAttrib "posy1", y1 >dim x2,y2 as integer >x2 = random (30,190) >y2 = random (220,380) >c.SetAttrib "posx2", x2 >c.SetAttrib "posy2", y2 >dim x3,y3 as integer >x1 = random (30,190) >y1 = random (410,570) >c.SetAttrib "posx3", x3 >c.SetAttrib "posy3", y3 >dim x4,y4 as integer >x4 = random (30,190) >y4 = random (600,760) >c.SetAttrib "posx4", x4 >c.SetAttrib "posy4", y4 >dim x5,y5 as integer >x5 = random (220,380) >y5 = random (30,190) >c.SetAttrib "posx5", x5 >c.SetAttrib "posy5", y5 >dim x6,y6 as integer >x6 = random (220,380) >y6 = random (220,380) >c.SetAttrib "posx6", x6 >c.SetAttrib "posy6", y6 > >Any help would be much appreciated > >Many thanks, > >Jayne Morriss -- 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 Michiel.Spape at nottingham.ac.uk Tue Sep 28 16:54:20 2010 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Tue, 28 Sep 2010 17:54:20 +0100 Subject: Equal to or more than ? In-Reply-To: <4ca1f93c.a577e70a.0d89.ffff91e8SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi, I'd like to voice my agreement with the sentiments expressed below: a short introduction to computer programming is of immense help for any modern scientist. That said, I think the question was rather odd and not wholly answered: E-Prime does not accept unequal? Not to accuse you of anything, but it sounds highly likely that your (not included) syntax must be wrong, or there's something very wrong with your E-Prime installation, since it _does_ accept said operator. Make a new experiment, and add the following inline: dim i,j as integer i = "this works" j = "this doesn't" Run and... Sorry, that was actually for someone else who used the above syntax. Note that the awkward Ebasic syntax makes i a variant, and j an integer. Delete this, now add the following instead: dim i as integer i = 3 if i <> 4 then debug.print "i is unequal to 3 since i equals " & cstr(i) if i <> 2 then debug.print "i is unequal to 2 since i equals " & cstr(i) if i = 3 then debug.print "i is equal to 3." if not(i <> "3") then debug.print "i is not unequal to '3'. What?" As you see, <> works fine. Notice that each if statement is true even though it means eBasic converts "3" into 3. Normal programming languages would not swallow this so easily, but VB does (some might but blatantly say 3 <> "3", therefore false). Notice that my example ends with the difficult to comprehend "not(i <> 3)". This is exactly what I expect is wrong in your code: make it logically too difficult for yourself and you - not EPrime - will sooner or later make errors. There are some very fine Aristotelian syllogisms that can obfuscate the most obvious truth. Cheers, Mich PS: neat trick typewriter-wise, David! Perhaps you should have one of these: http://steampunkworkshop.com/images/Kb41.jpg Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 28 September 2010 15:18 To: e-prime at googlegroups.com Subject: Re: Equal to or more than ? Jayne, Hmm. Let's start with the advice that you don't want to hear and that others here are tired of hearing me say: You need to take a class in Introduction to Computer Programming. If you had done that then you would already know the answer to such a fundamental question, and your not knowing that tells me that, even if you make it over this one hurdle, you are just heading into deeper and deeper frustration the further you go unless you step back and get a proper education. Nevertheless, I will address your specific question (without even looking at your specific code): In E-Basic (i.e., Visual Basic), the token "<>" means "does not equal"; since ASCII plain text does not contain an actual "not equal to" symbol (just as the typewriters that preceeded computers had no such symbol because you could simply type "=", backspace, and then add the "/"; and yes, I do go back that far), mnemonically you should think that x cannot be simultaneously < y and > y, thus x <> y must mean x does not equal y. (By contrast, in the language C you would write x != y.) So, you cannot simply test for y1 < x < y2 in that compact symbolic form, or however you tried to do it with <> (you did not give us any example). Instead, you must expand that into two clauses joined by a logical operator, thus, If (y1 < x) and (x < y2) Then ... That's it. Now go sign up for a class where you would learn all this properly. -- David McFarlane, Professional Faultfinder >I am writing script for a behavioural experiment, whereby 12 triangles >are presented together. I have a problem with the triangles >overlapping each other on the screen. I would like to write some >script to assign each triangle to a matrix where the triangle can move >randomly within those specific co ordinates. I need to be able to >write in the script for the co ordinates to be more than or less than >a specific value. However, E-prime is not accepting the symbol <> and >is asking me to set a parameter name or parameter? > > See general script below without <>; > >(note that I only have 6 images scripted so far) > > dim x1,y1 as integer >x1 = random (30,190) >y1 = random (30,190) >c.SetAttrib "posx1", x1 >c.SetAttrib "posy1", y1 >dim x2,y2 as integer >x2 = random (30,190) >y2 = random (220,380) >c.SetAttrib "posx2", x2 >c.SetAttrib "posy2", y2 >dim x3,y3 as integer >x1 = random (30,190) >y1 = random (410,570) >c.SetAttrib "posx3", x3 >c.SetAttrib "posy3", y3 >dim x4,y4 as integer >x4 = random (30,190) >y4 = random (600,760) >c.SetAttrib "posx4", x4 >c.SetAttrib "posy4", y4 >dim x5,y5 as integer >x5 = random (220,380) >y5 = random (30,190) >c.SetAttrib "posx5", x5 >c.SetAttrib "posy5", y5 >dim x6,y6 as integer >x6 = random (220,380) >y6 = random (220,380) >c.SetAttrib "posx6", x6 >c.SetAttrib "posy6", y6 > >Any help would be much appreciated > >Many thanks, > >Jayne Morriss -- 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. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- 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.