
MMLとは? Music Macro Languageの略で、まぁ音楽のプログラムです。 恐らく日本国内ぐらいしか普及していなかったかも知れません。 ココでは実際にどんな風に記述していくのかなどの基本を紹介していきます。
ト音記号があるコトから、一番左の音は「ド」になります。MMLだと「c」ですね。
この楽譜をMMLにすると
c f b- g+
になります。
<補足>
MMLには「ダブルシャープ」や「ダブルフラット」の記述はありません。
「c++」とか指定しても無効です(つかエラー出ると思う)のでお気を付け下さい。
その場合には全音ズラして下さい。
[■] スラー
繋げたい音と音を"&"で繋ぎます。
残念ながらmckに本来のスラー機能はなく、同じ音同士でしか繋げません(使えネー
MMLではひと工夫もふた工夫も必要となります。
[■] オクターブまんまですが、オクターブ4なら「o4」と記述します。 "o"コマンドはオクターブの絶対値指定、 ">","<"コマンドはオクターブの相対値指定です。 ">"で1オクターブ上がります。"<"で1オクターブ下がります。 ">>"だと2オクターブ上がります。 ちなみに、MMLによってはこの不等号の意味が逆なモノもあります。 ややこしいですね。 mckcでは両方設定できまして、上記の記述方式がデフォルトになってます。 これは画像を見て貰った方が早いかな。
え〜と楽譜の下の方がヘ音記号ですので、一番初めの音は「オクターブ3」の「ド」ですね。
んで、上のMMLだとオクターブ毎にその指定をしてますが、これは果てしなく面倒です。
その下に書いてあるMMLでは、オクターブの変化を相対指定コマンドで指定してます。
[■] 音長 前述までで音階はバッチリだと思いますので、音長にいきたいと思います。 MMLでは音長の指定方式が複数有り、mckcでは ・音楽的音長 ・カウント音長 ・フレーム音長 の3つがあります。 ここでは一番分かり易い音楽的音長を解説していきます。 つかスゲー簡単です。音階の後に数字を付けるだけです。 付点音符は"."(ピリオド)で記述します。 付点2分音符なら「c2.」となります。 複付点音符も同様に「c2..」となります。 コレもまんま。 例)c2.. → 「ド」の複付点二分音符 [■] 連符 連符にしたい音名を"{","}"で囲み、その後ろに音長を記述します。
例){abc}4 → 「ラシド」の3つの音を四分音符の長さから等分し発音します。
[■] タイ
繋げたい音長と音長を"^"で繋ぎます。
例)c4^16 → 4分音符 + 16分音符
[■] 音長省略コマンド音長指定が必要なコマンドは、このコマンドを使い頻繁に記述する音長を省略することも出来ます。 "l"(エル)コマンドの後ろに、省略時のデフォルト音長を指定します。 例)l4 cdefg → ドレミファソを全て四分音符で発音 では、ココまでのまとめといきましょう。
下のMMLはlコマンドでの表記です。
ココまでで音長もバッチリですね!
この前のセクションで音の長さを指定しました。 でも、実際の発音時間に対しては相対的な意味となります。 絶対的な発音時間を決める要素としてテンポがあります。 では、実際に見ていきましょう。 [■] メトロノーム記号 MMLでは"t"コマンドを使用します。
例)t120 → 1分間に四分音符を120回演奏する速度
つかこんだけ。
<補足>
楽譜の中の表現で見かける、単語による速度指定というのはMMLにはありません。
相対的な速度指定で、遅い順に
largo(ラルゴ) → adagio(アダージョ) → andante(アンダンテ) → allegro(アレグロ) → presto(プレスト)
や、曲の途中で速度変化指示を与える
速める accelerando , animato など
緩める ritardando , ritenute など
元に戻す a tempo など
拍の規則的な進行を一時中断する rebato , senza tempo など
これらはtコマンドを使い、その都度、変化を絶対値で指定する必要があります。
音量です。 コレの設定具合が一番奥深いように思います。 また、様々なテクニックも存在します。 ですがココでは基本をやりますので、通常の音量指定の仕方だけを解説していきます。 音量指定は"v"コマンドを使用します。この後に音量を指定します。 ちなみに 2A03内蔵音源 → min 0〜15 max ディスクシステム拡張音源 → min 0〜31 max ナムコ拡張音源 → min 0〜15 max が設定できる範囲です。0は消音になります。 が、2A03内蔵音源の第3チャンネル目は音量が固定になっています。 なぜこのような設計をしたかは分かりませんが、とにかく鳴るか鳴らないかの二択となります。 これに音量の指定が出来れば幅も広がったであろうにと残念ですが、それもまたファミコンなのです。 さてこの音量指定、非常に単純な設定方法ですが、これだけでもテクニックは存在します。 例)v15 c4. v8 c8 とすると、音の最後で音量が小さくなり、エコーがかったような効果を生み出します。 疑似ディレイってヤツでしょうか。アルゴスの戦士でよく出てくる技法です。 打ち込むのがメンドクサクはありますが。 あとはソフトウェアエンベロープ機能というのがあり、 これは時間に対する音量変化の度合いを自分で設定できるという機能になります。 この機能を使用すると、まさに無限の表現力が可能となります。 が、コレの解説やテクニックを紹介するとなると非常に メンドーなので割愛させて頂きます。スマン... さて、ココまでで、音の高さ、長さ、速さ、大きさを設定しました。 残るは音色です。 どんな音色で鳴らすか? 後はコレを設定すれば、晴れて音が鳴り出すという寸法です。 じゃぁどんな種類の音色があるのか? これは音源により違うのですが、順を追って解説していきます。 2A03内蔵音源 デューティ比の違いにより音色に種類があります。 設定できるのは、12.5%、25.0%、50.0%、75.0%の4種類です。 デューティ比とは、出力する波形の上下の比率を指します。 |<- n2 ->| | | +--------+ +--------+ | | | | | | | | -+ +--------+ +--------+ | | |<------ n1 ----->| 上記図はファミコンの矩形波です この n2/n1 がデューティ比、或いはデューティサイクルと言います。 ファミコンはココの比率が4段階に変えられるのですね。 50%辺りが聞きやすい音色に聞こえると思います。古い人にはなじみの深い音色ですね。 しかし、その他の音色もうまく使ってやることにより、グッとファミコンらしさが増します。 さて、その音色指定ですが、"@"コマンドを使用します。 コレを指定した以降の音は、音色が指定したデューティ比の音色になります。 例)@1 v10 c4 → 「ド」の四分音符を、デューティ比25%の音色・音量10で発音する。 まぁ簡単ですね。 ちなみに2A03内蔵音源の第三チャンネルでは音色が固定されており、変更は出来ません。 どんな波形かと言いますと、 __ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _| |_ _ _| |_ _| _|__________________________________________________________|__|___ 0V とまぁ、こんな感じで擬似的な三角波です。 低音で使えば迫力のあるベースに、高音で使えば哀愁の漂うメロディラインにと 使い方1つで曲がグッと変化します。 しかし2A03内蔵音源の第三チャンネルは特殊という他ありません。 当時のメーカーはこの制限にもかかわらず非常に豊かな楽曲を楽しませてくれました。 まさにプロですね。おっと脱線。 ディスクシステム拡張音源やナムコ拡張音源では、この波形をユーザーが編集して使います。 ココでは割愛させて頂きますが、この波形編集、実に奥が深いです。 mckでは2A03内蔵音源でも、この4種類の波形を1フレームごとに変化させる デューティエンベロープなる機能があります。これもまたファミコンの表現力に 幅を持たせる機能です。当時だとコナミが頻繁に使用してましたね。 でもココでは説明しませんので、慣れてきたら試してみて下さい。 つか、音色はとやかく言うよりもまずは聞いてみて下さい。それが早いです。 今までで音を鳴らす全ての要素は揃いました。 後は実際に打ち込んでいくだけです。 そこで、mckcでの記述の仕方を解説していきましょう。 今までで覚えたMMLを実際にどのチャンネルで鳴らすのか?は、 行の先頭にアルファベット大文字を置くことによって指定します。 A 2A03内蔵音源パルス波チャンネル1 B 2A03内蔵音源パルス波チャンネル2 C 2A03内蔵音源疑似三角波チャンネル D 2A03内蔵音源ノイズチャンネル E 2A03内蔵音源DPCMチャンネル F ディスクシステム拡張音源チャンネル P〜W ナムコ拡張音源チャンネル(設定により1ch-8chまで可変) となっています。 Fパート以降を使用の際は、MMLの前に使用宣言の構文を置きます。 #EX-DISKFM #EX-NAMCO106 (num) numは使用チャンネル数1〜8 がそれになります。 では2A03内蔵音源を使用し、実際に曲を打ち込んでみましょう。 まずは楽譜を用意。お題はギャラガから、2位以下ネームエントリー(3音で丁度良い…
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A t150 l4 o4 bgec r8.b16g8.e16 {ceg}4 {e-g-a}4
B t150 l4 o4 gec<b r8.f16>e8.c16 {<b>ce}4 {ce-f}4
C t150 l4 o4 b1 b2gb
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|