コマンド 0x04: サブルーチン呼び出し

指定したアドレスのシーケンスを、指定した回数だけ繰り返し再生します。

構文

0x04, byte count, ushort address

パラメータ

パラメータ型内容
countbyte再生回数(0を指定すると256回)
addressushortサブルーチンのAPU RAMアドレス

解説

現在の読出位置(このコマンド自身のアドレス)と再生回数をコール・スタックに積み、address へ移動します。サブルーチンの終わりはコマンド 0x05 で示します。
コマンド 0x05 を実行するたびに残り回数が1減り、0になるまでサブルーチンの先頭へ戻ります。0になると、このコマンドの直後から再生を続けます。

コール・スタックはチャネルごとに8段あります。サブルーチンの中からさらにサブルーチンを呼び出すことができます。

このコマンドの処理に時間はかからず、同じティックのうちに続くイベントが読み込まれます。

注意

  • コール・スタックの深さを確認する処理はありません。8段を超えて呼び出すと、隣のチャネルのコール・スタックを破壊します。
  • 再生回数に0を指定すると、1回目の終了時に255となるため、合計256回再生されます。

参照

シーケンスデータの構造
コマンド 0x05
コマンド 0x21