==============================================================================
                     FMP for Windows 「WinFMP」 Ver.0.51
                        Copyright & Programmed by C60
==============================================================================


------------------------------------------------------------------------------
▼はじめに

    このプログラムは、PC9801 シリーズの FM 音源ドライバ「FMP」の曲データを
    Windows 上で聞くための dll です。
    本 dll だけでは演奏させることはできません。別途プレイヤを入手して下さい。
    
    なお、PDZF/Z8X for Windows(TAN-Yさん作)に対応しています。
    （PDZFZ8XWin は Ver.2.0.0 以降が必要です。Ver.1.1.0 では演奏できません）


------------------------------------------------------------------------------
▼インストール、アンインストール

    ａ）インストール
        WinFMP.dll を c:\windows\system または c:\winnt\system32 または
        プレイヤと同じディレクトリに置いて下さい。
        
        処理落ちがする場合、あるいは計算精度をデフォルトより上げたい場合は
        WinFMP.dll.032 〜 WinFMP.dll.256 を WinFMP.dll にリネーム、
        使用願います。
        数字が小さいほど処理が軽くなります。デフォルトは128サンプルです。
        
        YM-2608 のリズム音源を鳴らす場合は、ym2608_adpcm_rom.bin、あるいは
        以下の wave ファイル(44100Hz, 16bit, monoral。PCM 形式以外は
        使用できません)をプレイヤで指定したディレクトリに置いてください。
        
            2608_BD.WAV         ;バスドラム
            2608_SD.WAV         ;スネアドラム
            2608_HH.WAV         ;ハイハット
            2608_TOP.WAV        ;シンバル
            2608_TOM.WAV        ;タム
            2608_RIM.WAV        ;リムショット
        
        PDZF/Z8X for Windows と一緒に用いる場合は、WinFMP.dll と同じ
        ディレクトリに PDZFZ8XWin.dll(Ver.2.0.0以降) を置いてください。
        本バージョンより、PDZFZ8XWin.dll および WinFMP.dll はリネームせずに
        そのまま置いてください。
        
        
    ｂ）アンインストール
        本 dll を Explorer 等で削除してください。
        プレイヤ、wave ファイル等も不要なら削除してください。


------------------------------------------------------------------------------
▼動作確認環境

    自作ＡＴ互換機（Asus H97-PR0, Core i7-4790, Audinst HUD-mx1, etc)
            ＋ Windows10 Pro(64bit) 20H2        合成周波数＝55kHz


------------------------------------------------------------------------------
▼組み込みソフトについて

    WinFMP.dll(Ver0.50以降)には、Aaron Giles 氏作の FM 音源エンジン(ymfm)を
    一部改良して組み込んでいます。
    
        Copyright (c) 2021, Aaron Giles
        All rights reserved.
    
    また、リズム音源の発音には cisc 氏作の FM 音源エンジン(fmgen 008)を
    一部改良して組み込んでいます。
    
        FM Sound Generator with OPN/OPM interface
        Copyright (C) by cisc 1998, 2003.


------------------------------------------------------------------------------
▼使用条件＆転載

    このソフトはフリーソフトウエアです。著作権はＣ６０が所有しています。
    但し、オリジナルの FMP の著作権は Guu 氏、PMD98 の著作権は KAJA 氏、
    PPZ8 の著作権は Ukky 氏、FM 音源エンジンの著作権は Aaron Giles 氏、
    BrowseDialog コンポーネントの著作権は前田氏、色変更可能トラックバーの
    著作権はｆｕｍｉｋａ氏、TrayIcon コンポーネントの著作権は辻原幸夫氏
    （修正・サポートは加藤太朗氏）が所有しています。
    FM 音源エンジン(ymfm)の扱いはBSDライセンス(添付のLICENSEファイル)に
    従ってください。
        >BSD 3-Clause License
        >Copyright (c) 2021, Aaron Giles
        >All rights reserved.    
    WinFMP, PMDWin 及び FMPMD2000 を使用してデータの損失、機械の損傷等の
    不具合を生じても作者は責任を負いません。
    WinFMP, PMDWin 及び FMPMD2000 にバグ、不具合が存在しても作者は修正する
    義務を負いません。
    （が、報告してくだされば修正するよう努力します）
    WinFMP, PMDWin 及び FMPMD2000 の転載、配布は禁止します。但し、
    PMDWin, FMPMD2000 のソースコードに改変を加えたものについては事前に
    連絡をいただければその限りではありません。
    PMDWin, FMPMD2000 のソースコードを組み込んだソフトに関しては、事前に
    連絡をいただければフリーソフトとして公開することができます。
    WinFMP.dll, PMDWin.dll を利用するソフトに関しては、フリーソフトとして
    自由に公開することができます。公開の際は作者に連絡をいただければ幸いです。
    商用ソフト(シェアウェア含む) に PMDWin, FMPMD2000 のソースコードの一部、
    または全部を組み込む場合は、事前に PMDWin, FMPMD2000 の作者の合意を得る
    必要があります。
    PMDWin, FMPMD2000 に改変を加えたソフトを配布する場合は、PMDWin, FMPMD2000
    の著作権表示、および改変内容を明示してください。
    *.cpp または *.pas(WinFMP.pas, PMDWin.pas, PCMMusDriver.pas,
    FMPMDdefine.pas を除く)のうち、音楽の演奏に関わる部分を組み込む場合、
    あるいは改変する場合はソースの公開をお願いします。


------------------------------------------------------------------------------
▼謝辞

    すばらしい音源ドライバである FMP を作成し、本プログラムの公開を
    許可して下さった Guu 氏、
    高機能な音源ドライバである PMD を作成し、本プログラムの公開を
    許可して下さった KAJA 氏、
    PPZ8 を作成して音源ドライバの表現力を広げたのみならず、
    ソースの提供とプログラムの公開を許可してくださった Ukky 氏、
    高性能な FM 音源エンジンを作成し、使用、本プログラムの公開を
    許可してくださったばかりでなく、PMDWin のバグフィックスもして
    下さったcisc 氏、
    FM音源エンジン ymfm を BSD ライセンスで公開していただいた
    Aaron Giles 氏、
    PDZF/Z8X for Window で対応してくださったばかりでなく、数多くのバグを
    発見してくださった TAN-Y 氏、
    WinAMP のプラグインを作ってくださった Mamiya 氏、
    PMV を作ってくださった Kigami 氏、
    有用なコンポーネントを公開してくださった前田氏、ｆｕｍｉｋａ氏、
    辻原氏、加藤氏、
    バグ報告や貴重な意見、要望を下さった皆様、
    ありがとうございました。


------------------------------------------------------------------------------
▼履歴

ver.0.01        2000/06/11
    初版公開

ver 0.02        2000/08/20
    Q 指定時に音符の音長が 256 クロックの整数倍になった時に音が切れてしまう
    不具合を修正
    ランダムLFO が正常に動作していなかった不具合を修正
    エスケープシーケンスの除去が不十分で表示が化けることのある不具合を修正
    ワウワウで TL が 127 を超えたときに 0 に戻っていた不具合を修正
    音色切り替えの時に雑音が出ることのある不具合を修正
    opna に出力したときの wait を再現できるようにした（リリース中のアタック
    の再現性向上)
    fmp_getcomment2, fmp_getcomment3, fmp_fgetcomment2, fmp_fgetcomment3 で
    アクセス違反があることのあった不具合を修正。
    WARNING の綴りが間違っていたので直した
    fmp_getlength の結果が毎回微妙に変わっていたので修正

ver 0.03        2001/01/21
    COM 風インターフェイスの実装
    fmp_setfmcalc55k() を実装。fmp_setpcmrate() で 11kHz, 22kHz, 44kHz,
    55kHz 以外も設定できるようにした
    fmp_setppzrate() を実装
    fmp_getcomment3(), fmp_fgetcomment3() でアクセス違反の可能性があった
    不具合を修正
    W コマンドで同期を待ったまま終了する曲の場合、曲の終了を判別できず、
    fmp_getlength() が無限ループに陥る不具合を修正
    fmp_getcomment 系で曲データが不正なときのエラーチェックを強化
    fmp_setpos(), fmp_setpos2() で、現在の再生位置より先に設定する
    ときの処理を高速化
    fmp_getsyncscnt(), fmp_getlastsyncexttime() の実装
    fmp_load() の処理速度を向上した
    演奏と getlength() を別スレッドで同時に実行すると ppz8 の音が鳴らなくなる
    ことのある不具合を修正
    PPZ8 を使用する曲の演奏開始時の処理を高速化

ver 0.04        2001/02/17
    WinFMP インスタンスを複数使用すると音が変になることのあるバグを修正
    OPNA 新コア(fmgen001.tar.bz 2000/09/09)に載せ替え

ver 0.05        2001/03/04
    fgetcomment() 系で外部ファイルからコメントを取得しようとすると
    読めない可能性のあったバグを修正
    OPNA 新コア(fmgen003.tar.bz 2001/02/24)に載せ替え
    opna.cpp の高速化オプション(#define FM_USE_CALC2, FM_USE_CALC2E,
    NO_BITTYPE_EMULATION)が off になっていたので定義した
    fmp_getlength(), fmp_getlength2() で、65536クロック以上だと
    強制的に計算を打ち切るようにした
    曲データ読み込み前にバッファを終了コードで埋めるようにした
    (不正曲データ対策)
    DLLinfof.txt で、fmp_getversion() を fmp_getdllversion() と
    書き間違えていた場所があったので修正

ver 0.06        2001/03/11
    ランダム LFO で音が変になることのあった不具合を修正

ver 0.07        2001/09/16
    PPZ 部で不正な PVI を読み込むとアクセス違反になることのある不具合を修正
    fmp_init() で PVI / PZI をクリアするようにした
    OPNA 新コア(fmgen006.tar.bz 2001/03/30)に載せ替え

ver 0.08        2001/09/30
    PPZ8 でアクセス違反を起こす可能性のあった不具合を修正

ver 0.10        2002/01/14
    ADPCM Part を PPZ8 でエミュレートするオプションを追加
    ADPCM PVI の読み込み速度を高速化した

ver 0.11        2002/01/19
    PPZ8 で ADPCM パートをエミュレーション時にマイナスのディチューンを
    かけると音が外れる不具合を修正
    音色切り替え時に雑音が入ることがあるので wait を増やした

ver 0.12        2002/03/24
    ヘッダが不正な PVI を PPZ8 に読み込ませた時にメモリリークしていた
    不具合を修正

ver 0.13        2002/09/22
    ヘッダが不正な PVI を PPZ8 に読み込ませた時にメモリリークしていた
    バグが取りきれていなかったのを修正

ver 0.14        2003/06/22
    fmgen 007a を組み込んだ

ver 0.15        2003/08/03
    fmp_setfmcalc55k が効かなくなっていた不具合を修正
    fgetcomment / fgetcomment2 が正常に動作しなかった不具合を修正
    fgetcomment2 で filename = NULL の時に２バイト半角→半角の
    変換が行われていなかった不具合を修正

ver 0.16        2003/09/28
    fmgen 008 を組み込んだ

ver 0.17        2010/01/11
    SSG の音量を86ボード相当に変更
    合成周波数 55kHz での周波数を 55555Hz から 55466Hz に変更

ver 0.18        2012/03/18
    PDZFZ8X for Windows に正式対応
    ３行分割のバグ修正
    setpos2 で無限ループになってしまうバグ修正
    曲全体カウント数、曲ループカウント数を間違えていたバグ修正

ver 0.19        2021/07/31
    曲終了時に音が切れることがある不具合を修正
    その他軽微な不具合修正
    FileIOインターフェイスを実装

ver 0.20        2021/12/05
    ソースの細かい修正
    コンパイラを Visual C++ 6.0 に戻した

ver 0.50        2021/12/05
    FM音源エンジンをfmgenからymfmに変更した
    周波数変更を一次補間からsinc補間に変更した
    サポートOSをWindows7以降とした

ver 0.51        2021/12/19
    sinc補間のサンプル数32〜256のdllを同梱



------------------------------------------------------------------------------
▼連絡先

    E-mail                  HQD00151@nifty.com
    Homepage                http://c60.la.coocan.jp/
    Twitter                 c60fmp



                                                                Ｃ６０
