Chapter.25 BGMドライバの修正と MMLコンパイラ修正
[Chapter25 制作物]
今回も、BGMドライバを少し改良します。
リズムパートの演奏が簡単になる仕組みを拡張するのと、音色データにノイズを扱う機能を追加します。
■BGMドライバの改良 その1 音色データにノイズを扱う機能を追加
ノイズチャネルは、3つのトーンチャネルのどれかにミックスする形で、一つだけ存在しています。
複数のトーンチャネルにミックスすることも出来ますが、指定できるノイズ周波数は1つだけです。
といっても、リズムセットを複雑に鳴らすことはない・・という、勝手な制約を加えてやって、
後優先のノイズ周波数設定にすることにしました。
後優先というのは、ミキサの中でですので、ch2 > ch1 > ch0 の順で優先的になります。
工事中
■BGMドライバの改良 その2 リズムパートの演奏が簡単になる仕組み
ドラムセットとして5音の音色データを保持できるようにして、このそれぞれの KeyOn を制御するコードを追加します。
トーンと違って、トーン周波数は固定です。
固定指定のトーン周波数は、音色データの方に組み込むことにします。
工事中
■MMLコンパイラ
上記修正に伴って、BGMデータのコードが若干変更されたため、それにあわせて MMLコンパイラも修正・拡張します。
例によって MMLコンパイラのプログラム中身については説明しません。
MML として下記のコマンドを追加しました。
@H* ... ドラムH の音色番号指定
@I* ... ドラムI の音色番号指定
@J* ... ドラムJ の音色番号指定
@K* ... ドラムK の音色番号指定
@M* ... ドラムM の音色番号指定
H* ... ドラムH を音長 * で発音する
I* ... ドラムI を音長 * で発音する
J* ... ドラムJ を音長 * で発音する
K* ... ドラムK を音長 * で発音する
M* ... ドラムM を音長 * で発音する
H* を使う場合は、必ず @H* で音色指定してからにしてください。
音色指定無しのドラム音再生のエラー検出は行っていないため、実機でおかしな音がなります。
今回は、こんな感じでした。
次回は、効果音の機能を追加します。
[▲トップページへ]