!!!antisaccade test {{outline}} ---- *実行機能系能力の測定 !!実験で使用できるバージョン !22回の練習用 {{ref antisaccadePractice22.exe}} !90回の本番用 {{ref antisaccade90.exe}} !英語版 {{ref antisaccade01Large22E.exe}} {{ref antisaccade90E.exe}} !!試作 !プログラム *実行ファイル {{ref AntisaccadeTest.exe}} *ソースコード {{ref antisaccade01Large.hsp}} {{pre ; Executive Function Task ; antisaccade test ; copyleft 2022-06-11 sugiura@nagoya-u.jp ; ; 実行系機能のテスト /* Friedman and Miyake (2004: 105)に基づき一部修正 中央に+提示 1500msから3500msの間、250ms間隔で、ランダムに。 0.3センチの黒い四角が、スクリーンの端に現れる。175ms間。 その後、スクリーンの逆の端に、ターゲット刺激が提示される。 1.6cm角の白い四角の中に矢印提示。150ms間。 矢印は、上下上のいずれかランダム。 その後、四角の中は、グレーの左右斜めの斜線で塗りつぶされる。 その状態で、被験者が矢印の方向を回答するまで待つ。 回答は、キーボードによる。 黒い四角と白い四角は、中央からそれぞれ8.6センチの位置に提示 最初に22回練習。その後本番90回。 エラー率をスコアとして記録。 */ screen 0, 1280, 900 ; 640x480の二倍 ちょっと小さめに notesel kiroku max = 20 ; 実行回数の指定 count = 0 maru=0 *hajime mes "copyleft 2022-06-10 sugiura@nagoya-u.jp" pos 400, 300 font "MS ゴシック", 32 mes "Antisaccade Task" mes "" mes "チャレンジ! あっち向いてほいタスク" mes "" mes "最初に出る四角とは逆側に現れる矢印の向きを答えます。" pos 600, 600 button goto "OK", *setumei stop *setumei cls pos 200, 200 font "MS ゴシック", 32 mes "1)画面中央に + が表示されます。" mes "2)その後、左右どちらかに、■ が現れますが、" mes " (そちらを見ずに、逆を見てください。)" mes "3)逆側に、四角の中に矢印が 一瞬だけ 見えます。" mes "4)その矢印の向きを、矢印キー[←][↑][→]で答えてください。" mes "" ;mes "22回練習をします。" ;mes "その後、90回答えてもらいます。" mes "" + max + "回、チャレンジしてもらいます。" mes "" mes "手順がわかったら、キーボードの矢印キーの位置を確認して、" mes "Startボタンを押してください。" pos 600, 600 button goto "Start", *step1 stop *step1 mouse -1 ; マウスカーソルを消す cls if count==max{ ; max回数に達していたら、終わる goto *owari } count = count +1 randomize saikoro = rnd(6) ; 0から6-1までの間で乱数発生 switch saikoro case 0 goto *Lya_migi swbreak case 1 goto *Lya_ue swbreak case 2 goto *Lya_hidari swbreak case 3 goto *Rya_migi swbreak case 4 goto *Rya_ue swbreak case 5 goto *Rya_hidari swbreak swend *Lya_migi cls mes "Lya_migi" gosub *fixation color : boxf 980, 430, 1080, 530 ; 右黒い四角 await 175 color 255,255,255 : boxf 980, 430, 1080, 530; 右白 color : boxf 220, 430, 320, 530 ; 左黒い四角 pos 260, 460 color 255,255,255 ; 白い文字 mes "→" await 150 color 155,155,155: boxf 220, 430, 320, 530; 左グレーの四角 gosub *siji repeat stick k if k==1:noteadd "0": break if k==2:noteadd "0": break if k==4:noteadd "1": gosub *good: maru=maru+1:break await 1 loop wait 30 goto *step1 *Lya_ue cls mes "*Lya_ue" gosub *fixation color : boxf 980, 430, 1080, 530 ; 右黒い四角 await 175 color 255,255,255 : boxf 980, 430, 1080, 530 ; 右白 color : boxf 220, 430, 320, 530 ; 左黒い四角 pos 260, 460 color 255,255,255 ; 白い文字 mes "↑" await 150 color 155,155,155: boxf 220, 430, 320, 530 ; 左グレーの四角 gosub *siji repeat stick k if k==1:noteadd "0": break if k==2:noteadd "1": gosub *good: maru=maru+1:break if k==4:noteadd "0": break await 1 loop wait 30 goto *step1 *Lya_hidari cls mes "*Lya_hidari" gosub *fixation color : boxf 980, 430, 1080, 530 ; 右黒い四角 await 175 color 255,255,255 : boxf 980, 430, 1080, 530 ; 右白 color : boxf 220, 430, 320, 530 ; 左黒い四角 pos 260, 460 color 255,255,255 ; 白い文字 mes "←" await 150 color 155,155,155: boxf 220, 430, 320, 530 ; 左グレーの四角 gosub *siji repeat stick k if k==1:noteadd "1": gosub *good: maru=maru+1:break if k==2:noteadd "0": break if k==4:noteadd "0": break await 1 loop wait 30 goto *step1 *Rya_migi cls mes "*Rya_migi" gosub *fixation color : boxf 220, 430, 320, 530 ; 左黒い四角 await 175 color 255,255,255 : boxf 220, 430, 320, 530 ; 左白 color : boxf 980, 430, 1080, 530 ; 右黒い四角 pos 1010, 460 color 255,255,255 ; 白い文字 mes "→" await 150 color 155,155,155: boxf 980, 430, 1080, 530 ; 右グレーの四角 gosub *siji repeat stick k if k==1:noteadd "0": break if k==2:noteadd "0": break if k==4:noteadd "1": gosub *good: maru=maru+1:break await 1 loop wait 30 goto *step1 *Rya_ue cls mes "*Rya_ue" gosub *fixation color : boxf 220, 430, 320, 530 ; 左黒い四角 await 175 color 255,255,255 : boxf 220, 430, 320, 530 ; 左白 color : boxf 980, 430, 1080, 530 ; 右黒い四角 pos 1010, 460 color 255,255,255 ; 白い文字 mes "↑" await 150 color 155,155,155: boxf 980, 430, 1080, 530 ; 右グレーの四角 gosub *siji repeat stick k if k==1:noteadd "0": break if k==2:noteadd "1": gosub *good: maru=maru+1:break if k==4:noteadd "0": break await 1 loop wait 30 goto *step1 *Rya_hidari cls mes "*Rya_hidari" gosub *fixation color : boxf 220, 430, 320, 530 ; 左黒い四角 await 175 color 255,255,255 : boxf 220, 430, 320, 530 ; 左白 color : boxf 980, 430, 1080, 530 ; 右黒い四角 pos 1010, 460 color 255,255,255 ; 白い文字 mes "←" await 150 color 155,155,155: boxf 980, 430, 1080, 530 ; 右グレーの四角 gosub *siji repeat stick k if k==1:noteadd "1": gosub *good: maru=maru+1:break if k==2:noteadd "0": break if k==4:noteadd "0": break await 1 loop wait 30 goto *step1 *owari cls wait 100 nen =gettime(0) tuki=gettime(1) niti=gettime(3) ji =gettime(4) fun =gettime(5) noteadd "記録日時:" + nen + "年" + tuki + "月" + niti + "日" + ji + "時" + fun + "分" notesave "log.txt" pos 600, 400 font "MS ゴシック", 32 mes "That' it!" pos 750,50 mes kiroku maru=double(maru) max=double(max) wariai=(maru/max)*100 wariai=int(wariai) pos 600, 450 mes "" + wariai + "%" wait 500 mouse 1 end ; ------------------------sub---------------------------- *fixation pos 620, 460: font "MS ゴシック", 32 : mes "+" randomize bara = rnd(9) barabara = bara * 25 + 150 wait barabara cls return *siji pos 540, 800 font "MS ゴシック", 32 mes "矢印キーを押してください" return *good pos 620, 460 font "MS ゴシック", 32 mes "○" wait 80 return }}