項 目 | サ イ ズ |
---|---|
先頭からMixerの先頭オフセット | 2バイト |
先頭からVelocityの先頭オフセット | 2バイト |
先頭からPEGの先頭オフセット | 2バイト |
先頭からPLFOの先頭オフセット | 2バイト |
先頭から0番Voiceデータのオフセット | 2*a バイト |
: | |
先頭からa番Voiceデータのオフセット | |
Mixer Data 0 | 18*b バイト |
: | |
Mixer Data b | |
VelocityData 0 | 10*c バイト |
: | |
VelocityData c | |
PEGData 0 | 10*d バイト |
: | |
PEGData d | |
PLFOData 0 | 4*e バイト |
: | |
PLFOData e | |
VoiceData 0 | a{F(x)は各voiceが4*a+Σ(F(i)*32) 内包するLayer数i=0を返します} |
: | |
VoiceData a | |
WaveData 0 |
f ΣW(i) W(x)は波形のサイズを返します i=0 |
: | |
WaveData f |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||
---|---|---|---|---|---|---|---|---|---|
チャンネル 0 | EffectSendLev | EffectPAN | 1バイト | ||||||
: | : | : | : | ||||||
チャンネル17 | EffectSendLev | EffectPAN | 1バイト |
傾き符号化値 0 | 1バイト |
VelocityPoint 0 | 1バイト |
VelocityLevel 0 | 1バイト |
傾き符号化値 1 | 1バイト |
VelocityPoint 1 | 1バイト |
VelocityLevel 1 | 1バイト |
傾き符号化値 2 | 1バイト |
VelocityPoint 2 | 1バイト |
VelocityLevel 2 | 1バイト |
傾き符号化値 3 | 1バイト |
long LevelTable[128] = { 0, 125, 250, 375, 500, 625, 750, 875, 1000, 1125, 1250, 1375, 1500, 1625, 1750, 1875, 2000, 2125, 2250, 2375, 2500, 2625, 2750, 2875, 3000, 3125, 3250, 3375, 3500, 3625, 3750, 3875, 4000, 4250, 4500, 4750, 5000, 5250, 5500, 5750, 6000, 6250, 6500, 6750, 7000, 7250, 7500, 7750, 8000, 8250, 8500, 8750, 9000, 9250, 9500, 9750, 10000, 10250, 10500, 10750, 11000, 11250, 11500, 11750, 12000, 12500, 13000, 13500, 14000, 14500, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 19000, 19500, 20000, 21000, 22000, 23000, 24000, 25000, 26000, 27000, 28000, 29000, 30000, 31000, 32000, 33000, 34000, 35000, 36000, 37000, 38000, 39000, 40000, 41000, 42000, 43000, 44000, 45000, 46000, 47000, 48000, 49000, 50000, 51000, 52000, 54000, 56000, 58000, 60000, 62000, 64000, 66000, 68000, 72000, 76000, 80000, 84000, 88000, 92000, 95990 };
PEGRate=LevelTable/PEGTime;
long PEGRateTable[128]; /*PEGレートテーブルの作成(実際の数値の100倍)*/ for(i=0L;i<128L;++i) PEGRateTable[i]=(long)(((float)i*(float)i*(float)100) /(float)16384*(float)100); /* 傾きを求める */
Delayテーブル値 | 1バイト |
OffsetLevelテーブル値 | 1バイト |
AttackRateテーブル値 | 1バイト |
AttackLevelテーブル値 | 1バイト |
DecayRateテーブル値 | 1バイト |
DecayLevelテーブル値 | 1バイト |
SustainRateテーブル値 | 1バイト |
SustainLevelテーブル値 | 1バイト |
ReleaseRateテーブル値 | 1バイト |
ReleaseLevelテーブル値 | 1バイト |
Delayテーブル値 | 1バイト |
PLFO周波数テーブル値 | 1バイト |
AMPテーブル値 | 1バイト |
フェードタイムテーブル値 | 1バイト |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
---|---|---|---|---|---|---|---|---|
FM | ベンドレンジ幅(0 -13) | 1バイト | ||||||
× | ポルタメントタイム(0 -127) | 1バイト | ||||||
× | レイヤー数 | 1バイト | ||||||
Volume Bias(-127 - 127) | 1バイト | |||||||
Layer Data 0 | 32バイト | |||||||
: | : | |||||||
Layer Data n | 32バイト |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
---|---|---|---|---|---|---|---|---|
× | MIDIノートの始まり(0 -127) | 1バイト | ||||||
× | MIDIノートの終わり(0 -127) | 1バイト | ||||||
|
| |||||||
ベースノート ( 0 -127) | 1バイト | |||||||
ファインチューン(-63 - 63) | 1バイト | |||||||
FM結線用1 ( 0 -127) | 1バイト | |||||||
FM結線用2 ( 0 -127) | 1バイト | |||||||
Velocity番号 ( 0 -255) | 1バイト | |||||||
PEG番号 ( 0 -255) | 1バイト | |||||||
PLFO番号 ( 0 -255) | 1バイト |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PEG | PLFO | - | (1) |
(2) | (3) | (4) | ループ制御 | 8Bit | StaetAddress(19:16) | ||||||
波形の Start Address(15-0) | |||||||||||||||
ループ Start Address(15-0) | |||||||||||||||
ループ End Address(15-0) | |||||||||||||||
DecayRate2(4-0) | DecayRate1(4-0) | EGHold | AttackRate(4-0) | ||||||||||||
- | (5) | KeyRateScaling(3-0) | DecayLevel(4-0) | ReleaseRate(4-0) | |||||||||||
LFO M | PEG M | PLFO M | - | - | - | (6) | (7) | TotalLevel(7-0) | |||||||
FM Modulation(3-0) | FM結線用1(5-0) | FM結線用2(5-0) | |||||||||||||
- | (8) | TMod | (9) | ||||||||||||
LFOR | LFO周波数(4-0) | PLFO波形 | PLFO深度(2-0) | ALFO波形 | ALFO深度(2-0) | ||||||||||
- | - | - | - | - | - | - | - | - | EffectSelect(3-0) | EffectSend(2-0) | |||||
DirectSend(2-0) | DirectPAN(4-0) |
省略形 | 内 容 |
---|---|
8Bit | 波形のサンプルサイズ(16Bitのとき立てる) |
PEG | PEGスイッチ |
PLFO | PLFOスイッチ |
LFO M | LFOモジュレーション |
PEGM | PEGモジュレーション |
PLFOM | PLFOMモジュレーション |
TMod | トータルレベルモジュレーション |
LFOR | LFOリセット |
番号 | 名 称 | 内 容 |
---|---|---|
(1) | KEYONEX | Key ON実行(ドライバーにより書き込み) |
(2) | KEYONB | Key ON、Key OFFの登録(ドライバーにより書き込み) |
(3) | SBCTL | ソースビットの制御(ドライバーにより書き込み) |
(4) | SSCTL | サウンドソースの制御(ドライバーにより書き込み) |
(5) | LSLNK | ループスタートリンク(ドライバーにより書き込み) |
(6) | STWINH | スタック書き込み禁止(ドライバーにより書き込み) |
(7) | SDIR | サウンドダイレクト(ドライバーにより書き込み) |
(8) | OCT | オクターブ(ドライバーにより書き込み) |
(9) | FNS | 周波数番号スイッチ(ドライバーにより書き込み) |
┌─────────────┐ │ 波形データ1 │ ├─────────────┤ │ 波形データ2 │ ├─────────────┤ │ 波形データ3 │ ├─────────────┤ │ : │ ├─────────────┤ │ : │ ├─────────────┤ │ 波形データX │ └─────────────┘