そんなこんなで「ファミコンはないけどPCならある」の幼少時代。
使うコマンドといえば、

  • FILES
  • LOAD
  • RUN
  • LIST

ぐらい。

ただ、何も分からずコンピューターを触っていたわけですが、
そんな中、初めてきちんと触った規則言語が
Music Macro Languageこと、MMLだ。

MZ-2500はなんと、音源を搭載しており、
BASICのPLAY文で簡単に音楽を奏でることができた。
play "c"
これで「ド」の音が出る。

この、「c」とか書いているのがMMLだ。
たとえば、
play "o4l4cdefedc2efgagfb2"
とやればかえるの歌で、
play "t120o4l4cdefedc2efgagfb2","r1r1o4l4cdefedc2"
とやれば輪唱になる。

cdefgabは音階で、ド~シの音を表している。
「c4」等とやれば、「4分音符でドの音を出せ」という意味だ。

でも、いちいち、c4d4e4f4e4d4c2等と書くのは面倒なので、
「l4」と、音符の長さを省略したときの長さを指定することも出来る。

t120はそのままテンポを表して単位は1分間に叩ける4分音符の数を表す。

o4はオクターブを表して大きいほど高い音が鳴る。

そのほか、rは休符だったり、vという音量指定があったり、
色々とコマンドはあるモノの、しばらくは楽譜をMMLに置き換えて遊んでいたのが、
自分の初めてプログラムだったと思う。

ちなみに、MZ-2500には2つのBASICが添付されていた。
NEC系のBASICの流れを組むM-25 BASICと
ハドソン系のBASICの流れを組むS-25 BASICだ。

実は、MMLは確立された言語でもないので、プラットフォームでかなり違って、
M-25では、8分音符は8だけど、S-25では、8分音符は6となる。

対応表はこう:

音楽上 S-25 M-25
全音符 C0 C1
付点2分音符 C1 C2.
2分音符 C2 C2
付点4分音符 C3 C4.
4分音符 C4 C4
付点8分音符 C5 C8.
8分音符 C6 C8

そんな違いを楽しみつつ、楽譜入力に明け暮れていたんだけど、
ただ、その遊びはすぐに壁にぶつかるのだけれど、その辺の続きは明日。

P.S.
先日は自分がプログラムをつとめた、
人生2作目の商用ゲーム発売10周年記念だったらしい。
何もかもが懐かしい・・・