#MB:Y_PACK:音源制御コマンド群の定義【記述例】
このように書くと、
#MB:ENV_A @ea=1 { peak=15, init=&, | n:1:15, r:8:0 }
#MB:Y_PACK yp=1 {
cpx:opnum:3,
//オペレータ数を3個にする(OP1…OP3)
cpx:op1subform:1,
//OP1の波形=ノコギリ波
cpx:op1cent:0.0,
//OP1の周波数=ずれ無し
cpx:op1dB:0.0,
//OP1の音量=等倍
cpx:op2subform:3,
//OP2の波形=パルス波
cpx:op2cent:1200+0,
//OP2の周波数=+1200cent
cpx:op2dB:-6.0,
//OP2の音量=-6dB
cpx:op3subform:3,
//OP3の波形=パルス波 cpx:op3cent:1200+7.5, //OP3の周波数=+1207.5cent
cpx:op3dB:-6.0,
//OP3の音量=-6dB
}
t120 l8 q11,16 @ea1 @@"cpx" yp1
o4 cegefdgg cegefdg&g;
【解説】 音源制御コマンド群の実行コマンド(yp[1]): 音源制御コマンド群の定義(#MB:Y_PACK)の定義番号を整数で指定します。 定義番号は 0 〜 1023 の整数です。 未定義の番号を指定するとエラーになります。 音源制御コマンド群の定義(#MB:Y_PACK): 音源制御コマンド群の実行コマンド(yp[1])で使用する、音源制御コマンド群 を定義します。 音量エンベロープ定義方法の概要は、 ・行頭からの記述で、キーワード「#MB:Y_PACK」を書く。 ・続けて、スペースを置き、「yp=定義番号」を書く。 ・続けて、スペースを置き、中括弧「{}」で括られた設定データを書く。 です。 定義番号: 定義番号は、ypコマンドの引数で使用する番号と合致するように定義します。 定義番号の設定範囲は 0 〜 1023 です。 設定データ: 【記述例】
【解説】 フォーマットは次の通りです。 #MB:Y_PACK yp=定義番号 {
[Y_PACK節],[Y_PACK節],…(1個以上、2048個以下のY_PACK節)
}
#MB:Y_PACK yp=1 {
pls:opnum:2,
//オペレータ数を2個にする(OP1…OP2)
pls:op1cent:0,
//OP1の周波数=0cent
pls:op1dB:0.0,
//OP1の音量=等倍
pls:op2cent:7.5,
//OP2の周波数=7.5cent
pls:op2dB:0.0,
//OP2の音量=等倍
}
Y_PACK節: Y_PACK節は、「:」で区切られた3個1組のパラメータを、「,」区切りで1個以 上列挙したものです。 Y_PACK節内の要素の名前を、次のように決め、それぞれについて説明します。
[module]:[y_func]:[value],
Y_PACK節の要素[module]: [module]には、当該Y_PACK節の宛先音源モジュール名を、文字列で指定します。 指定できる文字列は次を参照:
音源モジュールを指す文字列一覧 Y_PACK節の要素[y_func]: [y_func]には、当該Y_PACK節の宛先に対する機能名称を、文字列で指定します。 指定できる文字列は、各音源モジュール(@@”sin”など)の説明内、
【yコマンドにおける、音源モジュールへの設定】 の項目にある、yコマンドの各機能ごとの宛先文字列がそのまま、ここで指定で きる文字列になります。 Y_PACK節の要素[value]: [value]には、[module][y_func]で確定した yコマンド宛先に与える数値を指定 します。 数値の指定範囲は、機能ごとに異なりますので、各音源モジュール説明内、
【yコマンドにおける、音源モジュールへの設定】 の項目を参照してください。