MML reference: APU:Sweep / VRC7:Sustain / N163:Sample length

定義(Define)

APU(パルス波)

        sspeed,depth

APU(三角波)

        stime

FDS

        sbias

VRC7

        ssustain

N163

        slength

Sunsoft 5B

        sswitch,form

引数(Inputs)

speed (APUパルス波)

レジスタ書き込み値の上位4bitです。

value refresh rate
0〜7 Off (Default)
8 120 Hz
9 60 Hz
10 40 Hz
11 30 Hz
12 24 Hz
13 20 Hz
14 17.1 Hz
15 15 Hz

depth (APUパルス波)

レジスタ書き込み値の下位4bitです。

value Depth (Shift value)
0 0 (0)
1 -7 (1)
2 -6 (2)
3 -5 (3)
4 -4 (4)
5 -3 (5)
6 -2 (6)
7 -1 (7)
8 0 (0) (Default)
9 7 (1)
10 6 (2)
11 5 (3)
12 4 (4)
13 3 (5)
14 2 (6)
15 1 (7)

time (APU三角波)

発音時のリニアカウンタ値($4008番地に書く値)を指定します。(Default: time = 255)
この値を指定することで、240[Hz]単位で、ハードウェアによる自動的なKeyOffが行えます。

value Depth (Shift value)
0 〜 127 リニアカウンタ設定 (0[msec]〜529[msec])
128 発音しない。
129〜255 リニアカウンタoff (Default)
(指定の音長、ゲートにより、ソフトウェアでKeyOffします。)

音量エンベロープを有効にした場合、リニアカウンタはエンベロープによって制御されます。
本s コマンドは、音量エンベロープが無効(Ev*(デフォルト))の場合に、有効になります。

bias (FDS)

モジュレーターのsweep biasを0〜127の範囲で指定します。(Default: bias = 0)
ただし、64〜127は、-64〜-1に相当します。

sustain (VRC7)

余韻の制御を設定します。

value Sustain Key Off制御
0 (Default) 無効(Disable)KeyOff時に、ハードウェア・エンベロープ共にKeyOffします。
1 有効(Enable) KeyOff時に、ハードウェア・エンベロープ共にKeyOffします。
2 無効(Disable)KeyOff時に、ハードウェアはKeyOffしません(エンベロープのみ、KeyOffします)。
3 有効(Enable) KeyOff時に、ハードウェアはKeyOffしません(エンベロープのみ、KeyOffします)。

length (n106/n163)

n163の波形長を (64-length)×4 サンプルに設定します。(Default: length = 56 (32 sample))
トラック毎に指定して下さい。
エミュレータによっては、以下表の56〜63の範囲にしか対応していませんので、注意して下さい。
また、サンプル長と、使用するチャンネル数によって音程が変動しますので、注意して下さい。

value Sample length
56 32 (16 byte)
57 28 (14 byte)
58 24 (12 byte)
59 20 (10 byte)
60 16 ( 8 byte)
61 12 ( 6 byte)
62 8 ( 4 byte)
63 4 ( 2 byte)

switch (Sunsoft 5B)

0 … Sunsoft 5Bのハードウェアエンベロープを無効にします。(Default)
1 … Sunsoft 5Bのハードウェアエンベロープを有効にします。

form (Sunsoft 5B)

Sunsoft 5Bのハードウェアエンベロープの形状を指定します。(Default: form = 0)

内容(Contents)

2A03では、スイープを設定します。

VRC7では、サスティンを設定します。
1を設定すると、KeyOff時のRRが5になります。

n163では、サンプル長を設定します。
サンプル長は、転送した音色テーブルに応じて必ず設定して下さい。
n106/n163の使い方は、別途、n106 / n163 の使い方をご参照ください。

Sunsoft 5Bでは、ハードウェアエンベロープの有効/無効と、形状を指定します。
形状はSunsoft 5Bの全チャンネルに適用されます。

注意(Notes)

設定した内容は、再度設定するまで有効になります。
スイープの解除は、 s0,8 と指定してください(※ s0,0 ではありません。 )。

例(Sample)

    s9,7 c2 s9,15 ^2 s0,8      /* sweep */