From Michiel.Spape at nottingham.ac.uk Mon Nov 2 14:13:10 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 2 Nov 2009 14:13:10 -0000 Subject: combining 3 eprime files into 1 file - or a work around??? In-Reply-To: <4aea0857.5844f10a.1ae5.229cSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David & Anson, I didn't know that, thanks for the suggestion! Anyway, as I'm sure you know, but out there on the list, maybe a few don't - you CAN open multiple .es files (E-Prime 1, tested again here with 1.1.sp3) at the same time. Just go to explorer, select two or more .es files (using shift and/or ctrl click) and press the enter button on your keyboard. I assume it's not possible in some versions of E-Prime, and to be honest, it rarely helped anyone before, but with this nifty copy-paste feature, it can be a powerful trick indeed. Best, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 29 October 2009 21:25 To: e-prime at googlegroups.com Subject: Re: combining 3 eprime files into 1 file - or a work around??? Anson, Thank you for posting back with Web Support's response, a fair answer as far as it goes. I would have mentioned "AutoIt" as the key search term if you wanted to explore the "external application" approach that Matt mentions, and liwenna has already kindly supplied the link to that discussion. Matt also left out one little-known detail, although this hardly does you any good. You *can* copy E-Objects between files in EP1, although the process is very tedious, because you can only open one file at a time. It goes like this (as documented in my own personal FAQ): Open the source file and use View > Browser to open the object browser pane. Select the desired object in the browser, and use Edit > Copy. Now open the destination file and use Edit > Paste. If the copied object has the same name as an object already in the destination, then the pasted object gets automatically renamed with a number at the end (EP2 implements a more robust conflict resolution system for copying objects). That's all I can add. -- David McFarlane, Professional Faultfinder At 10/29/2009 05:08 PM Thursday, you wrote: >the response from PST > >"Hi Anson, > >E-Prime does not have the capability to start multiple experiments >directly (e.g., multiple individual ES or EBS files). You would need >to have the first experiment terminate, then load and run the second >experiment manually, and so on. It is possible, however, to run a >sequence of experiments by either combining your experiments into a >single ES file (quite difficult and tedious in E-Prime 1.x) or, if you >are comfortable with programming or know someone who is, using the E- >Run command line switches described on page 112 of the E-Prime >Reference Guide to create an external application that can launch the >EBS files in succession without any intervention on your part. Note, >however, that this procedure is beyond the scope of E-Prime web >support. > >If you are considering upgrading to E-Prime 2.0, note that it does >contain a copy/paste function that will allow you to quickly combine >tasks by moving objects from one experiment to another (i.e., multiple >instances of E-Studio can be open at a time). Please see >http://www.pstnet.com/eprime.cfm for more information. > >Please let me know if you have any further questions. > >Sincerely, >Matt Lenhart >Technical Consultant" 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 Mon Nov 2 14:26:12 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 2 Nov 2009 14:26:12 -0000 Subject: Response devices In-Reply-To: <04d5fba5-37c1-45ab-af24-eb760e73386f@k19g2000yqc.googlegroups.com> Message-ID: Hi! We have successfully implemented the brilliant XBOX360 controller. The software is somewhere on my website (www.cognitology.eu) I think, along with bad documentation. It requires a laptop with a serial port which then does the RT collection, but, more importantly, allows E-Prime (which then runs on another computer) to send a command which gets the controller to vibrate (it contains two rotors operating at different frequency and amplitude). It's not brilliantly accurate in terms of timing, but I hold the opinion that timing accuracy is over-rated for experimenters who know about balanced designs and randomisation... or who don't really mind subjects to be bored that much more to tears. On the other hand, they did seem to think the xbox controller made the experiment 'fun' . Also, reviewers find it really cool! (or so we found: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2708333/) Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Tobi Sent: 29 October 2009 15:17 To: E-Prime Subject: Response devices Hi everyone, I am wondering which kind of response device you are usually using for your psychological experiments. There are special key sets for ERTS and E-Prime, for example. However, standard devices like keyboards or mice might also be frequently used. Of course, keyboards and mice don't look that professional and not everyone uses ERTS or E-Prime. Do you know any producer of hardware that is well suitable for experimental psychology? Thanks a lot and best regards, Tobias FW 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 baltimore.ben at gmail.com Mon Nov 2 15:33:51 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Mon, 2 Nov 2009 10:33:51 -0500 Subject: Response devices In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF022D6C3A@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: very cool! On Mon, Nov 2, 2009 at 9:26 AM, Michiel Spape < Michiel.Spape at nottingham.ac.uk> wrote: > > Hi! > We have successfully implemented the brilliant XBOX360 controller. The > software is somewhere on my website (www.cognitology.eu) I think, along with > bad documentation. It requires a laptop with a serial port which then does > the RT collection, but, more importantly, allows E-Prime (which then runs on > another computer) to send a command which gets the controller to vibrate (it > contains two rotors operating at different frequency and amplitude). It's > not brilliantly accurate in terms of timing, but I hold the opinion that > timing accuracy is over-rated for experimenters who know about balanced > designs and randomisation... or who don't really mind subjects to be bored > that much more to tears. On the other hand, they did seem to think the xbox > controller made the experiment 'fun' . > Also, reviewers find it really cool! (or so we found: > http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2708333/) > > Cheers, > Mich > > Michiel Spapé > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf > Of Tobi > Sent: 29 October 2009 15:17 > To: E-Prime > Subject: Response devices > > > Hi everyone, > > I am wondering which kind of response device you are usually using for > your psychological experiments. There are special key sets for ERTS > and E-Prime, for example. However, standard devices like keyboards or > mice might also be frequently used. > > Of course, keyboards and mice don't look that professional and not > everyone uses ERTS or E-Prime. Do you know any producer of hardware > that is well suitable for experimental psychology? > > Thanks a lot and best regards, > Tobias FW > > > 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 coolpsychology at gmail.com Mon Nov 2 19:17:41 2009 From: coolpsychology at gmail.com (Rivermaker) Date: Mon, 2 Nov 2009 11:17:41 -0800 Subject: A simple if then that adds 1 to an integer variable needed Message-ID: Hi, I need a really short script that, I'm sure, is embarrassingly simple for those with coding skills. I'm not one of you! Please be kind. All I want to do is to skip a text object the 5th (and last) time through a procedure. I need to create an integer variable and add 1 to it each time through so that eventually, with an InLine object, I can tell it to... If count = 5 GoTo Label1 'this is to get it to skip the text object Else count = count + 1 'this is to add 1 to it each time through In addition to the above, I need help creating the variable. I am assuming that I can't create (declare?) it within the same InLine object because that would reset its value to zero each time through...So I'm thinking that earlier on, say at the start, I have to write this: Dim count as integer Am I close? Can anybody help me out? Many thanks, Mike --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 2 19:22:54 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 2 Nov 2009 14:22:54 -0500 Subject: combining 3 eprime files into 1 file - or a work around??? In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF022D6C27@VUIEXCHC.ad.notti ngham.ac.uk> Message-ID: Michiel, OMG, that is so cool! Just now tested this with EP1.2 under Vista -- in all my years of using E-Prime I never knew or thought of this, I wish I had known this trick years ago! Not even Matt Lenhart at PST seems to know about this. Just to fill in another detail about this trick, once you have a number of EP1 windows open, any new .es will load into the topmost ES window, so you can control which .es file loads into which ES window. Thanks a bunch! -- David McFarlane, Professional Faultfinder At 11/2/2009 09:13 AM Monday, Michiel Spapé wrote: >Hi David & Anson, >I didn't know that, thanks for the suggestion! >Anyway, as I'm sure you know, but out there on >the list, maybe a few don't - you CAN open >multiple .es files (E-Prime 1, tested again here >with 1.1.sp3) at the same time. Just go to >explorer, select two or more .es files (using >shift and/or ctrl click) and press the enter >button on your keyboard. I assume it's not >possible in some versions of E-Prime, and to be >honest, it rarely helped anyone before, but with >this nifty copy-paste feature, it can be a powerful trick indeed. >Best, >Mich > >Michiel Spapé >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology > > >-----Original Message----- >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane >Sent: 29 October 2009 21:25 >To: e-prime at googlegroups.com >Subject: Re: combining 3 eprime files into 1 file - or a work around??? > > >Anson, > >Thank you for posting back with Web Support's response, a fair answer >as far as it goes. I would have mentioned "AutoIt" as the key search >term if you wanted to explore the "external application" approach >that Matt mentions, and liwenna has already kindly supplied the link >to that discussion. > >Matt also left out one little-known detail, although this hardly does >you any good. You *can* copy E-Objects between files in EP1, >although the process is very tedious, because you can only open one >file at a time. It goes like this (as documented in my own personal FAQ): > >Open the source file and use View > Browser to open the object >browser pane. Select the desired object in the browser, and use >Edit > Copy. Now open the destination file and use Edit > Paste. If >the copied object has the same name as an object already in the >destination, then the pasted object gets automatically renamed with a >number at the end (EP2 implements a more robust conflict resolution >system for copying objects). > >That's all I can add. > >-- David McFarlane, Professional Faultfinder > > >At 10/29/2009 05:08 PM Thursday, you wrote: > > >the response from PST > > > >"Hi Anson, > > > >E-Prime does not have the capability to start multiple experiments > >directly (e.g., multiple individual ES or EBS files). You would need > >to have the first experiment terminate, then load and run the second > >experiment manually, and so on. It is possible, however, to run a > >sequence of experiments by either combining your experiments into a > >single ES file (quite difficult and tedious in E-Prime 1.x) or, if you > >are comfortable with programming or know someone who is, using the E- > >Run command line switches described on page 112 of the E-Prime > >Reference Guide to create an external application that can launch the > >EBS files in succession without any intervention on your part. Note, > >however, that this procedure is beyond the scope of E-Prime web > >support. > > > >If you are considering upgrading to E-Prime 2.0, note that it does > >contain a copy/paste function that will allow you to quickly combine > >tasks by moving objects from one experiment to another (i.e., multiple > >instances of E-Studio can be open at a time). Please see > >http://www.pstnet.com/eprime.cfm for more information. > > > >Please let me know if you have any further questions. > > > >Sincerely, > >Matt Lenhart > >Technical Consultant" > > > > >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 sonia_pritchard at rogers.com Mon Nov 2 23:28:23 2009 From: sonia_pritchard at rogers.com (Sonia Pritchard) Date: Mon, 2 Nov 2009 15:28:23 -0800 Subject: Windows 7 Message-ID: Hi, Has anybody tried running E-Prime 2.0 on Windows 7? Our technical consultant advised me that Windows 7 was an improvement on Vista. I am anxious to make the switch not knowing the consequences for E-Prime. By the way, an E-Prime technical consultant informed me that they had not yet tested E-Prime 2.0 on Windows 7. Thank you, Sonia --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Tue Nov 3 01:45:57 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Mon, 2 Nov 2009 20:45:57 -0500 Subject: A simple if then that adds 1 to an integer variable needed In-Reply-To: <75ba02db-3094-448c-b450-68cc349e9fda@d34g2000vbm.googlegroups.com> Message-ID: you are very, very close! under the View drop-down menu, select Script, then click on the User tab at the bottom of the Script window. here you will type: Dim count as Integer in your inline, prior to your text object just type: count = count+1 If count = 5 Then Goto Label1 and put your Label1 object after your text object. that should do it. ben On Mon, Nov 2, 2009 at 2:17 PM, Rivermaker wrote: > > Hi, > > I need a really short script that, I'm sure, is embarrassingly simple > for those with coding skills. I'm not one of you! Please be kind. > > All I want to do is to skip a text object the 5th (and last) time > through a procedure. I need to create an integer variable and add 1 to > it each time through so that eventually, with an InLine object, I can > tell it to... > > If count = 5 GoTo Label1 'this is to get it to skip the text object > > Else count = count + 1 'this is to add 1 to it each time through > > > In addition to the above, I need help creating the variable. I am > assuming that I can't create (declare?) it within the same InLine > object because that would reset its value to zero each time > through...So I'm thinking that earlier on, say at the start, I have to > write this: > > Dim count as integer > > Am I close? > > > Can anybody help me out? > > Many thanks, > > Mike > > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 coolpsychology at gmail.com Tue Nov 3 13:27:39 2009 From: coolpsychology at gmail.com (Rivermaker) Date: Tue, 3 Nov 2009 05:27:39 -0800 Subject: A simple if then that adds 1 to an integer variable needed In-Reply-To: <3345e4a50911021745m26eebe86kc7610788d951e64d@mail.gmail.com> Message-ID: Thanks so much....sadly, though, it didn't work. I don't get it. Particularly because I've another InLine that skips to a label that's working like a charm (though this one is easier, it's: if SeeAny.RESP = 0 then GoTo Label1). Tell me, to check that my counter is actually working, could I get the same inline object to print the value of count so that I could check its value as it cycles through the procedure? I really appreciate your help. Mike On Nov 2, 8:45 pm, ben robinson wrote: > you are very, very close! > > under the View drop-down menu, select Script, then click on the User tab at > the bottom of the Script window. > here you will type: > Dim count as Integer > > in your inline, prior to your text object just type: > count = count+1 > If count = 5 Then Goto Label1 > > and put your Label1 object after your text object.  that should do it. > > ben > > On Mon, Nov 2, 2009 at 2:17 PM, Rivermaker wrote: > > > Hi, > > > I need a really short script that, I'm sure, is embarrassingly simple > > for those with coding skills. I'm not one of you! Please be kind. > > > All I want to do is to skip a text object the 5th (and last) time > > through a procedure. I need to create an integer variable and add 1 to > > it each time through so that eventually, with an InLine object, I can > > tell it to... > > > If count = 5 GoTo Label1    'this is to get it to skip the text object > > > Else count = count + 1      'this is to add 1 to it each time through > > > In addition to the above, I need help creating the variable. I am > > assuming that I can't create (declare?) it within the same InLine > > object because that would reset its value to zero each time > > through...So I'm thinking that earlier on, say at the start, I have to > > write this: > > > Dim count as integer > > > Am I close? > > > Can anybody help me out? > > > Many thanks, > > > Mike --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 coolpsychology at gmail.com Tue Nov 3 13:34:49 2009 From: coolpsychology at gmail.com (Rivermaker) Date: Tue, 3 Nov 2009 05:34:49 -0800 Subject: A simple if then that adds 1 to an integer variable needed In-Reply-To: <3345e4a50911021745m26eebe86kc7610788d951e64d@mail.gmail.com> Message-ID: SCRATCH that! I'm an idiot. Your suggestion works perfectly. I had the counter inline within another skip --- I was skipping it! Doh. Thank you again! Mike (And I was able to create a script that displayed the value of the counter too!) On Nov 2, 8:45 pm, ben robinson wrote: > you are very, very close! > > under the View drop-down menu, select Script, then click on the User tab at > the bottom of the Script window. > here you will type: > Dim count as Integer > > in your inline, prior to your text object just type: > count = count+1 > If count = 5 Then Goto Label1 > > and put your Label1 object after your text object.  that should do it. > > ben > > On Mon, Nov 2, 2009 at 2:17 PM, Rivermaker wrote: > > > Hi, > > > I need a really short script that, I'm sure, is embarrassingly simple > > for those with coding skills. I'm not one of you! Please be kind. > > > All I want to do is to skip a text object the 5th (and last) time > > through a procedure. I need to create an integer variable and add 1 to > > it each time through so that eventually, with an InLine object, I can > > tell it to... > > > If count = 5 GoTo Label1    'this is to get it to skip the text object > > > Else count = count + 1      'this is to add 1 to it each time through > > > In addition to the above, I need help creating the variable. I am > > assuming that I can't create (declare?) it within the same InLine > > object because that would reset its value to zero each time > > through...So I'm thinking that earlier on, say at the start, I have to > > write this: > > > Dim count as integer > > > Am I close? > > > Can anybody help me out? > > > Many thanks, > > > Mike --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 yohans at gmail.com Tue Nov 3 22:55:26 2009 From: yohans at gmail.com (yohans) Date: Tue, 3 Nov 2009 14:55:26 -0800 Subject: combining 3 eprime files into 1 file - or a work around??? In-Reply-To: <4aef31af.5944f10a.0dad.53e9SMTPIN_ADDED@gmr-mx.google.com> Message-ID: I just wanted to thank everyone for all the replies and ideas! --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 20:52:32 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 12:52:32 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? Message-ID: Short question: In the piece of code below: how do I implement a variable that replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' so that I can shorter the code to a single line (using an additional 'for 0 to 2' variable for the (randompos(x)) part) ? ************************************** for m = 1 to 4 triallist.SetAttrib m, "restid1", randomlist(randompos(0)) triallist.SetAttrib m, "restid2", randomlist(randompos(1)) triallist.SetAttrib m, "restid3", randomlist(randompos(2)) randomizearray randompos next m *************************************** Long explanation: Ok.... So... I have this habit of writing enormous inlines because I am generally to lazy or not in the mood to figure out/learn how to shorten them.... I decided that I am gonna break this habit and have choosen a nice litle experiment to do this with. However: I am stuck now. My hope is that someone here knows off hand what lines I need and is able to drop me a line. In the final experiment each display holds 16 positions which will be filled with one targetstimulus and 15 distractorstimuli. There are 16 possible targetstimuli which will each have to appear in one of the 16 possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 trials). The identity of the targetstimulus decides which 15 stimuli should be used as distractorstimuli and I like to have the location of each of the distractorstimuli randomized... Unfortunately this means that for each trial there are 15! possible arrangements of the distractorstimuli (1 307 674 368 000). I don't like pseudorandomizations that well so I took up the challenge and actually got quite far so far. For obvious reasons I am working the whole thing out with a smaller number of positions: 4 (2x2 grid). This is what I got now: for target ID 1 a list with the 15 distractorstimuli for this target is loaded from a textfile into an array and randomized. A second array holds the numbers 1-15 which corresponds with locations 1-15. For each level of the triallist (m) the randomized distractorstimuli are randomly loaded into attributes called "restid1" up to "restid3" (4 locations, 1 holds the target). When a level is filled, the randompos array is rerandomized so that for the next level each distractorstimulus is loaded into a different restid-attribute. The piece of code shown below deals with the first 4 levels (target ID 1), the code will have to repeat for the next 4 levels but then load id2restids.txt instead (containing distractorstimuli for target ID 2), etc etc. As you can see this inline will still become rather bulky so here's the question again: can I shorten the 3 lines that fill the triallist-levels to 1 line by using another 'for 1 to 3' attribute (one of those mysterious %_ & # perhaps?) that can actually be used IN an attribute name? *********************************************** for m = 1 to 4 Open "id1restids.txt" For Input As #1 For n = 0 To 2 Input #1, randomlist(n) Next n Close #1 randomizearray randomlist for q = 0 to 2 randompos(q) = q next q randomizearray randompos triallist.SetAttrib m, "restid1", randomlist(randompos(0)) triallist.SetAttrib m, "restid2", randomlist(randompos(1)) triallist.SetAttrib m, "restid3", randomlist(randompos(2)) randomizearray randompos next m ******************************************* I've checked the guides, checked the e-primer, searching all over the place for a piece of code that I could steal the trick from, but to no avail so far. What certainly doesn't help is that I so far never quite got the deal with the & % _ crf things.... (that's probably embarrassing but true :p ) I hope someone knows a nice solution for me. Best regards, liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 21:10:12 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 4 Nov 2009 16:10:12 -0500 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <38db3cbf-077d-497d-87c3-37f9aae51816@j24g2000yqa.googlegroups.com> Message-ID: something like this? for m = 1 to 4 triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) next m On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > Short question: > In the piece of code below: how do I implement a variable that > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > so that I can shorter the code to a single line (using an additional > 'for 0 to 2' variable for the (randompos(x)) part) ? > > ************************************** > for m = 1 to 4 > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > randomizearray randompos > > next m > *************************************** > > Long explanation: > Ok.... So... I have this habit of writing enormous inlines because I > am generally to lazy or not in the mood to figure out/learn how to > shorten them.... I decided that I am gonna break this habit and have > choosen a nice litle experiment to do this with. However: I am stuck > now. My hope is that someone here knows off hand what lines I need and > is able to drop me a line. > > In the final experiment each display holds 16 positions which will be > filled with one targetstimulus and 15 distractorstimuli. There are 16 > possible targetstimuli which will each have to appear in one of the 16 > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > trials). The identity of the targetstimulus decides which 15 stimuli > should be used as distractorstimuli and I like to have the location of > each of the distractorstimuli randomized... Unfortunately this means > that for each trial there are 15! possible arrangements of the > distractorstimuli (1 307 674 368 000). I don't like > pseudorandomizations that well so I took up the challenge and actually > got quite far so far. For obvious reasons I am working the whole thing > out with a smaller number of positions: 4 (2x2 grid). > > This is what I got now: for target ID 1 a list with the 15 > distractorstimuli for this target is loaded from a textfile into an > array and randomized. A second array holds the numbers 1-15 which > corresponds with locations 1-15. For each level of the triallist (m) > the randomized distractorstimuli are randomly loaded into attributes > called "restid1" up to "restid3" (4 locations, 1 holds the target). > When a level is filled, the randompos array is rerandomized so that > for the next level each distractorstimulus is loaded into a different > restid-attribute. The piece of code shown below deals with the first 4 > levels (target ID 1), the code will have to repeat for the next 4 > levels but then load id2restids.txt instead (containing > distractorstimuli for target ID 2), etc etc. As you can see this > inline will still become rather bulky so here's the question again: > can I shorten the 3 lines that fill the triallist-levels to 1 line by > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > perhaps?) that can actually be used IN an attribute name? > > *********************************************** > for m = 1 to 4 > > Open "id1restids.txt" For Input As #1 > For n = 0 To 2 > Input #1, randomlist(n) > Next n > Close #1 > > randomizearray randomlist > > for q = 0 to 2 > randompos(q) = q > next q > > randomizearray randompos > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > randomizearray randompos > > next m > ******************************************* > > > I've checked the guides, checked the e-primer, searching all over the > place for a piece of code that I could steal the trick from, but to no > avail so far. What certainly doesn't help is that I so far never quite > got the deal with the & % _ crf things.... (that's probably > embarrassing but true :p ) > > I hope someone knows a nice solution for me. > > Best regards, > > liw > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Wed Nov 4 21:41:48 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 13:41:48 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <3345e4a50911041310g13b80283i28e75c5cdbfc7a0c@mail.gmail.com> Message-ID: Hello Ben, Thanks for such a quick reply! It should become something like that indeed! But... correct me if I am wrong (I am at home now so no e-prime at my disposal, i'll certainly give it a try tomorrow), it seems that in the code you wrote the 'second m' is placed outside the attributename whereas I actually need it to be inside the attribute name, to adress attributes called "restid1", "restid2" and "restid3" . And (but thats secondary at the moment) it should be a variable other than m as m will run up till 16, whereas this piece of code should be repeated every 4 lines of m. On Nov 4, 10:10 pm, ben robinson wrote: > something like this? > > for m = 1 to 4 > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > next m > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > Short question: > > In the piece of code below: how do I implement a variable that > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > so that I can shorter the code to a single line (using an additional > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > ************************************** > > for m = 1 to 4 > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > randomizearray randompos > > > next m > > *************************************** > > > Long explanation: > > Ok.... So... I have this habit of writing enormous inlines because I > > am generally to lazy or not in the mood to figure out/learn how to > > shorten them....  I decided that I am gonna break this habit and have > > choosen a nice litle experiment to do this with. However: I am stuck > > now. My hope is that someone here knows off hand what lines I need and > > is able to drop me a line. > > > In the final experiment each display holds 16 positions which will be > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > possible targetstimuli which will each have to appear in one of the 16 > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > trials). The identity of the targetstimulus decides which 15 stimuli > > should be used as distractorstimuli and I like to have the location of > > each of the distractorstimuli randomized... Unfortunately this means > > that for each trial there are 15! possible arrangements of the > > distractorstimuli (1 307 674 368 000). I don't like > > pseudorandomizations that well so I took up the challenge and actually > > got quite far so far. For obvious reasons I am working the whole thing > > out with a smaller number of positions: 4 (2x2 grid). > > > This is what I got now: for target ID 1 a list with the 15 > > distractorstimuli for this target is loaded from a textfile into an > > array and randomized. A second array holds the numbers 1-15 which > > corresponds with locations 1-15. For each level of the triallist (m) > > the randomized distractorstimuli are randomly loaded into attributes > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > When a level is filled, the randompos array is rerandomized so that > > for the next level each distractorstimulus is loaded into a different > > restid-attribute. The piece of code shown below deals with the first 4 > > levels (target ID 1), the code will have to repeat for the next 4 > > levels but then load id2restids.txt instead (containing > > distractorstimuli for target ID 2), etc etc. As you can see this > > inline will still become rather bulky so here's the question again: > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > perhaps?) that can actually be used IN an attribute name? > > > *********************************************** > > for m = 1 to 4 > > > Open "id1restids.txt" For Input As #1 > > For n = 0 To 2 > > Input #1, randomlist(n) > > Next n > > Close #1 > > > randomizearray randomlist > > > for q = 0 to 2 > > randompos(q) = q > > next q > > > randomizearray randompos > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > randomizearray randompos > > > next m > > ******************************************* > > > I've checked the guides, checked the e-primer, searching all over the > > place for a piece of code that I could steal the trick from, but to no > > avail so far. What certainly doesn't help is that I so far never quite > > got the deal with the & % _ crf things.... (that's probably > > embarrassing but true :p ) > > > I hope someone knows a nice solution for me. > > > Best regards, > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 21:47:30 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 4 Nov 2009 16:47:30 -0500 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <4a2607fc-ed45-4bc7-879c-4c1b6a36aa18@d5g2000yqm.googlegroups.com> Message-ID: hi liwenna. no, "restid" & m should concatinate "restid" and the value of "m" into a single string. should work. not promising. On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > Hello Ben, > > Thanks for such a quick reply! > > It should become something like that indeed! > > But... correct me if I am wrong (I am at home now so no e-prime at my > disposal, i'll certainly give it a try tomorrow), it seems that in the > code you wrote the 'second m' is placed outside the attributename > whereas I actually need it to be inside the attribute name, to adress > attributes called "restid1", "restid2" and "restid3" . > > And (but thats secondary at the moment) it should be a variable other > than m as m will run up till 16, whereas this piece of code should be > repeated every 4 lines of m. > > > > On Nov 4, 10:10 pm, ben robinson wrote: > > something like this? > > > > for m = 1 to 4 > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > next m > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > Short question: > > > In the piece of code below: how do I implement a variable that > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > so that I can shorter the code to a single line (using an additional > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > ************************************** > > > for m = 1 to 4 > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > *************************************** > > > > > Long explanation: > > > Ok.... So... I have this habit of writing enormous inlines because I > > > am generally to lazy or not in the mood to figure out/learn how to > > > shorten them.... I decided that I am gonna break this habit and have > > > choosen a nice litle experiment to do this with. However: I am stuck > > > now. My hope is that someone here knows off hand what lines I need and > > > is able to drop me a line. > > > > > In the final experiment each display holds 16 positions which will be > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > possible targetstimuli which will each have to appear in one of the 16 > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > should be used as distractorstimuli and I like to have the location of > > > each of the distractorstimuli randomized... Unfortunately this means > > > that for each trial there are 15! possible arrangements of the > > > distractorstimuli (1 307 674 368 000). I don't like > > > pseudorandomizations that well so I took up the challenge and actually > > > got quite far so far. For obvious reasons I am working the whole thing > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > This is what I got now: for target ID 1 a list with the 15 > > > distractorstimuli for this target is loaded from a textfile into an > > > array and randomized. A second array holds the numbers 1-15 which > > > corresponds with locations 1-15. For each level of the triallist (m) > > > the randomized distractorstimuli are randomly loaded into attributes > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > When a level is filled, the randompos array is rerandomized so that > > > for the next level each distractorstimulus is loaded into a different > > > restid-attribute. The piece of code shown below deals with the first 4 > > > levels (target ID 1), the code will have to repeat for the next 4 > > > levels but then load id2restids.txt instead (containing > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > inline will still become rather bulky so here's the question again: > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > perhaps?) that can actually be used IN an attribute name? > > > > > *********************************************** > > > for m = 1 to 4 > > > > > Open "id1restids.txt" For Input As #1 > > > For n = 0 To 2 > > > Input #1, randomlist(n) > > > Next n > > > Close #1 > > > > > randomizearray randomlist > > > > > for q = 0 to 2 > > > randompos(q) = q > > > next q > > > > > randomizearray randompos > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > ******************************************* > > > > > I've checked the guides, checked the e-primer, searching all over the > > > place for a piece of code that I could steal the trick from, but to no > > > avail so far. What certainly doesn't help is that I so far never quite > > > got the deal with the & % _ crf things.... (that's probably > > > embarrassing but true :p ) > > > > > I hope someone knows a nice solution for me. > > > > > Best regards, > > > > > liw > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Wed Nov 4 21:55:28 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 13:55:28 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <3345e4a50911041347g62fe7199h6be2c3103e127545@mail.gmail.com> Message-ID: Ok! I can hardly wait to try it now...! I'll report back tomorrow, many thanks in advance! Have a nice evening, liw p.s. this might be a double-post... I either accidentally discarded my previous reply or sent it to Ben in private... :s On Nov 4, 10:47 pm, ben robinson wrote: > hi liwenna. > > no, "restid" & m should concatinate "restid" and the value of "m" into a > single string.  should work.  not promising. > > On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > > Hello Ben, > > > Thanks for such a quick reply! > > > It should become something like that indeed! > > >  But... correct me if I am wrong (I am at home now so no e-prime at my > > disposal, i'll certainly give it a try tomorrow), it seems that in the > > code you wrote the 'second m' is placed outside the attributename > > whereas I actually need it to be inside the attribute name, to adress > > attributes called "restid1", "restid2" and "restid3" . > > > And (but thats secondary at the moment) it should be a variable other > > than m as m will run up till 16, whereas this piece of code should be > > repeated every 4 lines of m. > > > On Nov 4, 10:10 pm, ben robinson wrote: > > > something like this? > > > > for m = 1 to 4 > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > next m > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > Short question: > > > > In the piece of code below: how do I implement a variable that > > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > > so that I can shorter the code to a single line (using an additional > > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > ************************************** > > > > for m = 1 to 4 > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > > *************************************** > > > > > Long explanation: > > > > Ok.... So... I have this habit of writing enormous inlines because I > > > > am generally to lazy or not in the mood to figure out/learn how to > > > > shorten them....  I decided that I am gonna break this habit and have > > > > choosen a nice litle experiment to do this with. However: I am stuck > > > > now. My hope is that someone here knows off hand what lines I need and > > > > is able to drop me a line. > > > > > In the final experiment each display holds 16 positions which will be > > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > > possible targetstimuli which will each have to appear in one of the 16 > > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > > should be used as distractorstimuli and I like to have the location of > > > > each of the distractorstimuli randomized... Unfortunately this means > > > > that for each trial there are 15! possible arrangements of the > > > > distractorstimuli (1 307 674 368 000). I don't like > > > > pseudorandomizations that well so I took up the challenge and actually > > > > got quite far so far. For obvious reasons I am working the whole thing > > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > This is what I got now: for target ID 1 a list with the 15 > > > > distractorstimuli for this target is loaded from a textfile into an > > > > array and randomized. A second array holds the numbers 1-15 which > > > > corresponds with locations 1-15. For each level of the triallist (m) > > > > the randomized distractorstimuli are randomly loaded into attributes > > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > > When a level is filled, the randompos array is rerandomized so that > > > > for the next level each distractorstimulus is loaded into a different > > > > restid-attribute. The piece of code shown below deals with the first 4 > > > > levels (target ID 1), the code will have to repeat for the next 4 > > > > levels but then load id2restids.txt instead (containing > > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > > inline will still become rather bulky so here's the question again: > > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > > perhaps?) that can actually be used IN an attribute name? > > > > > *********************************************** > > > > for m = 1 to 4 > > > > > Open "id1restids.txt" For Input As #1 > > > > For n = 0 To 2 > > > > Input #1, randomlist(n) > > > > Next n > > > > Close #1 > > > > > randomizearray randomlist > > > > > for q = 0 to 2 > > > > randompos(q) = q > > > > next q > > > > > randomizearray randompos > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > > ******************************************* > > > > > I've checked the guides, checked the e-primer, searching all over the > > > > place for a piece of code that I could steal the trick from, but to no > > > > avail so far. What certainly doesn't help is that I so far never quite > > > > got the deal with the & % _ crf things.... (that's probably > > > > embarrassing but true :p ) > > > > > I hope someone knows a nice solution for me. > > > > > Best regards, > > > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 psr-ari at hotmail.com Wed Nov 4 22:56:16 2009 From: psr-ari at hotmail.com (Ariana Rubin) Date: Wed, 4 Nov 2009 14:56:16 -0800 Subject: Terminate a Sublist after a Response Message-ID: I have a list, with 30 nested lists, and each nested list has a list within that has four images that are playing on a loop an infinite number of times. Essentially, the weight is set to a very high number, so for all purposes it is infinite. When the subject is watching the sequence of pictures they are supposed to hit the space bar when they see the changes, and that should terminate the sublist, and go to a response page. However, I have not been able to find a way to terminate the entire sublist (not just the image they are currently on) when the space bar (or any other key) is pressed. I have tried jumping to a flag, but it can't jump to a flag in a different list. I tried an inline that would terminate the list when the space bar was hit, but it seems like you can't change the termination conditions in the middle of the list. I have been trying to get it so that when the space bar is pressed (with essentially the same inline for each image) the weight or cycle (depending on which one is set to a very large number, and it doesn't actually matter which one for the rest of the program) gets changed to equal zero, and hopefully terminate the sublist. However, I can't figure out a functioning script for this. Please help me in anyway you can as I really need to figure this out! I have been working on it all week. Thank you so much in advance! ARubin --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 23:05:35 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 4 Nov 2009 18:05:35 -0500 Subject: Terminate a Sublist after a Response In-Reply-To: <18627c83-a91f-4bf4-9ab1-f2f2fe4be004@k17g2000yqh.googlegroups.com> Message-ID: have you tried using list.Terminate (substituting the name of your list in place of "list")? it works for me in version 1.2, but not in version 2.0. anyone else have this experience with version 2.0? i know, i know, i should start a new thread... ben On Wed, Nov 4, 2009 at 5:56 PM, Ariana Rubin wrote: > > I have a list, with 30 nested lists, and each nested list has a list > within that has four images that are playing on a loop an infinite > number of times. Essentially, the weight is set to a very high > number, so for all purposes it is infinite. When the subject is > watching the sequence of pictures they are supposed to hit the space > bar when they see the changes, and that should terminate the sublist, > and go to a response page. However, I have not been able to find a > way to terminate the entire sublist (not just the image they are > currently on) when the space bar (or any other key) is pressed. > I have tried jumping to a flag, but it can't jump to a flag in a > different list. > I tried an inline that would terminate the list when the space bar was > hit, but it seems like you can't change the termination conditions in > the middle of the list. > I have been trying to get it so that when the space bar is pressed > (with essentially the same inline for each image) the weight or cycle > (depending on which one is set to a very large number, and it doesn't > actually matter which one for the rest of the program) gets changed to > equal zero, and hopefully terminate the sublist. However, I can't > figure out a functioning script for this. > > Please help me in anyway you can as I really need to figure this out! > I have been working on it all week. > > Thank you so much in advance! > ARubin > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Thu Nov 5 00:16:09 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 4 Nov 2009 19:16:09 -0500 Subject: Terminate a Sublist after a Response In-Reply-To: <3345e4a50911041505u72cbdddete4f39f9d7db88bad@mail.gmail.com> Message-ID: Ben, > have you tried using list.Terminate (substituting the name of your list > in place of "list")? > > it works for me in version 1.2, but not in version 2.0. anyone else > have this experience with version 2.0? i know, i know, i should start a > new thread... Hmm, I'm pretty sure that I used List.Terminate in EP2 for a time-based BART a year or so ago, so I will have to check and confirm that when I get back to campus tomorrow. -- 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 liwenna at gmail.com Thu Nov 5 00:34:11 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 16:34:11 -0800 Subject: Terminate a Sublist after a Response In-Reply-To: <3345e4a50911041505u72cbdddete4f39f9d7db88bad@mail.gmail.com> Message-ID: Good evening both, Ben: listname.terminate works for me in 2.0, I use it often to terminate a practicetrials list when certain criteria are met. Ariana. I am just gonna throw some wild new idea at you that I didn't try out and might not at all do what you need (and even might not be the best possible solution at all, but was the first thing that I could come up with). How about ditching all the 30 and more lists and have one list that in each level holds the four pictures that make up a trial. Start with creating a variable that will count the repeats in each trial" place the line: 'dim repeats as integer' on the user tab of the script window. Trialproc should then start with an inline that resets the variable called repeats; 'repeats = 0' will do. This inline then is followed by an labelobject (say backlabel). Next are four slides that will display the four pictures that make up one trial. Each slide has a set duration (depending on how fast the images have to 'change') and have responding and logging enabled. For each of these slides endaction should be jumping to a label called 'answerlabel'. After the slides place an inline that first increased the variable 'repeats' with 1, log the new value of repeats and next tells the program to jump back to 'backlabel': "Repeats = repeats +1 C.setattrib "logrepeats", repeats Goto backlabel". This inline is followed by 'answerlabel' and the responseslide should be the last object on the procedure. Now: when a trial starts each of the four slides are shown and if a subject responds during any of the slides the program will jump to 'answerlabel', resulting in the response slide to be shown and then termination of that run of the trialproc. If however after slide 4 the subject has not responded yet the program will encounter the inline that tells it to jump back to 'backlabel' and each of the slides will be shown again. Because the variable called 'repeats' is updated in the same inline that tells the program to jump back, you will be able to tell how often each of the slides has been shown. This way the procedure will keep looping the four pictures untill the subject has responded and you'll also be able to infer on which repetition of a slide the subject has responded. I hope this is any clear this way... I'll clarify more tomorrow if needed. Best regards, liw On Nov 5, 12:05 am, ben robinson wrote: > have you tried using list.Terminate (substituting the name of your list in > place of "list")? > > it works for me in version 1.2, but not in version 2.0.  anyone else have > this experience with version 2.0?  i know, i know, i should start a new > thread... > > ben > > On Wed, Nov 4, 2009 at 5:56 PM, Ariana Rubin wrote: > > > I have a list, with 30 nested lists, and each nested list has a list > > within that has four images that are playing on a loop an infinite > > number of times.  Essentially, the weight is set to a very high > > number, so for all purposes it is infinite.  When the subject is > > watching the sequence of pictures they are supposed to hit the space > > bar when they see the changes, and that should terminate the sublist, > > and go to a response page.  However, I have not been able to find a > > way to terminate the entire sublist (not just the image they are > > currently on) when the space bar (or any other key) is pressed. > > I have tried jumping to a flag, but it can't jump to a flag in a > > different list. > > I tried an inline that would terminate the list when the space bar was > > hit, but it seems like you can't change the termination conditions in > > the middle of the list. > > I have been trying to get it so that when the space bar is pressed > > (with essentially the same inline for each image) the weight or cycle > > (depending on which one is set to a very large number, and it doesn't > > actually matter which one for the rest of the program) gets changed to > > equal zero, and hopefully terminate the sublist.  However, I can't > > figure out a functioning script for this. > > > Please help me in anyway you can as I really need to figure this out! > > I have been working on it all week. > > > Thank you so much in advance! > > ARubin --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 12:45:49 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 04:45:49 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <81b3495f-ba1e-492c-9d5e-b55aee5ace14@g27g2000yqn.googlegroups.com> Message-ID: Works like a charm!! Thanks so much Ben. No idea it would be so simple.. just place the thingy outside the brackets... Now on to the next step... On Nov 4, 10:55 pm, liwenna wrote: > Ok! I can hardly wait to try it now...! > > I'll report back tomorrow, many thanks in advance! > > Have a nice evening, > > liw > > p.s. this might be a double-post... I either accidentally discarded my > previous reply or sent it to Ben in private... :s > > On Nov 4, 10:47 pm, ben robinson wrote: > > > hi liwenna. > > > no, "restid" & m should concatinate "restid" and the value of "m" into a > > single string. should work. not promising. > > > On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > > > Hello Ben, > > > > Thanks for such a quick reply! > > > > It should become something like that indeed! > > > > But... correct me if I am wrong (I am at home now so no e-prime at my > > > disposal, i'll certainly give it a try tomorrow), it seems that in the > > > code you wrote the 'second m' is placed outside the attributename > > > whereas I actually need it to be inside the attribute name, to adress > > > attributes called "restid1", "restid2" and "restid3" . > > > > And (but thats secondary at the moment) it should be a variable other > > > than m as m will run up till 16, whereas this piece of code should be > > > repeated every 4 lines of m. > > > > On Nov 4, 10:10 pm, ben robinson wrote: > > > > something like this? > > > > > for m = 1 to 4 > > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > > next m > > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > > Short question: > > > > > In the piece of code below: how do I implement a variable that > > > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > > > so that I can shorter the code to a single line (using an additional > > > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > > ************************************** > > > > > for m = 1 to 4 > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > randomizearray randompos > > > > > > next m > > > > > *************************************** > > > > > > Long explanation: > > > > > Ok.... So... I have this habit of writing enormous inlines because I > > > > > am generally to lazy or not in the mood to figure out/learn how to > > > > > shorten them.... I decided that I am gonna break this habit and have > > > > > choosen a nice litle experiment to do this with. However: I am stuck > > > > > now. My hope is that someone here knows off hand what lines I need and > > > > > is able to drop me a line. > > > > > > In the final experiment each display holds 16 positions which will be > > > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > > > possible targetstimuli which will each have to appear in one of the 16 > > > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > > > should be used as distractorstimuli and I like to have the location of > > > > > each of the distractorstimuli randomized... Unfortunately this means > > > > > that for each trial there are 15! possible arrangements of the > > > > > distractorstimuli (1 307 674 368 000). I don't like > > > > > pseudorandomizations that well so I took up the challenge and actually > > > > > got quite far so far. For obvious reasons I am working the whole thing > > > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > > This is what I got now: for target ID 1 a list with the 15 > > > > > distractorstimuli for this target is loaded from a textfile into an > > > > > array and randomized. A second array holds the numbers 1-15 which > > > > > corresponds with locations 1-15. For each level of the triallist (m) > > > > > the randomized distractorstimuli are randomly loaded into attributes > > > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > > > When a level is filled, the randompos array is rerandomized so that > > > > > for the next level each distractorstimulus is loaded into a different > > > > > restid-attribute. The piece of code shown below deals with the first 4 > > > > > levels (target ID 1), the code will have to repeat for the next 4 > > > > > levels but then load id2restids.txt instead (containing > > > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > > > inline will still become rather bulky so here's the question again: > > > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > > > perhaps?) that can actually be used IN an attribute name? > > > > > > *********************************************** > > > > > for m = 1 to 4 > > > > > > Open "id1restids.txt" For Input As #1 > > > > > For n = 0 To 2 > > > > > Input #1, randomlist(n) > > > > > Next n > > > > > Close #1 > > > > > > randomizearray randomlist > > > > > > for q = 0 to 2 > > > > > randompos(q) = q > > > > > next q > > > > > > randomizearray randompos > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > randomizearray randompos > > > > > > next m > > > > > ******************************************* > > > > > > I've checked the guides, checked the e-primer, searching all over the > > > > > place for a piece of code that I could steal the trick from, but to no > > > > > avail so far. What certainly doesn't help is that I so far never quite > > > > > got the deal with the & % _ crf things.... (that's probably > > > > > embarrassing but true :p ) > > > > > > I hope someone knows a nice solution for me. > > > > > > Best regards, > > > > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 14:02:42 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 06:02:42 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <48a3512c-aae4-4749-a28b-670142d26ebf@k19g2000yqc.googlegroups.com> Message-ID: It is done and works just great... I am quite happy with it.... says the person who is known for having written out/copy pasted 200 seperate lines of code to create breaks every 20 trials in the past ^.^ (if triallist.sample = 1 then; if triallist.sample = 2 then... etc). Now I got one more thing to ask, seeing as I am trying to make this a decent piece of code... I needed a line that made 'm' (levels of the triallist) run from 1 to 4 if p (targetidentity) is 1, and run from 5 to 8 if p =2, from 9 to 12 if p is 3 etc. This is what i came up with: for m = 1 + 4*(p-1) to 4 + 4*(p-1) But I can imagine that there should be a shortcut for that, like mod or step.... so... is there? anyone? Once more thank you Ben! Greets, happy liw On Nov 5, 1:45 pm, liwenna wrote: > Works like a charm!! > > Thanks so much Ben. No idea it would be so simple.. just place the > thingy outside the brackets... > > Now on to the next step... > > On Nov 4, 10:55 pm, liwenna wrote: > > > Ok! I can hardly wait to try it now...! > > > I'll report back tomorrow, many thanks in advance! > > > Have a nice evening, > > > liw > > > p.s. this might be a double-post... I either accidentally discarded my > > previous reply or sent it to Ben in private... :s > > > On Nov 4, 10:47 pm, ben robinson wrote: > > > > hi liwenna. > > > > no, "restid" & m should concatinate "restid" and the value of "m" into a > > > single string. should work. not promising. > > > > On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > > > > Hello Ben, > > > > > Thanks for such a quick reply! > > > > > It should become something like that indeed! > > > > > But... correct me if I am wrong (I am at home now so no e-prime at my > > > > disposal, i'll certainly give it a try tomorrow), it seems that in the > > > > code you wrote the 'second m' is placed outside the attributename > > > > whereas I actually need it to be inside the attribute name, to adress > > > > attributes called "restid1", "restid2" and "restid3" . > > > > > And (but thats secondary at the moment) it should be a variable other > > > > than m as m will run up till 16, whereas this piece of code should be > > > > repeated every 4 lines of m. > > > > > On Nov 4, 10:10 pm, ben robinson wrote: > > > > > something like this? > > > > > > for m = 1 to 4 > > > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > > > next m > > > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > > > Short question: > > > > > > In the piece of code below: how do I implement a variable that > > > > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > > > > so that I can shorter the code to a single line (using an additional > > > > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > > > ************************************** > > > > > > for m = 1 to 4 > > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > > randomizearray randompos > > > > > > > next m > > > > > > *************************************** > > > > > > > Long explanation: > > > > > > Ok.... So... I have this habit of writing enormous inlines because I > > > > > > am generally to lazy or not in the mood to figure out/learn how to > > > > > > shorten them.... I decided that I am gonna break this habit and have > > > > > > choosen a nice litle experiment to do this with. However: I am stuck > > > > > > now. My hope is that someone here knows off hand what lines I need and > > > > > > is able to drop me a line. > > > > > > > In the final experiment each display holds 16 positions which will be > > > > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > > > > possible targetstimuli which will each have to appear in one of the 16 > > > > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > > > > should be used as distractorstimuli and I like to have the location of > > > > > > each of the distractorstimuli randomized... Unfortunately this means > > > > > > that for each trial there are 15! possible arrangements of the > > > > > > distractorstimuli (1 307 674 368 000). I don't like > > > > > > pseudorandomizations that well so I took up the challenge and actually > > > > > > got quite far so far. For obvious reasons I am working the whole thing > > > > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > > > This is what I got now: for target ID 1 a list with the 15 > > > > > > distractorstimuli for this target is loaded from a textfile into an > > > > > > array and randomized. A second array holds the numbers 1-15 which > > > > > > corresponds with locations 1-15. For each level of the triallist (m) > > > > > > the randomized distractorstimuli are randomly loaded into attributes > > > > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > > > > When a level is filled, the randompos array is rerandomized so that > > > > > > for the next level each distractorstimulus is loaded into a different > > > > > > restid-attribute. The piece of code shown below deals with the first 4 > > > > > > levels (target ID 1), the code will have to repeat for the next 4 > > > > > > levels but then load id2restids.txt instead (containing > > > > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > > > > inline will still become rather bulky so here's the question again: > > > > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > > > > perhaps?) that can actually be used IN an attribute name? > > > > > > > *********************************************** > > > > > > for m = 1 to 4 > > > > > > > Open "id1restids.txt" For Input As #1 > > > > > > For n = 0 To 2 > > > > > > Input #1, randomlist(n) > > > > > > Next n > > > > > > Close #1 > > > > > > > randomizearray randomlist > > > > > > > for q = 0 to 2 > > > > > > randompos(q) = q > > > > > > next q > > > > > > > randomizearray randompos > > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > > randomizearray randompos > > > > > > > next m > > > > > > ******************************************* > > > > > > > I've checked the guides, checked the e-primer, searching all over the > > > > > > place for a piece of code that I could steal the trick from, but to no > > > > > > avail so far. What certainly doesn't help is that I so far never quite > > > > > > got the deal with the & % _ crf things.... (that's probably > > > > > > embarrassing but true :p ) > > > > > > > I hope someone knows a nice solution for me. > > > > > > > Best regards, > > > > > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 15:01:53 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 07:01:53 -0800 Subject: copy/paste objects between experiments in eprime 2? Message-ID: So.. advertised as a feature of e-prime 2.0 I somehow can't copy/paste objects between e-studio files... Is anyone else having this 'problem' and (more importantly) did anyone manage to fix it if they had? I also posted on the PST forum but I'd like to hear from people here too. Best, liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 5 16:44:46 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 11:44:46 -0500 Subject: Terminate a Sublist after a Response In-Reply-To: <2836fa52-b7d6-456d-bc41-f839083ee5ff@r5g2000yqb.googlegrou ps.com> Message-ID: At 11/4/2009 07:34 PM Wednesday, liwenna wrote: >Ben: listname.terminate works for me in 2.0, I use it often to >terminate a practicetrials list when certain criteria are met. Well, liwenna settled that (thanks), but I said I would check and indeed, I also have used List.Terminate successfully in EP2. -- 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 Thu Nov 5 16:47:29 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 11:47:29 -0500 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: Message-ID: liwenna, I already replied to your post at the PST Forum, but would like to also post this here: Sigh. So just now I took a look at this myself. For the record, I ran these tests using EP 2.0.8.22 under Vista (I do not, repeat, do not run subjects under Vista, only program development). We need to pay attention to the source of the copy, the destination of the paste, the method of copy/paste, and the occurrence of name conflicts during the paste, as follows: Source Copy: Structure, Design (e.g., Procedure), Browser Destination Paste: Structure, Design (e.g., Procedure), Browser Method: Drag & Drop, Context (right-click) menu, Edit menu Name Coflict: absent or present This gives us 54 cases (not counting all the Paste Conflict possibilities) which PST engineers should have tested for themselves, but as usual I will step into the gap and do this for them (or have they already reported this in a KB that I missed?) (yes, I seriously am a professional faultfinder, every organization should get one). But we may simplify this a little, as follows: - Drag & Drop works from Structure, Design, and Browser, but only to the Design window of the destination. - Both Edit > Copy and Context menu > Copy work from Structure and Browser windows; Copy is grayed out in the Design window. - Both Edit > Paste and Context menu > Paste work in the Structure, Design, and Browser windows, as long as there is no name conflict. (To paste to the Structure window, you must have the Unreferenced E-Objects selected.) - If an object with the same name already exists in the destination, you will get the Paste Conflict dialog. And here is where the real fun begins... - If you use Context menu > Paste in the Structure window and get a Paste Conflict, you also get a little checkbox off to the side that says "Default", and the dialog does not respond to any entries; furthermore, you cannot switch to any other window on the computer until that dialog is dismissed. You can only press Esc to dismiss the dialog. - Thereafter, further attempts to paste to the Structure or Browser windows will fail until you exit & restart E-Studio. You can still paste to the Design window, but you will get a Paste Conflict dialog even though the earlier paste failed (and even if that used a unique object name). I'm sure I missed something, but you get the idea. (Aside to Brandon: This is an example of the sort of documentation I would like to see PST provide for us, instead of me puzzling all this out for myself.) OK, now somebody has to post this to Web Support to get their attention, and the more of us who do that the better. -- David McFarlane, Professional Faultfinder At 11/5/2009 10:01 AM Thursday, you wrote: >So.. advertised as a feature of e-prime 2.0 I somehow can't copy/paste >objects between e-studio files... >Is anyone else having this 'problem' and (more importantly) did anyone >manage to fix it if they had? > >I also posted on the PST forum but I'd like to hear from people here >too. > >Best, > >liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 vandypsychimaging at gmail.com Thu Nov 5 17:57:32 2009 From: vandypsychimaging at gmail.com (clshores) Date: Thu, 5 Nov 2009 09:57:32 -0800 Subject: Have fixation shown for duration if a key is pressed Message-ID: We currently have an experiment when the subject is shown a fixation - a cue - an image. They are given 2.5s to respond to the image. If they respond before the 2.5s is up we would like the fixation to display for the remainder of the 2.5s. Is there an easy way to do this? 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 Thu Nov 5 18:23:10 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 13:23:10 -0500 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <9cdd13b3-ba86-4efc-8608-77f427b99e9c@j4g2000yqe.googlegrou ps.com> Message-ID: Try setting End Action to (none). (I just did my own search of the Getting Started and User's Guides, you only learn this in passing deep within Chapter 3 of the User's Guide. I don't even remember how I learned this myself, probably just pressing all the buttons myself long ago as I continue to do to this day. This really needs to be better documented. But I would be glad to be corrected.) -- David McFarlane, Professional Faultfinder >We currently have an experiment when the subject is shown a fixation - >a cue - an image. They are given 2.5s to respond to the image. If >they respond before the 2.5s is up we would like the fixation to >display for the remainder of the 2.5s. > >Is there an easy way to do this? > >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 Thu Nov 5 18:24:19 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 13:24:19 -0500 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <6c8f86c6-de60-4766-87fc-9601a9db34fb@o10g2000yqa.googlegro ups.com> Message-ID: liwenna, I applaud you for wanting to improve your coding skills and fussing over these little details. FWIW, I would have come up with much the same line, only I might reduce the math a tiny bit, and I like to add just a few more parantheses for clarity: For m = (4*p - 3) to (4*p) But to be honest I don't know if that is any better or clearer than what you already did. Cheers, -- David McFarlane, Professional Faultfinder At 11/5/2009 09:02 AM Thursday, you wrote: >It is done and works just great... I am quite happy with it.... says >the person who is known for having written out/copy pasted 200 >seperate lines of code to create breaks every 20 trials in the past >^.^ (if triallist.sample = 1 then; if triallist.sample = 2 then... >etc). > >Now I got one more thing to ask, seeing as I am trying to make this a >decent piece of code... I needed a line that made 'm' (levels of the >triallist) run from 1 to 4 if p (targetidentity) is 1, and run from 5 >to 8 if p =2, from 9 to 12 if p is 3 etc. > >This is what i came up with: for m = 1 + 4*(p-1) to 4 + 4*(p-1) >But I can imagine that there should be a shortcut for that, like mod >or step.... so... is there? anyone? > >Once more thank you Ben! > > >Greets, > >happy liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 vandypsychimaging at gmail.com Thu Nov 5 18:32:24 2009 From: vandypsychimaging at gmail.com (clshores) Date: Thu, 5 Nov 2009 10:32:24 -0800 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <4af31817.5944f10a.09e3.ffff81c6SMTPIN_ADDED@gmr-mx.google.com> Message-ID: That makes the image stay on the screen for the duration. We want the fixation image to display for the remainder of the time. THanks for the reply. On Nov 5, 12:23 pm, David McFarlane wrote: > Try setting End Action to (none). > > (I just did my own search of the Getting Started and User's Guides, > you only learn this in passing deep within Chapter 3 of the User's > Guide.  I don't even remember how I learned this myself, probably > just pressing all the buttons myself long ago as I continue to do to > this day.  This really needs to be better documented.  But I would be > glad to be corrected.) > > -- David McFarlane, Professional Faultfinder > > >We currently have an experiment when the subject is shown a fixation - > >a cue - an image.  They are given 2.5s to respond to the image.  If > >they respond before the 2.5s is up we would like the fixation to > >display for the remainder of the 2.5s. > > >Is there an easy way to do this? > > >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 Thu Nov 5 18:38:23 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 13:38:23 -0500 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: Message-ID: Then I did not follow the description of your experiment, sorry. -- David McFarlane, Professional Faultfinder >That makes the image stay on the screen for the duration. We want the >fixation image to display for the remainder of the time. > >THanks for the reply. > >On Nov 5, 12:23 pm, David McFarlane wrote: > > Try setting End Action to (none). > > > > (I just did my own search of the Getting Started and User's Guides, > > you only learn this in passing deep within Chapter 3 of the User's > > Guide. I don't even remember how I learned this myself, probably > > just pressing all the buttons myself long ago as I continue to do to > > this day. This really needs to be better documented. But I would be > > glad to be corrected.) > > > > -- David McFarlane, Professional Faultfinder > > > > >We currently have an experiment when the subject is shown a fixation - > > >a cue - an image. They are given 2.5s to respond to the image. If > > >they respond before the 2.5s is up we would like the fixation to > > >display for the remainder of the 2.5s. > > > > >Is there an easy way to do this? > > > > >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 tobias.fw at gmail.com Thu Nov 5 18:42:20 2009 From: tobias.fw at gmail.com (Tobi) Date: Thu, 5 Nov 2009 10:42:20 -0800 Subject: no image should be loaded for "?" in list Message-ID: Hi together, I have a problem as fallows: I have a display containing n positions as specified in the "slide element". Which bitmap is supposed to be placed on which position is then defined in a list. Sometimes, I wish to have no bitmap at all on some positions. Therefore I left the "?" in the list. An error message occurs saying "Filename or image display has not been set". It is the same if I leave a blank in the respective cell. I also thought about displaying en empty bitmap (that is in the color of the background), however the positions are superimposed. Therefore, te bitmaps would only be partly displayed. Maybe there is an easy solution, I didn't find any. Thanks a lot and cheers, Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 tobias.fw at gmail.com Thu Nov 5 18:54:39 2009 From: tobias.fw at gmail.com (Tobi) Date: Thu, 5 Nov 2009 10:54:39 -0800 Subject: Response devices In-Reply-To: <3345e4a50911020733y76084571hfd040bfae086271b@mail.gmail.com> Message-ID: Thanks for your input. I somehow like the idea of doing some handycraft even though I am not an educated craftsman. For my diploma thesis I had to braze cable plugs in order to being able to put controllers (via audio inlines) inside a shielded cabin. In terms of response devices I now customised a keyboard ("Logitech ultraflat"). I removed all buttons except 4 (those I need for the current experiment) and attached a thin pad of foamed rubber (as available in handicraft shops). I made holes for they keys that now bunch out. The layer of foamed rubber is flush with the keyboards surface. It looks kind of professional now and still isn't expensive (18,- €). However, timing might be an issue. Do you know how precisely USB keyboards record the RT? The XBox things sounds very sophisticated. What kinds of experiments are you doing with it? Do you know about the timing precision? Best, Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 5 19:04:32 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 14:04:32 -0500 Subject: Response devices In-Reply-To: <0ffb4a1a-1a89-4639-b3e7-2d11e24394c9@j19g2000yqk.googlegro ups.com> Message-ID: Tobi, For more money you could also create custom keyboard designs with the Ergodex DX1 (http://www.ergodex.com/mainpage.htm ), although I don't think it's timing is any better than an ordinary keyboard, and I like your inexpensive custom design better. The latest reference I have on keyboard timing is Plant, R. R., & Turner, G. (2009), "Millisecond precision psychological research in a world of commodity computers: New hardware, new problems?" Beh Res Meth 41: 598-614. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:54 PM Thursday, you wrote: >Thanks for your input. I somehow like the idea of doing some >handycraft even though I am not an educated craftsman. For my diploma >thesis I had to braze cable plugs in order to being able to put >controllers (via audio inlines) inside a shielded cabin. >In terms of response devices I now customised a keyboard ("Logitech >ultraflat"). I removed all buttons except 4 (those I need for the >current experiment) and attached a thin pad of foamed rubber (as >available in handicraft shops). I made holes for they keys that now >bunch out. The layer of foamed rubber is flush with the keyboards >surface. It looks kind of professional now and still isn't expensive >(18,- €). > >However, timing might be an issue. Do you know how precisely USB >keyboards record the RT? > >The XBox things sounds very sophisticated. What kinds of experiments >are you doing with it? Do you know about the timing precision? > >Best, >Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 19:12:35 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 11:12:35 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <4af3185c.5944f10a.0b3c.ffff81e5SMTPIN_ADDED@gmr-mx.google.com> Message-ID: *bows* On Nov 5, 7:24 pm, David McFarlane wrote: > liwenna, > > I applaud you for wanting to improve your coding skills and fussing > over these little details. > > FWIW, I would have come up with much the same line, only I might > reduce the math a tiny bit, and I like to add just a few more > parantheses for clarity: > > For m = (4*p - 3) to (4*p) > > But to be honest I don't know if that is any better or clearer than > what you already did. > > Cheers, > -- David McFarlane, Professional Faultfinder > > At 11/5/2009 09:02 AM Thursday, you wrote: > > >It is done and works just great... I am quite happy with it.... says > >the person who is known for having written out/copy pasted 200 > >seperate lines of code to create breaks every 20 trials in the past > >^.^ (if triallist.sample = 1 then; if triallist.sample = 2 then... > >etc). > > >Now I got one more thing to ask, seeing as I am trying to make this a > >decent piece of code... I needed a line that made 'm' (levels of the > >triallist) run from 1 to 4 if p (targetidentity) is 1, and run from 5 > >to 8 if p =2, from 9 to 12 if p is 3 etc. > > >This is what i came up with:  for m = 1 + 4*(p-1) to 4 + 4*(p-1) > >But I can imagine that there should be a shortcut for that, like mod > >or step.... so... is there? anyone? > > >Once more thank you Ben! > > >Greets, > > >happy liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 21:23:46 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:23:46 -0800 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <1b523016-b121-4deb-a80b-1cd71ce9bd2b@f20g2000vbl.googlegroups.com> Message-ID: obviously... "if triallist.sample > 1 then fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = 500 +(2500 - prevrt)" ... should be: "if triallist.sample > 1 then fixationslide.duration = 500 + (2500 - prevrt)" On Nov 5, 10:21 pm, liwenna wrote: > Hey Cishores, > > Am I correct to think that you basically want/need to ensure that > there is exactly 2,5 seconds + the 'normal fixation time' between the > onset of the image and the next cue? > > How about prolonging the duration of the fixation cross on the NEXT > trial with the remainder of the 2.5 seconds?  This way you also won't > end your last trial with a fixationcross as you would if an extra > fixationcross is added at the end of a trial. > > I am not entirely sure if my suggestion works (or works right away) as > I have no e-prime to try at the moment... but what you could do is: > first declare a global variable that will have the response time for > each trial written to it so it can be used in the next trial: on the > user tab of the script window type "declare prevRT as integer". > On your trialproc  you probably have 3 slides: fixationslide, cueslide > and imageslide (i am just making up some names now). Insert an inline > after the imageslide that writes the response time to the 'prevRT'- > variable: if imageslide.rt > 0 then prevRT = imageslide.rt (the first>0 part is to ensure that there actually WAS a response during the > > imageslide, I don't know what you want the program to do in case of no > response... things might actually be done litle different depending on > that). Now at the end of the trial the variable prevRT holds the > response time on that trial and carries this value over to the next > trial, so we can use it to prolonge the fixationslide. I think that > that should be possible by placing an inline right before the > fixationslide with something like: "if triallist.sample > 1 then > fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = > 500 +(2500 - prevrt)" wherein 500 is my guess at your 'normal' > fixationslide duration, the (2500 - prevrt) is rather obvious I hope > and the if triallist.sample > 1 part should ensure that the first > trial doesn't start with a 3000 ms fixation cross. > > I think that in order for this to work you should leave the duration > on the fixationslide properties tab empty. > > I hope that this is of some help to you. As said: no e-prime here, so > no trying out and no guarantees :) Alternatively it might be possible > to use two states on your imageslide, one with the image and one is an > 'extra' fixationcross and then have the 2500 ms slide switch states > when a response is given, but a) not sure if that works, b) can't make > up the code top of my head and c) code would depend on the inputdevice > for the response I think. > > Best regards, > > liwenna > > On Nov 5, 7:38 pm, David McFarlane wrote: > > > Then I did not follow the description of your experiment, sorry. > > > -- David McFarlane, Professional Faultfinder > > > >That makes the image stay on the screen for the duration.  We want the > > >fixation image to display for the remainder of the time. > > > >THanks for the reply. > > > >On Nov 5, 12:23 pm, David McFarlane wrote: > > > > Try setting End Action to (none). > > > > > (I just did my own search of the Getting Started and User's Guides, > > > > you only learn this in passing deep within Chapter 3 of the User's > > > > Guide.  I don't even remember how I learned this myself, probably > > > > just pressing all the buttons myself long ago as I continue to do to > > > > this day.  This really needs to be better documented.  But I would be > > > > glad to be corrected.) > > > > > -- David McFarlane, Professional Faultfinder > > > > > >We currently have an experiment when the subject is shown a fixation - > > > > >a cue - an image.  They are given 2.5s to respond to the image.  If > > > > >they respond before the 2.5s is up we would like the fixation to > > > > >display for the remainder of the 2.5s. > > > > > >Is there an easy way to do this? > > > > > >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 Thu Nov 5 21:21:00 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:21:00 -0800 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <4af31ba8.5344f10a.54e3.7bccSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hey Cishores, Am I correct to think that you basically want/need to ensure that there is exactly 2,5 seconds + the 'normal fixation time' between the onset of the image and the next cue? How about prolonging the duration of the fixation cross on the NEXT trial with the remainder of the 2.5 seconds? This way you also won't end your last trial with a fixationcross as you would if an extra fixationcross is added at the end of a trial. I am not entirely sure if my suggestion works (or works right away) as I have no e-prime to try at the moment... but what you could do is: first declare a global variable that will have the response time for each trial written to it so it can be used in the next trial: on the user tab of the script window type "declare prevRT as integer". On your trialproc you probably have 3 slides: fixationslide, cueslide and imageslide (i am just making up some names now). Insert an inline after the imageslide that writes the response time to the 'prevRT'- variable: if imageslide.rt > 0 then prevRT = imageslide.rt (the first >0 part is to ensure that there actually WAS a response during the imageslide, I don't know what you want the program to do in case of no response... things might actually be done litle different depending on that). Now at the end of the trial the variable prevRT holds the response time on that trial and carries this value over to the next trial, so we can use it to prolonge the fixationslide. I think that that should be possible by placing an inline right before the fixationslide with something like: "if triallist.sample > 1 then fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = 500 +(2500 - prevrt)" wherein 500 is my guess at your 'normal' fixationslide duration, the (2500 - prevrt) is rather obvious I hope and the if triallist.sample > 1 part should ensure that the first trial doesn't start with a 3000 ms fixation cross. I think that in order for this to work you should leave the duration on the fixationslide properties tab empty. I hope that this is of some help to you. As said: no e-prime here, so no trying out and no guarantees :) Alternatively it might be possible to use two states on your imageslide, one with the image and one is an 'extra' fixationcross and then have the 2500 ms slide switch states when a response is given, but a) not sure if that works, b) can't make up the code top of my head and c) code would depend on the inputdevice for the response I think. Best regards, liwenna On Nov 5, 7:38 pm, David McFarlane wrote: > Then I did not follow the description of your experiment, sorry. > > -- David McFarlane, Professional Faultfinder > > >That makes the image stay on the screen for the duration.  We want the > >fixation image to display for the remainder of the time. > > >THanks for the reply. > > >On Nov 5, 12:23 pm, David McFarlane wrote: > > > Try setting End Action to (none). > > > > (I just did my own search of the Getting Started and User's Guides, > > > you only learn this in passing deep within Chapter 3 of the User's > > > Guide.  I don't even remember how I learned this myself, probably > > > just pressing all the buttons myself long ago as I continue to do to > > > this day.  This really needs to be better documented.  But I would be > > > glad to be corrected.) > > > > -- David McFarlane, Professional Faultfinder > > > > >We currently have an experiment when the subject is shown a fixation - > > > >a cue - an image.  They are given 2.5s to respond to the image.  If > > > >they respond before the 2.5s is up we would like the fixation to > > > >display for the remainder of the 2.5s. > > > > >Is there an easy way to do this? > > > > >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 Thu Nov 5 21:35:15 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 16:35:15 -0500 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <25d41f59-9199-4b0a-aeca-04a813366539@p28g2000vbi.googlegro ups.com> Message-ID: At 11/5/2009 04:23 PM Thursday, liwenna wrote: >obviously... > >"if triallist.sample > 1 then >fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = >500 +(2500 - prevrt)" > >... should be: >"if triallist.sample > 1 then >fixationslide.duration = 500 + (2500 - prevrt)" > >On Nov 5, 10:21 pm, liwenna wrote: > > Hey Cishores, > > > > Am I correct to think that you basically want/need to ensure that > > there is exactly 2,5 seconds + the 'normal fixation time' between the > > onset of the image and the next cue? Ah, if that is the issue, might also see http://support.pstnet.com/forum/Topic1988-12-1.aspx , sorry if I misunderstood that earlier. -- David McFarlane, Professional Faultfinder > > > > How about prolonging the duration of the fixation cross on the NEXT > > trial with the remainder of the 2.5 seconds? This way you also won't > > end your last trial with a fixationcross as you would if an extra > > fixationcross is added at the end of a trial. > > > > I am not entirely sure if my suggestion works (or works right away) as > > I have no e-prime to try at the moment... but what you could do is: > > first declare a global variable that will have the response time for > > each trial written to it so it can be used in the next trial: on the > > user tab of the script window type "declare prevRT as integer". > > On your trialproc you probably have 3 slides: fixationslide, cueslide > > and imageslide (i am just making up some names now). Insert an inline > > after the imageslide that writes the response time to the 'prevRT'- > > variable: if imageslide.rt > 0 then prevRT = imageslide.rt (the > first>0 part is to ensure that there actually WAS a response during the > > > > imageslide, I don't know what you want the program to do in case of no > > response... things might actually be done litle different depending on > > that). Now at the end of the trial the variable prevRT holds the > > response time on that trial and carries this value over to the next > > trial, so we can use it to prolonge the fixationslide. I think that > > that should be possible by placing an inline right before the > > fixationslide with something like: "if triallist.sample > 1 then > > fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = > > 500 +(2500 - prevrt)" wherein 500 is my guess at your 'normal' > > fixationslide duration, the (2500 - prevrt) is rather obvious I hope > > and the if triallist.sample > 1 part should ensure that the first > > trial doesn't start with a 3000 ms fixation cross. > > > > I think that in order for this to work you should leave the duration > > on the fixationslide properties tab empty. > > > > I hope that this is of some help to you. As said: no e-prime here, so > > no trying out and no guarantees :) Alternatively it might be possible > > to use two states on your imageslide, one with the image and one is an > > 'extra' fixationcross and then have the 2500 ms slide switch states > > when a response is given, but a) not sure if that works, b) can't make > > up the code top of my head and c) code would depend on the inputdevice > > for the response I think. > > > > Best regards, > > > > liwenna > > > > On Nov 5, 7:38 pm, David McFarlane wrote: > > > > > Then I did not follow the description of your experiment, sorry. > > > > > -- David McFarlane, Professional Faultfinder > > > > > >That makes the image stay on the screen for the duration. We want the > > > >fixation image to display for the remainder of the time. > > > > > >THanks for the reply. > > > > > >On Nov 5, 12:23 pm, David McFarlane wrote: > > > > > Try setting End Action to (none). > > > > > > > (I just did my own search of the Getting Started and User's Guides, > > > > > you only learn this in passing deep within Chapter 3 of the User's > > > > > Guide. I don't even remember how I learned this myself, probably > > > > > just pressing all the buttons myself long ago as I continue to do to > > > > > this day. This really needs to be better documented. But I would be > > > > > glad to be corrected.) > > > > > > > -- David McFarlane, Professional Faultfinder > > > > > > > >We currently have an experiment when the subject is shown > a fixation - > > > > > >a cue - an image. They are given 2.5s to respond to the image. If > > > > > >they respond before the 2.5s is up we would like the fixation to > > > > > >display for the remainder of the 2.5s. > > > > > > > >Is there an easy way to do this? > > > > > > > >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 Thu Nov 5 21:39:58 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:39:58 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <5722c97d-71fc-4629-87db-ba50e1dd9bb4@z41g2000yqz.googlegroups.com> Message-ID: How about..... adding an attribute to your list that holds the number of bitmaps that you need to use in that level/trail called say... "nbitmaps" and give the slide element multiple states that are called 1 2 3 4 etc. and hold 1 2 3 or 4 images. Then set the slidestate to [nbitmaps] and according to the value of 'nbitmaps' it will show the slidestate with 1 2 3 or 4 imageobjects in it. As a consequence you might also need to specify the x and y values (positions) of each imageobject in the triallist instead of in the properties of each imageobject (as I think you got them now?). I am not entirely sure if e-prime will allow the slideobject to run if not all referenced values for all slidestates are being adressed in the triallist (as would be the case for say slidestate 4 in a nbitmap = 3 trial) but you can give it a shot; and also, depending on your actually number of possible positions, this might be not a feasible option... but yeah... it's just a suggestion. Alternatively you might be able to solve it somehow by drawing the entire canvas for each trial in an inline but that definitly is a lot of work. Then there is a vague notion somewhere in my head that you can bring imageobjects to the front or sent them to the back... but I have no friggin clue as to how to do that 'dynamically' based on each trial's demands.... That would be all for the moment ... best, liw On Nov 5, 7:42 pm, Tobi wrote: > Hi together, > > I have a problem as fallows: I have a display containing n positions > as specified in the "slide element". Which bitmap is supposed to be > placed on which position is then defined in a list. Sometimes, I wish > to have no bitmap at all on some positions. Therefore I left the "?" > in the list. An error message occurs saying "Filename or image display > has not been set". It is the same if I leave a blank in the respective > cell. > > I also thought about displaying en empty bitmap (that is in the color > of the background), however the positions are superimposed. Therefore, > te bitmaps would only be partly displayed. > > Maybe there is an easy solution, I didn't find any. > Thanks a lot and cheers, > Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 21:52:29 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:52:29 -0800 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <4af301bc.5844f10a.1967.7aa5SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hey David, That is a very long and detailed response (twice!) and thank you for that. It shows your professional faultfinder status ;) Unfortunately I see a lot of options in there that I did try and that gave absolutely none results at all. At best the program seems to get confused and will not even show newly added (not copy pasted from another experiment) objects anymore. Closing and reopening the file solves that but doesn't bring forth the presumably copy-pasted object. I also do have many recollections of e-prime crashing completely when trying to move objects between experiments (drag&drop style) (don't know why I try that every so often). I get your message about contacting pst support... I might on monday... I find that I feel rather meek about this issue.... *shrugs* copy pasting objects between e-studio files just sounded to good to be true anyways.... Which is probably why I didn't delve into this untill today even thought I am using e-prime 2 for 9 months now ^.^ Thanks again for your elaborate response thought. Did you do all that today or did you happen to have this little research ready? Greet, liw On Nov 5, 5:47 pm, David McFarlane wrote: > liwenna, > > I already replied to your post at the PST Forum, but would like to > also post this here: > > Sigh. So just now I took a look at this myself. For the record, I ran > these tests using EP 2.0.8.22 under Vista (I do not, repeat, do not > run subjects under Vista, only program development). > > We need to pay attention to the source of the copy, the destination > of the paste, the method of copy/paste, and the occurrence of name > conflicts during the paste, as follows: > > Source Copy: Structure, Design (e.g., Procedure), Browser > Destination Paste: Structure, Design (e.g., Procedure), Browser > Method: Drag & Drop, Context (right-click) menu, Edit menu > Name Coflict: absent or present > > This gives us 54 cases (not counting all the Paste Conflict > possibilities) which PST engineers should have tested for themselves, > but as usual I will step into the gap and do this for them (or have > they already reported this in a KB that I missed?) (yes, I seriously > am a professional faultfinder, every organization should get one). > But we may simplify this a little, as follows: > > - Drag & Drop works from Structure, Design, and Browser, but only to > the Design window of the destination. > - Both Edit > Copy and Context menu > Copy work from Structure and > Browser windows; Copy is grayed out in the Design window. > - Both Edit > Paste and Context menu > Paste work in the Structure, > Design, and Browser windows, as long as there is no name conflict. > (To paste to the Structure window, you must have the Unreferenced > E-Objects selected.) > - If an object with the same name already exists in the destination, > you will get the Paste Conflict dialog. And here is where the real > fun begins... >      - If you use Context menu > Paste in the Structure window and > get a Paste Conflict, you also get a little checkbox off to the side > that says "Default", and the dialog does not respond to any entries; > furthermore, you cannot switch to any other window on the computer > until that dialog is dismissed. You can only press Esc to dismiss the dialog. >      - Thereafter, further attempts to paste to the Structure or > Browser windows will fail until you exit & restart E-Studio. You can > still paste to the Design window, but you will get a Paste Conflict > dialog even though the earlier paste failed (and even if that used a > unique object name). > > I'm sure I missed something, but you get the idea. > > (Aside to Brandon: This is an example of the sort of documentation I > would like to see PST provide for us, instead of me puzzling all this > out for myself.) > > OK, now somebody has to post this to Web Support to get their > attention, and the more of us who do that the better. > > -- David McFarlane, Professional Faultfinder > > At 11/5/2009 10:01 AM Thursday, you wrote: > > >So.. advertised as a feature of e-prime 2.0 I somehow can't copy/paste > >objects between e-studio files... > >Is anyone else having this 'problem' and (more importantly) did anyone > >manage to fix it if they had? > > >I also posted on the PST forum but I'd like to hear from people here > >too. > > >Best, > > >liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 5 22:44:37 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 17:44:37 -0500 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <6c61e602-8562-4ef2-ac76-883e835f3748@h10g2000vbm.googlegro ups.com> Message-ID: liw, >Unfortunately I see a lot of options in there that I did try and that >gave absolutely none results at all. Hmm, I guess different folks get different results, thanks for testing & posting back. >I get your message about contacting pst support... I might on >monday... I find that I feel rather meek about this issue.... *shrugs* >copy pasting objects between e-studio files just sounded to good to be >true anyways.... As to that, please do not be shy with PST Web Support, here is an example question that they provide at their own site: "How do I randomize a List object?". Now if Web Support likes to take questions that are answered in Tutorial 1 of the Getting Started Guide, I imagine they will welcome any old question from the likes of you & me. I am just now catching on to this myself and have started making much more liberal use of Web Support, and I have to say that those folks have given me some pretty darn good answers, I am just sorry that I overlooked them for so long. So let's make use of them, that's what they are there for. >Thanks again for your elaborate response thought. Did you do all that >today or did you happen to have this little research ready? Um, like a lot of things I do, I started to dash off a 2-minute response and then got caught up in a much longer process. Yes, I did all that this morning. Because I remembered successfully using copy & paste before, I started to write, "In this case I must defend PST..." But as a professional faultfinder, I have to check my facts, so I retried it, got a couple glitches, and before I knew it was knee-deep in testing it all more systematically so that I could make a proper report. OK, I'm overdue to bike home again here on the western edge of the Eastern Time Zone, got to make dinner before Survivor tonight... Cheers, -- 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 liwenna at gmail.com Thu Nov 5 22:56:14 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 14:56:14 -0800 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <4af3555f.5944f10a.09e3.ffff8488SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Enjoy survivor night! (whatever that might be) ow and I hope that you don't read that before tomorrow ;) It's about midnight here so I go off to bed. o/ On Nov 5, 11:44 pm, David McFarlane wrote: > liw, > > >Unfortunately I see a lot of options in there that I did try and that > >gave absolutely none results at all. > > Hmm, I guess different folks get different results, thanks for > testing & posting back. > > >I get your message about contacting pst support... I might on > >monday... I find that I feel rather meek about this issue.... *shrugs* > >copy pasting objects between e-studio files just sounded to good to be > >true anyways.... > > As to that, please do not be shy with PST Web Support, here is an > example question that they provide at their own site:  "How do I > randomize a List object?".  Now if Web Support likes to take > questions that are answered in Tutorial 1 of the Getting Started > Guide, I imagine they will welcome any old question from the likes of > you & me.  I am just now catching on to this myself and have started > making much more liberal use of Web Support, and I have to say that > those folks have given me some pretty darn good answers, I am just > sorry that I overlooked them for so long.  So let's make use of them, > that's what they are there for. > > >Thanks again for your elaborate response thought. Did you do all that > >today or did you happen to have this little research ready? > > Um, like a lot of things I do, I started to dash off a 2-minute > response and then got caught up in a much longer process.  Yes, I did > all that this morning.  Because I remembered successfully using copy > & paste before, I started to write, "In this case I must defend > PST..."  But as a professional faultfinder, I have to check my facts, > so I retried it, got a couple glitches, and before I knew it was > knee-deep in testing it all more systematically so that I could make > a proper report. > > OK, I'm overdue to bike home again here on the western edge of the > Eastern Time Zone, got to make dinner before Survivor tonight... > > Cheers, > -- 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 liwenna at gmail.com Thu Nov 5 23:00:40 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 15:00:40 -0800 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <1e595291-fdc9-4a7a-9931-9c25fdf1f068@o13g2000vbl.googlegroups.com> Message-ID: Oh I see now.... it's called 'expedition robinson' in the dutch format. That somehow seems to me as a little mundane pastime for a professional faultfinder... *redefines her mental image of DMcF* On Nov 5, 11:56 pm, liwenna wrote: > Enjoy survivor night!  (whatever that might be) > > ow and I hope that you don't read that before tomorrow ;) It's about > midnight here so I go off to bed. o/ > > On Nov 5, 11:44 pm, David McFarlane wrote: > > > liw, > > > >Unfortunately I see a lot of options in there that I did try and that > > >gave absolutely none results at all. > > > Hmm, I guess different folks get different results, thanks for > > testing & posting back. > > > >I get your message about contacting pst support... I might on > > >monday... I find that I feel rather meek about this issue.... *shrugs* > > >copy pasting objects between e-studio files just sounded to good to be > > >true anyways.... > > > As to that, please do not be shy with PST Web Support, here is an > > example question that they provide at their own site:  "How do I > > randomize a List object?".  Now if Web Support likes to take > > questions that are answered in Tutorial 1 of the Getting Started > > Guide, I imagine they will welcome any old question from the likes of > > you & me.  I am just now catching on to this myself and have started > > making much more liberal use of Web Support, and I have to say that > > those folks have given me some pretty darn good answers, I am just > > sorry that I overlooked them for so long.  So let's make use of them, > > that's what they are there for. > > > >Thanks again for your elaborate response thought. Did you do all that > > >today or did you happen to have this little research ready? > > > Um, like a lot of things I do, I started to dash off a 2-minute > > response and then got caught up in a much longer process.  Yes, I did > > all that this morning.  Because I remembered successfully using copy > > & paste before, I started to write, "In this case I must defend > > PST..."  But as a professional faultfinder, I have to check my facts, > > so I retried it, got a couple glitches, and before I knew it was > > knee-deep in testing it all more systematically so that I could make > > a proper report. > > > OK, I'm overdue to bike home again here on the western edge of the > > Eastern Time Zone, got to make dinner before Survivor tonight... > > > Cheers, > > -- 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 tobias.fw at gmail.com Fri Nov 6 11:40:52 2009 From: tobias.fw at gmail.com (Tobi) Date: Fri, 6 Nov 2009 03:40:52 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <0e101a92-14fc-405c-a567-4dc510ba90d2@r3g2000vbi.googlegroups.com> Message-ID: Thank a lot, it is a good idea with the different slide states. Actually there is always only one object displayed, so I don't need to specify the number. However, I can only make up to 10 slide states apparently. As I have 14 different locations I would need 14, though... Is there a way to have more than 10? On 5 Nov., 22:39, liwenna wrote: > How about..... > > adding an attribute to your list that holds the number of bitmaps that > you need to use in that level/trail called say... "nbitmaps" and give > the slide element multiple states that are called 1 2 3 4 etc. and > hold 1 2 3 or 4 images. Then set the slidestate to [nbitmaps] and > according to the value of 'nbitmaps' it will show the slidestate with > 1 2 3 or 4 imageobjects in it. As a consequence you might also need to > specify the x and y values (positions) of each imageobject in the > triallist instead of in the properties of each imageobject (as I think > you got them now?). I am not entirely sure if e-prime will allow the > slideobject to run if not all referenced values for all slidestates > are being adressed in the triallist (as would be the case for say > slidestate 4 in a nbitmap = 3 trial) but you can give it a shot; and > also, depending on your actually number of possible positions, this > might be not a feasible option... but yeah... it's just a suggestion. > > Alternatively you might be able to solve it somehow by drawing the > entire canvas for each trial in an inline but that definitly is a lot > of work. > > Then there is a vague notion somewhere in my head that you can bring > imageobjects to the front or sent them to the back... but I have no > friggin clue as to how to do that 'dynamically' based on each trial's > demands.... > > That would be all for the moment ... > > best, > > liw > > On Nov 5, 7:42 pm, Tobi wrote: > > > Hi together, > > > I have a problem as fallows: I have a display containing n positions > > as specified in the "slide element". Which bitmap is supposed to be > > placed on which position is then defined in a list. Sometimes, I wish > > to have no bitmap at all on some positions. Therefore I left the "?" > > in the list. An error message occurs saying "Filename or image display > > has not been set". It is the same if I leave a blank in the respective > > cell. > > > I also thought about displaying en empty bitmap (that is in the color > > of the background), however the positions are superimposed. Therefore, > > te bitmaps would only be partly displayed. > > > Maybe there is an easy solution, I didn't find any. > > Thanks a lot and cheers, > > Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 A.McGuffie at Coventry.ac.uk Fri Nov 6 12:21:57 2009 From: A.McGuffie at Coventry.ac.uk (Evertox) Date: Fri, 6 Nov 2009 04:21:57 -0800 Subject: Connecting E-Prime to Biopac Message-ID: Hi, I am currently trying to trigger a Biopac system from E-Prime using an STP100 and MP30. This works fine using a PCI DIO-24 digital card from SuperLab but not when connected to the parallel port with E-Prime. Has anyone used this combination in the past, and if so could you supply the cable pin-outs between the two. Note, this is an STP100 and not an STP100C. I have been in contact with BIOPAC and whilst they have supplied a standard cable and an E- Prime .es test program, the triggers do not appear. A pulse can be measured on D0 from the parallel port but seems to be dragged down when connected to the STP100 opto-isolator. I know this is a hardware issue but surely there must be E-Prime users that have tried this combination previously. I would appreciate any help concerning this issue. Thanks Anthony McGuffie Coventry University --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Fri Nov 6 12:43:18 2009 From: pquain at une.edu.au (Peter Quain) Date: Fri, 6 Nov 2009 23:43:18 +1100 Subject: Connecting E-Prime to Biopac In-Reply-To: Message-ID: Hi Anthony Perhaps you could still use the DIO card? It would have documentation, and you could just write to its port address Peter At 11:21 PM 6/11/2009, you wrote: >Hi, > >I am currently trying to trigger a Biopac system from E-Prime using an >STP100 and MP30. This works fine using a PCI DIO-24 digital card from >SuperLab but not when connected to the parallel port with E-Prime. > >Has anyone used this combination in the past, and if so could you >supply the cable pin-outs between the two. >Note, this is an STP100 and not an STP100C. I have been in contact >with BIOPAC and whilst they have supplied a standard cable and an E- >Prime .es test program, the triggers do not appear. > >A pulse can be measured on D0 from the parallel port but seems to be >dragged down when connected to the STP100 opto-isolator. > >I know this is a hardware issue but surely there must be E-Prime users >that have tried this combination previously. I would appreciate any >help concerning this issue. > >Thanks > >Anthony McGuffie >Coventry University > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 A.McGuffie at Coventry.ac.uk Fri Nov 6 12:50:28 2009 From: A.McGuffie at Coventry.ac.uk (Evertox) Date: Fri, 6 Nov 2009 04:50:28 -0800 Subject: Connecting E-Prime to Biopac In-Reply-To: <200911061243.nA6ChRkm016797@mail5.tpg.com.au> Message-ID: Can you use a Measurement Computing DIO 24 card with E-Prime? On Nov 6, 12:43 pm, Peter Quain wrote: > Hi Anthony > > Perhaps you could still use the DIO card? It would have > documentation, and you could just write to its port address > > Peter > > At 11:21 PM 6/11/2009, you wrote: > > > > >Hi, > > >I am currently trying to trigger a Biopac system from E-Prime using an > >STP100 and MP30. This works fine using a PCI DIO-24 digital card from > >SuperLab but not when connected to the parallel port with E-Prime. > > >Has anyone used this combination in the past, and if so could you > >supply the cable pin-outs between the two. > >Note, this is an STP100 and not an STP100C. I have been in contact > >with BIOPAC and whilst they have supplied a standard cable and an E- > >Prime .es test program, the triggers do not appear. > > >A pulse can be measured on D0 from the parallel port but seems to be > >dragged down when connected to the STP100 opto-isolator. > > >I know this is a hardware issue but surely there must be E-Prime users > >that have tried this combination previously. I would appreciate any > >help concerning this issue. > > >Thanks > > >Anthony McGuffie > >Coventry University- 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 liwenna at gmail.com Fri Nov 6 14:06:23 2009 From: liwenna at gmail.com (liwenna) Date: Fri, 6 Nov 2009 06:06:23 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <9e0af593-7d0c-4f33-b29a-4d0fe69578d6@v36g2000yqv.googlegroups.com> Message-ID: Oooh, if I understand you right now, that changes the whole story! There's only 1 object per trial but there are 14 possible positions? In that case you'd be better of defining the positions in a list. As you know the imageobject asks for a value for x and y on the propertiestab to determine the position. You can also store these values in a list under two attributes called, for intance, stimx and stimy. In the object properties tab enter [stimx] and [stimy] as the values for x and y and for each trial the slidelocation will be subtracted from the list. If you want a certain object to be in a specific location on each run you should create 'stimx' and 'stimy' in the same list as your imageobjects are defined in, but if you want the positions to be randomized on each trial, stick 'stimx' and 'stimy' in a seperate (randomized) positionslist that is nested in the triallist. I hope that the above is indeed what you need! Greets, liw On Nov 6, 12:40 pm, Tobi wrote: > Thank a lot, > > it is a good idea with the different slide states. Actually there is > always only one object displayed, so I don't need to specify the > number. However, I can only make up to 10 slide states apparently. As > I have 14 different locations I would need 14, though... > Is there a way to have more than 10? > > On 5 Nov., 22:39, liwenna wrote: > > > How about..... > > > adding an attribute to your list that holds the number of bitmaps that > > you need to use in that level/trail called say... "nbitmaps" and give > > the slide element multiple states that are called 1 2 3 4 etc. and > > hold 1 2 3 or 4 images. Then set the slidestate to [nbitmaps] and > > according to the value of 'nbitmaps' it will show the slidestate with > > 1 2 3 or 4 imageobjects in it. As a consequence you might also need to > > specify the x and y values (positions) of each imageobject in the > > triallist instead of in the properties of each imageobject (as I think > > you got them now?). I am not entirely sure if e-prime will allow the > > slideobject to run if not all referenced values for all slidestates > > are being adressed in the triallist (as would be the case for say > > slidestate 4 in a nbitmap = 3 trial) but you can give it a shot; and > > also, depending on your actually number of possible positions, this > > might be not a feasible option... but yeah... it's just a suggestion. > > > Alternatively you might be able to solve it somehow by drawing the > > entire canvas for each trial in an inline but that definitly is a lot > > of work. > > > Then there is a vague notion somewhere in my head that you can bring > > imageobjects to the front or sent them to the back... but I have no > > friggin clue as to how to do that 'dynamically' based on each trial's > > demands.... > > > That would be all for the moment ... > > > best, > > > liw > > > On Nov 5, 7:42 pm, Tobi wrote: > > > > Hi together, > > > > I have a problem as fallows: I have a display containing n positions > > > as specified in the "slide element". Which bitmap is supposed to be > > > placed on which position is then defined in a list. Sometimes, I wish > > > to have no bitmap at all on some positions. Therefore I left the "?" > > > in the list. An error message occurs saying "Filename or image display > > > has not been set". It is the same if I leave a blank in the respective > > > cell. > > > > I also thought about displaying en empty bitmap (that is in the color > > > of the background), however the positions are superimposed. Therefore, > > > te bitmaps would only be partly displayed. > > > > Maybe there is an easy solution, I didn't find any. > > > Thanks a lot and cheers, > > > Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 6 14:29:19 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 6 Nov 2009 09:29:19 -0500 Subject: no image should be loaded for "?" in list In-Reply-To: <5722c97d-71fc-4629-87db-ba50e1dd9bb4@z41g2000yqz.googlegro ups.com> Message-ID: Tobi, Just another thought to throw into the mix... What if you made an "empty" bitmap with a transparent background color? There are some tricks to doing this, you have to fool around with stuff like "Use Source Color Key" and "Source Color Key". I don't have a lot of experience with this myself, but if you search online with those sorts of terms, or look at the ImageDisplay.SourceColorKey topic in the online E-Basic Help, you might get some ideas. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:42 PM Thursday, you wrote: >Hi together, > >I have a problem as fallows: I have a display containing n positions >as specified in the "slide element". Which bitmap is supposed to be >placed on which position is then defined in a list. Sometimes, I wish >to have no bitmap at all on some positions. Therefore I left the "?" >in the list. An error message occurs saying "Filename or image display >has not been set". It is the same if I leave a blank in the respective >cell. > >I also thought about displaying en empty bitmap (that is in the color >of the background), however the positions are superimposed. Therefore, >te bitmaps would only be partly displayed. > >Maybe there is an easy solution, I didn't find any. >Thanks a lot and cheers, >Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 6 14:58:39 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 6 Nov 2009 14:58:39 -0000 Subject: no image should be loaded for "?" in list In-Reply-To: <4af432c9.5344f10a.6b5e.048fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Oops, read on and saw that the OP already had this covered - in which case I would refer to David's reply below! Sorry about the confusion, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 06 November 2009 14:29 To: e-prime at googlegroups.com Subject: Re: no image should be loaded for "?" in list Tobi, Just another thought to throw into the mix... What if you made an "empty" bitmap with a transparent background color? There are some tricks to doing this, you have to fool around with stuff like "Use Source Color Key" and "Source Color Key". I don't have a lot of experience with this myself, but if you search online with those sorts of terms, or look at the ImageDisplay.SourceColorKey topic in the online E-Basic Help, you might get some ideas. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:42 PM Thursday, you wrote: >Hi together, > >I have a problem as fallows: I have a display containing n positions >as specified in the "slide element". Which bitmap is supposed to be >placed on which position is then defined in a list. Sometimes, I wish >to have no bitmap at all on some positions. Therefore I left the "?" >in the list. An error message occurs saying "Filename or image display >has not been set". It is the same if I leave a blank in the respective >cell. > >I also thought about displaying en empty bitmap (that is in the color >of the background), however the positions are superimposed. Therefore, >te bitmaps would only be partly displayed. > >Maybe there is an easy solution, I didn't find any. >Thanks a lot and cheers, >Tobi 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 Fri Nov 6 14:57:35 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 6 Nov 2009 14:57:35 -0000 Subject: no image should be loaded for "?" in list In-Reply-To: <4af432c9.5344f10a.6b5e.048fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi, Sorry if this has been said before, but just to make sure: I'm a real fan of just going to ms-paint and making a blank (white, or whatever other bg colour you use) picture of exactly the same size as the other images. Due to the BMP specifications, it should take your pc exactly as long as any of the other pictures to load etc, so you can be very sure the timing will not be different for producing blank images (they being images themselves). It's basically the same trick I use if I want to see the effect of moving vs static images on slides (you know, with a little loop and a counter and all that); instead of not-moving the images, I just keep moving to the same location, so that the timing is not altered. Cheers, Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 06 November 2009 14:29 To: e-prime at googlegroups.com Subject: Re: no image should be loaded for "?" in list Tobi, Just another thought to throw into the mix... What if you made an "empty" bitmap with a transparent background color? There are some tricks to doing this, you have to fool around with stuff like "Use Source Color Key" and "Source Color Key". I don't have a lot of experience with this myself, but if you search online with those sorts of terms, or look at the ImageDisplay.SourceColorKey topic in the online E-Basic Help, you might get some ideas. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:42 PM Thursday, you wrote: >Hi together, > >I have a problem as fallows: I have a display containing n positions >as specified in the "slide element". Which bitmap is supposed to be >placed on which position is then defined in a list. Sometimes, I wish >to have no bitmap at all on some positions. Therefore I left the "?" >in the list. An error message occurs saying "Filename or image display >has not been set". It is the same if I leave a blank in the respective >cell. > >I also thought about displaying en empty bitmap (that is in the color >of the background), however the positions are superimposed. Therefore, >te bitmaps would only be partly displayed. > >Maybe there is an easy solution, I didn't find any. >Thanks a lot and cheers, >Tobi 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 psr-ari at hotmail.com Fri Nov 6 16:25:16 2009 From: psr-ari at hotmail.com (Ariana Rubin) Date: Fri, 6 Nov 2009 08:25:16 -0800 Subject: Calling the Current List (VB6 me parallel) Message-ID: In the middle of a list's proc, if a subject hits the space bar I want it to terminate the list. I got that to work, but I have 29 of these lists that all need the same thing to happen. If I do each one independently I can now verify that I get a script to large to compile error. Instead, of what I have now: If ImageDisplay1.RESP = "{SPACE}" then List1.Terminate Goto Label3 I want to change List1 to be the current list, whichever one it is. I know that in standard VB6, I could just substitute in me.Terminate. How can I do this in E-Prime? Thanks for all your help 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 tobias.fw at gmail.com Fri Nov 6 16:37:53 2009 From: tobias.fw at gmail.com (Tobi) Date: Fri, 6 Nov 2009 08:37:53 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF02358750@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Thanks for your help! I used liwenna's suggestion and it works really fine (thanks for that!). The timing should't be a problem as there is always the same number of stimuli on the screen, only the x- und y-coordinates change. Cheers, Tobi On 6 Nov., 15:57, Michiel Spape wrote: > Hi, > Sorry if this has been said before, but just to make sure: I'm a real fan of just going to ms-paint and making a blank (white, or whatever other bg colour you use) picture of exactly the same size as the other images. Due to the BMP specifications, it should take your pc exactly as long as any of the other pictures to load etc, so you can be very sure the timing will not be different for producing blank images (they being images themselves). > It's basically the same trick I use if I want to see the effect of moving vs static images on slides (you know, with a little loop and a counter and all that); instead of not-moving the images, I just keep moving to the same location, so that the timing is not altered. > Cheers, > Mich > > Michiel Spapé > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane > Sent: 06 November 2009 14:29 > To: e-prime at googlegroups.com > Subject: Re: no image should be loaded for "?" in list > > Tobi, > > Just another thought to throw into the mix...  What if you made an > "empty" bitmap with a transparent background color?  There are some > tricks to doing this, you have to fool around with stuff like "Use > Source Color Key" and "Source Color Key".  I don't have a lot of > experience with this myself, but if you search online with those > sorts of terms, or look at the ImageDisplay.SourceColorKey topic in > the online E-Basic Help, you might get some ideas. > > -- David McFarlane, Professional Faultfinder > > At 11/5/2009 01:42 PM Thursday, you wrote: > >Hi together, > > >I have a problem as fallows: I have a display containing n positions > >as specified in the "slide element". Which bitmap is supposed to be > >placed on which position is then defined in a list. Sometimes, I wish > >to have no bitmap at all on some positions. Therefore I left the "?" > >in the list. An error message occurs saying "Filename or image display > >has not been set". It is the same if I leave a blank in the respective > >cell. > > >I also thought about displaying en empty bitmap (that is in the color > >of the background), however the positions are superimposed. Therefore, > >te bitmaps would only be partly displayed. > > >Maybe there is an easy solution, I didn't find any. > >Thanks a lot and cheers, > >Tobi > > 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 liwenna at gmail.com Fri Nov 6 17:19:49 2009 From: liwenna at gmail.com (liwenna) Date: Fri, 6 Nov 2009 09:19:49 -0800 Subject: Calling the Current List (VB6 me parallel) In-Reply-To: <38f89108-2baa-4353-9a5e-ec075d2d98fd@j4g2000yqe.googlegroups.com> Message-ID: Hey Ariana, I am short in time right now so I'll be really brief.... I still wonder why you want to use all these lists instead of just one lists and 4 repeating slides.. but using the info in the topic how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? (http://groups.google.com/group/e-prime/browse_thread/ thread/e955c26100f8d2bc) you should be able to figure something usefull out (read Ben's responses, not my lengty questions ;) ). greets, liw On Nov 6, 5:25 pm, Ariana Rubin wrote: > In the middle of a list's proc, if a subject hits the space bar I want > it to terminate the list.  I got that to work, but I have 29 of these > lists that all need the same thing to happen.  If I do each one > independently I can now verify that I get a script to large to compile > error. > Instead, of what I have now: > If ImageDisplay1.RESP = "{SPACE}" then > List1.Terminate > Goto Label3 > > I want to change List1 to be the current list, whichever one it is.  I > know that in standard VB6, I could just substitute in me.Terminate. > How can I do this in E-Prime? > > Thanks for all your help 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 mcfarla9 at msu.edu Fri Nov 6 17:24:58 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 6 Nov 2009 12:24:58 -0500 Subject: Calling the Current List (VB6 me parallel) In-Reply-To: <38f89108-2baa-4353-9a5e-ec075d2d98fd@j4g2000yqe.googlegrou ps.com> Message-ID: Ariana, Wow, was that interesting. In the past I have just put a list of all my Lists into my script and terminated every one whether running or not, there is no error in terminating a non-running List. But that is clumsy, and your question got me thinking. To the lesson in a moment, but first a few standard reminders... 1) I do not work for PST. 2) PST's trained staff really does like to take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours. So don't be shy there. 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. OK, on with the lesson. You can always get the the name of the currently running List from the "Running" attribute, e.g., MsgBox c.GetAttrib("Running") Ah, but how to use that to control the actual List object? Next, we look into the casting functions, which you may read about in the Casting topic of the online E-Basic Help. But you cannot simply do CList(c.GetAttrib("Running")).Terminate, since the CList() cast needs an object as an argument, not a text string. So, how to get the object that corresponds to the text value in Running? For that, you want the GetObject method of the Rte object, which you may read about in the Rte topic of the online E-Basic Help. So now you want to get the text value from the Running attribute, use that to reference the corresponding List object, cast that into an object of class List, and run its Terminate method, and (whew!) that all boils down to one simple elegant line of script: CList( Rte.GetObject( c.GetAttrib("Running") ) ).Terminate Note that understanding these underlying principles opens up whole new worlds of possibilities! -- David McFarlane, Professional Faultfinder >In the middle of a list's proc, if a subject hits the space bar I want >it to terminate the list. I got that to work, but I have 29 of these >lists that all need the same thing to happen. If I do each one >independently I can now verify that I get a script to large to compile >error. >Instead, of what I have now: >If ImageDisplay1.RESP = "{SPACE}" then >List1.Terminate >Goto Label3 > >I want to change List1 to be the current list, whichever one it is. I >know that in standard VB6, I could just substitute in me.Terminate. >How can I do this in E-Prime? > >Thanks for all your help 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 mcfarla9 at msu.edu Fri Nov 6 17:32:25 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 6 Nov 2009 12:32:25 -0500 Subject: Calling the Current List (VB6 me parallel) In-Reply-To: <4af45bf6.5344f10a.6b5e.0657SMTPIN_ADDED@gmr-mx.google.com> Message-ID: >that all boils down to one simple elegant line of script: > >CList( Rte.GetObject( c.GetAttrib("Running") ) ).Terminate Editorial comment: Well, not as simple & elegant as me.Terminate in VB6, but you get the idea. -- 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 tobias.fw at gmail.com Mon Nov 9 18:06:49 2009 From: tobias.fw at gmail.com (Tobi) Date: Mon, 9 Nov 2009 10:06:49 -0800 Subject: correct answer depending on "group" startup information In-Reply-To: <259ace00-e9c4-478a-b2e5-807a175b03a3@z34g2000vbl.googlegroups.com> Message-ID: Thank you very much for your e-mail. Only now I had the time to have a close look at the problem again. It helped very much to solve the problem. Just to maybe help others, I attach your e-mail here in the forum so that it can be found by others. I guess that you're in favor of that as you've already tried to post it aswell but then lost it. "Hello Tobias, Only last week did I have something similar at hand... In my task a version (A B C or D) is assigned to each subject based on subject number. Several features differ between the four different versions, one of which is the order of the response keys. I solved this as follows; in the slides the correct response refers to an attribute called cresp, which is declared on the user tab. In the triallist I have two collumns one called abcresp, other one cdcresp (version A & B, and C & D are the same response-key wise). An inline at the start of each trial tells eprime to take the value from either abcresp or cdcresp and use this value as cresp, depending on the variable 'version'. Step 1: declare the variable cresp on the user tab: dim cresp as string step 2: tell the responseslide that the correct response is [cresp] step 3: make two attribute collums in your triallist that contain the correct response for both your 'groups', for instance group1cresp and croup2cresp and fill them with D's and F's accordingly step4: add an inline at the start of your trialproc that contains something like this: If c.getattrib ("group") = 1 then c.setattrib "cresp", c.getattrib ("group1cresp") If c.getattrib ("group") = 2 then c.setattrib "cresp", c.getattrib ("group2cresp") end if I hope this helps. Best regards, liw" On 16 Sep., 17:03, liwenna wrote: > I think I posted a reply to this thread (I wrote one for sure ^.^) but > it doesn't show up... my guess is that I hit 'reply to author' by > accident, but I can't find a record of that anywhere. Tobias, if you > didn't receive mail from me, let me know, then I'll repost (right now > I am a bit lazy to do so... it's time for me to go home...). > > Have a good evening everyone! > > On Sep 16, 11:56 am, Tobi wrote: > > > Thank you, > > > that works fine. Unfortunately, in my real experiment (this example > > was kept simple due to comprehensiveness) I don't have 2 lines in my > > list but 640. I guess there is an easier way than using 640*2 lines in > > this InLine. If I understand correctly, "List1.SetAttrib 1" changes > > the first line in the list and "List1.SetAttrib 2" changes the second > > line. > > > That means, that the CorrAns value is replaced (seehttp://chilion.com/probl1.JPG > > ) no matter if [yes] or [no] was specified. In fact in my real > > experiment I also have only two variables. Easiest would be to change > > [yes] to let's say "D" and [no] to "F" if c.GetAttrib("group") = 1 and > > the other way round if it's 2. > > > Is that possible? > > > Thanks already in advance! > > > Cheers, > > Tobias > > > On 5 Sep., 23:08, Shin-Yi Fang wrote: > > > > Hi, > > > > I think group is not really a variable. It  is an attribute. You will need > > > getattrib function. The following script probably is what you need. > > > > if c.GetAttrib("group") = 1 then > > >    List1.SetAttrib 1, "corrAns", "w" > > >    List1.SetAttrib 2, "corrAns", "q" > > > else > > >    List1.SetAttrib 1, "corrAns", "q" > > >    List1.SetAttrib 2, "corrAns", "w" > > > end if > > > > Best, > > > > Shin-Yi > > > >    List1.SetAttrib 1 "corrAns")yes = "q" and no = "w" > > > > > if group = 2 then yes = "w" and no = "q" > > > On Fri, Sep 4, 2009 at 6:10 PM, Tobi wrote: > > > > > To be more understandable, here are two screenshots, one of the list > > > > and one of the InLine: > > > > >http://chilion.com/probl1.JPG > > > >http://chilion.com/probl2.JPG > > > > > On 4 Sep., 19:40, Tobi wrote: > > > > > Hi everyone, > > > > > > I have a question concerning the "group" variable than can be prompted > > > > > for in the beginning of each session. I want to change the correct > > > > > answer key according to this group variable (and change the key > > > > > assignment as a consequence of corse). > > > > > > In a very easy example there might be a trials with a target or no > > > > > target (blank). One group should answer with "w" for TARGET and "q" > > > > > for BLANK, the other group the other way round: > > > > > > LIST: > > > > > > ID             Procedure   corrAns > > > > > ------------------------------- > > > > > 1               blank           [no] > > > > > 1               target  [yes] > > > > > > I used this InLineas the very first line: > > > > > > dim yes, no > > > > > if group = 1 then yes = "q" and no = "w" > > > > > if group = 2 then yes = "w" and no = "q" > > > > > > Unfortunately I get the error message "Unknown function "group"". > > > > > What does that mean? I am not so familiar with Basic, so any help > > > > > might be very cool. > > > > > Maybe you have other suggestions to change key assignment by the help > > > > > of startup information. > > > > > > Thanks a lot, > > > > > Tobias > > > > -- > > > Ph.D. Student > > > Department of Psychology > > > University of Connecticut > > > and > > > Haskins Laboratories --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Mon Nov 9 22:53:41 2009 From: liwenna at gmail.com (liwenna) Date: Mon, 9 Nov 2009 14:53:41 -0800 Subject: correct answer depending on "group" startup information In-Reply-To: <2385aac8-0cd7-43cd-b456-69c00f497929@v30g2000yqm.googlegroups.com> Message-ID: Thanks for posting that Tobi! Good to know that I am not crazy :p Just pushing some wrong buttons every now and then ;) Additionally, I use the above thing in combination with another few lines of script that imports a randomisationkey (in the case of my a/b/ c/d-version task this could be for instance: D C B A B D A C) from a .txt-file and uses that to assign a version based on subject number, so subject 1 in above case gets version D, subject 2 version C, subject 3 version B etc etc, subject 9 is again version D, subject 10 C etc etc). This way my students don't have to bother with randomising nor keeping track of assigning 1 of 4 different e-run files to each subject etc. etc. If only our ICT-guys would allow us to password-lock folders on the testcomputers it would be the perfect double-blind system. I'll post the lines here (it's not that hard but I am not entirely confident that I'll type it all right from heart) if you're interested. Greets, liw On Nov 9, 7:06 pm, Tobi wrote: > Thank you very much for your e-mail. Only now I had the time to have a > close look at the problem again. It helped very much to solve the > problem. Just to maybe help others, I attach your e-mail here in the > forum so that it can be found by others. I guess that you're in favor > of that as you've already tried to post it aswell but then lost it. > > "Hello Tobias, > > Only last week did I have something similar at hand... > In my task a version (A B C or D) is assigned to each subject based on > subject number. Several features differ between the four different > versions, one of which is the > order of the response keys. I solved this as follows; in the slides > the correct response refers to an attribute called cresp, which is > declared on the user tab. In the triallist I have two collumns one > called abcresp, other one cdcresp (version A & B, and C & D are the > same response-key wise). An inline at the start of each trial tells > eprime to take the value from either abcresp or cdcresp and use this > value as cresp, depending on the variable 'version'. > > Step 1: > declare the variable cresp on the user tab: dim cresp as string > > step 2: > tell the responseslide that the correct response is [cresp] > > step 3: > make two attribute collums in your triallist that contain the correct > response for both your 'groups', for instance group1cresp and > croup2cresp and fill them with D's and F's accordingly > > step4: > add an inline at the start of your trialproc that contains something > like this: > > If c.getattrib ("group") = 1 then >        c.setattrib "cresp", c.getattrib ("group1cresp") > > If c.getattrib ("group") = 2 then >        c.setattrib "cresp", c.getattrib ("group2cresp") > > end if > > I hope this helps. > > Best regards, > > liw" > > On 16 Sep., 17:03, liwenna wrote: > > > I think I posted a reply to this thread (I wrote one for sure ^.^) but > > it doesn't show up... my guess is that I hit 'reply to author' by > > accident, but I can't find a record of that anywhere. Tobias, if you > > didn't receive mail from me, let me know, then I'll repost (right now > > I am a bit lazy to do so... it's time for me to go home...). > > > Have a good evening everyone! > > > On Sep 16, 11:56 am, Tobi wrote: > > > > Thank you, > > > > that works fine. Unfortunately, in my real experiment (this example > > > was kept simple due to comprehensiveness) I don't have 2 lines in my > > > list but 640. I guess there is an easier way than using 640*2 lines in > > > this InLine. If I understand correctly, "List1.SetAttrib 1" changes > > > the first line in the list and "List1.SetAttrib 2" changes the second > > > line. > > > > That means, that the CorrAns value is replaced (seehttp://chilion.com/probl1.JPG > > > ) no matter if [yes] or [no] was specified. In fact in my real > > > experiment I also have only two variables. Easiest would be to change > > > [yes] to let's say "D" and [no] to "F" if c.GetAttrib("group") = 1 and > > > the other way round if it's 2. > > > > Is that possible? > > > > Thanks already in advance! > > > > Cheers, > > > Tobias > > > > On 5 Sep., 23:08, Shin-Yi Fang wrote: > > > > > Hi, > > > > > I think group is not really a variable. It  is an attribute. You will need > > > > getattrib function. The following script probably is what you need. > > > > > if c.GetAttrib("group") = 1 then > > > >    List1.SetAttrib 1, "corrAns", "w" > > > >    List1.SetAttrib 2, "corrAns", "q" > > > > else > > > >    List1.SetAttrib 1, "corrAns", "q" > > > >    List1.SetAttrib 2, "corrAns", "w" > > > > end if > > > > > Best, > > > > > Shin-Yi > > > > >    List1.SetAttrib 1 "corrAns")yes = "q" and no = "w" > > > > > > if group = 2 then yes = "w" and no = "q" > > > > On Fri, Sep 4, 2009 at 6:10 PM, Tobi wrote: > > > > > > To be more understandable, here are two screenshots, one of the list > > > > > and one of the InLine: > > > > > >http://chilion.com/probl1.JPG > > > > >http://chilion.com/probl2.JPG > > > > > > On 4 Sep., 19:40, Tobi wrote: > > > > > > Hi everyone, > > > > > > > I have a question concerning the "group" variable than can be prompted > > > > > > for in the beginning of each session. I want to change the correct > > > > > > answer key according to this group variable (and change the key > > > > > > assignment as a consequence of corse). > > > > > > > In a very easy example there might be a trials with a target or no > > > > > > target (blank). One group should answer with "w" for TARGET and "q" > > > > > > for BLANK, the other group the other way round: > > > > > > > LIST: > > > > > > > ID             Procedure   corrAns > > > > > > ------------------------------- > > > > > > 1               blank           [no] > > > > > > 1               target  [yes] > > > > > > > I used this InLineas the very first line: > > > > > > > dim yes, no > > > > > > if group = 1 then yes = "q" and no = "w" > > > > > > if group = 2 then yes = "w" and no = "q" > > > > > > > Unfortunately I get the error message "Unknown function "group"". > > > > > > What does that mean? I am not so familiar with Basic, so any help > > > > > > might be very cool. > > > > > > Maybe you have other suggestions to change key assignment by the help > > > > > > of startup information. > > > > > > > Thanks a lot, > > > > > > Tobias > > > > > -- > > > > Ph.D. Student > > > > Department of Psychology > > > > University of Connecticut > > > > and > > > > Haskins Laboratories --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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.Moore at bath.ac.uk Tue Nov 10 09:53:56 2009 From: D.Moore at bath.ac.uk (David Moore) Date: Tue, 10 Nov 2009 09:53:56 +0000 Subject: PASAT Message-ID: Dear all, I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am wondering if anybody has programmed one of these before and can help. The task essentially involves presenting numbers to participant and asking them to indicate what the sum of the previous two numbers is. I have a few problems programming this which people may be able to independently help with if no one has a PASAT task. First how would I allow participants to indicate that the answer is a two digit number. Second how would I indicate to eprime that the correct answer is the sum of the previous two answers? Best 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 liwenna at gmail.com Tue Nov 10 11:58:08 2009 From: liwenna at gmail.com (liwenna) Date: Tue, 10 Nov 2009 03:58:08 -0800 Subject: PASAT In-Reply-To: Message-ID: Hello David, No PASAT ready made here but I can give some idea's on your questions. For the correct answer I see two different options. Either you don't randomize the trials but keep a fixed order in which case you can simply create a attribute to each level (trial) that holds the sum of that trial's number and the previous... non-randomized PASAT's are pretty common I think? (also see below). Alternatively you can create a 'user tab defined variable' that carries information over to the next trial. On the script window in the lower left corner open the user-tab and type "dim prevnumber as integer". Now at the end of the trialproc insert an inline that assigns that trial's number the value of prevnumber: "prevnumber = c.getattrib ("number") " wherein "number" is the name of an attribute in your triallist that holds the value of the number given in that trial (assuming that numbers will be presented auditory?). At the begin of the trialproc insert an inline that calculates the correct answer based on the current trial's number and the previous trial's number: " c.setattrib "correct", prevnumber + c.getattrib ("number") ". This attribute "correct" should also be created in your triallist and it's cells simply left empty, they will be filled as the program runs. Then the indication of two-digit answers... I am affraid I have no really good ideas regarding that. Hopefully others will. But do I understand it right that you want your participants to type in their answer? I've never seen a pasat 'in action' but isn't it more common (and more 'paced' ) to have them answer verbally? Which would require answers to be recorded and scored 'by hand' which then also would render non-randomized trials a more attractive option? I hope the above is somewhat helpful to you, Best, liw On Nov 10, 10:53 am, David Moore wrote: > Dear all, > > I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am > wondering if anybody has programmed one of these before and can help. The > task essentially involves presenting numbers to participant and asking them > to indicate what the sum of the previous two numbers is. > > I have a few problems programming this which people may be able to > independently help with if no one has a PASAT task. First how would I allow > participants to indicate that the answer is a two digit number. Second how > would I indicate to eprime that the correct answer is the sum of the > previous two answers? > > Best > 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 Tue Nov 10 15:40:42 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 10 Nov 2009 10:40:42 -0500 Subject: PASAT In-Reply-To: <6349ab0e-2c64-4499-a47a-7aebd30758b7@h34g2000yqm.googlegro ups.com> Message-ID: David, First, my standard reminders: 1) I do not work for PST. 2) PST's trained staff really does like to take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours. So don't be shy there. 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 ... 1a) Just repeating liwenna's fine answer, if you have a fixed set of problems (addenda) then you could just add the answer as another attribute as in any other List; but just as with any other List, you would not then have to present these in fixed order, you could still randomize the trial order, unless I'm missing something. 1b) Expanding on liwenna's script approach, you could compute the correct answers in script. In general, for an introduction to E-Basic script, please work through Chapter 4 of the User's Guide that came with E-Prime. 2) You may do this with the Advanced input mask features, please search the E-Prime Google Group or the PST Forum using terms like "MaxCount" or "TerminationResponse", or look at these topics under InputMask in the online E-Basic Help. -- David McFarlane, Professional Faultfinder "For a successful technology, reality must take precedence over public relations, for nature cannot be fooled." (Richard Feynman, Nobel prize-winning physicist) >Hello David, > >No PASAT ready made here but I can give some idea's on your questions. > >For the correct answer I see two different options. Either you don't >randomize the trials but keep a fixed order in which case you can >simply create a attribute to each level (trial) that holds the sum of >that trial's number and the previous... non-randomized PASAT's are >pretty common I think? (also see below). Alternatively you can create >a 'user tab defined variable' that carries information over to the >next trial. On the script window in the lower left corner open the >user-tab and type "dim prevnumber as integer". Now at the end of the >trialproc insert an inline that assigns that trial's number the value >of prevnumber: "prevnumber = c.getattrib ("number") " wherein "number" >is the name of an attribute in your triallist that holds the value of >the number given in that trial (assuming that numbers will be >presented auditory?). At the begin of the trialproc insert an inline >that calculates the correct answer based on the current trial's number >and the previous trial's number: " c.setattrib "correct", prevnumber + >c.getattrib ("number") ". This attribute "correct" should also be >created in your triallist and it's cells simply left empty, they will >be filled as the program runs. > >Then the indication of two-digit answers... I am affraid I have no >really good ideas regarding that. Hopefully others will. But do I >understand it right that you want your participants to type in their >answer? I've never seen a pasat 'in action' but isn't it more common >(and more 'paced' ) to have them answer verbally? Which would require >answers to be recorded and scored 'by hand' which then also would >render non-randomized trials a more attractive option? > > >I hope the above is somewhat helpful to you, > >Best, > >liw > > >On Nov 10, 10:53 am, David Moore wrote: > > Dear all, > > > > I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am > > wondering if anybody has programmed one of these before and can help. The > > task essentially involves presenting numbers to participant and asking them > > to indicate what the sum of the previous two numbers is. > > > > I have a few problems programming this which people may be able to > > independently help with if no one has a PASAT task. First how would I allow > > participants to indicate that the answer is a two digit number. Second how > > would I indicate to eprime that the correct answer is the sum of the > > previous two answers? > > > > Best > > 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 zajdeld at ohsu.edu Tue Nov 10 16:48:31 2009 From: zajdeld at ohsu.edu (Daniel Zajdel) Date: Tue, 10 Nov 2009 08:48:31 -0800 Subject: PASAT In-Reply-To: Message-ID: Why do you want to implement PASAT on a computer? What is wrong with the good old fashioned pencil, paper and audio recording? Because I can guarentee you that given noob coding skills you could quite possibly collect all your data before you figure this out in any stimulus presentation package. Not only that, but if you are entertaining an idea that is anything other a vocal response, like typing on a keypad, changes the task significantly and that data is no longer comparable to any legacy data or data in the literature. The whole reason PASAT was developed in the first place was for study populations like Multiple Sclerosis, where you want to remove the motor component and get at just the cognitive aspect. So from the programming perspective, you will have to get clever like David and Ilwenna. But from a scientific perspective, and isn't that the more important part, I'm not so sure an eprime PASAT is a very hot idea. ________________________________________ From: e-prime at googlegroups.com [e-prime at googlegroups.com] On Behalf Of David Moore [D.Moore at bath.ac.uk] Sent: Tuesday, November 10, 2009 1:53 AM To: e-prime at googlegroups.com Subject: PASAT Dear all, I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am wondering if anybody has programmed one of these before and can help. The task essentially involves presenting numbers to participant and asking them to indicate what the sum of the previous two numbers is. I have a few problems programming this which people may be able to independently help with if no one has a PASAT task. First how would I allow participants to indicate that the answer is a two digit number. Second how would I indicate to eprime that the correct answer is the sum of the previous two answers? Best 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 adamosth at gmail.com Tue Nov 10 22:45:39 2009 From: adamosth at gmail.com (Adam Osth) Date: Tue, 10 Nov 2009 17:45:39 -0500 Subject: display refreshing in tobii eyetracking extensions for eprime? Message-ID: Hello all, I'm currently running EPrime 2.0 with extensions for Tobii for eyetracking. I have this problem where in the data, every trial seems to have a couple of points in which "-1" is returned for the fixation location. I've heard that this is caused by the display refreshing after a certain amount of time. Is there any way to control when the display refreshes so it won't do that when a stimulus is being presented? It should be noted that my stimuli only display for 4500 ms, so it doesn't have to refresh while the stimulus is up. Adam --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 11 14:53:44 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Wed, 11 Nov 2009 14:53:44 -0000 Subject: display refreshing in tobii eyetracking extensions for eprime? In-Reply-To: <7ef748980911101445w63d344ccpd14bc6c3f7c69c4c@mail.gmail.com> Message-ID: Hi Adam, It's been a while since I last worked with the Tobii, so I might be wrong here, but I think it's unlikely it has anything to do with the monitor's refreshing. First, the monitor always refreshes in a fixed number of hz, I've never heard of anything you can do to stop this updating entirely, even though you can typically change the number of refreshes in system>control panel>display options>hardware (or something like that) - but less than 0.3 Hz (given your stimuli's duration): forget it. Obviously, you normally wish to sync your stimulus presentation with refreshes (that's the common problem), which you can set in E-Prime (onset sync, etc). Second, the Tobii output when it doesn't know where a subject is looking (either because of the subject moving a lot, the subject blinking, or hardware problems) is also -1. Ask your subject not to blink too much might be the best course of action. You might also want to change the sample-rate of the Tobii - ours could go to 120 Hz, but its output at higher sample-rates (>80 Hz) wasn't too brilliant. Anyway, Tobii gives validity markers for time-points in which the output can or cannot be trusted - see documentation - I expect your "-1" output is probably also marked as invalid. Just delete the invalid data. Hope this helps. Mich Michiel Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Adam Osth Sent: 10 November 2009 22:46 To: e-prime at googlegroups.com Subject: display refreshing in tobii eyetracking extensions for eprime? Hello all, I'm currently running EPrime 2.0 with extensions for Tobii for eyetracking. I have this problem where in the data, every trial seems to have a couple of points in which "-1" is returned for the fixation location. I've heard that this is caused by the display refreshing after a certain amount of time. Is there any way to control when the display refreshes so it won't do that when a stimulus is being presented? It should be noted that my stimuli only display for 4500 ms, so it doesn't have to refresh while the stimulus is up. Adam 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. 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 yanhyu at gmail.com Wed Nov 11 15:09:50 2009 From: yanhyu at gmail.com (Yan Yu) Date: Wed, 11 Nov 2009 10:09:50 -0500 Subject: pause function Message-ID: Hi Eprimers, I used a script to excute the pause function, however, during the experiment, whenever I pause it a second time, eprime will quit the task. My knowledge on scripting is minimal. I am wondering if anybody can help me out. Here is the inline script that I placed at the beginning of each block. 'Check for UserBreakState 'Pause2 is run only if Ctrl+Shift is pressed If (GetUserBreakState <> 0) Then 'Incorrect CLng Object reference Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") NetStation_SendTrialEvent c, Pause2 NetStation_SendTRSPEvent c, Pause2 Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") Pause2.Run 'Added code SetUserBreakState 0 End If Thanks a lot, Yan --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Wed Nov 11 15:36:01 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 11 Nov 2009 07:36:01 -0800 Subject: pause function In-Reply-To: <54ff1cf0911110709k54a21abfv1cc7ae20e952e47f@mail.gmail.com> Message-ID: Hey Yan, I don't really have a solution (as I never used this parallelport config thing and I have no idea what the function of 'userbreakstate' is for...) but that is probably where your problem lies. As you can see in line three (If (GetUserBreakState <> 0) Then ) all the script between 'Then' and 'End If' will only be executed if userbreakstate is NOT (<>) 0. In the forelast line of the piece of code you posted (SetUserBreakState 0) userbreakstate is set to 0 and therefore this code cannot run twice (seeing as "If (GetUserBreakState <> 0)" will no longer be valid after it ran once). I think that that's the source of your problem, but I unfortunately don't have a solution (other than simply removing both lines but that probably doesn't do the trick) and it also does not explain why e- prime quits altogether when you try it twice... So for what it's worth: I hope the above is somewhat helpful. Hopefully others can shine some light on the whole userbreakstate- thing... what and why and all that. Best, liwenna On Nov 11, 4:09 pm, Yan Yu wrote: > Hi Eprimers, > > I used a script to excute the pause function, however, during the > experiment, whenever I pause it a second time, eprime will quit the task. > My knowledge on scripting is minimal. I am wondering if anybody can help me > out. > > Here is the inline script that I placed at the beginning of each block. > > 'Check for UserBreakState > 'Pause2 is run only if Ctrl+Shift is pressed > If (GetUserBreakState <> 0) Then > 'Incorrect CLng Object reference Pause2.InputMasks.Add > Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), > ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All > ProcessBackspace:Yes") > NetStation_SendTrialEvent c, Pause2 > NetStation_SendTRSPEvent c, Pause2 > Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", > CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, > CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") > Pause2.Run > 'Added code > SetUserBreakState 0 > End If > > Thanks a lot, > > Yan --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 daniela.pfabigan at univie.ac.at Wed Nov 11 16:11:09 2009 From: daniela.pfabigan at univie.ac.at (Daniela Pfabigan) Date: Wed, 11 Nov 2009 17:11:09 +0100 Subject: pause function In-Reply-To: <122589ba-c94e-4df4-8558-ae7f49282e48@h34g2000yqm.googlegroups.com> Message-ID: hi! you could try the following script lines which we modified a little bit after downloading them from PST website or from an user forum and insert any lines to send information via the parallel port If (Get*UserBreakState* <> 0) Then Display.Canvas.Clear Display.Canvas.Text 150, 150, "Unexpected break!" Sleep 1000 Mouse.ShowCursor True Dim r As Integer r = AnswerBox( "Please select if you are ready:" & chr(10)+chr(13), "Continue") Set*UserBreakState* 0 End If Cheers, Daniela liwenna schrieb: > Hey Yan, > > I don't really have a solution (as I never used this parallelport > config thing and I have no idea what the function of 'userbreakstate' > is for...) but that is probably where your problem lies. As you can > see in line three (If (GetUserBreakState <> 0) Then ) all the script > between 'Then' and 'End If' will only be executed if userbreakstate is > NOT (<>) 0. In the forelast line of the piece of code you posted > (SetUserBreakState 0) userbreakstate is set to 0 and therefore this > code cannot run twice (seeing as "If (GetUserBreakState <> 0)" will no > longer be valid after it ran once). > > I think that that's the source of your problem, but I unfortunately > don't have a solution (other than simply removing both lines but that > probably doesn't do the trick) and it also does not explain why e- > prime quits altogether when you try it twice... > > > So for what it's worth: I hope the above is somewhat helpful. > Hopefully others can shine some light on the whole userbreakstate- > thing... what and why and all that. > > Best, > > liwenna > > On Nov 11, 4:09 pm, Yan Yu wrote: > >> Hi Eprimers, >> >> I used a script to excute the pause function, however, during the >> experiment, whenever I pause it a second time, eprime will quit the task. >> My knowledge on scripting is minimal. I am wondering if anybody can help me >> out. >> >> Here is the inline script that I placed at the beginning of each block. >> >> 'Check for UserBreakState >> 'Pause2 is run only if Ctrl+Shift is pressed >> If (GetUserBreakState <> 0) Then >> 'Incorrect CLng Object reference Pause2.InputMasks.Add >> Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), >> ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All >> ProcessBackspace:Yes") >> NetStation_SendTrialEvent c, Pause2 >> NetStation_SendTRSPEvent c, Pause2 >> Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", >> CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, >> CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") >> Pause2.Run >> 'Added code >> SetUserBreakState 0 >> End If >> >> Thanks a lot, >> >> Yan >> > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 adamosth at gmail.com Wed Nov 11 18:21:59 2009 From: adamosth at gmail.com (Adam Osth) Date: Wed, 11 Nov 2009 13:21:59 -0500 Subject: SlideSounds and Ebasic Message-ID: Hey all, I have a quick question about using infile commands to change the properties of a particular slide. I currently have a game in which subjects have to tap out a rhythm, and an infile which checks to make sure the rhythm was correct and give them feedback depending on how they did. The check is okay and works fine. The problem is that I want to have a sound file on the slide play when they get the rhythm correct, but not play if they get the rhythm wrong. However, I couldn't find anything in the SlideSoundOut properties that would enable me to do this. Any suggestions? Adam --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 baltimore.ben at gmail.com Wed Nov 11 18:31:58 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 11 Nov 2009 13:31:58 -0500 Subject: SlideSounds and Ebasic In-Reply-To: <7ef748980911111021j37197ab7sfebd0d52446121eb@mail.gmail.com> Message-ID: have two different SlideStates (like in a feedback slide - one state for Correct, one for Incorrect). activate the whichever slide state is appropriate given the response, and only include a sound object on the correct slide state. On Wed, Nov 11, 2009 at 1:21 PM, Adam Osth wrote: > Hey all, > > I have a quick question about using infile commands to change the > properties of a particular slide. I currently have a game in which subjects > have to tap out a rhythm, and an infile which checks to make sure the rhythm > was correct and give them feedback depending on how they did. > > The check is okay and works fine. The problem is that I want to have a > sound file on the slide play when they get the rhythm correct, but not play > if they get the rhythm wrong. > > However, I couldn't find anything in the SlideSoundOut properties that > would enable me to do this. > > Any suggestions? > > Adam > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 yanhyu at gmail.com Wed Nov 11 23:47:12 2009 From: yanhyu at gmail.com (Yan Yu) Date: Wed, 11 Nov 2009 18:47:12 -0500 Subject: pause function In-Reply-To: <4AFAE21D.70705@univie.ac.at> Message-ID: Hi liwenna & Daniela, Thanks for your reply. I tried the suggestion from both of you. Daniela's script generated the following error message "Encountered: '*' expecting: , , , system. Then my colleague suggested me delete the two lines about netstation, it works fine now. I appreciate your input! Yan On Wed, Nov 11, 2009 at 11:11 AM, Daniela Pfabigan < daniela.pfabigan at univie.ac.at> wrote: > > hi! > > you could try the following script lines which we modified a little bit > after downloading them from PST website or from an user forum and insert > any lines to send information via the parallel port > > If (Get*UserBreakState* <> 0) Then > Display.Canvas.Clear > Display.Canvas.Text 150, 150, "Unexpected break!" > Sleep 1000 > > Mouse.ShowCursor True > Dim r As Integer > > > r = AnswerBox( "Please select if you are ready:" & chr(10)+chr(13), > "Continue") > Set*UserBreakState* 0 > > End If > > > Cheers, > Daniela > > liwenna schrieb: > > Hey Yan, > > > > I don't really have a solution (as I never used this parallelport > > config thing and I have no idea what the function of 'userbreakstate' > > is for...) but that is probably where your problem lies. As you can > > see in line three (If (GetUserBreakState <> 0) Then ) all the script > > between 'Then' and 'End If' will only be executed if userbreakstate is > > NOT (<>) 0. In the forelast line of the piece of code you posted > > (SetUserBreakState 0) userbreakstate is set to 0 and therefore this > > code cannot run twice (seeing as "If (GetUserBreakState <> 0)" will no > > longer be valid after it ran once). > > > > I think that that's the source of your problem, but I unfortunately > > don't have a solution (other than simply removing both lines but that > > probably doesn't do the trick) and it also does not explain why e- > > prime quits altogether when you try it twice... > > > > > > So for what it's worth: I hope the above is somewhat helpful. > > Hopefully others can shine some light on the whole userbreakstate- > > thing... what and why and all that. > > > > Best, > > > > liwenna > > > > On Nov 11, 4:09 pm, Yan Yu wrote: > > > >> Hi Eprimers, > >> > >> I used a script to excute the pause function, however, during the > >> experiment, whenever I pause it a second time, eprime will quit the > task. > >> My knowledge on scripting is minimal. I am wondering if anybody can help > me > >> out. > >> > >> Here is the inline script that I placed at the beginning of each block. > >> > >> 'Check for UserBreakState > >> 'Pause2 is run only if Ctrl+Shift is pressed > >> If (GetUserBreakState <> 0) Then > >> 'Incorrect CLng Object reference Pause2.InputMasks.Add > >> Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), > >> ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All > >> ProcessBackspace:Yes") > >> NetStation_SendTrialEvent c, Pause2 > >> NetStation_SendTRSPEvent c, Pause2 > >> Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", > >> CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, > >> CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") > >> Pause2.Run > >> 'Added code > >> SetUserBreakState 0 > >> End If > >> > >> Thanks a lot, > >> > >> Yan > >> > > > > > > > > > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Mon Nov 2 14:13:10 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 2 Nov 2009 14:13:10 -0000 Subject: combining 3 eprime files into 1 file - or a work around??? In-Reply-To: <4aea0857.5844f10a.1ae5.229cSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David & Anson, I didn't know that, thanks for the suggestion! Anyway, as I'm sure you know, but out there on the list, maybe a few don't - you CAN open multiple .es files (E-Prime 1, tested again here with 1.1.sp3) at the same time. Just go to explorer, select two or more .es files (using shift and/or ctrl click) and press the enter button on your keyboard. I assume it's not possible in some versions of E-Prime, and to be honest, it rarely helped anyone before, but with this nifty copy-paste feature, it can be a powerful trick indeed. Best, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 29 October 2009 21:25 To: e-prime at googlegroups.com Subject: Re: combining 3 eprime files into 1 file - or a work around??? Anson, Thank you for posting back with Web Support's response, a fair answer as far as it goes. I would have mentioned "AutoIt" as the key search term if you wanted to explore the "external application" approach that Matt mentions, and liwenna has already kindly supplied the link to that discussion. Matt also left out one little-known detail, although this hardly does you any good. You *can* copy E-Objects between files in EP1, although the process is very tedious, because you can only open one file at a time. It goes like this (as documented in my own personal FAQ): Open the source file and use View > Browser to open the object browser pane. Select the desired object in the browser, and use Edit > Copy. Now open the destination file and use Edit > Paste. If the copied object has the same name as an object already in the destination, then the pasted object gets automatically renamed with a number at the end (EP2 implements a more robust conflict resolution system for copying objects). That's all I can add. -- David McFarlane, Professional Faultfinder At 10/29/2009 05:08 PM Thursday, you wrote: >the response from PST > >"Hi Anson, > >E-Prime does not have the capability to start multiple experiments >directly (e.g., multiple individual ES or EBS files). You would need >to have the first experiment terminate, then load and run the second >experiment manually, and so on. It is possible, however, to run a >sequence of experiments by either combining your experiments into a >single ES file (quite difficult and tedious in E-Prime 1.x) or, if you >are comfortable with programming or know someone who is, using the E- >Run command line switches described on page 112 of the E-Prime >Reference Guide to create an external application that can launch the >EBS files in succession without any intervention on your part. Note, >however, that this procedure is beyond the scope of E-Prime web >support. > >If you are considering upgrading to E-Prime 2.0, note that it does >contain a copy/paste function that will allow you to quickly combine >tasks by moving objects from one experiment to another (i.e., multiple >instances of E-Studio can be open at a time). Please see >http://www.pstnet.com/eprime.cfm for more information. > >Please let me know if you have any further questions. > >Sincerely, >Matt Lenhart >Technical Consultant" 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 Mon Nov 2 14:26:12 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Mon, 2 Nov 2009 14:26:12 -0000 Subject: Response devices In-Reply-To: <04d5fba5-37c1-45ab-af24-eb760e73386f@k19g2000yqc.googlegroups.com> Message-ID: Hi! We have successfully implemented the brilliant XBOX360 controller. The software is somewhere on my website (www.cognitology.eu) I think, along with bad documentation. It requires a laptop with a serial port which then does the RT collection, but, more importantly, allows E-Prime (which then runs on another computer) to send a command which gets the controller to vibrate (it contains two rotors operating at different frequency and amplitude). It's not brilliantly accurate in terms of timing, but I hold the opinion that timing accuracy is over-rated for experimenters who know about balanced designs and randomisation... or who don't really mind subjects to be bored that much more to tears. On the other hand, they did seem to think the xbox controller made the experiment 'fun' . Also, reviewers find it really cool! (or so we found: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2708333/) Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Tobi Sent: 29 October 2009 15:17 To: E-Prime Subject: Response devices Hi everyone, I am wondering which kind of response device you are usually using for your psychological experiments. There are special key sets for ERTS and E-Prime, for example. However, standard devices like keyboards or mice might also be frequently used. Of course, keyboards and mice don't look that professional and not everyone uses ERTS or E-Prime. Do you know any producer of hardware that is well suitable for experimental psychology? Thanks a lot and best regards, Tobias FW 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 baltimore.ben at gmail.com Mon Nov 2 15:33:51 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Mon, 2 Nov 2009 10:33:51 -0500 Subject: Response devices In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF022D6C3A@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: very cool! On Mon, Nov 2, 2009 at 9:26 AM, Michiel Spape < Michiel.Spape at nottingham.ac.uk> wrote: > > Hi! > We have successfully implemented the brilliant XBOX360 controller. The > software is somewhere on my website (www.cognitology.eu) I think, along with > bad documentation. It requires a laptop with a serial port which then does > the RT collection, but, more importantly, allows E-Prime (which then runs on > another computer) to send a command which gets the controller to vibrate (it > contains two rotors operating at different frequency and amplitude). It's > not brilliantly accurate in terms of timing, but I hold the opinion that > timing accuracy is over-rated for experimenters who know about balanced > designs and randomisation... or who don't really mind subjects to be bored > that much more to tears. On the other hand, they did seem to think the xbox > controller made the experiment 'fun' . > Also, reviewers find it really cool! (or so we found: > http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2708333/) > > Cheers, > Mich > > Michiel Spap? > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf > Of Tobi > Sent: 29 October 2009 15:17 > To: E-Prime > Subject: Response devices > > > Hi everyone, > > I am wondering which kind of response device you are usually using for > your psychological experiments. There are special key sets for ERTS > and E-Prime, for example. However, standard devices like keyboards or > mice might also be frequently used. > > Of course, keyboards and mice don't look that professional and not > everyone uses ERTS or E-Prime. Do you know any producer of hardware > that is well suitable for experimental psychology? > > Thanks a lot and best regards, > Tobias FW > > > 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 coolpsychology at gmail.com Mon Nov 2 19:17:41 2009 From: coolpsychology at gmail.com (Rivermaker) Date: Mon, 2 Nov 2009 11:17:41 -0800 Subject: A simple if then that adds 1 to an integer variable needed Message-ID: Hi, I need a really short script that, I'm sure, is embarrassingly simple for those with coding skills. I'm not one of you! Please be kind. All I want to do is to skip a text object the 5th (and last) time through a procedure. I need to create an integer variable and add 1 to it each time through so that eventually, with an InLine object, I can tell it to... If count = 5 GoTo Label1 'this is to get it to skip the text object Else count = count + 1 'this is to add 1 to it each time through In addition to the above, I need help creating the variable. I am assuming that I can't create (declare?) it within the same InLine object because that would reset its value to zero each time through...So I'm thinking that earlier on, say at the start, I have to write this: Dim count as integer Am I close? Can anybody help me out? Many thanks, Mike --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 2 19:22:54 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 2 Nov 2009 14:22:54 -0500 Subject: combining 3 eprime files into 1 file - or a work around??? In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF022D6C27@VUIEXCHC.ad.notti ngham.ac.uk> Message-ID: Michiel, OMG, that is so cool! Just now tested this with EP1.2 under Vista -- in all my years of using E-Prime I never knew or thought of this, I wish I had known this trick years ago! Not even Matt Lenhart at PST seems to know about this. Just to fill in another detail about this trick, once you have a number of EP1 windows open, any new .es will load into the topmost ES window, so you can control which .es file loads into which ES window. Thanks a bunch! -- David McFarlane, Professional Faultfinder At 11/2/2009 09:13 AM Monday, Michiel Spap? wrote: >Hi David & Anson, >I didn't know that, thanks for the suggestion! >Anyway, as I'm sure you know, but out there on >the list, maybe a few don't - you CAN open >multiple .es files (E-Prime 1, tested again here >with 1.1.sp3) at the same time. Just go to >explorer, select two or more .es files (using >shift and/or ctrl click) and press the enter >button on your keyboard. I assume it's not >possible in some versions of E-Prime, and to be >honest, it rarely helped anyone before, but with >this nifty copy-paste feature, it can be a powerful trick indeed. >Best, >Mich > >Michiel Spap? >Research Fellow >Perception & Action group >University of Nottingham >School of Psychology > > >-----Original Message----- >From: e-prime at googlegroups.com >[mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane >Sent: 29 October 2009 21:25 >To: e-prime at googlegroups.com >Subject: Re: combining 3 eprime files into 1 file - or a work around??? > > >Anson, > >Thank you for posting back with Web Support's response, a fair answer >as far as it goes. I would have mentioned "AutoIt" as the key search >term if you wanted to explore the "external application" approach >that Matt mentions, and liwenna has already kindly supplied the link >to that discussion. > >Matt also left out one little-known detail, although this hardly does >you any good. You *can* copy E-Objects between files in EP1, >although the process is very tedious, because you can only open one >file at a time. It goes like this (as documented in my own personal FAQ): > >Open the source file and use View > Browser to open the object >browser pane. Select the desired object in the browser, and use >Edit > Copy. Now open the destination file and use Edit > Paste. If >the copied object has the same name as an object already in the >destination, then the pasted object gets automatically renamed with a >number at the end (EP2 implements a more robust conflict resolution >system for copying objects). > >That's all I can add. > >-- David McFarlane, Professional Faultfinder > > >At 10/29/2009 05:08 PM Thursday, you wrote: > > >the response from PST > > > >"Hi Anson, > > > >E-Prime does not have the capability to start multiple experiments > >directly (e.g., multiple individual ES or EBS files). You would need > >to have the first experiment terminate, then load and run the second > >experiment manually, and so on. It is possible, however, to run a > >sequence of experiments by either combining your experiments into a > >single ES file (quite difficult and tedious in E-Prime 1.x) or, if you > >are comfortable with programming or know someone who is, using the E- > >Run command line switches described on page 112 of the E-Prime > >Reference Guide to create an external application that can launch the > >EBS files in succession without any intervention on your part. Note, > >however, that this procedure is beyond the scope of E-Prime web > >support. > > > >If you are considering upgrading to E-Prime 2.0, note that it does > >contain a copy/paste function that will allow you to quickly combine > >tasks by moving objects from one experiment to another (i.e., multiple > >instances of E-Studio can be open at a time). Please see > >http://www.pstnet.com/eprime.cfm for more information. > > > >Please let me know if you have any further questions. > > > >Sincerely, > >Matt Lenhart > >Technical Consultant" > > > > >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 sonia_pritchard at rogers.com Mon Nov 2 23:28:23 2009 From: sonia_pritchard at rogers.com (Sonia Pritchard) Date: Mon, 2 Nov 2009 15:28:23 -0800 Subject: Windows 7 Message-ID: Hi, Has anybody tried running E-Prime 2.0 on Windows 7? Our technical consultant advised me that Windows 7 was an improvement on Vista. I am anxious to make the switch not knowing the consequences for E-Prime. By the way, an E-Prime technical consultant informed me that they had not yet tested E-Prime 2.0 on Windows 7. Thank you, Sonia --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Tue Nov 3 01:45:57 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Mon, 2 Nov 2009 20:45:57 -0500 Subject: A simple if then that adds 1 to an integer variable needed In-Reply-To: <75ba02db-3094-448c-b450-68cc349e9fda@d34g2000vbm.googlegroups.com> Message-ID: you are very, very close! under the View drop-down menu, select Script, then click on the User tab at the bottom of the Script window. here you will type: Dim count as Integer in your inline, prior to your text object just type: count = count+1 If count = 5 Then Goto Label1 and put your Label1 object after your text object. that should do it. ben On Mon, Nov 2, 2009 at 2:17 PM, Rivermaker wrote: > > Hi, > > I need a really short script that, I'm sure, is embarrassingly simple > for those with coding skills. I'm not one of you! Please be kind. > > All I want to do is to skip a text object the 5th (and last) time > through a procedure. I need to create an integer variable and add 1 to > it each time through so that eventually, with an InLine object, I can > tell it to... > > If count = 5 GoTo Label1 'this is to get it to skip the text object > > Else count = count + 1 'this is to add 1 to it each time through > > > In addition to the above, I need help creating the variable. I am > assuming that I can't create (declare?) it within the same InLine > object because that would reset its value to zero each time > through...So I'm thinking that earlier on, say at the start, I have to > write this: > > Dim count as integer > > Am I close? > > > Can anybody help me out? > > Many thanks, > > Mike > > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 coolpsychology at gmail.com Tue Nov 3 13:27:39 2009 From: coolpsychology at gmail.com (Rivermaker) Date: Tue, 3 Nov 2009 05:27:39 -0800 Subject: A simple if then that adds 1 to an integer variable needed In-Reply-To: <3345e4a50911021745m26eebe86kc7610788d951e64d@mail.gmail.com> Message-ID: Thanks so much....sadly, though, it didn't work. I don't get it. Particularly because I've another InLine that skips to a label that's working like a charm (though this one is easier, it's: if SeeAny.RESP = 0 then GoTo Label1). Tell me, to check that my counter is actually working, could I get the same inline object to print the value of count so that I could check its value as it cycles through the procedure? I really appreciate your help. Mike On Nov 2, 8:45?pm, ben robinson wrote: > you are very, very close! > > under the View drop-down menu, select Script, then click on the User tab at > the bottom of the Script window. > here you will type: > Dim count as Integer > > in your inline, prior to your text object just type: > count = count+1 > If count = 5 Then Goto Label1 > > and put your Label1 object after your text object. ?that should do it. > > ben > > On Mon, Nov 2, 2009 at 2:17 PM, Rivermaker wrote: > > > Hi, > > > I need a really short script that, I'm sure, is embarrassingly simple > > for those with coding skills. I'm not one of you! Please be kind. > > > All I want to do is to skip a text object the 5th (and last) time > > through a procedure. I need to create an integer variable and add 1 to > > it each time through so that eventually, with an InLine object, I can > > tell it to... > > > If count = 5 GoTo Label1 ? ?'this is to get it to skip the text object > > > Else count = count + 1 ? ? ?'this is to add 1 to it each time through > > > In addition to the above, I need help creating the variable. I am > > assuming that I can't create (declare?) it within the same InLine > > object because that would reset its value to zero each time > > through...So I'm thinking that earlier on, say at the start, I have to > > write this: > > > Dim count as integer > > > Am I close? > > > Can anybody help me out? > > > Many thanks, > > > Mike --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 coolpsychology at gmail.com Tue Nov 3 13:34:49 2009 From: coolpsychology at gmail.com (Rivermaker) Date: Tue, 3 Nov 2009 05:34:49 -0800 Subject: A simple if then that adds 1 to an integer variable needed In-Reply-To: <3345e4a50911021745m26eebe86kc7610788d951e64d@mail.gmail.com> Message-ID: SCRATCH that! I'm an idiot. Your suggestion works perfectly. I had the counter inline within another skip --- I was skipping it! Doh. Thank you again! Mike (And I was able to create a script that displayed the value of the counter too!) On Nov 2, 8:45?pm, ben robinson wrote: > you are very, very close! > > under the View drop-down menu, select Script, then click on the User tab at > the bottom of the Script window. > here you will type: > Dim count as Integer > > in your inline, prior to your text object just type: > count = count+1 > If count = 5 Then Goto Label1 > > and put your Label1 object after your text object. ?that should do it. > > ben > > On Mon, Nov 2, 2009 at 2:17 PM, Rivermaker wrote: > > > Hi, > > > I need a really short script that, I'm sure, is embarrassingly simple > > for those with coding skills. I'm not one of you! Please be kind. > > > All I want to do is to skip a text object the 5th (and last) time > > through a procedure. I need to create an integer variable and add 1 to > > it each time through so that eventually, with an InLine object, I can > > tell it to... > > > If count = 5 GoTo Label1 ? ?'this is to get it to skip the text object > > > Else count = count + 1 ? ? ?'this is to add 1 to it each time through > > > In addition to the above, I need help creating the variable. I am > > assuming that I can't create (declare?) it within the same InLine > > object because that would reset its value to zero each time > > through...So I'm thinking that earlier on, say at the start, I have to > > write this: > > > Dim count as integer > > > Am I close? > > > Can anybody help me out? > > > Many thanks, > > > Mike --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 yohans at gmail.com Tue Nov 3 22:55:26 2009 From: yohans at gmail.com (yohans) Date: Tue, 3 Nov 2009 14:55:26 -0800 Subject: combining 3 eprime files into 1 file - or a work around??? In-Reply-To: <4aef31af.5944f10a.0dad.53e9SMTPIN_ADDED@gmr-mx.google.com> Message-ID: I just wanted to thank everyone for all the replies and ideas! --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 20:52:32 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 12:52:32 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? Message-ID: Short question: In the piece of code below: how do I implement a variable that replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' so that I can shorter the code to a single line (using an additional 'for 0 to 2' variable for the (randompos(x)) part) ? ************************************** for m = 1 to 4 triallist.SetAttrib m, "restid1", randomlist(randompos(0)) triallist.SetAttrib m, "restid2", randomlist(randompos(1)) triallist.SetAttrib m, "restid3", randomlist(randompos(2)) randomizearray randompos next m *************************************** Long explanation: Ok.... So... I have this habit of writing enormous inlines because I am generally to lazy or not in the mood to figure out/learn how to shorten them.... I decided that I am gonna break this habit and have choosen a nice litle experiment to do this with. However: I am stuck now. My hope is that someone here knows off hand what lines I need and is able to drop me a line. In the final experiment each display holds 16 positions which will be filled with one targetstimulus and 15 distractorstimuli. There are 16 possible targetstimuli which will each have to appear in one of the 16 possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 trials). The identity of the targetstimulus decides which 15 stimuli should be used as distractorstimuli and I like to have the location of each of the distractorstimuli randomized... Unfortunately this means that for each trial there are 15! possible arrangements of the distractorstimuli (1 307 674 368 000). I don't like pseudorandomizations that well so I took up the challenge and actually got quite far so far. For obvious reasons I am working the whole thing out with a smaller number of positions: 4 (2x2 grid). This is what I got now: for target ID 1 a list with the 15 distractorstimuli for this target is loaded from a textfile into an array and randomized. A second array holds the numbers 1-15 which corresponds with locations 1-15. For each level of the triallist (m) the randomized distractorstimuli are randomly loaded into attributes called "restid1" up to "restid3" (4 locations, 1 holds the target). When a level is filled, the randompos array is rerandomized so that for the next level each distractorstimulus is loaded into a different restid-attribute. The piece of code shown below deals with the first 4 levels (target ID 1), the code will have to repeat for the next 4 levels but then load id2restids.txt instead (containing distractorstimuli for target ID 2), etc etc. As you can see this inline will still become rather bulky so here's the question again: can I shorten the 3 lines that fill the triallist-levels to 1 line by using another 'for 1 to 3' attribute (one of those mysterious %_ & # perhaps?) that can actually be used IN an attribute name? *********************************************** for m = 1 to 4 Open "id1restids.txt" For Input As #1 For n = 0 To 2 Input #1, randomlist(n) Next n Close #1 randomizearray randomlist for q = 0 to 2 randompos(q) = q next q randomizearray randompos triallist.SetAttrib m, "restid1", randomlist(randompos(0)) triallist.SetAttrib m, "restid2", randomlist(randompos(1)) triallist.SetAttrib m, "restid3", randomlist(randompos(2)) randomizearray randompos next m ******************************************* I've checked the guides, checked the e-primer, searching all over the place for a piece of code that I could steal the trick from, but to no avail so far. What certainly doesn't help is that I so far never quite got the deal with the & % _ crf things.... (that's probably embarrassing but true :p ) I hope someone knows a nice solution for me. Best regards, liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 21:10:12 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 4 Nov 2009 16:10:12 -0500 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <38db3cbf-077d-497d-87c3-37f9aae51816@j24g2000yqa.googlegroups.com> Message-ID: something like this? for m = 1 to 4 triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) next m On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > Short question: > In the piece of code below: how do I implement a variable that > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > so that I can shorter the code to a single line (using an additional > 'for 0 to 2' variable for the (randompos(x)) part) ? > > ************************************** > for m = 1 to 4 > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > randomizearray randompos > > next m > *************************************** > > Long explanation: > Ok.... So... I have this habit of writing enormous inlines because I > am generally to lazy or not in the mood to figure out/learn how to > shorten them.... I decided that I am gonna break this habit and have > choosen a nice litle experiment to do this with. However: I am stuck > now. My hope is that someone here knows off hand what lines I need and > is able to drop me a line. > > In the final experiment each display holds 16 positions which will be > filled with one targetstimulus and 15 distractorstimuli. There are 16 > possible targetstimuli which will each have to appear in one of the 16 > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > trials). The identity of the targetstimulus decides which 15 stimuli > should be used as distractorstimuli and I like to have the location of > each of the distractorstimuli randomized... Unfortunately this means > that for each trial there are 15! possible arrangements of the > distractorstimuli (1 307 674 368 000). I don't like > pseudorandomizations that well so I took up the challenge and actually > got quite far so far. For obvious reasons I am working the whole thing > out with a smaller number of positions: 4 (2x2 grid). > > This is what I got now: for target ID 1 a list with the 15 > distractorstimuli for this target is loaded from a textfile into an > array and randomized. A second array holds the numbers 1-15 which > corresponds with locations 1-15. For each level of the triallist (m) > the randomized distractorstimuli are randomly loaded into attributes > called "restid1" up to "restid3" (4 locations, 1 holds the target). > When a level is filled, the randompos array is rerandomized so that > for the next level each distractorstimulus is loaded into a different > restid-attribute. The piece of code shown below deals with the first 4 > levels (target ID 1), the code will have to repeat for the next 4 > levels but then load id2restids.txt instead (containing > distractorstimuli for target ID 2), etc etc. As you can see this > inline will still become rather bulky so here's the question again: > can I shorten the 3 lines that fill the triallist-levels to 1 line by > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > perhaps?) that can actually be used IN an attribute name? > > *********************************************** > for m = 1 to 4 > > Open "id1restids.txt" For Input As #1 > For n = 0 To 2 > Input #1, randomlist(n) > Next n > Close #1 > > randomizearray randomlist > > for q = 0 to 2 > randompos(q) = q > next q > > randomizearray randompos > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > randomizearray randompos > > next m > ******************************************* > > > I've checked the guides, checked the e-primer, searching all over the > place for a piece of code that I could steal the trick from, but to no > avail so far. What certainly doesn't help is that I so far never quite > got the deal with the & % _ crf things.... (that's probably > embarrassing but true :p ) > > I hope someone knows a nice solution for me. > > Best regards, > > liw > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Wed Nov 4 21:41:48 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 13:41:48 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <3345e4a50911041310g13b80283i28e75c5cdbfc7a0c@mail.gmail.com> Message-ID: Hello Ben, Thanks for such a quick reply! It should become something like that indeed! But... correct me if I am wrong (I am at home now so no e-prime at my disposal, i'll certainly give it a try tomorrow), it seems that in the code you wrote the 'second m' is placed outside the attributename whereas I actually need it to be inside the attribute name, to adress attributes called "restid1", "restid2" and "restid3" . And (but thats secondary at the moment) it should be a variable other than m as m will run up till 16, whereas this piece of code should be repeated every 4 lines of m. On Nov 4, 10:10?pm, ben robinson wrote: > something like this? > > for m = 1 to 4 > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > next m > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > Short question: > > In the piece of code below: how do I implement a variable that > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > so that I can shorter the code to a single line (using an additional > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > ************************************** > > for m = 1 to 4 > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > randomizearray randompos > > > next m > > *************************************** > > > Long explanation: > > Ok.... So... I have this habit of writing enormous inlines because I > > am generally to lazy or not in the mood to figure out/learn how to > > shorten them.... ?I decided that I am gonna break this habit and have > > choosen a nice litle experiment to do this with. However: I am stuck > > now. My hope is that someone here knows off hand what lines I need and > > is able to drop me a line. > > > In the final experiment each display holds 16 positions which will be > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > possible targetstimuli which will each have to appear in one of the 16 > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > trials). The identity of the targetstimulus decides which 15 stimuli > > should be used as distractorstimuli and I like to have the location of > > each of the distractorstimuli randomized... Unfortunately this means > > that for each trial there are 15! possible arrangements of the > > distractorstimuli (1 307 674 368 000). I don't like > > pseudorandomizations that well so I took up the challenge and actually > > got quite far so far. For obvious reasons I am working the whole thing > > out with a smaller number of positions: 4 (2x2 grid). > > > This is what I got now: for target ID 1 a list with the 15 > > distractorstimuli for this target is loaded from a textfile into an > > array and randomized. A second array holds the numbers 1-15 which > > corresponds with locations 1-15. For each level of the triallist (m) > > the randomized distractorstimuli are randomly loaded into attributes > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > When a level is filled, the randompos array is rerandomized so that > > for the next level each distractorstimulus is loaded into a different > > restid-attribute. The piece of code shown below deals with the first 4 > > levels (target ID 1), the code will have to repeat for the next 4 > > levels but then load id2restids.txt instead (containing > > distractorstimuli for target ID 2), etc etc. As you can see this > > inline will still become rather bulky so here's the question again: > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > perhaps?) that can actually be used IN an attribute name? > > > *********************************************** > > for m = 1 to 4 > > > Open "id1restids.txt" For Input As #1 > > For n = 0 To 2 > > Input #1, randomlist(n) > > Next n > > Close #1 > > > randomizearray randomlist > > > for q = 0 to 2 > > randompos(q) = q > > next q > > > randomizearray randompos > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > randomizearray randompos > > > next m > > ******************************************* > > > I've checked the guides, checked the e-primer, searching all over the > > place for a piece of code that I could steal the trick from, but to no > > avail so far. What certainly doesn't help is that I so far never quite > > got the deal with the & % _ crf things.... (that's probably > > embarrassing but true :p ) > > > I hope someone knows a nice solution for me. > > > Best regards, > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 21:47:30 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 4 Nov 2009 16:47:30 -0500 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <4a2607fc-ed45-4bc7-879c-4c1b6a36aa18@d5g2000yqm.googlegroups.com> Message-ID: hi liwenna. no, "restid" & m should concatinate "restid" and the value of "m" into a single string. should work. not promising. On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > Hello Ben, > > Thanks for such a quick reply! > > It should become something like that indeed! > > But... correct me if I am wrong (I am at home now so no e-prime at my > disposal, i'll certainly give it a try tomorrow), it seems that in the > code you wrote the 'second m' is placed outside the attributename > whereas I actually need it to be inside the attribute name, to adress > attributes called "restid1", "restid2" and "restid3" . > > And (but thats secondary at the moment) it should be a variable other > than m as m will run up till 16, whereas this piece of code should be > repeated every 4 lines of m. > > > > On Nov 4, 10:10 pm, ben robinson wrote: > > something like this? > > > > for m = 1 to 4 > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > next m > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > Short question: > > > In the piece of code below: how do I implement a variable that > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > so that I can shorter the code to a single line (using an additional > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > ************************************** > > > for m = 1 to 4 > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > *************************************** > > > > > Long explanation: > > > Ok.... So... I have this habit of writing enormous inlines because I > > > am generally to lazy or not in the mood to figure out/learn how to > > > shorten them.... I decided that I am gonna break this habit and have > > > choosen a nice litle experiment to do this with. However: I am stuck > > > now. My hope is that someone here knows off hand what lines I need and > > > is able to drop me a line. > > > > > In the final experiment each display holds 16 positions which will be > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > possible targetstimuli which will each have to appear in one of the 16 > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > should be used as distractorstimuli and I like to have the location of > > > each of the distractorstimuli randomized... Unfortunately this means > > > that for each trial there are 15! possible arrangements of the > > > distractorstimuli (1 307 674 368 000). I don't like > > > pseudorandomizations that well so I took up the challenge and actually > > > got quite far so far. For obvious reasons I am working the whole thing > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > This is what I got now: for target ID 1 a list with the 15 > > > distractorstimuli for this target is loaded from a textfile into an > > > array and randomized. A second array holds the numbers 1-15 which > > > corresponds with locations 1-15. For each level of the triallist (m) > > > the randomized distractorstimuli are randomly loaded into attributes > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > When a level is filled, the randompos array is rerandomized so that > > > for the next level each distractorstimulus is loaded into a different > > > restid-attribute. The piece of code shown below deals with the first 4 > > > levels (target ID 1), the code will have to repeat for the next 4 > > > levels but then load id2restids.txt instead (containing > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > inline will still become rather bulky so here's the question again: > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > perhaps?) that can actually be used IN an attribute name? > > > > > *********************************************** > > > for m = 1 to 4 > > > > > Open "id1restids.txt" For Input As #1 > > > For n = 0 To 2 > > > Input #1, randomlist(n) > > > Next n > > > Close #1 > > > > > randomizearray randomlist > > > > > for q = 0 to 2 > > > randompos(q) = q > > > next q > > > > > randomizearray randompos > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > ******************************************* > > > > > I've checked the guides, checked the e-primer, searching all over the > > > place for a piece of code that I could steal the trick from, but to no > > > avail so far. What certainly doesn't help is that I so far never quite > > > got the deal with the & % _ crf things.... (that's probably > > > embarrassing but true :p ) > > > > > I hope someone knows a nice solution for me. > > > > > Best regards, > > > > > liw > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Wed Nov 4 21:55:28 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 13:55:28 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <3345e4a50911041347g62fe7199h6be2c3103e127545@mail.gmail.com> Message-ID: Ok! I can hardly wait to try it now...! I'll report back tomorrow, many thanks in advance! Have a nice evening, liw p.s. this might be a double-post... I either accidentally discarded my previous reply or sent it to Ben in private... :s On Nov 4, 10:47?pm, ben robinson wrote: > hi liwenna. > > no, "restid" & m should concatinate "restid" and the value of "m" into a > single string. ?should work. ?not promising. > > On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > > Hello Ben, > > > Thanks for such a quick reply! > > > It should become something like that indeed! > > > ?But... correct me if I am wrong (I am at home now so no e-prime at my > > disposal, i'll certainly give it a try tomorrow), it seems that in the > > code you wrote the 'second m' is placed outside the attributename > > whereas I actually need it to be inside the attribute name, to adress > > attributes called "restid1", "restid2" and "restid3" . > > > And (but thats secondary at the moment) it should be a variable other > > than m as m will run up till 16, whereas this piece of code should be > > repeated every 4 lines of m. > > > On Nov 4, 10:10 pm, ben robinson wrote: > > > something like this? > > > > for m = 1 to 4 > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > next m > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > Short question: > > > > In the piece of code below: how do I implement a variable that > > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > > so that I can shorter the code to a single line (using an additional > > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > ************************************** > > > > for m = 1 to 4 > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > > *************************************** > > > > > Long explanation: > > > > Ok.... So... I have this habit of writing enormous inlines because I > > > > am generally to lazy or not in the mood to figure out/learn how to > > > > shorten them.... ?I decided that I am gonna break this habit and have > > > > choosen a nice litle experiment to do this with. However: I am stuck > > > > now. My hope is that someone here knows off hand what lines I need and > > > > is able to drop me a line. > > > > > In the final experiment each display holds 16 positions which will be > > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > > possible targetstimuli which will each have to appear in one of the 16 > > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > > should be used as distractorstimuli and I like to have the location of > > > > each of the distractorstimuli randomized... Unfortunately this means > > > > that for each trial there are 15! possible arrangements of the > > > > distractorstimuli (1 307 674 368 000). I don't like > > > > pseudorandomizations that well so I took up the challenge and actually > > > > got quite far so far. For obvious reasons I am working the whole thing > > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > This is what I got now: for target ID 1 a list with the 15 > > > > distractorstimuli for this target is loaded from a textfile into an > > > > array and randomized. A second array holds the numbers 1-15 which > > > > corresponds with locations 1-15. For each level of the triallist (m) > > > > the randomized distractorstimuli are randomly loaded into attributes > > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > > When a level is filled, the randompos array is rerandomized so that > > > > for the next level each distractorstimulus is loaded into a different > > > > restid-attribute. The piece of code shown below deals with the first 4 > > > > levels (target ID 1), the code will have to repeat for the next 4 > > > > levels but then load id2restids.txt instead (containing > > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > > inline will still become rather bulky so here's the question again: > > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > > perhaps?) that can actually be used IN an attribute name? > > > > > *********************************************** > > > > for m = 1 to 4 > > > > > Open "id1restids.txt" For Input As #1 > > > > For n = 0 To 2 > > > > Input #1, randomlist(n) > > > > Next n > > > > Close #1 > > > > > randomizearray randomlist > > > > > for q = 0 to 2 > > > > randompos(q) = q > > > > next q > > > > > randomizearray randompos > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > randomizearray randompos > > > > > next m > > > > ******************************************* > > > > > I've checked the guides, checked the e-primer, searching all over the > > > > place for a piece of code that I could steal the trick from, but to no > > > > avail so far. What certainly doesn't help is that I so far never quite > > > > got the deal with the & % _ crf things.... (that's probably > > > > embarrassing but true :p ) > > > > > I hope someone knows a nice solution for me. > > > > > Best regards, > > > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 psr-ari at hotmail.com Wed Nov 4 22:56:16 2009 From: psr-ari at hotmail.com (Ariana Rubin) Date: Wed, 4 Nov 2009 14:56:16 -0800 Subject: Terminate a Sublist after a Response Message-ID: I have a list, with 30 nested lists, and each nested list has a list within that has four images that are playing on a loop an infinite number of times. Essentially, the weight is set to a very high number, so for all purposes it is infinite. When the subject is watching the sequence of pictures they are supposed to hit the space bar when they see the changes, and that should terminate the sublist, and go to a response page. However, I have not been able to find a way to terminate the entire sublist (not just the image they are currently on) when the space bar (or any other key) is pressed. I have tried jumping to a flag, but it can't jump to a flag in a different list. I tried an inline that would terminate the list when the space bar was hit, but it seems like you can't change the termination conditions in the middle of the list. I have been trying to get it so that when the space bar is pressed (with essentially the same inline for each image) the weight or cycle (depending on which one is set to a very large number, and it doesn't actually matter which one for the rest of the program) gets changed to equal zero, and hopefully terminate the sublist. However, I can't figure out a functioning script for this. Please help me in anyway you can as I really need to figure this out! I have been working on it all week. Thank you so much in advance! ARubin --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 4 23:05:35 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 4 Nov 2009 18:05:35 -0500 Subject: Terminate a Sublist after a Response In-Reply-To: <18627c83-a91f-4bf4-9ab1-f2f2fe4be004@k17g2000yqh.googlegroups.com> Message-ID: have you tried using list.Terminate (substituting the name of your list in place of "list")? it works for me in version 1.2, but not in version 2.0. anyone else have this experience with version 2.0? i know, i know, i should start a new thread... ben On Wed, Nov 4, 2009 at 5:56 PM, Ariana Rubin wrote: > > I have a list, with 30 nested lists, and each nested list has a list > within that has four images that are playing on a loop an infinite > number of times. Essentially, the weight is set to a very high > number, so for all purposes it is infinite. When the subject is > watching the sequence of pictures they are supposed to hit the space > bar when they see the changes, and that should terminate the sublist, > and go to a response page. However, I have not been able to find a > way to terminate the entire sublist (not just the image they are > currently on) when the space bar (or any other key) is pressed. > I have tried jumping to a flag, but it can't jump to a flag in a > different list. > I tried an inline that would terminate the list when the space bar was > hit, but it seems like you can't change the termination conditions in > the middle of the list. > I have been trying to get it so that when the space bar is pressed > (with essentially the same inline for each image) the weight or cycle > (depending on which one is set to a very large number, and it doesn't > actually matter which one for the rest of the program) gets changed to > equal zero, and hopefully terminate the sublist. However, I can't > figure out a functioning script for this. > > Please help me in anyway you can as I really need to figure this out! > I have been working on it all week. > > Thank you so much in advance! > ARubin > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From mcfarla9 at msu.edu Thu Nov 5 00:16:09 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 4 Nov 2009 19:16:09 -0500 Subject: Terminate a Sublist after a Response In-Reply-To: <3345e4a50911041505u72cbdddete4f39f9d7db88bad@mail.gmail.com> Message-ID: Ben, > have you tried using list.Terminate (substituting the name of your list > in place of "list")? > > it works for me in version 1.2, but not in version 2.0. anyone else > have this experience with version 2.0? i know, i know, i should start a > new thread... Hmm, I'm pretty sure that I used List.Terminate in EP2 for a time-based BART a year or so ago, so I will have to check and confirm that when I get back to campus tomorrow. -- 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 liwenna at gmail.com Thu Nov 5 00:34:11 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 4 Nov 2009 16:34:11 -0800 Subject: Terminate a Sublist after a Response In-Reply-To: <3345e4a50911041505u72cbdddete4f39f9d7db88bad@mail.gmail.com> Message-ID: Good evening both, Ben: listname.terminate works for me in 2.0, I use it often to terminate a practicetrials list when certain criteria are met. Ariana. I am just gonna throw some wild new idea at you that I didn't try out and might not at all do what you need (and even might not be the best possible solution at all, but was the first thing that I could come up with). How about ditching all the 30 and more lists and have one list that in each level holds the four pictures that make up a trial. Start with creating a variable that will count the repeats in each trial" place the line: 'dim repeats as integer' on the user tab of the script window. Trialproc should then start with an inline that resets the variable called repeats; 'repeats = 0' will do. This inline then is followed by an labelobject (say backlabel). Next are four slides that will display the four pictures that make up one trial. Each slide has a set duration (depending on how fast the images have to 'change') and have responding and logging enabled. For each of these slides endaction should be jumping to a label called 'answerlabel'. After the slides place an inline that first increased the variable 'repeats' with 1, log the new value of repeats and next tells the program to jump back to 'backlabel': "Repeats = repeats +1 C.setattrib "logrepeats", repeats Goto backlabel". This inline is followed by 'answerlabel' and the responseslide should be the last object on the procedure. Now: when a trial starts each of the four slides are shown and if a subject responds during any of the slides the program will jump to 'answerlabel', resulting in the response slide to be shown and then termination of that run of the trialproc. If however after slide 4 the subject has not responded yet the program will encounter the inline that tells it to jump back to 'backlabel' and each of the slides will be shown again. Because the variable called 'repeats' is updated in the same inline that tells the program to jump back, you will be able to tell how often each of the slides has been shown. This way the procedure will keep looping the four pictures untill the subject has responded and you'll also be able to infer on which repetition of a slide the subject has responded. I hope this is any clear this way... I'll clarify more tomorrow if needed. Best regards, liw On Nov 5, 12:05?am, ben robinson wrote: > have you tried using list.Terminate (substituting the name of your list in > place of "list")? > > it works for me in version 1.2, but not in version 2.0. ?anyone else have > this experience with version 2.0? ?i know, i know, i should start a new > thread... > > ben > > On Wed, Nov 4, 2009 at 5:56 PM, Ariana Rubin wrote: > > > I have a list, with 30 nested lists, and each nested list has a list > > within that has four images that are playing on a loop an infinite > > number of times. ?Essentially, the weight is set to a very high > > number, so for all purposes it is infinite. ?When the subject is > > watching the sequence of pictures they are supposed to hit the space > > bar when they see the changes, and that should terminate the sublist, > > and go to a response page. ?However, I have not been able to find a > > way to terminate the entire sublist (not just the image they are > > currently on) when the space bar (or any other key) is pressed. > > I have tried jumping to a flag, but it can't jump to a flag in a > > different list. > > I tried an inline that would terminate the list when the space bar was > > hit, but it seems like you can't change the termination conditions in > > the middle of the list. > > I have been trying to get it so that when the space bar is pressed > > (with essentially the same inline for each image) the weight or cycle > > (depending on which one is set to a very large number, and it doesn't > > actually matter which one for the rest of the program) gets changed to > > equal zero, and hopefully terminate the sublist. ?However, I can't > > figure out a functioning script for this. > > > Please help me in anyway you can as I really need to figure this out! > > I have been working on it all week. > > > Thank you so much in advance! > > ARubin --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 12:45:49 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 04:45:49 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <81b3495f-ba1e-492c-9d5e-b55aee5ace14@g27g2000yqn.googlegroups.com> Message-ID: Works like a charm!! Thanks so much Ben. No idea it would be so simple.. just place the thingy outside the brackets... Now on to the next step... On Nov 4, 10:55 pm, liwenna wrote: > Ok! I can hardly wait to try it now...! > > I'll report back tomorrow, many thanks in advance! > > Have a nice evening, > > liw > > p.s. this might be a double-post... I either accidentally discarded my > previous reply or sent it to Ben in private... :s > > On Nov 4, 10:47 pm, ben robinson wrote: > > > hi liwenna. > > > no, "restid" & m should concatinate "restid" and the value of "m" into a > > single string. should work. not promising. > > > On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > > > Hello Ben, > > > > Thanks for such a quick reply! > > > > It should become something like that indeed! > > > > But... correct me if I am wrong (I am at home now so no e-prime at my > > > disposal, i'll certainly give it a try tomorrow), it seems that in the > > > code you wrote the 'second m' is placed outside the attributename > > > whereas I actually need it to be inside the attribute name, to adress > > > attributes called "restid1", "restid2" and "restid3" . > > > > And (but thats secondary at the moment) it should be a variable other > > > than m as m will run up till 16, whereas this piece of code should be > > > repeated every 4 lines of m. > > > > On Nov 4, 10:10 pm, ben robinson wrote: > > > > something like this? > > > > > for m = 1 to 4 > > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > > next m > > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > > Short question: > > > > > In the piece of code below: how do I implement a variable that > > > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > > > so that I can shorter the code to a single line (using an additional > > > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > > ************************************** > > > > > for m = 1 to 4 > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > randomizearray randompos > > > > > > next m > > > > > *************************************** > > > > > > Long explanation: > > > > > Ok.... So... I have this habit of writing enormous inlines because I > > > > > am generally to lazy or not in the mood to figure out/learn how to > > > > > shorten them.... I decided that I am gonna break this habit and have > > > > > choosen a nice litle experiment to do this with. However: I am stuck > > > > > now. My hope is that someone here knows off hand what lines I need and > > > > > is able to drop me a line. > > > > > > In the final experiment each display holds 16 positions which will be > > > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > > > possible targetstimuli which will each have to appear in one of the 16 > > > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > > > should be used as distractorstimuli and I like to have the location of > > > > > each of the distractorstimuli randomized... Unfortunately this means > > > > > that for each trial there are 15! possible arrangements of the > > > > > distractorstimuli (1 307 674 368 000). I don't like > > > > > pseudorandomizations that well so I took up the challenge and actually > > > > > got quite far so far. For obvious reasons I am working the whole thing > > > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > > This is what I got now: for target ID 1 a list with the 15 > > > > > distractorstimuli for this target is loaded from a textfile into an > > > > > array and randomized. A second array holds the numbers 1-15 which > > > > > corresponds with locations 1-15. For each level of the triallist (m) > > > > > the randomized distractorstimuli are randomly loaded into attributes > > > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > > > When a level is filled, the randompos array is rerandomized so that > > > > > for the next level each distractorstimulus is loaded into a different > > > > > restid-attribute. The piece of code shown below deals with the first 4 > > > > > levels (target ID 1), the code will have to repeat for the next 4 > > > > > levels but then load id2restids.txt instead (containing > > > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > > > inline will still become rather bulky so here's the question again: > > > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > > > perhaps?) that can actually be used IN an attribute name? > > > > > > *********************************************** > > > > > for m = 1 to 4 > > > > > > Open "id1restids.txt" For Input As #1 > > > > > For n = 0 To 2 > > > > > Input #1, randomlist(n) > > > > > Next n > > > > > Close #1 > > > > > > randomizearray randomlist > > > > > > for q = 0 to 2 > > > > > randompos(q) = q > > > > > next q > > > > > > randomizearray randompos > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > randomizearray randompos > > > > > > next m > > > > > ******************************************* > > > > > > I've checked the guides, checked the e-primer, searching all over the > > > > > place for a piece of code that I could steal the trick from, but to no > > > > > avail so far. What certainly doesn't help is that I so far never quite > > > > > got the deal with the & % _ crf things.... (that's probably > > > > > embarrassing but true :p ) > > > > > > I hope someone knows a nice solution for me. > > > > > > Best regards, > > > > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 14:02:42 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 06:02:42 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <48a3512c-aae4-4749-a28b-670142d26ebf@k19g2000yqc.googlegroups.com> Message-ID: It is done and works just great... I am quite happy with it.... says the person who is known for having written out/copy pasted 200 seperate lines of code to create breaks every 20 trials in the past ^.^ (if triallist.sample = 1 then; if triallist.sample = 2 then... etc). Now I got one more thing to ask, seeing as I am trying to make this a decent piece of code... I needed a line that made 'm' (levels of the triallist) run from 1 to 4 if p (targetidentity) is 1, and run from 5 to 8 if p =2, from 9 to 12 if p is 3 etc. This is what i came up with: for m = 1 + 4*(p-1) to 4 + 4*(p-1) But I can imagine that there should be a shortcut for that, like mod or step.... so... is there? anyone? Once more thank you Ben! Greets, happy liw On Nov 5, 1:45 pm, liwenna wrote: > Works like a charm!! > > Thanks so much Ben. No idea it would be so simple.. just place the > thingy outside the brackets... > > Now on to the next step... > > On Nov 4, 10:55 pm, liwenna wrote: > > > Ok! I can hardly wait to try it now...! > > > I'll report back tomorrow, many thanks in advance! > > > Have a nice evening, > > > liw > > > p.s. this might be a double-post... I either accidentally discarded my > > previous reply or sent it to Ben in private... :s > > > On Nov 4, 10:47 pm, ben robinson wrote: > > > > hi liwenna. > > > > no, "restid" & m should concatinate "restid" and the value of "m" into a > > > single string. should work. not promising. > > > > On Wed, Nov 4, 2009 at 4:41 PM, liwenna wrote: > > > > > Hello Ben, > > > > > Thanks for such a quick reply! > > > > > It should become something like that indeed! > > > > > But... correct me if I am wrong (I am at home now so no e-prime at my > > > > disposal, i'll certainly give it a try tomorrow), it seems that in the > > > > code you wrote the 'second m' is placed outside the attributename > > > > whereas I actually need it to be inside the attribute name, to adress > > > > attributes called "restid1", "restid2" and "restid3" . > > > > > And (but thats secondary at the moment) it should be a variable other > > > > than m as m will run up till 16, whereas this piece of code should be > > > > repeated every 4 lines of m. > > > > > On Nov 4, 10:10 pm, ben robinson wrote: > > > > > something like this? > > > > > > for m = 1 to 4 > > > > > > triallist.SetAttrib m, "restid" & m, randomlist(randompos(m-1)) > > > > > > next m > > > > > > On Wed, Nov 4, 2009 at 3:52 PM, liwenna wrote: > > > > > > > Short question: > > > > > > In the piece of code below: how do I implement a variable that > > > > > > replaces the digits 1-3 in the attribute names 'restid1' - 'restid3' > > > > > > so that I can shorter the code to a single line (using an additional > > > > > > 'for 0 to 2' variable for the (randompos(x)) part) ? > > > > > > > ************************************** > > > > > > for m = 1 to 4 > > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > > randomizearray randompos > > > > > > > next m > > > > > > *************************************** > > > > > > > Long explanation: > > > > > > Ok.... So... I have this habit of writing enormous inlines because I > > > > > > am generally to lazy or not in the mood to figure out/learn how to > > > > > > shorten them.... I decided that I am gonna break this habit and have > > > > > > choosen a nice litle experiment to do this with. However: I am stuck > > > > > > now. My hope is that someone here knows off hand what lines I need and > > > > > > is able to drop me a line. > > > > > > > In the final experiment each display holds 16 positions which will be > > > > > > filled with one targetstimulus and 15 distractorstimuli. There are 16 > > > > > > possible targetstimuli which will each have to appear in one of the 16 > > > > > > possible positions (a 4x4 grid, 16 locations x16 targetstimuli = 256 > > > > > > trials). The identity of the targetstimulus decides which 15 stimuli > > > > > > should be used as distractorstimuli and I like to have the location of > > > > > > each of the distractorstimuli randomized... Unfortunately this means > > > > > > that for each trial there are 15! possible arrangements of the > > > > > > distractorstimuli (1 307 674 368 000). I don't like > > > > > > pseudorandomizations that well so I took up the challenge and actually > > > > > > got quite far so far. For obvious reasons I am working the whole thing > > > > > > out with a smaller number of positions: 4 (2x2 grid). > > > > > > > This is what I got now: for target ID 1 a list with the 15 > > > > > > distractorstimuli for this target is loaded from a textfile into an > > > > > > array and randomized. A second array holds the numbers 1-15 which > > > > > > corresponds with locations 1-15. For each level of the triallist (m) > > > > > > the randomized distractorstimuli are randomly loaded into attributes > > > > > > called "restid1" up to "restid3" (4 locations, 1 holds the target). > > > > > > When a level is filled, the randompos array is rerandomized so that > > > > > > for the next level each distractorstimulus is loaded into a different > > > > > > restid-attribute. The piece of code shown below deals with the first 4 > > > > > > levels (target ID 1), the code will have to repeat for the next 4 > > > > > > levels but then load id2restids.txt instead (containing > > > > > > distractorstimuli for target ID 2), etc etc. As you can see this > > > > > > inline will still become rather bulky so here's the question again: > > > > > > can I shorten the 3 lines that fill the triallist-levels to 1 line by > > > > > > using another 'for 1 to 3' attribute (one of those mysterious %_ & # > > > > > > perhaps?) that can actually be used IN an attribute name? > > > > > > > *********************************************** > > > > > > for m = 1 to 4 > > > > > > > Open "id1restids.txt" For Input As #1 > > > > > > For n = 0 To 2 > > > > > > Input #1, randomlist(n) > > > > > > Next n > > > > > > Close #1 > > > > > > > randomizearray randomlist > > > > > > > for q = 0 to 2 > > > > > > randompos(q) = q > > > > > > next q > > > > > > > randomizearray randompos > > > > > > > triallist.SetAttrib m, "restid1", randomlist(randompos(0)) > > > > > > triallist.SetAttrib m, "restid2", randomlist(randompos(1)) > > > > > > triallist.SetAttrib m, "restid3", randomlist(randompos(2)) > > > > > > > randomizearray randompos > > > > > > > next m > > > > > > ******************************************* > > > > > > > I've checked the guides, checked the e-primer, searching all over the > > > > > > place for a piece of code that I could steal the trick from, but to no > > > > > > avail so far. What certainly doesn't help is that I so far never quite > > > > > > got the deal with the & % _ crf things.... (that's probably > > > > > > embarrassing but true :p ) > > > > > > > I hope someone knows a nice solution for me. > > > > > > > Best regards, > > > > > > > liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 15:01:53 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 07:01:53 -0800 Subject: copy/paste objects between experiments in eprime 2? Message-ID: So.. advertised as a feature of e-prime 2.0 I somehow can't copy/paste objects between e-studio files... Is anyone else having this 'problem' and (more importantly) did anyone manage to fix it if they had? I also posted on the PST forum but I'd like to hear from people here too. Best, liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 5 16:44:46 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 11:44:46 -0500 Subject: Terminate a Sublist after a Response In-Reply-To: <2836fa52-b7d6-456d-bc41-f839083ee5ff@r5g2000yqb.googlegrou ps.com> Message-ID: At 11/4/2009 07:34 PM Wednesday, liwenna wrote: >Ben: listname.terminate works for me in 2.0, I use it often to >terminate a practicetrials list when certain criteria are met. Well, liwenna settled that (thanks), but I said I would check and indeed, I also have used List.Terminate successfully in EP2. -- 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 Thu Nov 5 16:47:29 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 11:47:29 -0500 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: Message-ID: liwenna, I already replied to your post at the PST Forum, but would like to also post this here: Sigh. So just now I took a look at this myself. For the record, I ran these tests using EP 2.0.8.22 under Vista (I do not, repeat, do not run subjects under Vista, only program development). We need to pay attention to the source of the copy, the destination of the paste, the method of copy/paste, and the occurrence of name conflicts during the paste, as follows: Source Copy: Structure, Design (e.g., Procedure), Browser Destination Paste: Structure, Design (e.g., Procedure), Browser Method: Drag & Drop, Context (right-click) menu, Edit menu Name Coflict: absent or present This gives us 54 cases (not counting all the Paste Conflict possibilities) which PST engineers should have tested for themselves, but as usual I will step into the gap and do this for them (or have they already reported this in a KB that I missed?) (yes, I seriously am a professional faultfinder, every organization should get one). But we may simplify this a little, as follows: - Drag & Drop works from Structure, Design, and Browser, but only to the Design window of the destination. - Both Edit > Copy and Context menu > Copy work from Structure and Browser windows; Copy is grayed out in the Design window. - Both Edit > Paste and Context menu > Paste work in the Structure, Design, and Browser windows, as long as there is no name conflict. (To paste to the Structure window, you must have the Unreferenced E-Objects selected.) - If an object with the same name already exists in the destination, you will get the Paste Conflict dialog. And here is where the real fun begins... - If you use Context menu > Paste in the Structure window and get a Paste Conflict, you also get a little checkbox off to the side that says "Default", and the dialog does not respond to any entries; furthermore, you cannot switch to any other window on the computer until that dialog is dismissed. You can only press Esc to dismiss the dialog. - Thereafter, further attempts to paste to the Structure or Browser windows will fail until you exit & restart E-Studio. You can still paste to the Design window, but you will get a Paste Conflict dialog even though the earlier paste failed (and even if that used a unique object name). I'm sure I missed something, but you get the idea. (Aside to Brandon: This is an example of the sort of documentation I would like to see PST provide for us, instead of me puzzling all this out for myself.) OK, now somebody has to post this to Web Support to get their attention, and the more of us who do that the better. -- David McFarlane, Professional Faultfinder At 11/5/2009 10:01 AM Thursday, you wrote: >So.. advertised as a feature of e-prime 2.0 I somehow can't copy/paste >objects between e-studio files... >Is anyone else having this 'problem' and (more importantly) did anyone >manage to fix it if they had? > >I also posted on the PST forum but I'd like to hear from people here >too. > >Best, > >liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 vandypsychimaging at gmail.com Thu Nov 5 17:57:32 2009 From: vandypsychimaging at gmail.com (clshores) Date: Thu, 5 Nov 2009 09:57:32 -0800 Subject: Have fixation shown for duration if a key is pressed Message-ID: We currently have an experiment when the subject is shown a fixation - a cue - an image. They are given 2.5s to respond to the image. If they respond before the 2.5s is up we would like the fixation to display for the remainder of the 2.5s. Is there an easy way to do this? 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 Thu Nov 5 18:23:10 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 13:23:10 -0500 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <9cdd13b3-ba86-4efc-8608-77f427b99e9c@j4g2000yqe.googlegrou ps.com> Message-ID: Try setting End Action to (none). (I just did my own search of the Getting Started and User's Guides, you only learn this in passing deep within Chapter 3 of the User's Guide. I don't even remember how I learned this myself, probably just pressing all the buttons myself long ago as I continue to do to this day. This really needs to be better documented. But I would be glad to be corrected.) -- David McFarlane, Professional Faultfinder >We currently have an experiment when the subject is shown a fixation - >a cue - an image. They are given 2.5s to respond to the image. If >they respond before the 2.5s is up we would like the fixation to >display for the remainder of the 2.5s. > >Is there an easy way to do this? > >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 Thu Nov 5 18:24:19 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 13:24:19 -0500 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <6c8f86c6-de60-4766-87fc-9601a9db34fb@o10g2000yqa.googlegro ups.com> Message-ID: liwenna, I applaud you for wanting to improve your coding skills and fussing over these little details. FWIW, I would have come up with much the same line, only I might reduce the math a tiny bit, and I like to add just a few more parantheses for clarity: For m = (4*p - 3) to (4*p) But to be honest I don't know if that is any better or clearer than what you already did. Cheers, -- David McFarlane, Professional Faultfinder At 11/5/2009 09:02 AM Thursday, you wrote: >It is done and works just great... I am quite happy with it.... says >the person who is known for having written out/copy pasted 200 >seperate lines of code to create breaks every 20 trials in the past >^.^ (if triallist.sample = 1 then; if triallist.sample = 2 then... >etc). > >Now I got one more thing to ask, seeing as I am trying to make this a >decent piece of code... I needed a line that made 'm' (levels of the >triallist) run from 1 to 4 if p (targetidentity) is 1, and run from 5 >to 8 if p =2, from 9 to 12 if p is 3 etc. > >This is what i came up with: for m = 1 + 4*(p-1) to 4 + 4*(p-1) >But I can imagine that there should be a shortcut for that, like mod >or step.... so... is there? anyone? > >Once more thank you Ben! > > >Greets, > >happy liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 vandypsychimaging at gmail.com Thu Nov 5 18:32:24 2009 From: vandypsychimaging at gmail.com (clshores) Date: Thu, 5 Nov 2009 10:32:24 -0800 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <4af31817.5944f10a.09e3.ffff81c6SMTPIN_ADDED@gmr-mx.google.com> Message-ID: That makes the image stay on the screen for the duration. We want the fixation image to display for the remainder of the time. THanks for the reply. On Nov 5, 12:23?pm, David McFarlane wrote: > Try setting End Action to (none). > > (I just did my own search of the Getting Started and User's Guides, > you only learn this in passing deep within Chapter 3 of the User's > Guide. ?I don't even remember how I learned this myself, probably > just pressing all the buttons myself long ago as I continue to do to > this day. ?This really needs to be better documented. ?But I would be > glad to be corrected.) > > -- David McFarlane, Professional Faultfinder > > >We currently have an experiment when the subject is shown a fixation - > >a cue - an image. ?They are given 2.5s to respond to the image. ?If > >they respond before the 2.5s is up we would like the fixation to > >display for the remainder of the 2.5s. > > >Is there an easy way to do this? > > >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 Thu Nov 5 18:38:23 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 13:38:23 -0500 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: Message-ID: Then I did not follow the description of your experiment, sorry. -- David McFarlane, Professional Faultfinder >That makes the image stay on the screen for the duration. We want the >fixation image to display for the remainder of the time. > >THanks for the reply. > >On Nov 5, 12:23 pm, David McFarlane wrote: > > Try setting End Action to (none). > > > > (I just did my own search of the Getting Started and User's Guides, > > you only learn this in passing deep within Chapter 3 of the User's > > Guide. I don't even remember how I learned this myself, probably > > just pressing all the buttons myself long ago as I continue to do to > > this day. This really needs to be better documented. But I would be > > glad to be corrected.) > > > > -- David McFarlane, Professional Faultfinder > > > > >We currently have an experiment when the subject is shown a fixation - > > >a cue - an image. They are given 2.5s to respond to the image. If > > >they respond before the 2.5s is up we would like the fixation to > > >display for the remainder of the 2.5s. > > > > >Is there an easy way to do this? > > > > >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 tobias.fw at gmail.com Thu Nov 5 18:42:20 2009 From: tobias.fw at gmail.com (Tobi) Date: Thu, 5 Nov 2009 10:42:20 -0800 Subject: no image should be loaded for "?" in list Message-ID: Hi together, I have a problem as fallows: I have a display containing n positions as specified in the "slide element". Which bitmap is supposed to be placed on which position is then defined in a list. Sometimes, I wish to have no bitmap at all on some positions. Therefore I left the "?" in the list. An error message occurs saying "Filename or image display has not been set". It is the same if I leave a blank in the respective cell. I also thought about displaying en empty bitmap (that is in the color of the background), however the positions are superimposed. Therefore, te bitmaps would only be partly displayed. Maybe there is an easy solution, I didn't find any. Thanks a lot and cheers, Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 tobias.fw at gmail.com Thu Nov 5 18:54:39 2009 From: tobias.fw at gmail.com (Tobi) Date: Thu, 5 Nov 2009 10:54:39 -0800 Subject: Response devices In-Reply-To: <3345e4a50911020733y76084571hfd040bfae086271b@mail.gmail.com> Message-ID: Thanks for your input. I somehow like the idea of doing some handycraft even though I am not an educated craftsman. For my diploma thesis I had to braze cable plugs in order to being able to put controllers (via audio inlines) inside a shielded cabin. In terms of response devices I now customised a keyboard ("Logitech ultraflat"). I removed all buttons except 4 (those I need for the current experiment) and attached a thin pad of foamed rubber (as available in handicraft shops). I made holes for they keys that now bunch out. The layer of foamed rubber is flush with the keyboards surface. It looks kind of professional now and still isn't expensive (18,- ?). However, timing might be an issue. Do you know how precisely USB keyboards record the RT? The XBox things sounds very sophisticated. What kinds of experiments are you doing with it? Do you know about the timing precision? Best, Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 5 19:04:32 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 14:04:32 -0500 Subject: Response devices In-Reply-To: <0ffb4a1a-1a89-4639-b3e7-2d11e24394c9@j19g2000yqk.googlegro ups.com> Message-ID: Tobi, For more money you could also create custom keyboard designs with the Ergodex DX1 (http://www.ergodex.com/mainpage.htm ), although I don't think it's timing is any better than an ordinary keyboard, and I like your inexpensive custom design better. The latest reference I have on keyboard timing is Plant, R. R., & Turner, G. (2009), "Millisecond precision psychological research in a world of commodity computers: New hardware, new problems?" Beh Res Meth 41: 598-614. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:54 PM Thursday, you wrote: >Thanks for your input. I somehow like the idea of doing some >handycraft even though I am not an educated craftsman. For my diploma >thesis I had to braze cable plugs in order to being able to put >controllers (via audio inlines) inside a shielded cabin. >In terms of response devices I now customised a keyboard ("Logitech >ultraflat"). I removed all buttons except 4 (those I need for the >current experiment) and attached a thin pad of foamed rubber (as >available in handicraft shops). I made holes for they keys that now >bunch out. The layer of foamed rubber is flush with the keyboards >surface. It looks kind of professional now and still isn't expensive >(18,- ?). > >However, timing might be an issue. Do you know how precisely USB >keyboards record the RT? > >The XBox things sounds very sophisticated. What kinds of experiments >are you doing with it? Do you know about the timing precision? > >Best, >Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 19:12:35 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 11:12:35 -0800 Subject: how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? In-Reply-To: <4af3185c.5944f10a.0b3c.ffff81e5SMTPIN_ADDED@gmr-mx.google.com> Message-ID: *bows* On Nov 5, 7:24?pm, David McFarlane wrote: > liwenna, > > I applaud you for wanting to improve your coding skills and fussing > over these little details. > > FWIW, I would have come up with much the same line, only I might > reduce the math a tiny bit, and I like to add just a few more > parantheses for clarity: > > For m = (4*p - 3) to (4*p) > > But to be honest I don't know if that is any better or clearer than > what you already did. > > Cheers, > -- David McFarlane, Professional Faultfinder > > At 11/5/2009 09:02 AM Thursday, you wrote: > > >It is done and works just great... I am quite happy with it.... says > >the person who is known for having written out/copy pasted 200 > >seperate lines of code to create breaks every 20 trials in the past > >^.^ (if triallist.sample = 1 then; if triallist.sample = 2 then... > >etc). > > >Now I got one more thing to ask, seeing as I am trying to make this a > >decent piece of code... I needed a line that made 'm' (levels of the > >triallist) run from 1 to 4 if p (targetidentity) is 1, and run from 5 > >to 8 if p =2, from 9 to 12 if p is 3 etc. > > >This is what i came up with: ?for m = 1 + 4*(p-1) to 4 + 4*(p-1) > >But I can imagine that there should be a shortcut for that, like mod > >or step.... so... is there? anyone? > > >Once more thank you Ben! > > >Greets, > > >happy liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 21:23:46 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:23:46 -0800 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <1b523016-b121-4deb-a80b-1cd71ce9bd2b@f20g2000vbl.googlegroups.com> Message-ID: obviously... "if triallist.sample > 1 then fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = 500 +(2500 - prevrt)" ... should be: "if triallist.sample > 1 then fixationslide.duration = 500 + (2500 - prevrt)" On Nov 5, 10:21?pm, liwenna wrote: > Hey Cishores, > > Am I correct to think that you basically want/need to ensure that > there is exactly 2,5 seconds + the 'normal fixation time' between the > onset of the image and the next cue? > > How about prolonging the duration of the fixation cross on the NEXT > trial with the remainder of the 2.5 seconds? ?This way you also won't > end your last trial with a fixationcross as you would if an extra > fixationcross is added at the end of a trial. > > I am not entirely sure if my suggestion works (or works right away) as > I have no e-prime to try at the moment... but what you could do is: > first declare a global variable that will have the response time for > each trial written to it so it can be used in the next trial: on the > user tab of the script window type "declare prevRT as integer". > On your trialproc ?you probably have 3 slides: fixationslide, cueslide > and imageslide (i am just making up some names now). Insert an inline > after the imageslide that writes the response time to the 'prevRT'- > variable: if imageslide.rt > 0 then prevRT = imageslide.rt (the first>0 part is to ensure that there actually WAS a response during the > > imageslide, I don't know what you want the program to do in case of no > response... things might actually be done litle different depending on > that). Now at the end of the trial the variable prevRT holds the > response time on that trial and carries this value over to the next > trial, so we can use it to prolonge the fixationslide. I think that > that should be possible by placing an inline right before the > fixationslide with something like: "if triallist.sample > 1 then > fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = > 500 +(2500 - prevrt)" wherein 500 is my guess at your 'normal' > fixationslide duration, the (2500 - prevrt) is rather obvious I hope > and the if triallist.sample > 1 part should ensure that the first > trial doesn't start with a 3000 ms fixation cross. > > I think that in order for this to work you should leave the duration > on the fixationslide properties tab empty. > > I hope that this is of some help to you. As said: no e-prime here, so > no trying out and no guarantees :) Alternatively it might be possible > to use two states on your imageslide, one with the image and one is an > 'extra' fixationcross and then have the 2500 ms slide switch states > when a response is given, but a) not sure if that works, b) can't make > up the code top of my head and c) code would depend on the inputdevice > for the response I think. > > Best regards, > > liwenna > > On Nov 5, 7:38?pm, David McFarlane wrote: > > > Then I did not follow the description of your experiment, sorry. > > > -- David McFarlane, Professional Faultfinder > > > >That makes the image stay on the screen for the duration. ?We want the > > >fixation image to display for the remainder of the time. > > > >THanks for the reply. > > > >On Nov 5, 12:23 pm, David McFarlane wrote: > > > > Try setting End Action to (none). > > > > > (I just did my own search of the Getting Started and User's Guides, > > > > you only learn this in passing deep within Chapter 3 of the User's > > > > Guide. ?I don't even remember how I learned this myself, probably > > > > just pressing all the buttons myself long ago as I continue to do to > > > > this day. ?This really needs to be better documented. ?But I would be > > > > glad to be corrected.) > > > > > -- David McFarlane, Professional Faultfinder > > > > > >We currently have an experiment when the subject is shown a fixation - > > > > >a cue - an image. ?They are given 2.5s to respond to the image. ?If > > > > >they respond before the 2.5s is up we would like the fixation to > > > > >display for the remainder of the 2.5s. > > > > > >Is there an easy way to do this? > > > > > >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 Thu Nov 5 21:21:00 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:21:00 -0800 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <4af31ba8.5344f10a.54e3.7bccSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hey Cishores, Am I correct to think that you basically want/need to ensure that there is exactly 2,5 seconds + the 'normal fixation time' between the onset of the image and the next cue? How about prolonging the duration of the fixation cross on the NEXT trial with the remainder of the 2.5 seconds? This way you also won't end your last trial with a fixationcross as you would if an extra fixationcross is added at the end of a trial. I am not entirely sure if my suggestion works (or works right away) as I have no e-prime to try at the moment... but what you could do is: first declare a global variable that will have the response time for each trial written to it so it can be used in the next trial: on the user tab of the script window type "declare prevRT as integer". On your trialproc you probably have 3 slides: fixationslide, cueslide and imageslide (i am just making up some names now). Insert an inline after the imageslide that writes the response time to the 'prevRT'- variable: if imageslide.rt > 0 then prevRT = imageslide.rt (the first >0 part is to ensure that there actually WAS a response during the imageslide, I don't know what you want the program to do in case of no response... things might actually be done litle different depending on that). Now at the end of the trial the variable prevRT holds the response time on that trial and carries this value over to the next trial, so we can use it to prolonge the fixationslide. I think that that should be possible by placing an inline right before the fixationslide with something like: "if triallist.sample > 1 then fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = 500 +(2500 - prevrt)" wherein 500 is my guess at your 'normal' fixationslide duration, the (2500 - prevrt) is rather obvious I hope and the if triallist.sample > 1 part should ensure that the first trial doesn't start with a 3000 ms fixation cross. I think that in order for this to work you should leave the duration on the fixationslide properties tab empty. I hope that this is of some help to you. As said: no e-prime here, so no trying out and no guarantees :) Alternatively it might be possible to use two states on your imageslide, one with the image and one is an 'extra' fixationcross and then have the 2500 ms slide switch states when a response is given, but a) not sure if that works, b) can't make up the code top of my head and c) code would depend on the inputdevice for the response I think. Best regards, liwenna On Nov 5, 7:38?pm, David McFarlane wrote: > Then I did not follow the description of your experiment, sorry. > > -- David McFarlane, Professional Faultfinder > > >That makes the image stay on the screen for the duration. ?We want the > >fixation image to display for the remainder of the time. > > >THanks for the reply. > > >On Nov 5, 12:23 pm, David McFarlane wrote: > > > Try setting End Action to (none). > > > > (I just did my own search of the Getting Started and User's Guides, > > > you only learn this in passing deep within Chapter 3 of the User's > > > Guide. ?I don't even remember how I learned this myself, probably > > > just pressing all the buttons myself long ago as I continue to do to > > > this day. ?This really needs to be better documented. ?But I would be > > > glad to be corrected.) > > > > -- David McFarlane, Professional Faultfinder > > > > >We currently have an experiment when the subject is shown a fixation - > > > >a cue - an image. ?They are given 2.5s to respond to the image. ?If > > > >they respond before the 2.5s is up we would like the fixation to > > > >display for the remainder of the 2.5s. > > > > >Is there an easy way to do this? > > > > >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 Thu Nov 5 21:35:15 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 16:35:15 -0500 Subject: Have fixation shown for duration if a key is pressed In-Reply-To: <25d41f59-9199-4b0a-aeca-04a813366539@p28g2000vbi.googlegro ups.com> Message-ID: At 11/5/2009 04:23 PM Thursday, liwenna wrote: >obviously... > >"if triallist.sample > 1 then >fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = >500 +(2500 - prevrt)" > >... should be: >"if triallist.sample > 1 then >fixationslide.duration = 500 + (2500 - prevrt)" > >On Nov 5, 10:21 pm, liwenna wrote: > > Hey Cishores, > > > > Am I correct to think that you basically want/need to ensure that > > there is exactly 2,5 seconds + the 'normal fixation time' between the > > onset of the image and the next cue? Ah, if that is the issue, might also see http://support.pstnet.com/forum/Topic1988-12-1.aspx , sorry if I misunderstood that earlier. -- David McFarlane, Professional Faultfinder > > > > How about prolonging the duration of the fixation cross on the NEXT > > trial with the remainder of the 2.5 seconds? This way you also won't > > end your last trial with a fixationcross as you would if an extra > > fixationcross is added at the end of a trial. > > > > I am not entirely sure if my suggestion works (or works right away) as > > I have no e-prime to try at the moment... but what you could do is: > > first declare a global variable that will have the response time for > > each trial written to it so it can be used in the next trial: on the > > user tab of the script window type "declare prevRT as integer". > > On your trialproc you probably have 3 slides: fixationslide, cueslide > > and imageslide (i am just making up some names now). Insert an inline > > after the imageslide that writes the response time to the 'prevRT'- > > variable: if imageslide.rt > 0 then prevRT = imageslide.rt (the > first>0 part is to ensure that there actually WAS a response during the > > > > imageslide, I don't know what you want the program to do in case of no > > response... things might actually be done litle different depending on > > that). Now at the end of the trial the variable prevRT holds the > > response time on that trial and carries this value over to the next > > trial, so we can use it to prolonge the fixationslide. I think that > > that should be possible by placing an inline right before the > > fixationslide with something like: "if triallist.sample > 1 then > > fixationslide.duration = 500 + (2500 - prevrt)fixationslide.duration = > > 500 +(2500 - prevrt)" wherein 500 is my guess at your 'normal' > > fixationslide duration, the (2500 - prevrt) is rather obvious I hope > > and the if triallist.sample > 1 part should ensure that the first > > trial doesn't start with a 3000 ms fixation cross. > > > > I think that in order for this to work you should leave the duration > > on the fixationslide properties tab empty. > > > > I hope that this is of some help to you. As said: no e-prime here, so > > no trying out and no guarantees :) Alternatively it might be possible > > to use two states on your imageslide, one with the image and one is an > > 'extra' fixationcross and then have the 2500 ms slide switch states > > when a response is given, but a) not sure if that works, b) can't make > > up the code top of my head and c) code would depend on the inputdevice > > for the response I think. > > > > Best regards, > > > > liwenna > > > > On Nov 5, 7:38 pm, David McFarlane wrote: > > > > > Then I did not follow the description of your experiment, sorry. > > > > > -- David McFarlane, Professional Faultfinder > > > > > >That makes the image stay on the screen for the duration. We want the > > > >fixation image to display for the remainder of the time. > > > > > >THanks for the reply. > > > > > >On Nov 5, 12:23 pm, David McFarlane wrote: > > > > > Try setting End Action to (none). > > > > > > > (I just did my own search of the Getting Started and User's Guides, > > > > > you only learn this in passing deep within Chapter 3 of the User's > > > > > Guide. I don't even remember how I learned this myself, probably > > > > > just pressing all the buttons myself long ago as I continue to do to > > > > > this day. This really needs to be better documented. But I would be > > > > > glad to be corrected.) > > > > > > > -- David McFarlane, Professional Faultfinder > > > > > > > >We currently have an experiment when the subject is shown > a fixation - > > > > > >a cue - an image. They are given 2.5s to respond to the image. If > > > > > >they respond before the 2.5s is up we would like the fixation to > > > > > >display for the remainder of the 2.5s. > > > > > > > >Is there an easy way to do this? > > > > > > > >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 Thu Nov 5 21:39:58 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:39:58 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <5722c97d-71fc-4629-87db-ba50e1dd9bb4@z41g2000yqz.googlegroups.com> Message-ID: How about..... adding an attribute to your list that holds the number of bitmaps that you need to use in that level/trail called say... "nbitmaps" and give the slide element multiple states that are called 1 2 3 4 etc. and hold 1 2 3 or 4 images. Then set the slidestate to [nbitmaps] and according to the value of 'nbitmaps' it will show the slidestate with 1 2 3 or 4 imageobjects in it. As a consequence you might also need to specify the x and y values (positions) of each imageobject in the triallist instead of in the properties of each imageobject (as I think you got them now?). I am not entirely sure if e-prime will allow the slideobject to run if not all referenced values for all slidestates are being adressed in the triallist (as would be the case for say slidestate 4 in a nbitmap = 3 trial) but you can give it a shot; and also, depending on your actually number of possible positions, this might be not a feasible option... but yeah... it's just a suggestion. Alternatively you might be able to solve it somehow by drawing the entire canvas for each trial in an inline but that definitly is a lot of work. Then there is a vague notion somewhere in my head that you can bring imageobjects to the front or sent them to the back... but I have no friggin clue as to how to do that 'dynamically' based on each trial's demands.... That would be all for the moment ... best, liw On Nov 5, 7:42?pm, Tobi wrote: > Hi together, > > I have a problem as fallows: I have a display containing n positions > as specified in the "slide element". Which bitmap is supposed to be > placed on which position is then defined in a list. Sometimes, I wish > to have no bitmap at all on some positions. Therefore I left the "?" > in the list. An error message occurs saying "Filename or image display > has not been set". It is the same if I leave a blank in the respective > cell. > > I also thought about displaying en empty bitmap (that is in the color > of the background), however the positions are superimposed. Therefore, > te bitmaps would only be partly displayed. > > Maybe there is an easy solution, I didn't find any. > Thanks a lot and cheers, > Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Thu Nov 5 21:52:29 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 13:52:29 -0800 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <4af301bc.5844f10a.1967.7aa5SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hey David, That is a very long and detailed response (twice!) and thank you for that. It shows your professional faultfinder status ;) Unfortunately I see a lot of options in there that I did try and that gave absolutely none results at all. At best the program seems to get confused and will not even show newly added (not copy pasted from another experiment) objects anymore. Closing and reopening the file solves that but doesn't bring forth the presumably copy-pasted object. I also do have many recollections of e-prime crashing completely when trying to move objects between experiments (drag&drop style) (don't know why I try that every so often). I get your message about contacting pst support... I might on monday... I find that I feel rather meek about this issue.... *shrugs* copy pasting objects between e-studio files just sounded to good to be true anyways.... Which is probably why I didn't delve into this untill today even thought I am using e-prime 2 for 9 months now ^.^ Thanks again for your elaborate response thought. Did you do all that today or did you happen to have this little research ready? Greet, liw On Nov 5, 5:47?pm, David McFarlane wrote: > liwenna, > > I already replied to your post at the PST Forum, but would like to > also post this here: > > Sigh. So just now I took a look at this myself. For the record, I ran > these tests using EP 2.0.8.22 under Vista (I do not, repeat, do not > run subjects under Vista, only program development). > > We need to pay attention to the source of the copy, the destination > of the paste, the method of copy/paste, and the occurrence of name > conflicts during the paste, as follows: > > Source Copy: Structure, Design (e.g., Procedure), Browser > Destination Paste: Structure, Design (e.g., Procedure), Browser > Method: Drag & Drop, Context (right-click) menu, Edit menu > Name Coflict: absent or present > > This gives us 54 cases (not counting all the Paste Conflict > possibilities) which PST engineers should have tested for themselves, > but as usual I will step into the gap and do this for them (or have > they already reported this in a KB that I missed?) (yes, I seriously > am a professional faultfinder, every organization should get one). > But we may simplify this a little, as follows: > > - Drag & Drop works from Structure, Design, and Browser, but only to > the Design window of the destination. > - Both Edit > Copy and Context menu > Copy work from Structure and > Browser windows; Copy is grayed out in the Design window. > - Both Edit > Paste and Context menu > Paste work in the Structure, > Design, and Browser windows, as long as there is no name conflict. > (To paste to the Structure window, you must have the Unreferenced > E-Objects selected.) > - If an object with the same name already exists in the destination, > you will get the Paste Conflict dialog. And here is where the real > fun begins... > ? ? ?- If you use Context menu > Paste in the Structure window and > get a Paste Conflict, you also get a little checkbox off to the side > that says "Default", and the dialog does not respond to any entries; > furthermore, you cannot switch to any other window on the computer > until that dialog is dismissed. You can only press Esc to dismiss the dialog. > ? ? ?- Thereafter, further attempts to paste to the Structure or > Browser windows will fail until you exit & restart E-Studio. You can > still paste to the Design window, but you will get a Paste Conflict > dialog even though the earlier paste failed (and even if that used a > unique object name). > > I'm sure I missed something, but you get the idea. > > (Aside to Brandon: This is an example of the sort of documentation I > would like to see PST provide for us, instead of me puzzling all this > out for myself.) > > OK, now somebody has to post this to Web Support to get their > attention, and the more of us who do that the better. > > -- David McFarlane, Professional Faultfinder > > At 11/5/2009 10:01 AM Thursday, you wrote: > > >So.. advertised as a feature of e-prime 2.0 I somehow can't copy/paste > >objects between e-studio files... > >Is anyone else having this 'problem' and (more importantly) did anyone > >manage to fix it if they had? > > >I also posted on the PST forum but I'd like to hear from people here > >too. > > >Best, > > >liw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 5 22:44:37 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 5 Nov 2009 17:44:37 -0500 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <6c61e602-8562-4ef2-ac76-883e835f3748@h10g2000vbm.googlegro ups.com> Message-ID: liw, >Unfortunately I see a lot of options in there that I did try and that >gave absolutely none results at all. Hmm, I guess different folks get different results, thanks for testing & posting back. >I get your message about contacting pst support... I might on >monday... I find that I feel rather meek about this issue.... *shrugs* >copy pasting objects between e-studio files just sounded to good to be >true anyways.... As to that, please do not be shy with PST Web Support, here is an example question that they provide at their own site: "How do I randomize a List object?". Now if Web Support likes to take questions that are answered in Tutorial 1 of the Getting Started Guide, I imagine they will welcome any old question from the likes of you & me. I am just now catching on to this myself and have started making much more liberal use of Web Support, and I have to say that those folks have given me some pretty darn good answers, I am just sorry that I overlooked them for so long. So let's make use of them, that's what they are there for. >Thanks again for your elaborate response thought. Did you do all that >today or did you happen to have this little research ready? Um, like a lot of things I do, I started to dash off a 2-minute response and then got caught up in a much longer process. Yes, I did all that this morning. Because I remembered successfully using copy & paste before, I started to write, "In this case I must defend PST..." But as a professional faultfinder, I have to check my facts, so I retried it, got a couple glitches, and before I knew it was knee-deep in testing it all more systematically so that I could make a proper report. OK, I'm overdue to bike home again here on the western edge of the Eastern Time Zone, got to make dinner before Survivor tonight... Cheers, -- 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 liwenna at gmail.com Thu Nov 5 22:56:14 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 14:56:14 -0800 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <4af3555f.5944f10a.09e3.ffff8488SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Enjoy survivor night! (whatever that might be) ow and I hope that you don't read that before tomorrow ;) It's about midnight here so I go off to bed. o/ On Nov 5, 11:44?pm, David McFarlane wrote: > liw, > > >Unfortunately I see a lot of options in there that I did try and that > >gave absolutely none results at all. > > Hmm, I guess different folks get different results, thanks for > testing & posting back. > > >I get your message about contacting pst support... I might on > >monday... I find that I feel rather meek about this issue.... *shrugs* > >copy pasting objects between e-studio files just sounded to good to be > >true anyways.... > > As to that, please do not be shy with PST Web Support, here is an > example question that they provide at their own site: ?"How do I > randomize a List object?". ?Now if Web Support likes to take > questions that are answered in Tutorial 1 of the Getting Started > Guide, I imagine they will welcome any old question from the likes of > you & me. ?I am just now catching on to this myself and have started > making much more liberal use of Web Support, and I have to say that > those folks have given me some pretty darn good answers, I am just > sorry that I overlooked them for so long. ?So let's make use of them, > that's what they are there for. > > >Thanks again for your elaborate response thought. Did you do all that > >today or did you happen to have this little research ready? > > Um, like a lot of things I do, I started to dash off a 2-minute > response and then got caught up in a much longer process. ?Yes, I did > all that this morning. ?Because I remembered successfully using copy > & paste before, I started to write, "In this case I must defend > PST..." ?But as a professional faultfinder, I have to check my facts, > so I retried it, got a couple glitches, and before I knew it was > knee-deep in testing it all more systematically so that I could make > a proper report. > > OK, I'm overdue to bike home again here on the western edge of the > Eastern Time Zone, got to make dinner before Survivor tonight... > > Cheers, > -- 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 liwenna at gmail.com Thu Nov 5 23:00:40 2009 From: liwenna at gmail.com (liwenna) Date: Thu, 5 Nov 2009 15:00:40 -0800 Subject: copy/paste objects between experiments in eprime 2? In-Reply-To: <1e595291-fdc9-4a7a-9931-9c25fdf1f068@o13g2000vbl.googlegroups.com> Message-ID: Oh I see now.... it's called 'expedition robinson' in the dutch format. That somehow seems to me as a little mundane pastime for a professional faultfinder... *redefines her mental image of DMcF* On Nov 5, 11:56?pm, liwenna wrote: > Enjoy survivor night! ?(whatever that might be) > > ow and I hope that you don't read that before tomorrow ;) It's about > midnight here so I go off to bed. o/ > > On Nov 5, 11:44?pm, David McFarlane wrote: > > > liw, > > > >Unfortunately I see a lot of options in there that I did try and that > > >gave absolutely none results at all. > > > Hmm, I guess different folks get different results, thanks for > > testing & posting back. > > > >I get your message about contacting pst support... I might on > > >monday... I find that I feel rather meek about this issue.... *shrugs* > > >copy pasting objects between e-studio files just sounded to good to be > > >true anyways.... > > > As to that, please do not be shy with PST Web Support, here is an > > example question that they provide at their own site: ?"How do I > > randomize a List object?". ?Now if Web Support likes to take > > questions that are answered in Tutorial 1 of the Getting Started > > Guide, I imagine they will welcome any old question from the likes of > > you & me. ?I am just now catching on to this myself and have started > > making much more liberal use of Web Support, and I have to say that > > those folks have given me some pretty darn good answers, I am just > > sorry that I overlooked them for so long. ?So let's make use of them, > > that's what they are there for. > > > >Thanks again for your elaborate response thought. Did you do all that > > >today or did you happen to have this little research ready? > > > Um, like a lot of things I do, I started to dash off a 2-minute > > response and then got caught up in a much longer process. ?Yes, I did > > all that this morning. ?Because I remembered successfully using copy > > & paste before, I started to write, "In this case I must defend > > PST..." ?But as a professional faultfinder, I have to check my facts, > > so I retried it, got a couple glitches, and before I knew it was > > knee-deep in testing it all more systematically so that I could make > > a proper report. > > > OK, I'm overdue to bike home again here on the western edge of the > > Eastern Time Zone, got to make dinner before Survivor tonight... > > > Cheers, > > -- 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 tobias.fw at gmail.com Fri Nov 6 11:40:52 2009 From: tobias.fw at gmail.com (Tobi) Date: Fri, 6 Nov 2009 03:40:52 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <0e101a92-14fc-405c-a567-4dc510ba90d2@r3g2000vbi.googlegroups.com> Message-ID: Thank a lot, it is a good idea with the different slide states. Actually there is always only one object displayed, so I don't need to specify the number. However, I can only make up to 10 slide states apparently. As I have 14 different locations I would need 14, though... Is there a way to have more than 10? On 5 Nov., 22:39, liwenna wrote: > How about..... > > adding an attribute to your list that holds the number of bitmaps that > you need to use in that level/trail called say... "nbitmaps" and give > the slide element multiple states that are called 1 2 3 4 etc. and > hold 1 2 3 or 4 images. Then set the slidestate to [nbitmaps] and > according to the value of 'nbitmaps' it will show the slidestate with > 1 2 3 or 4 imageobjects in it. As a consequence you might also need to > specify the x and y values (positions) of each imageobject in the > triallist instead of in the properties of each imageobject (as I think > you got them now?). I am not entirely sure if e-prime will allow the > slideobject to run if not all referenced values for all slidestates > are being adressed in the triallist (as would be the case for say > slidestate 4 in a nbitmap = 3 trial) but you can give it a shot; and > also, depending on your actually number of possible positions, this > might be not a feasible option... but yeah... it's just a suggestion. > > Alternatively you might be able to solve it somehow by drawing the > entire canvas for each trial in an inline but that definitly is a lot > of work. > > Then there is a vague notion somewhere in my head that you can bring > imageobjects to the front or sent them to the back... but I have no > friggin clue as to how to do that 'dynamically' based on each trial's > demands.... > > That would be all for the moment ... > > best, > > liw > > On Nov 5, 7:42?pm, Tobi wrote: > > > Hi together, > > > I have a problem as fallows: I have a display containing n positions > > as specified in the "slide element". Which bitmap is supposed to be > > placed on which position is then defined in a list. Sometimes, I wish > > to have no bitmap at all on some positions. Therefore I left the "?" > > in the list. An error message occurs saying "Filename or image display > > has not been set". It is the same if I leave a blank in the respective > > cell. > > > I also thought about displaying en empty bitmap (that is in the color > > of the background), however the positions are superimposed. Therefore, > > te bitmaps would only be partly displayed. > > > Maybe there is an easy solution, I didn't find any. > > Thanks a lot and cheers, > > Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 A.McGuffie at Coventry.ac.uk Fri Nov 6 12:21:57 2009 From: A.McGuffie at Coventry.ac.uk (Evertox) Date: Fri, 6 Nov 2009 04:21:57 -0800 Subject: Connecting E-Prime to Biopac Message-ID: Hi, I am currently trying to trigger a Biopac system from E-Prime using an STP100 and MP30. This works fine using a PCI DIO-24 digital card from SuperLab but not when connected to the parallel port with E-Prime. Has anyone used this combination in the past, and if so could you supply the cable pin-outs between the two. Note, this is an STP100 and not an STP100C. I have been in contact with BIOPAC and whilst they have supplied a standard cable and an E- Prime .es test program, the triggers do not appear. A pulse can be measured on D0 from the parallel port but seems to be dragged down when connected to the STP100 opto-isolator. I know this is a hardware issue but surely there must be E-Prime users that have tried this combination previously. I would appreciate any help concerning this issue. Thanks Anthony McGuffie Coventry University --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Fri Nov 6 12:43:18 2009 From: pquain at une.edu.au (Peter Quain) Date: Fri, 6 Nov 2009 23:43:18 +1100 Subject: Connecting E-Prime to Biopac In-Reply-To: Message-ID: Hi Anthony Perhaps you could still use the DIO card? It would have documentation, and you could just write to its port address Peter At 11:21 PM 6/11/2009, you wrote: >Hi, > >I am currently trying to trigger a Biopac system from E-Prime using an >STP100 and MP30. This works fine using a PCI DIO-24 digital card from >SuperLab but not when connected to the parallel port with E-Prime. > >Has anyone used this combination in the past, and if so could you >supply the cable pin-outs between the two. >Note, this is an STP100 and not an STP100C. I have been in contact >with BIOPAC and whilst they have supplied a standard cable and an E- >Prime .es test program, the triggers do not appear. > >A pulse can be measured on D0 from the parallel port but seems to be >dragged down when connected to the STP100 opto-isolator. > >I know this is a hardware issue but surely there must be E-Prime users >that have tried this combination previously. I would appreciate any >help concerning this issue. > >Thanks > >Anthony McGuffie >Coventry University > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 A.McGuffie at Coventry.ac.uk Fri Nov 6 12:50:28 2009 From: A.McGuffie at Coventry.ac.uk (Evertox) Date: Fri, 6 Nov 2009 04:50:28 -0800 Subject: Connecting E-Prime to Biopac In-Reply-To: <200911061243.nA6ChRkm016797@mail5.tpg.com.au> Message-ID: Can you use a Measurement Computing DIO 24 card with E-Prime? On Nov 6, 12:43?pm, Peter Quain wrote: > Hi Anthony > > Perhaps you could still use the DIO card? It would have > documentation, and you could just write to its port address > > Peter > > At 11:21 PM 6/11/2009, you wrote: > > > > >Hi, > > >I am currently trying to trigger a Biopac system from E-Prime using an > >STP100 and MP30. This works fine using a PCI DIO-24 digital card from > >SuperLab but not when connected to the parallel port with E-Prime. > > >Has anyone used this combination in the past, and if so could you > >supply the cable pin-outs between the two. > >Note, this is an STP100 and not an STP100C. I have been in contact > >with BIOPAC and whilst they have supplied a standard cable and an E- > >Prime .es test program, the triggers do not appear. > > >A pulse can be measured on D0 from the parallel port but seems to be > >dragged down when connected to the STP100 opto-isolator. > > >I know this is a hardware issue but surely there must be E-Prime users > >that have tried this combination previously. I would appreciate any > >help concerning this issue. > > >Thanks > > >Anthony McGuffie > >Coventry University- 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 liwenna at gmail.com Fri Nov 6 14:06:23 2009 From: liwenna at gmail.com (liwenna) Date: Fri, 6 Nov 2009 06:06:23 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <9e0af593-7d0c-4f33-b29a-4d0fe69578d6@v36g2000yqv.googlegroups.com> Message-ID: Oooh, if I understand you right now, that changes the whole story! There's only 1 object per trial but there are 14 possible positions? In that case you'd be better of defining the positions in a list. As you know the imageobject asks for a value for x and y on the propertiestab to determine the position. You can also store these values in a list under two attributes called, for intance, stimx and stimy. In the object properties tab enter [stimx] and [stimy] as the values for x and y and for each trial the slidelocation will be subtracted from the list. If you want a certain object to be in a specific location on each run you should create 'stimx' and 'stimy' in the same list as your imageobjects are defined in, but if you want the positions to be randomized on each trial, stick 'stimx' and 'stimy' in a seperate (randomized) positionslist that is nested in the triallist. I hope that the above is indeed what you need! Greets, liw On Nov 6, 12:40?pm, Tobi wrote: > Thank a lot, > > it is a good idea with the different slide states. Actually there is > always only one object displayed, so I don't need to specify the > number. However, I can only make up to 10 slide states apparently. As > I have 14 different locations I would need 14, though... > Is there a way to have more than 10? > > On 5 Nov., 22:39, liwenna wrote: > > > How about..... > > > adding an attribute to your list that holds the number of bitmaps that > > you need to use in that level/trail called say... "nbitmaps" and give > > the slide element multiple states that are called 1 2 3 4 etc. and > > hold 1 2 3 or 4 images. Then set the slidestate to [nbitmaps] and > > according to the value of 'nbitmaps' it will show the slidestate with > > 1 2 3 or 4 imageobjects in it. As a consequence you might also need to > > specify the x and y values (positions) of each imageobject in the > > triallist instead of in the properties of each imageobject (as I think > > you got them now?). I am not entirely sure if e-prime will allow the > > slideobject to run if not all referenced values for all slidestates > > are being adressed in the triallist (as would be the case for say > > slidestate 4 in a nbitmap = 3 trial) but you can give it a shot; and > > also, depending on your actually number of possible positions, this > > might be not a feasible option... but yeah... it's just a suggestion. > > > Alternatively you might be able to solve it somehow by drawing the > > entire canvas for each trial in an inline but that definitly is a lot > > of work. > > > Then there is a vague notion somewhere in my head that you can bring > > imageobjects to the front or sent them to the back... but I have no > > friggin clue as to how to do that 'dynamically' based on each trial's > > demands.... > > > That would be all for the moment ... > > > best, > > > liw > > > On Nov 5, 7:42?pm, Tobi wrote: > > > > Hi together, > > > > I have a problem as fallows: I have a display containing n positions > > > as specified in the "slide element". Which bitmap is supposed to be > > > placed on which position is then defined in a list. Sometimes, I wish > > > to have no bitmap at all on some positions. Therefore I left the "?" > > > in the list. An error message occurs saying "Filename or image display > > > has not been set". It is the same if I leave a blank in the respective > > > cell. > > > > I also thought about displaying en empty bitmap (that is in the color > > > of the background), however the positions are superimposed. Therefore, > > > te bitmaps would only be partly displayed. > > > > Maybe there is an easy solution, I didn't find any. > > > Thanks a lot and cheers, > > > Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 6 14:29:19 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 6 Nov 2009 09:29:19 -0500 Subject: no image should be loaded for "?" in list In-Reply-To: <5722c97d-71fc-4629-87db-ba50e1dd9bb4@z41g2000yqz.googlegro ups.com> Message-ID: Tobi, Just another thought to throw into the mix... What if you made an "empty" bitmap with a transparent background color? There are some tricks to doing this, you have to fool around with stuff like "Use Source Color Key" and "Source Color Key". I don't have a lot of experience with this myself, but if you search online with those sorts of terms, or look at the ImageDisplay.SourceColorKey topic in the online E-Basic Help, you might get some ideas. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:42 PM Thursday, you wrote: >Hi together, > >I have a problem as fallows: I have a display containing n positions >as specified in the "slide element". Which bitmap is supposed to be >placed on which position is then defined in a list. Sometimes, I wish >to have no bitmap at all on some positions. Therefore I left the "?" >in the list. An error message occurs saying "Filename or image display >has not been set". It is the same if I leave a blank in the respective >cell. > >I also thought about displaying en empty bitmap (that is in the color >of the background), however the positions are superimposed. Therefore, >te bitmaps would only be partly displayed. > >Maybe there is an easy solution, I didn't find any. >Thanks a lot and cheers, >Tobi --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Nov 6 14:58:39 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 6 Nov 2009 14:58:39 -0000 Subject: no image should be loaded for "?" in list In-Reply-To: <4af432c9.5344f10a.6b5e.048fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Oops, read on and saw that the OP already had this covered - in which case I would refer to David's reply below! Sorry about the confusion, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 06 November 2009 14:29 To: e-prime at googlegroups.com Subject: Re: no image should be loaded for "?" in list Tobi, Just another thought to throw into the mix... What if you made an "empty" bitmap with a transparent background color? There are some tricks to doing this, you have to fool around with stuff like "Use Source Color Key" and "Source Color Key". I don't have a lot of experience with this myself, but if you search online with those sorts of terms, or look at the ImageDisplay.SourceColorKey topic in the online E-Basic Help, you might get some ideas. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:42 PM Thursday, you wrote: >Hi together, > >I have a problem as fallows: I have a display containing n positions >as specified in the "slide element". Which bitmap is supposed to be >placed on which position is then defined in a list. Sometimes, I wish >to have no bitmap at all on some positions. Therefore I left the "?" >in the list. An error message occurs saying "Filename or image display >has not been set". It is the same if I leave a blank in the respective >cell. > >I also thought about displaying en empty bitmap (that is in the color >of the background), however the positions are superimposed. Therefore, >te bitmaps would only be partly displayed. > >Maybe there is an easy solution, I didn't find any. >Thanks a lot and cheers, >Tobi 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 Fri Nov 6 14:57:35 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Fri, 6 Nov 2009 14:57:35 -0000 Subject: no image should be loaded for "?" in list In-Reply-To: <4af432c9.5344f10a.6b5e.048fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi, Sorry if this has been said before, but just to make sure: I'm a real fan of just going to ms-paint and making a blank (white, or whatever other bg colour you use) picture of exactly the same size as the other images. Due to the BMP specifications, it should take your pc exactly as long as any of the other pictures to load etc, so you can be very sure the timing will not be different for producing blank images (they being images themselves). It's basically the same trick I use if I want to see the effect of moving vs static images on slides (you know, with a little loop and a counter and all that); instead of not-moving the images, I just keep moving to the same location, so that the timing is not altered. Cheers, Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 06 November 2009 14:29 To: e-prime at googlegroups.com Subject: Re: no image should be loaded for "?" in list Tobi, Just another thought to throw into the mix... What if you made an "empty" bitmap with a transparent background color? There are some tricks to doing this, you have to fool around with stuff like "Use Source Color Key" and "Source Color Key". I don't have a lot of experience with this myself, but if you search online with those sorts of terms, or look at the ImageDisplay.SourceColorKey topic in the online E-Basic Help, you might get some ideas. -- David McFarlane, Professional Faultfinder At 11/5/2009 01:42 PM Thursday, you wrote: >Hi together, > >I have a problem as fallows: I have a display containing n positions >as specified in the "slide element". Which bitmap is supposed to be >placed on which position is then defined in a list. Sometimes, I wish >to have no bitmap at all on some positions. Therefore I left the "?" >in the list. An error message occurs saying "Filename or image display >has not been set". It is the same if I leave a blank in the respective >cell. > >I also thought about displaying en empty bitmap (that is in the color >of the background), however the positions are superimposed. Therefore, >te bitmaps would only be partly displayed. > >Maybe there is an easy solution, I didn't find any. >Thanks a lot and cheers, >Tobi 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 psr-ari at hotmail.com Fri Nov 6 16:25:16 2009 From: psr-ari at hotmail.com (Ariana Rubin) Date: Fri, 6 Nov 2009 08:25:16 -0800 Subject: Calling the Current List (VB6 me parallel) Message-ID: In the middle of a list's proc, if a subject hits the space bar I want it to terminate the list. I got that to work, but I have 29 of these lists that all need the same thing to happen. If I do each one independently I can now verify that I get a script to large to compile error. Instead, of what I have now: If ImageDisplay1.RESP = "{SPACE}" then List1.Terminate Goto Label3 I want to change List1 to be the current list, whichever one it is. I know that in standard VB6, I could just substitute in me.Terminate. How can I do this in E-Prime? Thanks for all your help 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 tobias.fw at gmail.com Fri Nov 6 16:37:53 2009 From: tobias.fw at gmail.com (Tobi) Date: Fri, 6 Nov 2009 08:37:53 -0800 Subject: no image should be loaded for "?" in list In-Reply-To: <0CA8E1B4EC20D743912B980E486C5CAF02358750@VUIEXCHC.ad.nottingham.ac.uk> Message-ID: Thanks for your help! I used liwenna's suggestion and it works really fine (thanks for that!). The timing should't be a problem as there is always the same number of stimuli on the screen, only the x- und y-coordinates change. Cheers, Tobi On 6 Nov., 15:57, Michiel Spape wrote: > Hi, > Sorry if this has been said before, but just to make sure: I'm a real fan of just going to ms-paint and making a blank (white, or whatever other bg colour you use) picture of exactly the same size as the other images. Due to the BMP specifications, it should take your pc exactly as long as any of the other pictures to load etc, so you can be very sure the timing will not be different for producing blank images (they being images themselves). > It's basically the same trick I use if I want to see the effect of moving vs static images on slides (you know, with a little loop and a counter and all that); instead of not-moving the images, I just keep moving to the same location, so that the timing is not altered. > Cheers, > Mich > > Michiel Spap? > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane > Sent: 06 November 2009 14:29 > To: e-prime at googlegroups.com > Subject: Re: no image should be loaded for "?" in list > > Tobi, > > Just another thought to throw into the mix... ?What if you made an > "empty" bitmap with a transparent background color? ?There are some > tricks to doing this, you have to fool around with stuff like "Use > Source Color Key" and "Source Color Key". ?I don't have a lot of > experience with this myself, but if you search online with those > sorts of terms, or look at the ImageDisplay.SourceColorKey topic in > the online E-Basic Help, you might get some ideas. > > -- David McFarlane, Professional Faultfinder > > At 11/5/2009 01:42 PM Thursday, you wrote: > >Hi together, > > >I have a problem as fallows: I have a display containing n positions > >as specified in the "slide element". Which bitmap is supposed to be > >placed on which position is then defined in a list. Sometimes, I wish > >to have no bitmap at all on some positions. Therefore I left the "?" > >in the list. An error message occurs saying "Filename or image display > >has not been set". It is the same if I leave a blank in the respective > >cell. > > >I also thought about displaying en empty bitmap (that is in the color > >of the background), however the positions are superimposed. Therefore, > >te bitmaps would only be partly displayed. > > >Maybe there is an easy solution, I didn't find any. > >Thanks a lot and cheers, > >Tobi > > 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 liwenna at gmail.com Fri Nov 6 17:19:49 2009 From: liwenna at gmail.com (liwenna) Date: Fri, 6 Nov 2009 09:19:49 -0800 Subject: Calling the Current List (VB6 me parallel) In-Reply-To: <38f89108-2baa-4353-9a5e-ec075d2d98fd@j4g2000yqe.googlegroups.com> Message-ID: Hey Ariana, I am short in time right now so I'll be really brief.... I still wonder why you want to use all these lists instead of just one lists and 4 repeating slides.. but using the info in the topic how to... make a 'for 0 to x' variable that can insert digits IN an attribute name? (http://groups.google.com/group/e-prime/browse_thread/ thread/e955c26100f8d2bc) you should be able to figure something usefull out (read Ben's responses, not my lengty questions ;) ). greets, liw On Nov 6, 5:25?pm, Ariana Rubin wrote: > In the middle of a list's proc, if a subject hits the space bar I want > it to terminate the list. ?I got that to work, but I have 29 of these > lists that all need the same thing to happen. ?If I do each one > independently I can now verify that I get a script to large to compile > error. > Instead, of what I have now: > If ImageDisplay1.RESP = "{SPACE}" then > List1.Terminate > Goto Label3 > > I want to change List1 to be the current list, whichever one it is. ?I > know that in standard VB6, I could just substitute in me.Terminate. > How can I do this in E-Prime? > > Thanks for all your help 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 mcfarla9 at msu.edu Fri Nov 6 17:24:58 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 6 Nov 2009 12:24:58 -0500 Subject: Calling the Current List (VB6 me parallel) In-Reply-To: <38f89108-2baa-4353-9a5e-ec075d2d98fd@j4g2000yqe.googlegrou ps.com> Message-ID: Ariana, Wow, was that interesting. In the past I have just put a list of all my Lists into my script and terminated every one whether running or not, there is no error in terminating a non-running List. But that is clumsy, and your question got me thinking. To the lesson in a moment, but first a few standard reminders... 1) I do not work for PST. 2) PST's trained staff really does like to take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours. So don't be shy there. 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. OK, on with the lesson. You can always get the the name of the currently running List from the "Running" attribute, e.g., MsgBox c.GetAttrib("Running") Ah, but how to use that to control the actual List object? Next, we look into the casting functions, which you may read about in the Casting topic of the online E-Basic Help. But you cannot simply do CList(c.GetAttrib("Running")).Terminate, since the CList() cast needs an object as an argument, not a text string. So, how to get the object that corresponds to the text value in Running? For that, you want the GetObject method of the Rte object, which you may read about in the Rte topic of the online E-Basic Help. So now you want to get the text value from the Running attribute, use that to reference the corresponding List object, cast that into an object of class List, and run its Terminate method, and (whew!) that all boils down to one simple elegant line of script: CList( Rte.GetObject( c.GetAttrib("Running") ) ).Terminate Note that understanding these underlying principles opens up whole new worlds of possibilities! -- David McFarlane, Professional Faultfinder >In the middle of a list's proc, if a subject hits the space bar I want >it to terminate the list. I got that to work, but I have 29 of these >lists that all need the same thing to happen. If I do each one >independently I can now verify that I get a script to large to compile >error. >Instead, of what I have now: >If ImageDisplay1.RESP = "{SPACE}" then >List1.Terminate >Goto Label3 > >I want to change List1 to be the current list, whichever one it is. I >know that in standard VB6, I could just substitute in me.Terminate. >How can I do this in E-Prime? > >Thanks for all your help 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 mcfarla9 at msu.edu Fri Nov 6 17:32:25 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 6 Nov 2009 12:32:25 -0500 Subject: Calling the Current List (VB6 me parallel) In-Reply-To: <4af45bf6.5344f10a.6b5e.0657SMTPIN_ADDED@gmr-mx.google.com> Message-ID: >that all boils down to one simple elegant line of script: > >CList( Rte.GetObject( c.GetAttrib("Running") ) ).Terminate Editorial comment: Well, not as simple & elegant as me.Terminate in VB6, but you get the idea. -- 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 tobias.fw at gmail.com Mon Nov 9 18:06:49 2009 From: tobias.fw at gmail.com (Tobi) Date: Mon, 9 Nov 2009 10:06:49 -0800 Subject: correct answer depending on "group" startup information In-Reply-To: <259ace00-e9c4-478a-b2e5-807a175b03a3@z34g2000vbl.googlegroups.com> Message-ID: Thank you very much for your e-mail. Only now I had the time to have a close look at the problem again. It helped very much to solve the problem. Just to maybe help others, I attach your e-mail here in the forum so that it can be found by others. I guess that you're in favor of that as you've already tried to post it aswell but then lost it. "Hello Tobias, Only last week did I have something similar at hand... In my task a version (A B C or D) is assigned to each subject based on subject number. Several features differ between the four different versions, one of which is the order of the response keys. I solved this as follows; in the slides the correct response refers to an attribute called cresp, which is declared on the user tab. In the triallist I have two collumns one called abcresp, other one cdcresp (version A & B, and C & D are the same response-key wise). An inline at the start of each trial tells eprime to take the value from either abcresp or cdcresp and use this value as cresp, depending on the variable 'version'. Step 1: declare the variable cresp on the user tab: dim cresp as string step 2: tell the responseslide that the correct response is [cresp] step 3: make two attribute collums in your triallist that contain the correct response for both your 'groups', for instance group1cresp and croup2cresp and fill them with D's and F's accordingly step4: add an inline at the start of your trialproc that contains something like this: If c.getattrib ("group") = 1 then c.setattrib "cresp", c.getattrib ("group1cresp") If c.getattrib ("group") = 2 then c.setattrib "cresp", c.getattrib ("group2cresp") end if I hope this helps. Best regards, liw" On 16 Sep., 17:03, liwenna wrote: > I think I posted a reply to this thread (I wrote one for sure ^.^) but > it doesn't show up... my guess is that I hit 'reply to author' by > accident, but I can't find a record of that anywhere. Tobias, if you > didn't receive mail from me, let me know, then I'll repost (right now > I am a bit lazy to do so... it's time for me to go home...). > > Have a good evening everyone! > > On Sep 16, 11:56 am, Tobi wrote: > > > Thank you, > > > that works fine. Unfortunately, in my real experiment (this example > > was kept simple due to comprehensiveness) I don't have 2 lines in my > > list but 640. I guess there is an easier way than using 640*2 lines in > > this InLine. If I understand correctly, "List1.SetAttrib 1" changes > > the first line in the list and "List1.SetAttrib 2" changes the second > > line. > > > That means, that the CorrAns value is replaced (seehttp://chilion.com/probl1.JPG > > ) no matter if [yes] or [no] was specified. In fact in my real > > experiment I also have only two variables. Easiest would be to change > > [yes] to let's say "D" and [no] to "F" if c.GetAttrib("group") = 1 and > > the other way round if it's 2. > > > Is that possible? > > > Thanks already in advance! > > > Cheers, > > Tobias > > > On 5 Sep., 23:08, Shin-Yi Fang wrote: > > > > Hi, > > > > I think group is not really a variable. It ?is an attribute. You will need > > > getattrib function. The following script probably is what you need. > > > > if c.GetAttrib("group") = 1 then > > > ? ?List1.SetAttrib 1, "corrAns", "w" > > > ? ?List1.SetAttrib 2, "corrAns", "q" > > > else > > > ? ?List1.SetAttrib 1, "corrAns", "q" > > > ? ?List1.SetAttrib 2, "corrAns", "w" > > > end if > > > > Best, > > > > Shin-Yi > > > > ? ?List1.SetAttrib 1 "corrAns")yes = "q" and no = "w" > > > > > if group = 2 then yes = "w" and no = "q" > > > On Fri, Sep 4, 2009 at 6:10 PM, Tobi wrote: > > > > > To be more understandable, here are two screenshots, one of the list > > > > and one of the InLine: > > > > >http://chilion.com/probl1.JPG > > > >http://chilion.com/probl2.JPG > > > > > On 4 Sep., 19:40, Tobi wrote: > > > > > Hi everyone, > > > > > > I have a question concerning the "group" variable than can be prompted > > > > > for in the beginning of each session. I want to change the correct > > > > > answer key according to this group variable (and change the key > > > > > assignment as a consequence of corse). > > > > > > In a very easy example there might be a trials with a target or no > > > > > target (blank). One group should answer with "w" for TARGET and "q" > > > > > for BLANK, the other group the other way round: > > > > > > LIST: > > > > > > ID ? ? ? ? ? ? Procedure ? corrAns > > > > > ------------------------------- > > > > > 1 ? ? ? ? ? ? ? blank ? ? ? ? ? [no] > > > > > 1 ? ? ? ? ? ? ? target ?[yes] > > > > > > I used this InLineas the very first line: > > > > > > dim yes, no > > > > > if group = 1 then yes = "q" and no = "w" > > > > > if group = 2 then yes = "w" and no = "q" > > > > > > Unfortunately I get the error message "Unknown function "group"". > > > > > What does that mean? I am not so familiar with Basic, so any help > > > > > might be very cool. > > > > > Maybe you have other suggestions to change key assignment by the help > > > > > of startup information. > > > > > > Thanks a lot, > > > > > Tobias > > > > -- > > > Ph.D. Student > > > Department of Psychology > > > University of Connecticut > > > and > > > Haskins Laboratories --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Mon Nov 9 22:53:41 2009 From: liwenna at gmail.com (liwenna) Date: Mon, 9 Nov 2009 14:53:41 -0800 Subject: correct answer depending on "group" startup information In-Reply-To: <2385aac8-0cd7-43cd-b456-69c00f497929@v30g2000yqm.googlegroups.com> Message-ID: Thanks for posting that Tobi! Good to know that I am not crazy :p Just pushing some wrong buttons every now and then ;) Additionally, I use the above thing in combination with another few lines of script that imports a randomisationkey (in the case of my a/b/ c/d-version task this could be for instance: D C B A B D A C) from a .txt-file and uses that to assign a version based on subject number, so subject 1 in above case gets version D, subject 2 version C, subject 3 version B etc etc, subject 9 is again version D, subject 10 C etc etc). This way my students don't have to bother with randomising nor keeping track of assigning 1 of 4 different e-run files to each subject etc. etc. If only our ICT-guys would allow us to password-lock folders on the testcomputers it would be the perfect double-blind system. I'll post the lines here (it's not that hard but I am not entirely confident that I'll type it all right from heart) if you're interested. Greets, liw On Nov 9, 7:06?pm, Tobi wrote: > Thank you very much for your e-mail. Only now I had the time to have a > close look at the problem again. It helped very much to solve the > problem. Just to maybe help others, I attach your e-mail here in the > forum so that it can be found by others. I guess that you're in favor > of that as you've already tried to post it aswell but then lost it. > > "Hello Tobias, > > Only last week did I have something similar at hand... > In my task a version (A B C or D) is assigned to each subject based on > subject number. Several features differ between the four different > versions, one of which is the > order of the response keys. I solved this as follows; in the slides > the correct response refers to an attribute called cresp, which is > declared on the user tab. In the triallist I have two collumns one > called abcresp, other one cdcresp (version A & B, and C & D are the > same response-key wise). An inline at the start of each trial tells > eprime to take the value from either abcresp or cdcresp and use this > value as cresp, depending on the variable 'version'. > > Step 1: > declare the variable cresp on the user tab: dim cresp as string > > step 2: > tell the responseslide that the correct response is [cresp] > > step 3: > make two attribute collums in your triallist that contain the correct > response for both your 'groups', for instance group1cresp and > croup2cresp and fill them with D's and F's accordingly > > step4: > add an inline at the start of your trialproc that contains something > like this: > > If c.getattrib ("group") = 1 then > ? ? ? ?c.setattrib "cresp", c.getattrib ("group1cresp") > > If c.getattrib ("group") = 2 then > ? ? ? ?c.setattrib "cresp", c.getattrib ("group2cresp") > > end if > > I hope this helps. > > Best regards, > > liw" > > On 16 Sep., 17:03, liwenna wrote: > > > I think I posted a reply to this thread (I wrote one for sure ^.^) but > > it doesn't show up... my guess is that I hit 'reply to author' by > > accident, but I can't find a record of that anywhere. Tobias, if you > > didn't receive mail from me, let me know, then I'll repost (right now > > I am a bit lazy to do so... it's time for me to go home...). > > > Have a good evening everyone! > > > On Sep 16, 11:56 am, Tobi wrote: > > > > Thank you, > > > > that works fine. Unfortunately, in my real experiment (this example > > > was kept simple due to comprehensiveness) I don't have 2 lines in my > > > list but 640. I guess there is an easier way than using 640*2 lines in > > > this InLine. If I understand correctly, "List1.SetAttrib 1" changes > > > the first line in the list and "List1.SetAttrib 2" changes the second > > > line. > > > > That means, that the CorrAns value is replaced (seehttp://chilion.com/probl1.JPG > > > ) no matter if [yes] or [no] was specified. In fact in my real > > > experiment I also have only two variables. Easiest would be to change > > > [yes] to let's say "D" and [no] to "F" if c.GetAttrib("group") = 1 and > > > the other way round if it's 2. > > > > Is that possible? > > > > Thanks already in advance! > > > > Cheers, > > > Tobias > > > > On 5 Sep., 23:08, Shin-Yi Fang wrote: > > > > > Hi, > > > > > I think group is not really a variable. It ?is an attribute. You will need > > > > getattrib function. The following script probably is what you need. > > > > > if c.GetAttrib("group") = 1 then > > > > ? ?List1.SetAttrib 1, "corrAns", "w" > > > > ? ?List1.SetAttrib 2, "corrAns", "q" > > > > else > > > > ? ?List1.SetAttrib 1, "corrAns", "q" > > > > ? ?List1.SetAttrib 2, "corrAns", "w" > > > > end if > > > > > Best, > > > > > Shin-Yi > > > > > ? ?List1.SetAttrib 1 "corrAns")yes = "q" and no = "w" > > > > > > if group = 2 then yes = "w" and no = "q" > > > > On Fri, Sep 4, 2009 at 6:10 PM, Tobi wrote: > > > > > > To be more understandable, here are two screenshots, one of the list > > > > > and one of the InLine: > > > > > >http://chilion.com/probl1.JPG > > > > >http://chilion.com/probl2.JPG > > > > > > On 4 Sep., 19:40, Tobi wrote: > > > > > > Hi everyone, > > > > > > > I have a question concerning the "group" variable than can be prompted > > > > > > for in the beginning of each session. I want to change the correct > > > > > > answer key according to this group variable (and change the key > > > > > > assignment as a consequence of corse). > > > > > > > In a very easy example there might be a trials with a target or no > > > > > > target (blank). One group should answer with "w" for TARGET and "q" > > > > > > for BLANK, the other group the other way round: > > > > > > > LIST: > > > > > > > ID ? ? ? ? ? ? Procedure ? corrAns > > > > > > ------------------------------- > > > > > > 1 ? ? ? ? ? ? ? blank ? ? ? ? ? [no] > > > > > > 1 ? ? ? ? ? ? ? target ?[yes] > > > > > > > I used this InLineas the very first line: > > > > > > > dim yes, no > > > > > > if group = 1 then yes = "q" and no = "w" > > > > > > if group = 2 then yes = "w" and no = "q" > > > > > > > Unfortunately I get the error message "Unknown function "group"". > > > > > > What does that mean? I am not so familiar with Basic, so any help > > > > > > might be very cool. > > > > > > Maybe you have other suggestions to change key assignment by the help > > > > > > of startup information. > > > > > > > Thanks a lot, > > > > > > Tobias > > > > > -- > > > > Ph.D. Student > > > > Department of Psychology > > > > University of Connecticut > > > > and > > > > Haskins Laboratories --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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.Moore at bath.ac.uk Tue Nov 10 09:53:56 2009 From: D.Moore at bath.ac.uk (David Moore) Date: Tue, 10 Nov 2009 09:53:56 +0000 Subject: PASAT Message-ID: Dear all, I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am wondering if anybody has programmed one of these before and can help. The task essentially involves presenting numbers to participant and asking them to indicate what the sum of the previous two numbers is. I have a few problems programming this which people may be able to independently help with if no one has a PASAT task. First how would I allow participants to indicate that the answer is a two digit number. Second how would I indicate to eprime that the correct answer is the sum of the previous two answers? Best 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 liwenna at gmail.com Tue Nov 10 11:58:08 2009 From: liwenna at gmail.com (liwenna) Date: Tue, 10 Nov 2009 03:58:08 -0800 Subject: PASAT In-Reply-To: Message-ID: Hello David, No PASAT ready made here but I can give some idea's on your questions. For the correct answer I see two different options. Either you don't randomize the trials but keep a fixed order in which case you can simply create a attribute to each level (trial) that holds the sum of that trial's number and the previous... non-randomized PASAT's are pretty common I think? (also see below). Alternatively you can create a 'user tab defined variable' that carries information over to the next trial. On the script window in the lower left corner open the user-tab and type "dim prevnumber as integer". Now at the end of the trialproc insert an inline that assigns that trial's number the value of prevnumber: "prevnumber = c.getattrib ("number") " wherein "number" is the name of an attribute in your triallist that holds the value of the number given in that trial (assuming that numbers will be presented auditory?). At the begin of the trialproc insert an inline that calculates the correct answer based on the current trial's number and the previous trial's number: " c.setattrib "correct", prevnumber + c.getattrib ("number") ". This attribute "correct" should also be created in your triallist and it's cells simply left empty, they will be filled as the program runs. Then the indication of two-digit answers... I am affraid I have no really good ideas regarding that. Hopefully others will. But do I understand it right that you want your participants to type in their answer? I've never seen a pasat 'in action' but isn't it more common (and more 'paced' ) to have them answer verbally? Which would require answers to be recorded and scored 'by hand' which then also would render non-randomized trials a more attractive option? I hope the above is somewhat helpful to you, Best, liw On Nov 10, 10:53?am, David Moore wrote: > Dear all, > > I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am > wondering if anybody has programmed one of these before and can help. The > task essentially involves presenting numbers to participant and asking them > to indicate what the sum of the previous two numbers is. > > I have a few problems programming this which people may be able to > independently help with if no one has a PASAT task. First how would I allow > participants to indicate that the answer is a two digit number. Second how > would I indicate to eprime that the correct answer is the sum of the > previous two answers? > > Best > 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 Tue Nov 10 15:40:42 2009 From: mcfarla9 at msu.edu (David McFarlane) Date: Tue, 10 Nov 2009 10:40:42 -0500 Subject: PASAT In-Reply-To: <6349ab0e-2c64-4499-a47a-7aebd30758b7@h34g2000yqm.googlegro ups.com> Message-ID: David, First, my standard reminders: 1) I do not work for PST. 2) PST's trained staff really does like to take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours. So don't be shy there. 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 ... 1a) Just repeating liwenna's fine answer, if you have a fixed set of problems (addenda) then you could just add the answer as another attribute as in any other List; but just as with any other List, you would not then have to present these in fixed order, you could still randomize the trial order, unless I'm missing something. 1b) Expanding on liwenna's script approach, you could compute the correct answers in script. In general, for an introduction to E-Basic script, please work through Chapter 4 of the User's Guide that came with E-Prime. 2) You may do this with the Advanced input mask features, please search the E-Prime Google Group or the PST Forum using terms like "MaxCount" or "TerminationResponse", or look at these topics under InputMask in the online E-Basic Help. -- David McFarlane, Professional Faultfinder "For a successful technology, reality must take precedence over public relations, for nature cannot be fooled." (Richard Feynman, Nobel prize-winning physicist) >Hello David, > >No PASAT ready made here but I can give some idea's on your questions. > >For the correct answer I see two different options. Either you don't >randomize the trials but keep a fixed order in which case you can >simply create a attribute to each level (trial) that holds the sum of >that trial's number and the previous... non-randomized PASAT's are >pretty common I think? (also see below). Alternatively you can create >a 'user tab defined variable' that carries information over to the >next trial. On the script window in the lower left corner open the >user-tab and type "dim prevnumber as integer". Now at the end of the >trialproc insert an inline that assigns that trial's number the value >of prevnumber: "prevnumber = c.getattrib ("number") " wherein "number" >is the name of an attribute in your triallist that holds the value of >the number given in that trial (assuming that numbers will be >presented auditory?). At the begin of the trialproc insert an inline >that calculates the correct answer based on the current trial's number >and the previous trial's number: " c.setattrib "correct", prevnumber + >c.getattrib ("number") ". This attribute "correct" should also be >created in your triallist and it's cells simply left empty, they will >be filled as the program runs. > >Then the indication of two-digit answers... I am affraid I have no >really good ideas regarding that. Hopefully others will. But do I >understand it right that you want your participants to type in their >answer? I've never seen a pasat 'in action' but isn't it more common >(and more 'paced' ) to have them answer verbally? Which would require >answers to be recorded and scored 'by hand' which then also would >render non-randomized trials a more attractive option? > > >I hope the above is somewhat helpful to you, > >Best, > >liw > > >On Nov 10, 10:53 am, David Moore wrote: > > Dear all, > > > > I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am > > wondering if anybody has programmed one of these before and can help. The > > task essentially involves presenting numbers to participant and asking them > > to indicate what the sum of the previous two numbers is. > > > > I have a few problems programming this which people may be able to > > independently help with if no one has a PASAT task. First how would I allow > > participants to indicate that the answer is a two digit number. Second how > > would I indicate to eprime that the correct answer is the sum of the > > previous two answers? > > > > Best > > 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 zajdeld at ohsu.edu Tue Nov 10 16:48:31 2009 From: zajdeld at ohsu.edu (Daniel Zajdel) Date: Tue, 10 Nov 2009 08:48:31 -0800 Subject: PASAT In-Reply-To: Message-ID: Why do you want to implement PASAT on a computer? What is wrong with the good old fashioned pencil, paper and audio recording? Because I can guarentee you that given noob coding skills you could quite possibly collect all your data before you figure this out in any stimulus presentation package. Not only that, but if you are entertaining an idea that is anything other a vocal response, like typing on a keypad, changes the task significantly and that data is no longer comparable to any legacy data or data in the literature. The whole reason PASAT was developed in the first place was for study populations like Multiple Sclerosis, where you want to remove the motor component and get at just the cognitive aspect. So from the programming perspective, you will have to get clever like David and Ilwenna. But from a scientific perspective, and isn't that the more important part, I'm not so sure an eprime PASAT is a very hot idea. ________________________________________ From: e-prime at googlegroups.com [e-prime at googlegroups.com] On Behalf Of David Moore [D.Moore at bath.ac.uk] Sent: Tuesday, November 10, 2009 1:53 AM To: e-prime at googlegroups.com Subject: PASAT Dear all, I am trying to program a Paced Auditory Serial Addition Task (PASAT) and am wondering if anybody has programmed one of these before and can help. The task essentially involves presenting numbers to participant and asking them to indicate what the sum of the previous two numbers is. I have a few problems programming this which people may be able to independently help with if no one has a PASAT task. First how would I allow participants to indicate that the answer is a two digit number. Second how would I indicate to eprime that the correct answer is the sum of the previous two answers? Best 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 adamosth at gmail.com Tue Nov 10 22:45:39 2009 From: adamosth at gmail.com (Adam Osth) Date: Tue, 10 Nov 2009 17:45:39 -0500 Subject: display refreshing in tobii eyetracking extensions for eprime? Message-ID: Hello all, I'm currently running EPrime 2.0 with extensions for Tobii for eyetracking. I have this problem where in the data, every trial seems to have a couple of points in which "-1" is returned for the fixation location. I've heard that this is caused by the display refreshing after a certain amount of time. Is there any way to control when the display refreshes so it won't do that when a stimulus is being presented? It should be noted that my stimuli only display for 4500 ms, so it doesn't have to refresh while the stimulus is up. Adam --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 Wed Nov 11 14:53:44 2009 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Wed, 11 Nov 2009 14:53:44 -0000 Subject: display refreshing in tobii eyetracking extensions for eprime? In-Reply-To: <7ef748980911101445w63d344ccpd14bc6c3f7c69c4c@mail.gmail.com> Message-ID: Hi Adam, It's been a while since I last worked with the Tobii, so I might be wrong here, but I think it's unlikely it has anything to do with the monitor's refreshing. First, the monitor always refreshes in a fixed number of hz, I've never heard of anything you can do to stop this updating entirely, even though you can typically change the number of refreshes in system>control panel>display options>hardware (or something like that) - but less than 0.3 Hz (given your stimuli's duration): forget it. Obviously, you normally wish to sync your stimulus presentation with refreshes (that's the common problem), which you can set in E-Prime (onset sync, etc). Second, the Tobii output when it doesn't know where a subject is looking (either because of the subject moving a lot, the subject blinking, or hardware problems) is also -1. Ask your subject not to blink too much might be the best course of action. You might also want to change the sample-rate of the Tobii - ours could go to 120 Hz, but its output at higher sample-rates (>80 Hz) wasn't too brilliant. Anyway, Tobii gives validity markers for time-points in which the output can or cannot be trusted - see documentation - I expect your "-1" output is probably also marked as invalid. Just delete the invalid data. Hope this helps. Mich Michiel Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of Adam Osth Sent: 10 November 2009 22:46 To: e-prime at googlegroups.com Subject: display refreshing in tobii eyetracking extensions for eprime? Hello all, I'm currently running EPrime 2.0 with extensions for Tobii for eyetracking. I have this problem where in the data, every trial seems to have a couple of points in which "-1" is returned for the fixation location. I've heard that this is caused by the display refreshing after a certain amount of time. Is there any way to control when the display refreshes so it won't do that when a stimulus is being presented? It should be noted that my stimuli only display for 4500 ms, so it doesn't have to refresh while the stimulus is up. Adam 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. 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 yanhyu at gmail.com Wed Nov 11 15:09:50 2009 From: yanhyu at gmail.com (Yan Yu) Date: Wed, 11 Nov 2009 10:09:50 -0500 Subject: pause function Message-ID: Hi Eprimers, I used a script to excute the pause function, however, during the experiment, whenever I pause it a second time, eprime will quit the task. My knowledge on scripting is minimal. I am wondering if anybody can help me out. Here is the inline script that I placed at the beginning of each block. 'Check for UserBreakState 'Pause2 is run only if Ctrl+Shift is pressed If (GetUserBreakState <> 0) Then 'Incorrect CLng Object reference Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") NetStation_SendTrialEvent c, Pause2 NetStation_SendTRSPEvent c, Pause2 Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") Pause2.Run 'Added code SetUserBreakState 0 End If Thanks a lot, Yan --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/e-prime?hl=en -~----------~----~----~----~------~----~------~--~--- -------------- next part -------------- An HTML attachment was scrubbed... URL: From liwenna at gmail.com Wed Nov 11 15:36:01 2009 From: liwenna at gmail.com (liwenna) Date: Wed, 11 Nov 2009 07:36:01 -0800 Subject: pause function In-Reply-To: <54ff1cf0911110709k54a21abfv1cc7ae20e952e47f@mail.gmail.com> Message-ID: Hey Yan, I don't really have a solution (as I never used this parallelport config thing and I have no idea what the function of 'userbreakstate' is for...) but that is probably where your problem lies. As you can see in line three (If (GetUserBreakState <> 0) Then ) all the script between 'Then' and 'End If' will only be executed if userbreakstate is NOT (<>) 0. In the forelast line of the piece of code you posted (SetUserBreakState 0) userbreakstate is set to 0 and therefore this code cannot run twice (seeing as "If (GetUserBreakState <> 0)" will no longer be valid after it ran once). I think that that's the source of your problem, but I unfortunately don't have a solution (other than simply removing both lines but that probably doesn't do the trick) and it also does not explain why e- prime quits altogether when you try it twice... So for what it's worth: I hope the above is somewhat helpful. Hopefully others can shine some light on the whole userbreakstate- thing... what and why and all that. Best, liwenna On Nov 11, 4:09 pm, Yan Yu wrote: > Hi Eprimers, > > I used a script to excute the pause function, however, during the > experiment, whenever I pause it a second time, eprime will quit the task. > My knowledge on scripting is minimal. I am wondering if anybody can help me > out. > > Here is the inline script that I placed at the beginning of each block. > > 'Check for UserBreakState > 'Pause2 is run only if Ctrl+Shift is pressed > If (GetUserBreakState <> 0) Then > 'Incorrect CLng Object reference Pause2.InputMasks.Add > Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), > ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All > ProcessBackspace:Yes") > NetStation_SendTrialEvent c, Pause2 > NetStation_SendTRSPEvent c, Pause2 > Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", > CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, > CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") > Pause2.Run > 'Added code > SetUserBreakState 0 > End If > > Thanks a lot, > > Yan --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 daniela.pfabigan at univie.ac.at Wed Nov 11 16:11:09 2009 From: daniela.pfabigan at univie.ac.at (Daniela Pfabigan) Date: Wed, 11 Nov 2009 17:11:09 +0100 Subject: pause function In-Reply-To: <122589ba-c94e-4df4-8558-ae7f49282e48@h34g2000yqm.googlegroups.com> Message-ID: hi! you could try the following script lines which we modified a little bit after downloading them from PST website or from an user forum and insert any lines to send information via the parallel port If (Get*UserBreakState* <> 0) Then Display.Canvas.Clear Display.Canvas.Text 150, 150, "Unexpected break!" Sleep 1000 Mouse.ShowCursor True Dim r As Integer r = AnswerBox( "Please select if you are ready:" & chr(10)+chr(13), "Continue") Set*UserBreakState* 0 End If Cheers, Daniela liwenna schrieb: > Hey Yan, > > I don't really have a solution (as I never used this parallelport > config thing and I have no idea what the function of 'userbreakstate' > is for...) but that is probably where your problem lies. As you can > see in line three (If (GetUserBreakState <> 0) Then ) all the script > between 'Then' and 'End If' will only be executed if userbreakstate is > NOT (<>) 0. In the forelast line of the piece of code you posted > (SetUserBreakState 0) userbreakstate is set to 0 and therefore this > code cannot run twice (seeing as "If (GetUserBreakState <> 0)" will no > longer be valid after it ran once). > > I think that that's the source of your problem, but I unfortunately > don't have a solution (other than simply removing both lines but that > probably doesn't do the trick) and it also does not explain why e- > prime quits altogether when you try it twice... > > > So for what it's worth: I hope the above is somewhat helpful. > Hopefully others can shine some light on the whole userbreakstate- > thing... what and why and all that. > > Best, > > liwenna > > On Nov 11, 4:09 pm, Yan Yu wrote: > >> Hi Eprimers, >> >> I used a script to excute the pause function, however, during the >> experiment, whenever I pause it a second time, eprime will quit the task. >> My knowledge on scripting is minimal. I am wondering if anybody can help me >> out. >> >> Here is the inline script that I placed at the beginning of each block. >> >> 'Check for UserBreakState >> 'Pause2 is run only if Ctrl+Shift is pressed >> If (GetUserBreakState <> 0) Then >> 'Incorrect CLng Object reference Pause2.InputMasks.Add >> Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), >> ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All >> ProcessBackspace:Yes") >> NetStation_SendTrialEvent c, Pause2 >> NetStation_SendTRSPEvent c, Pause2 >> Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", >> CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, >> CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") >> Pause2.Run >> 'Added code >> SetUserBreakState 0 >> End If >> >> Thanks a lot, >> >> Yan >> > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 adamosth at gmail.com Wed Nov 11 18:21:59 2009 From: adamosth at gmail.com (Adam Osth) Date: Wed, 11 Nov 2009 13:21:59 -0500 Subject: SlideSounds and Ebasic Message-ID: Hey all, I have a quick question about using infile commands to change the properties of a particular slide. I currently have a game in which subjects have to tap out a rhythm, and an infile which checks to make sure the rhythm was correct and give them feedback depending on how they did. The check is okay and works fine. The problem is that I want to have a sound file on the slide play when they get the rhythm correct, but not play if they get the rhythm wrong. However, I couldn't find anything in the SlideSoundOut properties that would enable me to do this. Any suggestions? Adam --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 baltimore.ben at gmail.com Wed Nov 11 18:31:58 2009 From: baltimore.ben at gmail.com (ben robinson) Date: Wed, 11 Nov 2009 13:31:58 -0500 Subject: SlideSounds and Ebasic In-Reply-To: <7ef748980911111021j37197ab7sfebd0d52446121eb@mail.gmail.com> Message-ID: have two different SlideStates (like in a feedback slide - one state for Correct, one for Incorrect). activate the whichever slide state is appropriate given the response, and only include a sound object on the correct slide state. On Wed, Nov 11, 2009 at 1:21 PM, Adam Osth wrote: > Hey all, > > I have a quick question about using infile commands to change the > properties of a particular slide. I currently have a game in which subjects > have to tap out a rhythm, and an infile which checks to make sure the rhythm > was correct and give them feedback depending on how they did. > > The check is okay and works fine. The problem is that I want to have a > sound file on the slide play when they get the rhythm correct, but not play > if they get the rhythm wrong. > > However, I couldn't find anything in the SlideSoundOut properties that > would enable me to do this. > > Any suggestions? > > Adam > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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 yanhyu at gmail.com Wed Nov 11 23:47:12 2009 From: yanhyu at gmail.com (Yan Yu) Date: Wed, 11 Nov 2009 18:47:12 -0500 Subject: pause function In-Reply-To: <4AFAE21D.70705@univie.ac.at> Message-ID: Hi liwenna & Daniela, Thanks for your reply. I tried the suggestion from both of you. Daniela's script generated the following error message "Encountered: '*' expecting: , , , system. Then my colleague suggested me delete the two lines about netstation, it works fine now. I appreciate your input! Yan On Wed, Nov 11, 2009 at 11:11 AM, Daniela Pfabigan < daniela.pfabigan at univie.ac.at> wrote: > > hi! > > you could try the following script lines which we modified a little bit > after downloading them from PST website or from an user forum and insert > any lines to send information via the parallel port > > If (Get*UserBreakState* <> 0) Then > Display.Canvas.Clear > Display.Canvas.Text 150, 150, "Unexpected break!" > Sleep 1000 > > Mouse.ShowCursor True > Dim r As Integer > > > r = AnswerBox( "Please select if you are ready:" & chr(10)+chr(13), > "Continue") > Set*UserBreakState* 0 > > End If > > > Cheers, > Daniela > > liwenna schrieb: > > Hey Yan, > > > > I don't really have a solution (as I never used this parallelport > > config thing and I have no idea what the function of 'userbreakstate' > > is for...) but that is probably where your problem lies. As you can > > see in line three (If (GetUserBreakState <> 0) Then ) all the script > > between 'Then' and 'End If' will only be executed if userbreakstate is > > NOT (<>) 0. In the forelast line of the piece of code you posted > > (SetUserBreakState 0) userbreakstate is set to 0 and therefore this > > code cannot run twice (seeing as "If (GetUserBreakState <> 0)" will no > > longer be valid after it ran once). > > > > I think that that's the source of your problem, but I unfortunately > > don't have a solution (other than simply removing both lines but that > > probably doesn't do the trick) and it also does not explain why e- > > prime quits altogether when you try it twice... > > > > > > So for what it's worth: I hope the above is somewhat helpful. > > Hopefully others can shine some light on the whole userbreakstate- > > thing... what and why and all that. > > > > Best, > > > > liwenna > > > > On Nov 11, 4:09 pm, Yan Yu wrote: > > > >> Hi Eprimers, > >> > >> I used a script to excute the pause function, however, during the > >> experiment, whenever I pause it a second time, eprime will quit the > task. > >> My knowledge on scripting is minimal. I am wondering if anybody can help > me > >> out. > >> > >> Here is the inline script that I placed at the beginning of each block. > >> > >> 'Check for UserBreakState > >> 'Pause2 is run only if Ctrl+Shift is pressed > >> If (GetUserBreakState <> 0) Then > >> 'Incorrect CLng Object reference Pause2.InputMasks.Add > >> Keyboard.CreateInputMask("{SPACE}", "", CLng(Pause.Duration), CLng("1"), > >> ebEndResponseActionTerminate, CLogical("Yes"), "", "", "ResponseMode:All > >> ProcessBackspace:Yes") > >> NetStation_SendTrialEvent c, Pause2 > >> NetStation_SendTRSPEvent c, Pause2 > >> Pause2.InputMasks.Add Keyboard.CreateInputMask("{SPACE}", "", > >> CLng(Pause2.Duration), CLng("1"), ebEndResponseActionTerminate, > >> CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes") > >> Pause2.Run > >> 'Added code > >> SetUserBreakState 0 > >> End If > >> > >> Thanks a lot, > >> > >> Yan > >> > > > > > > > > > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com To unsubscribe from this group, send 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: