SHIROのIchigoJam日記

マイコン「IchigoJam」(イチゴジャム)の電子工作とプログラミングをメインに

Tenori64J

Ichigo64(IchigoJam+IchigoDot)環境用の音楽プログラムです。
以前の「Tenori64」を作りかえて、ジョイスティックあり/ボタンのみの両環境に対応しました。
そのため以前と操作方法が変わっています。

  • 起動するとタイトル画面の後、画面左下のLEDが点灯します。
    • ボタンのみ操作:ボタンを長押しすると、LEDが下→上へ点灯して移動します。下からそれぞれド・レ・ミ〜1オクターブ上のドの音になっています。出したい音の所でボタンを離すと、その音がセットされます。休符にしたい時は、1オクターブ上のドとドの間、LEDが点いていない時にボタンを離してください。
    • ジョイスティック操作:スティックを上下に倒すと、LEDが上下に移動します。希望の音になった所でボタンを短く押してください。
  • 右隣の縦列の入力へ移ります。同様に音をセットしてください。
  • 8列目の縦列の入力が終わると、入力したメロディを2回くり返して演奏します。
  • メロディがクリアされて、最初へ戻ります。
  • ジョイスティックのアナログ値による調整(4行目のL)
    • 「上」=0近辺・「下」=1023近辺の時は「L=1」、逆の時は「L=-1」にしてください。

なお、PUSH方向が「上」になるように、画面表示の向きが変わっています。

1 '*Tenori64J*
2 UART1:CLS:?:OUT2,-1
3 ?"MATLED SHOW E94D4B498A8AEFE2":PLAY"L8RCDECDE":WAIT120
4 CLV:L=1:GSB30
5 FORX=7TO0STEP-1
6 Y=7:GSB28
7 GSB22:IF!BTN()GOTO7 ELSECLT
8 IFTICK()>30GSB28:Y=Y-1+(Y=0)*9:GSB28:CLT
9 IFBTN()GOTO8
10 BEEP:WAIT20:NEXT
11 FORL=1TO2:FORX=7TO0STEP-1:GSB26:GSBLINE()+Z+2
12 WAIT5:GSB26:NEXT:NEXT:WAIT60:GOTO4
13 PLAY"O5C":RTN
14 PLAY"B":RTN
15 PLAY"A":RTN
16 PLAY"G":RTN
17 PLAY"F":RTN
18 PLAY"E":RTN
19 PLAY"D":RTN
20 PLAY"C":RTN
21 PLAY"R":RTN
22 J=(ANA(6)-511)/300*L:Z=Y+J
23 IFZ<0Z=8ELSEIFZ>8Z=0
24 IFZ<>YGSB28:Y=Z:GSB28:WAIT10
25 RTN
26 M=1<