見出し画像

スーファミ音源のエコーとメモリの話

 ほぼ「スーファミ音源の人」になりつつありますが(笑)、それ程スーファミ音源に詳しくもないので日々勉強中でもあります。ネット上にはかなり詳細な情報もあり、実機制作経験の朧げな記憶やchipsynth SFCでの作業と照らし合わせていたりします。

 全く知らなかった(記憶になかった)事の一つに、エコーエフェクトとメモリの関連性があります。chipsynth SFCを使っていて不思議だったのがイニシャライズ状態でもARAMが消費されていて、作業中にその消費量も変動する事でした。
 事前知識からの推測で、エコーが噛んでいるのでは?と関連パラメータを弄っていたのですが、Time(ディレイタイム)を変更するとARAM消費量も変化する事に気が付きました。TimeとARAMの消費量は比例していて、最大にすると47%、ARAM消費量=ディレイ×2048Byteとした記述を見つけたので、パラメータ値(0-15)を当てはめてみると数値の整合性(15×2048÷65536(64KB)=0.46875≒47%)も取れています。
 実機制作時は16KBの波形メモリで作業していて、サウンドリソースとしては最低限のものと思っていました。しかしエコーバッファに最大30KB強、更にMMLデータやサウンドドライバーを加味すると、(64KBのARAMに対して)理に叶った環境だったとも思えますね。

 今回の話に直接関係はないのですが、以前エコーとFMの制御用に作ったCombinatorがあります。その時はほぼ外観を作っただけだったのですが、現在はきちんと稼働しています。

 Reasonはマルチティンバー未対応なのでchipsynth SFC×8で8chを再現しているのですが、エコー等の共通パラメータをCombinatorで一括制御しています。FMの制御は取っ払いほぼエコー専用になっています。意外とノブ類が多いですが、それだけエコー周りで出来る事が多いとも言え、自分も未だ全容を把握していません。
 FMについてはまた別の機会に書こうとは思っていますが、今の所期待した様な結果は見えていません。FMの制御を止めたのはそれが理由ではありませんが、制御する設定を作る労力に見合わないと判断しました。その辺の事も含めて記事を温めておこうと思います。

 RYM2612×6と比べると見た目のインパクトは小さいですが、これはこれで独自環境と言う事で気に入っています。(と言いつつ本音はマルチティンバーで使いたい笑)

いいなと思ったら応援しよう!