コンテンツにスキップ

ループ・テンポ

ループ [LOOP n] ... [LEND]

[LOOP n]  ...  [LEND]
コマンド 意味
[LOOP n] ループの開始。間の部分を、合計 n 回実行します。n = 0 は無限ループ
[LEND] ループの終わり ([LE] でも書けます)
[L0]〜[L15] [LOOP 0]〜[LOOP 15] の短縮形
[LB] ループからの脱出。回数つきのループの 最後の周回だけ、対応する [LEND] まで読み飛ばします (MXDRV の / に相当)

MDX の [ ... ]N とは違い、回数は LOOP の引数として角括弧の中に書きます。0 が無限を表します。

CH3: L8 [LOOP 4] c e g [LB] a [LEND]     ← 最後の周回は a を飛ばす

曲全体・チャンネル単位のループの指定

; song_loop=forever

無限ループも [HALT] も持たない、空でないすべてのチャンネルに、暗黙の [LOOP 0] ... [LEND] を全体に巻きます。forever / loop / 1 のどれでも有効です。

; loop_start_tick=<N> loop_period_tick=<M>
CH3: ...

直後の CH の行だけ に効く、ループの位置の指定です。そのチャンネルがすでに明示的な [LOOP] を持つ場合は無視されます。ツールが出力する指定ですが、読み込みでは有効です。チャンネルを書き換えるときは、古い指定の行を消し忘れないでください。

テンポ

方法 効果
; tempo=<N> 曲全体のテンポ。1 フレームに N/75 tick 進みます。既定は 75 (1 tick/フレーム。フレームは 60 Hz なので 1 秒 = 60 tick)
[TB <n>] 曲の途中でテンポを変える (OPN の Timer B の値で指定)
[BPM <n>] 曲の途中でテンポを変える (BPM で指定。Timer B の丸めが入らない)

[TB] や [BPM] が、最初の音長の指定よりも前にある場合、その値は曲の初期テンポになります。

CH3: [BPM 120] L8 c e g o> c

インラインの t<N> は何もしません

t120 のような書き方は読み込まれますが、テンポは変わりません。曲の途中でテンポを変えるときは [TB] または [BPM] を使ってください。

長さをそろえる

複数のチャンネルの長さ (tick の合計) がずれると、ループや終了のタイミングがずれて聞こえます。パートごとに同じ長さに書いてください。