処理負荷を少しでも軽減するために、サウンドドライバでDMG音源を扱える
ようにしているところなのであった。今のところ、PCM1音辺り1.8%の負荷が
掛かっているので、DMGの3音で代用すれば5.4%の節約になるし。
でー、見事にハマってしまったんだけどー、DMG音源ってNESのようなソフト
ウェアエンベロープは組めないんだな。ボリュームレジスタをいじれば反映
されると考えていたので、思ったように発音されず無駄に試行錯誤してしまっ
たよ。どおりでのっぺりした曲のゲーム(代表例:ドラキュラ伝説)が氾濫
していたわけだ。
ハードウェアエンベロープでもADSRくらいは作れなくもないけど、音量が0
になると発音停止してしまうので、ベロシティとの兼ね合いが難しいなー。
ベロシティ12の場合
16 |/\
12 | \
8 | \_______
4 | \
0 +------------------------\-----------------------
ベロシティ4の場合
16 |
12 |
8 |/\
4 | \ ↓ここで発音停止してしまう
0 +------\-----------------------------------------
悩ましいな。