Skip to content

Instantly share code, notes, and snippets.

@rpazyaquian
Created March 17, 2016 19:57
Show Gist options
  • Save rpazyaquian/c34e7cc7238ec4bd469d to your computer and use it in GitHub Desktop.
Save rpazyaquian/c34e7cc7238ec4bd469d to your computer and use it in GitHub Desktop.
on SSG envelopes
===============================================================================
§8-1 SSG/PCM ソフトウエアエンベロープ指定
E
-------------------------------------------------------------------------------
[書式1] E 数値1 , 数値2 , 数値3 , 数値4
[書式2] E 数値1 , 数値2 , 数値3 , 数値4 , 数値5 [, 数値6]
-------------------------------------------------------------------------------
[音源] SSG / PCM(AD,86,PPZ)
-------------------------------------------------------------------------------
[範囲] [書式1] 数値1 0〜255
数値2 -15〜+15
数値3 0〜255
数値4 0〜255
[書式2] 数値1 0〜31
数値2 0〜31
数値3 0〜31
数値4 0〜15
数値5 0〜15
数値6 0〜15
-------------------------------------------------------------------------------
ソフトウエアエンベロープを設定します。(OPN/OPNAのSSG/ADPCMパート専用)
2種類のエンベロープを選択出来ます。ただし同時には使用できません。
指定数値が4つの場合は書式1、5または6個の場合は書式2と
扱われます。
#Envelopespeed Normal または EX0 の場合は、速度はテンポに依存します。
#Envelopespeed Extend または EX1 の場合は、速度は一定となります。
-------------------------------------------------------------------------------
§8-1-1 ソフトウエアエンベロープ指定/書式1の場合
-------------------------------------------------------------------------------
PMD独自の簡易エンベロープ指定方法です。
数値1 = Attack Length (AL)
数値2 = Decay Depth (DD)
数値3 = Sustain Rate (SR)
数値4 = Release Rate (RR)
#Envelopespeed Normal または EX0 の場合は、1クロック = 1内部クロック
#Envelopespeed Extend または EX1 の場合は、1クロック = 約 56 Hz
とし、以下のように変化していきます。
1. Keyon後、設定されている音量で、ALクロック分待ち、その後
DDを音量に加減算します。
2. SRクロック毎に、音量を -1 していきます。
3. Keyoffされたら、RRクロック毎に、音量を -1 していきます。
SR= 0 の時は、2.の際、音量減衰はしません。
RR= 0 の時は、3.の際、音量は一気に0になります。
[例] C96 EX0 E1,-2,2,1 v13 l16 gr
[結果] 音量は、以下のように変化していきます。
13 11 11 9 9 7 7 6 5 4 3 2
↑keyon ↑keyoff
-------------------------------------------------------------------------------
§8-1-2 ソフトウエアエンベロープ指定/書式2の場合
-------------------------------------------------------------------------------
FM音源とほぼ同様の指定方法です。
数値1 = Attack Rate (AR)
数値2 = Decay Rate (DR)
数値3 = Sustain Rate (SR)
数値4 = Release Rate (RR)
数値5 = Sustain Level (SL)
数値6 = Attack Level (省略時0)
Attack Levelは、アタックの開始されるレベルを指定します。
同様といっても、速度的に同一という訳ではないので注意してください。
特に#Envelopespeed Normal または EX0の場合は、速度はテンポに依存します。
パラメータの意味はFM音源のマニュアルなどを参照して下さい。
[例] E31,18,4,15,2
[結果] ピアノタイプのエンベロープを設定します。
-------------------------------------------------------------------------------
[関連] #Envelopespeed コマンド (->§2-18)
EX コマンド (->§8-2)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment