last updated 2025/04/19
PC-98x1シリーズの音源ドライバ「FMP」と「PMD98」用の曲データを Windows 上で演奏するためのソフトです(FMPMD2000 は日本語版、FMPMDE2000 は英語版)。
曲を聞くためには、WinFMP 本体(WinFMP.dll) と PMDWin 本体(PMDWin.dll)とプレイヤが必要です(もちろん曲データも。)
2021/12より、速度優先と再現性・音質優先の2系統に分割しました。
速度優先 | 再現性・音質優先 | |
---|---|---|
FM音源エンジン | fmgen | ymfm |
リサンプリング | 一次補間 | sinc補間 |
WinFMP ver | 0.21 | 0.52 |
PMDWin ver | 0.42 | 0.52 |
速度優先では OPNA のエミュレートに cisc さんのFM音源エンジンを一部改良して使用させていただいています。
FM Sound Generator with OPN/OPM interface
Copyright (C) by cisc 1998, 2003.
音質優先では OPNA のエミュレートに Aaron Giles さんのFM音源エンジンを一部改良して使用させていただいています。
BSD-licensed Yamaha FM sound cores (OPM, OPN, OPL, and others)
Copyright (c) 2021, Aaron Giles
All rights reserved.
ファイルのタイムスタンプの更新時に特定の実行ファイルに更新ファイルを引き渡して実行するプログラムです。
例えば図のように設定すると、自動的に以下の処理を行います。
Windows 環境での曲データの作成に重宝すると思います。
WinFMP.dll, PMDWin.dll は 32bit バージョンと 64bit バージョンがありますが、演奏プログラムに応じて選択してください。
FMPMD.exe は 32bit バージョンの dll のみ対応しております。Windows のバージョンに関わらず、32bit バージョンの dll を使用してください。
FMP の曲データから演奏時の PCM データを生成する DLL です。DOS 版の FMP.com + PPZ8.com に近いです。インテリジェント、かつできるだけ機種依存性が少ないように設計しています。
PMD98 の曲データから演奏時の PCM データを生成する DLL です。DOS 版の PMDPPZ.com + PPZ8.com + P86drv.com + PDR.com + PPSDRV.com に近いです。できるだけ WinFMP.dll と同じように制御できるように設計しています。
WinFMP.dll, PMDWin.dll を制御して曲の演奏を行います。また UI とビジュアル(スペアナ、レベルメーター等)を提供します。DOS 版のプレイヤ(play.com, pmp.com 等)に相当します。
上記 DLL を制御するプログラムを書けばオリジナルのプレイヤを作成することも可能です。
.OPI | FMP用の曲データ(OPN)です。 |
.OVI | FMP用の曲データ(OPNA)です。 |
.OZI | FMP用の曲データ(PPZ8 使用、OPN または OPNA)です。 |
.M | PMD(OPN)用の拡張子ですが、PMDB2, PMD86, PMDPPZの曲データでもこの拡張子のものもあるようです。 |
.M2 | PMDB2 または PMD86 用の曲データです。 |
.MZ | PMDPPZ 用の曲データです。 |
.PVI | FMP、PMDPPZ、PMDB2 のサンプリングデータ(ADPCM) |
.PZI | PPZ8 用のサンプリングデータ(PCM) |
.PPS | PDR, PPSDRV 用のサンプリングデータ(PCM) |
.PPC | PMDB2 用のサンプリングデータ(ADPCM) |
.P86 | PMD86 用のサンプリングデータ(PCM) |
FMPMD2000 では、FMP と PMD98 のすべての曲データ(PMDB2, PPSDRV, P86DRV, PPZ8)に対応しています。
FMP または PMD98 の曲データは、MML(Music Macro Language)と呼ばれる音楽記述用の言語をコンパイラでコンパイルすることによって作成します。ただし FMP と PMD98 で言語仕様は異なります。オリジナルの FMP または PMD98 に同梱されているマニュアルを参照してください。
曲データは以下の方法で作成することができます。
最も確実な方法ですが、当然実機と音源を持っている必要があります。
Anex86, Virtual98, T98, Neko Project II 等のエミュレーターが使用可能です。ただし、PPZ8 のエミュレートは 音飛びしやすいです。
TAKEDA さん作の MS-DOS Player を用いることにより、64bit Windows 上でオリジナルの 16bit バイナリを動かすことができます。
Kuma さん 作成の PMDDotNET でコンパイル、演奏することが可能です。