コンテンツにスキップ

MXDRV 方言と #dual

RetroFM-Music Editor は、標準の RetroFMEditor独自方言のほかに、次の 2 つの方言を読み込めます。

  • MXDRV 方言 — X68000 の MDX を逆コンパイルした MML (mdx2mml の出力) をそのまま読み込んで鳴らせます。
  • #dual 方言 — OPNA + OPLL の 21 チャンネル構成の曲です。互換のための方言なので、新しく書く曲には RetroFMEditor独自方言をおすすめします。

方言は、ファイルの内容から自動的に判別されます (MML ファイルの基本構文)。

MXDRV 方言のチャンネル

MXDRV 方言では、行頭の英字 1 文字がトラックを表します。

トラック 音源
A〜H OPM (YM2151) の 0〜7 番。CH3〜CH10 に割り当て
I〜K SSG (AY)。3 音
P〜W PCM8 (PDX)。動的に CH12〜CH19 を使う

PCM のトラックがない曲は、12 チャンネルのままです。

書き方の違い

MXDRV 方言には、RetroFMEditor独自方言と違うところがあります。

項目 MXDRV 方言
音長 音符の後ろに書く (c4 d8.)。生の MDX tick と、曲の途中のテンポ変更が、そのまま保たれます
オクターブ 単独の > < で上げ下げ
音色 @n = { ... } の OPM 4 オペレータ定義
テンポ @t が Timer B、t が BPM。変換すると [TB n] / [BPM n] になります
& 直後の 1 音だけ をつなぐタイです (RetroFMEditor独自方言の & は、[SLUROFF] まで効き続けます)
/ 回数つきループの最終周回の脱出。変換すると [LB] になります
_ (ターゲット) 時間を持たないポルタメントの目標。直前の音符の音程を、その音符の長さをかけて変えます。変換すると [PORT n] になります
#pcmfile PDX の宣言。開いている MML と同じフォルダからの相対パスで探されます

MXDRV 方言のうち、対応していないコマンドは、読み飛ばされます。読み飛ばされたコマンドは、演奏中のハイライトにも出ません。

RetroFMEditor独自方言への変換

MXDRV 方言を RetroFMEditor独自方言に書き換えると、編集しやすい形で保存できます。変換した曲は、元の MXDRV の曲と同じイベントの並びになります。

  • OPM のままの構成と音色で変換する形式と、OPNA 用の近似の形式があります。
  • 変換した曲には、; mxdrv_slur=oneshot が付きます。これを消すと、短いタイの音が、鳴らなくなることがあります。
  • #pcmfile と、CHP1: 〜 の PCM の宣言が保たれます。
  • 音量は、; opll_default_vol= などで、音源ごとに調整できます (曲ヘッダディレクティブ)。

変換機能について

RetroFMEditor独自方言への変換機能は、配布版のエディタには含まれていません。MXDRV 方言の MML は、変換しなくても、そのまま読み込んで再生できます。