スーパーファミコン音源(SPC)の制作環境

 

 ここで公開しているSPCファイルは次のツールを使用して制作しました。

 

 

※XMSNESは2/9/2007のbeta versionを使用しています。

 

 XMSNES 2/9/2007 beta version (xms_beta10.zip)

 現在はダウンロードできない(但し、実機でもエミュレータでも最も安定動作する。)、2/9/2007 beta versionです。当時アップされていたものそのままのデータです。要望がくることも多かったことから、(おそらく問題もないと思われることから)公開します。

 問題がありましたら削除しますのでご連絡下さい。

 (XMSNESはekidさんの著作物です。)

 

 MIDI2MSSは使い方がかなり難しいですが、XMSNESの方は簡単で、MODデータ[MOD、XM、S3M]を作れば、何も考えることなくSPCファイルに変換して(このときSPC-700のハードウェアエフェクトを与えることもできます。)スーパーファミコンの曲を作ることができます。やってみてはいかがでしょうか?

 

 

XMSNESでのSPCファイルの生成方法 [メモ]

 MS-DOSプロンプト(コマンドプロンプト)上で

 xm2snes -b -d [MODファイル名]

 …と入れるだけでできます。但し、2/9/2007のbeta versionでは、オクターブ5のファよりも高い音を出そうとすると、正しい音が出ない(すべてオクターブ5のファで演奏されてしまう。)…という不具合があるようです。

 スーパーファミコンのサウンドバッファは64KBですが、波形データ部はBRRという圧縮形式に変換されて小さくなりますので、もとのMODデータがそれ以上の大きさがあっても大丈夫です。(MOD用の波形データ[未圧縮PCM]をBRRに圧縮変換すると16ビットデータの場合は約1/4、8ビットデータの場合は約1/2になります。MODでは64KBぎりぎりであったとしても、圧縮が行われることによってこの分だけメモリ空間に空きができ、もっと多くのデータを使うことができます。)

 このプログラムは、いったんMODデータをXMSというスーパーファミコン音源用に最適化された(?)形式に変換してから、SPCファイルを作成する…という形になっているようですが、このXMSファイルが58KB以下であればOKのようです。

 スーパーファミコンの音源は最大同時発音数8音なので、もちろんもとのMODデータも、8音以内で出来上がっていなければ通りません。

 

RELEASE 07/02/07のインストール方法

 何かと不明な点の多いRELEASE 07/02/07を正常に動作させる方法がわかりましたので、ご紹介したいと思います。(既に試されて知っている…という方もいるかも知れませんが…。)

 まず、RELEASE 07/02/07のbinariesパッケージには、実行に必要なファイル(dp_snap.binとdsp_snap.bin)が入っていませんので(開発されたekidさんのミスだそうです。)、XMSNESトップページの1:46 PM 7/26/2007の記事内のMissing Binariesからダウンロードしてきて下さい。2つのファイルが入っていますので、xm2snes.exeと同じディレクトリ内に置いて下さい。

 次に、spx_core.binとspx_corem.binというファイルがあると思いますが、spx_core.binの方を違う名前にして(例えばspx_core_.bin)、spx_corem.binをspx_core.binに変更して下さい。(これをしないと音の出ないSPCファイルができてしまいます。ここでつっかえていた方も多いと思いますが、(こちらもそうでした...)試してみて下さい。)

 以上でOKです。

 あとは、xm2snesを実行させればきちんと音の出るSPCファイルができます。

 

(2009/11/8追加)

 XMSNESの公式ページはほとんど更新されていないようですが、作者さんは「SNESMOD」と名前を変えて新しいバージョンの開発を続けられているようです。詳しい使い方などがわかり次第、掲載したいと思います。

▼SNESMODのGoogle検索結果
http://www.google.co.jp/search?hl=ja&source=hp&fkt=343&fsdt=2099&q=SNESMOD

 

XMSNESでのエコーの与え方 [メモ]

 エコーをオンにしたい地点に、E01 E03(S3Mの場合はS01 S03)という2つのコマンドを書いておけば、そこからエコーが有効になるようです。(E02[S02]と書くと、そこから無効になる。)

 エコーの値の設定のしかたは、音色の名前(Instruments Name)のところに

 >//7F00000000000000715

 といった文字列を書くことによってできるようです。

 7F00000000000000の部分がFIRフィルタの係数、その後ろの7の部分がディレイ値、その後ろの15がリバーブ値となっているようです。

 

 FIRフィルタの係数はデグレファクトリーさんのドキュメント(現在は公開されていないようです。)によると…

00 00 00 00 00 00 00 00 : フィルタなし
7F 00 00 00 00 00 00 00 : 標準フィルタ
00 08 17 24 24 17 08 00 : ローパスフィルタ

…となるようです。

 

 但し、RELEASE 07/02/07ではうまく機能しないようです。(こちらのやり方が悪いだけかも知れませんが…。)

 

XMSNES 2/9/2007 beta versionで製作したデータの再生について [メモ]

実機 → o (エコーを使用していないものはそのままでOK。バイナリエディタで一部書き換えればエコーを使用したものもほぼ再生可能。)
KbMediaPlayer+kbspc.kpi(最初から入っているプラグイン) → x (雑音のような音になる)
KbMediaPlayer+kbsnesapu.kpi → o
真・黒猫SPC → x (プレイヤーが暴走する)
黒猫SPC → o
SPC700 Player → o
G-SPC → o
XMMSのOpenSPCプラグイン → エコーを使わなければ o (実機同様にバイナリエディタで一部を書き換えればエコーを使用したものもほぼ再生可能になると思います。)

 

 バイナリの書き換え方法などは、実機再生レポートをご覧下さい。

 

 

secret