English
HARDWARE ManualSCSPユーザーズマニュアル
戻る進む
SCSPユーザーズマニュアル/4.2 音源部レジスタ

■EGレジスタ

 EGは、音の減衰量の時間による変化を表します。EGには、以下の4つの状態があります。

アタック状態(アタックセグメント)
音の出始め(立ち上がり)の状態をいいます

ディケイ1状態(ディケイ1セグメント)
最大音量から減衰していく状態をいいます。

ディケイ2状態(ディケイ2セグメント)
ディケイ1状態からさらに減衰していく状態をいいます。ただし、DR2を"0"に設定すると減衰しないで、持続音状態となります。

リリース状態(リリースセグメント)
KEY_OFFしたときから、音が減衰して消えていく状態をいいます。

 しかし発音状態の全ての場合において、EGが4つの状態を遷移していくわけではなく、KEY_OFFのタイミングによって様々なエンベロープカーブを描いていきます。以下にその一例を説明します。

(a)KEY_OFFをアタック状態遷移中に行なった場合(図4.6)

図4.6 アタック状態遷移中のKEY_OFF

 KEY-OFFを行なうと、その時点でのレベル(KEY_OFF LEVEL)からリリースレイト("RR")の設定値に従って減衰(EGの値としては増加)していきます。従ってこの場合のエンベロープカーブは、ディケイ1状態およびディケイ2状態が抜けたような形になります。 この場合はEGの値が"000H"に達することなく、KEY_OFFを境に"3FFH"に増加していきます。

(b)KEY_OFFをディケイ1セグメント遷移中に行なった場合(図4.7)

図4.7 ディケイ状態遷移中のKEY-OFF

 ディケイ1状態に入ると、D1R(ディケイ1レイト)の設定値に従って、DL(ディケイレベル)に向けて減衰していきます。この途中にKEY_OFFが実行されると、その後はKEY_OFFを行なった時点でのレベル(KEY_OFF-LEVEL)からRR(リリースレイト) の設定値に従って、減衰していきます。

AR[4:0](R/W) ; Attack Rate
 アタック状態におけるEGの変化量を指定します。

ARレジスタの内容
"AR"="00H"の時、変化量(レベル増加量)最小(0)
"AR"="1FH"の時、変化量(レベル増加量)最大(MAX)

EGHOLD(R/W) EG HOLD mode
 アタックでの値を保持または変化させるかを指定します。図4.6のように、このビットが"1B"の時、アタックでの値が"000H"に保持されます。またビットが"0B"の時、ARレジスタに指定された値に従って変化します。 ホールドモードにした場合、EGが"000H"を保持している時間(セグメント2に移るまでの時間)は、"AR"の値で決まります。

図4.8 減衰量の変化

D1R[4:0](R/W) ; Decay-1 Rate
 ディケイ1状態におけるEGの変化量を指定します。

D1Rレジスタの内容
"D1R"="00H"の時、変化量(レベル減衰量)最小(0)
"D1R"="1FH"の時、変化量(レベル減衰量)最大(MAX)

D2R[4:0](R/W) ; Decay-2 Rate
 ディケイ2状態におけるEGの変化量を指定します。

D2Rレジスタの内容
"D2R"="00H"の時、変化量(レベル減衰量)最小(0)
"D2R"="1FH"の時、変化量(レベル減衰量)最大(MAX)

RR[4:0](R/W) ; Release Rate
 リリース状態におけるEGの変化量を指定します。

RRレジスタの内容
"RR"="00H"の時、変化量(レベル減衰量)最小(0)
"RR"="1FH"の時、変化量(レベル減衰量)最大(MAX)

DL[4:0](R/W) ; Decay Level
 ディケイ1状態からディケイ2状態へ遷移する減衰レベル(EG)の上位5ビットを指定します。ディケイ1状態で減衰レベルの上位5ビットがDL値と等しくなった時、状態がディケイ2へ遷移します。

DLレジスタの内容
"DL"="00H"の時、レベル最大(MAX)
"DL"="1FH"の時、レベル最小(MIN)

KRS[3:0](R/W) Key Rate Scaling
 EGのキーレイトスケーリングの度合いを指定します。

KRSレジスタの内容
00Hでスケーリング最小
0EHでスケーリング最大を表します。
0FHの時、スケーリングOFFを指定します。

LPSLNK(R/W) ; LooP Start LiNK
 "LPSLNK"(ループスタートリンク)の機能は、ループの開始と、EGのアタック状態からディケイ1状態への遷移の同期化を行なうものです。

LPSLNKレジスタの内容
"LPSLNK"="0B":EGの状態の遷移とループスタートポイントの位置は無関係になります。
"LPSLNK"="1B":以下の変化が見られます。

アタック状態でEGが"000H"に達した時、波形読み出しアドレスがループスタートポイント("SA"+"LSA")に達するよりも、

  1. 時間的に早かった場合
  2. 時間的に遅かった場合

アタック状態でEGが"000H"に達した時、波形読み出しアドレスがループスタートポイント("SA"+"LSA")に達するよりも、時間的に早かった場合(図4.9)
 この場合は、EGが先にMAXレベルに到達します(P.1)。しかし、波形読み出しアドレスがループスタートポイントに到達するまで次のセグメント(ディケイ1状態)に遷移することはできないので、EGはMAXレベルを保持し続けます。
 次に、波形読み出しアドレスがループスタートポイントに到達すると(P.2)、EGはディケイ1状態に遷移することになります。

図4.9 アタック状態からディケイ1への遷移(1)

図4.9 アタック状態からディケイ1への遷移(1)

アタック状態でEGが"000H"に達した時、波形読み出しアドレスがループスタートポイント("SA"+"LSA")に達するよりも、時間的に遅かった場合
 このパターンは、更に2つのパターンがあります。

パターン1
波形読み出しアドレスがループスタートポイントに到達し、この時点での"SCL"(EGレベル)が、"DL"(ディケイレベル)よりも大きい時(実際のEGの値で比較すると逆)(図4.10)

図4.10 アタック状態からディケイ1への遷移(2)

図4.10 アタック状態からディケイ1への遷移(2)

 波形読み出しアドレスがループスタートポイントに到達した後、EGはディケイ1状態に遷移します(P.1)。次にEGの値がDL(ディケイレベル)に到達すると、ディケイ2状態に遷移します(P.2)。

パターン2
波形読み出しアドレスがループスタートポイントに到達し、この時点での"SCL" (EGレベル)が、"DL"(ディケイレベル)よりも小さい時(実際のEGの値で比較すると逆)(図4.11)

図4.11 アタック状態からディケイ1への遷移(3)

 波形読み出しアドレスがループスタートポイントに到達した後、EGはディケイ1 状態に遷移します(P.1)。その後はEGの値は"DL"(ディケイレベル)に到達すること はないので、ディケイ2状態に遷移することなく、レベル0(EGの値としては"3FFH") を保持し続けます。


戻る進む
HARDWARE ManualSCSPユーザーズマニュアル
Copyright SEGA ENTERPRISES, LTD., 1997