シーケンシャル・パラメータ・ブロック(SPB)は、時間の経過とともに変化する値(バリュー)を記述したデータ・ブロックです。このSPBを「6.11.6 SPCに関する命令について」で使用します。
項目 解説 SPB番号 1〜126で指定します。0・127はSMC内部で定義されており、再定義はできません。 イニシャルパラメータ 変化するバリューの最初の値です。引数はイニシャルバリューと呼びます。
イニシャルバリューはバリューを-32768〜32767で指定します。スケールパラメータ 変化するバリューの具合を指定します。これをいくつか記述することで、変化の順序を表現します。3つの引数は順にスケールタイム・スケールステップ・スケールバリューと呼びます。
スケールタイムは音長値を指定します。0mcを指定すると、瞬間的にスケーリングを終了して次のスケールパラメータの処理に入ります。
スケールステップは段階数を指定します。
スケールバリューはバリューを-32768〜32767で指定します。エンドパラメータ バリューの変化を終了するとともに、SPBの終わりを示します。 ループスタートパラメータ ループエンドパラメータを処理すると、ここへ戻ってくるとともに、バリューを再初期化します。引数はループスタートバリューと呼びます。
ループスタートバリューはバリューを-32768〜32767で指定します。ループエンドパラメータ ループスタートパラメータの場所から再び処理を行なうことを指定します。
SPBの定義行は、行頭に“@S”を付けます。以下は、SPBの定義例です。
; a b c1 c2 c3 c4 c5 @S1, 0, 24,8,+1000, 48,16,-1000, 24,8,0, @E @S2, 0, @S,0, 24,8,+1000, 48,16,-1000, 24,8,0, @L
項 例 解説 a 1 SPB番号。
番号を1にします。b 0 イニシャルパラメータ。
バリューを0にします。c1 24,8,+1000 スケールパラメータ。
24mcで0から+1000まで8段階でバリューを変化させます。3mcごとに+125, +250, +375, +500, +625, +750, +875, +1000とバリューが変化します。c2 48,16,-1000 スケールパラメータ。
48mcで+1000から-1000まで16段階でバリューを変化させます。c3 24,8,0 スケールパラメータ。
24mcで-1000から0まで8段階でバリューを変化させます。c4 @E エンドパラメータ。
項 例 解説 a 2 SPB番号。
番号を2にします。b 0 イニシャルパラメータ。
バリューを0にします。c1 @S,0 ループスタートパラメータ。
バリューを0にします。c2 24,8,+1000 スケールパラメータ。
24mcで0から+1000まで8段階でバリューを変化させます。c3 48,16,-1000 スケールパラメータ。
48mcで+1000から-1000まで16段階でバリューを変化させます。c4 24,8,0 スケールパラメータ。
24mcで-1000から0まで8段階でバリューを変化させます。c5 @L ループエンド・パラメータ。