PMDRC
提供: JUDStyle
PMDRCは、P.M.D.演奏用データを逆コンパイルするためのツール。
概要
PC-98x1シリーズ上で動作するFM音源ドライバ P.M.D. の演奏データを逆コンパイルするアプリケーションです。再利用または解析を目的としたツールであるため、生成されたMMLをそのまま再度コンパイルして利用することは現実的ではありません。
構成
全てのファイルが同一ディレクトリに存在すれば、あまり深く考える必要はありません。面倒な場合は読み飛ばして問題ないでしょう。
- PMDRCC.exe
- MS-DOSプロンプト上で動作するアプリケーションです。各DLLをロードし、必要な処理を行います。アプリケーションの核心部分はDLLであり、UIは事実上このコマンドラインアプリケーションしかありません。
- PMDRC.dll
- PMDデータからMMLを生成するアプリケーションです。
- F2PCV.dll
- FMPV4データからPMDデータへの簡易コンバータです。入力ファイルがFMPデータであった場合、メモリ上でFMPデータをPMDデータにコンバートし、それをPMDRC.dllに引き渡す機能が実装されています。
使用方法
PMDRCC.exe, PMDRC.dll, 必要なら F2PCV.dll を同一ディレクトリに置き、MS-DOSプロンプトから以下の様式で起動する。
PMDRCC.exe [option ...] 入力ファイル名
コマンドラインオプション
- /nobarline
- 小節区切りの空白文字を挿入しない。 (Default=可能ならする)
- /dobarline
- 小節区切りの空白文字を挿入する。 (Default=可能ならする)
- /novdump
- FM音色を出力しない。 (Default=する)
- /dotx81z
- FM音色出力様式をTX81Z向けに変更する。 (Default=PMD向け)
- /L<value>
- 出力レベルを指定する。5でMML出力はなくなり、4がもっとも出力が少なく、2がもっとも多い。 (Default=3)
- /dodump
- 各トラックごとのバイナリを切り離して表示するトラックダンプモードで動作する。 (出力レベル=5に固定)
- /dosdump
- 1つの命令を1行で表示するスーパートラックダンプモードで動作する。 (出力レベル=5に固定)
- /dodialog
- 対話モードで起動する。 (/Z,/l,/b 相当)
- /noautolen
- 長さ自動判別せず、lコマンドもMMLとして出力されない。 (Default=可能な限りする)
- /l<value>
- lコマンドの長さを指定する。 (符点不可/Default=16 0:使用しない)
- /b<value>
- 音符表現指定できる最小の長さを指定する。 (符点不可/Default=16/32)
- /Z<value>
- Zenlen コマンド値を指定する。 (48/96 Default=192)
- /B<value>
- 小節線起点の指定 (Default/0:Auto 1:[L] 2:データ先頭)
- /F<value>
- 小節線起点のオフセット指定 (Default=0)
- /@<file>
- F2PCV.DLL一時ファイル出力先を指定する。 (Default=出力しない)
- /.<file>
- MMLファイル出力先を指定する。 (default=ファイルには出力せず標準出力に出力する)
V1.21
細かいバグフィクスと些細な機能追加を行ったV1.21を 2008/10/29 にリリース。
- /doautotrans にて転調を音階MMLに吸収する
- 絶対転調と相対転調を逆に解釈していたbugをfix
- ループ終端の直前に存在するcontrol(演奏時間を持つabcdefgr以外のMML)がループ終端より先に表示されるbugをfix
V1.31a
2014/7/22 にリリース。
- r以外の音符により発音しているFM/PCM音色の一覧を標準出力に追加出力する機能を追加。バッファは6番。
Download
- アプリケーション
- ソースコード
サポート
技術的説明は省略します。アプリケーションやソースコードに関する質疑応答については twitter にて可能です。 @Judstyle 宛てに mention を投げてください。