====== Dollar Reward ====== DollarReward/RingReward is rewarded and neutral [[:tools:antisaccade]] task. * was an [[:tools:eprime]] task for [[:grants:cog]] (MR, behave) and later a [[:tools:psychopy]] task for [[:grants:habit]] (MR, EEG) and [[:bigdata:NCANDA]] (MR) * Originally for [[:tools:eyetracking:asl]] but adapted in psychopy for [[:tools:eyetracking:avotech]] and then [[:tools:eyetracking:prismaeyelink]] * Task source code is online and on bea_res * psychopy https://github.com/LabNeuroCogDevel/lncdtask * ''bea_res/Tasks/Behavorial/RingsRewardBehave_20190920'' * ''bea_res/Tasks/fromScanner20130219/Rings Reward'' * Eye tracking data can be found on * ''bea_res/Data/Temporary Raw Data/lab_eyetracker/subj_info'' ===== Design ===== * Events are ''ring'', ''prep'', ''dot'' and ''iti'' * ring is either a neutral or reward cue. prep is a red cross * duration of all are original-TR locked 1.5 * includes catch trials * have 6 sides. 3 right and 3 left. https://github.com/LabNeuroCogDevel/lncdtask/blob/main/dollar_reward_events.txt ===== XDAT/TTL ===== ASL and EEG share triggers sent of LPT/parallel port. https://github.com/LabNeuroCogDevel/lncdtask/blob/main/lncdtask/dollarreward.py#L85 ===== Data Files ===== *TODO* ===== EPrime ===== perl -MData::Dumper -F= -slane ' next unless /^(\[Object|Name|Duration|Code|Text|ForeColor|.*Filename)/; $obj=$F[0] if $F[0] =~ /Object/; $h{$obj}->{$F[0] =~ s/.*Filename/Filename/r}=join("=",(@F[1..$#F] =~ s/"|\r//gr)); END {for $k (keys %h){ next unless ($h{$k}->{Duration}||$h{$k}->{Code}) and $h{$k}->{Name}; print join("\t", map {$h{$k}->{$_}} (qw/Name Duration ForeColor Filename Text Code/)); }} ' '/Volumes/L/bea_res/Tasks/Behavorial/RingsRewardBehave_20190920/RING Chuck Rewards - v. 1.es' | sort -k2nr | sed 's/^\|$\|\t/|/g' ^Name^Dur^Color^File^Text^Code^ |TextDisplay2|6000|white||+| |AntiCross|1500|red||+| |rewRINGS|1500||dollarRing.BMP|| |WhiteCross|1500|white||+| |GreenCross|750|lime||+| |FixStart|||||PupilSend(EVENTSTROBE+60)| |FixTarget|||||PupilSend(EVENTSTROBE+160)| |neutralcatch1Start|||||PupilSend(EVENTSTROBE+10)| |NeutralCatch1Target|||||PupilSend(EVENTSTROBE+111)| |neutralcatch2Start|||||PupilSend(EVENTSTROBE+20)| |NeutralCatch2Target|||||PupilSend(EVENTSTROBE+121)| |NeutralStart|||||PupilSend(EVENTSTROBE+50)| |NeutralTarget007|||||PupilSend(EVENTSTROBE+151)| |NeutralTarget108|||||PupilSend(EVENTSTROBE+152)| |NeutralTarget214|||||PupilSend(EVENTSTROBE+153)| |NeutralTarget426|||||PupilSend(EVENTSTROBE+154)| |NeutralTarget532|||||PupilSend(EVENTSTROBE+155)| |NeutralTarget633|||||PupilSend(EVENTSTROBE+156)| |rewardcatch1Start|||||PupilSend(EVENTSTROBE+30)| |RewardCatch1Target|||||PupilSend(EVENTSTROBE+131)| |rewardcatch2Start|||||PupilSend(EVENTSTROBE+40)| |RewardCatch2Target|||||PupilSend(EVENTSTROBE+141)| |rewardStart|||||PupilSend(EVENTSTROBE+70)| |RewardTarget007|||||PupilSend(EVENTSTROBE+171)| |RewardTarget108|||||PupilSend(EVENTSTROBE+172)| |RewardTarget214|||||PupilSend(EVENTSTROBE+173)| |RewardTarget426|||||PupilSend(EVENTSTROBE+174)| |RewardTarget532|||||PupilSend(EVENTSTROBE+175)| |RewardTarget633|||||PupilSend(EVENTSTROBE+176)| |Stop|||||PupilSend(EVENTSTROBE+240)| |VGSStart|||||PupilSend(EVENTSTROBE+80)| |VGStarget|||||PupilSend(EVENTSTROBE+180)| |AllDone|-1|||| |GetRead|-1|||| |Intro|-1||Slide2.BMP||