外部音源DLL(V1)

本体exeと同じ場所に置きINIに
FMGenDll=mamefm.dll
と追加する事で使用します
その他使用している本体説明を参考にして下さい
組み込み側の条件によっては使用できない場合があります
複数搭載は本体側でサウンドボードを複数使用する場合の対応可否です

・fmgen.dll(v1.01)
fmgen(008)のOPNA(YM2608)です
FM/PSG/RHYTHM/ADPCMに対応しています
ただし現在公開されているものでFM音源以外の音源部を使用しているものは確認していません
リズム音源を使用する場合はdllと同じパスにWAVを置いて下さい
SSGタイプのエンベロープ(SSG-EG)や特殊な使い方をしているような効果には対応していない場合があります
タイマに対応しています
タイマを操作する事でCSM発音次回タイマオーバーフローまでの時間取得等が出来るようになります
複数搭載に対応しています

・mamefm.dll(v1.01)
MAMEのFM音源(YM2608)でリズムデータ等は除外してあります
SSGタイプのエンベロープ(SSG-EG)や特殊な使い方をしているような音の再現性が上がります
CSMのタイミングをdll側で制御します
複数搭載に対応しています

・mamefm2.dll(v1.00)
機能はmamefm.dllと同じ
音の出力が中央からの場合は左右に分けて片方の周波数をずらして出力
右もしくは左側からの場合はその方向と中央から周波数をずらしたものを出力します

中央(C)から出力の場合
	L(周波数をずらした音) C(無し) R(実際の音)
右側(R)から出力の場合
	L(無し) C(周波数をずらした音) R(実際の音)
左側(L)から出力の場合
	L(実際の音) C(周波数をずらした音) R(無し)

本体側では特に追加処理を必要とせず内部で勝手に処理します

iniファtイルがある場合そこから設定を読み込む事ができます(.dllを.iniとして作成)
[mamefm2]
; 音量への加算値(-40〜20:-200で無音)
Volume=-4	; デフォルト(無記述)は-4
; 周波数への加算値(あまり大きくすると変になる-10〜10程度)
Detune=7	; デフォルト(無記述)は7

・genpfm.dll(v1.01)
Genesis Plus GXのFM音源(YM2612)です
SSGタイプのエンベロープ(SSG-EG)を使用しているような音の再現性が上がります
CSMのタイミングをdll側で制御します
エンベロープやCSMのアルゴリズムの再現性が上がっています(メガドラ的に)
YM2612なのでPCM(DAC)の機能があります
YM2203(YM2608)と同じ音が出ない条件があります(メガドラ的だと)
複数搭載には対応していません

・np2fm.dll(v1.02)
本家np2のFM音源(YM2608)です
ハードウェアLFO他対応していない機能があります
クロックは7987200Hz付近が許容範囲
11/22/44KHzでしか合成出来ないので内部で近いレートで合成し出力レートへ変換します
複数搭載には対応していません

・np2fm+.dll(v1.01)
改造版のnp2のFM音源(YM2608)です
幾つかの修正やハードウェアLFOが追加されています
クロックは7987200Hz付近が許容範囲
11/22/44KHzでしか合成出来ないので内部で近いレートで合成し出力レートへ変換します
複数搭載には対応していません

-------------------------------------------------------------------------------

簡易表

○	ほぼ対応
△	不完全だか対応
×	未対応に等しい

・fmgen.dll

対象チップ		YM2608(FM6/RHYTHM/ADPCM)
複数搭載		○
クロック設定	○
合成レート設定	○
タイマ			○
プリスケーラ	○
CSM				○(手動タイマ操作)
効果音モード	○
SSG-EG			△
ハードウェアLFO	○
備考			リズムデータは外部でファイルを用意

・mamefm(2).dll

対象チップ		YM2608(FM6)
複数搭載		○
クロック設定	○
合成レート設定	○
タイマ			×
プリスケーラ	○
CSM				○(内部で自動)
効果音モード	○
SSG-EG			○
ハードウェアLFO	○

・genpfm.dll

対象チップ		YM2612(FM6/DAC)
複数搭載		×
クロック設定	○
合成レート設定	○
タイマ			×
プリスケーラ	×
CSM				○(内部で自動)
効果音モード	○
SSG-EG			○
ハードウェアLFO	○

・np2fm.dll

対象チップ		YM2608(FM6)
複数搭載		×
クロック設定	△(7987200Hzからあまり逸脱しない事)
合成レート設定	○(11/22/44KHzで合成後変換)
タイマ			×
プリスケーラ	×
CSM				×(手動)
効果音モード	×
SSG-EG			×
ハードウェアLFO	×

・np2fm+.dll

対象チップ		YM2608(FM6)
複数搭載		×
クロック設定	△(7987200Hzからあまり逸脱しない事)
合成レート設定	○(11/22/44KHzで合成後変換)
タイマ			×
プリスケーラ	×
CSM				×(手動)
効果音モード	×
SSG-EG			×
ハードウェアLFO	○
