コマンド 0x04: サブルーチン呼び出し
指定したアドレスのシーケンスを、指定した回数だけ繰り返し再生します。
構文
0x04, byte count, ushort address
パラメータ
| パラメータ | 型 | 内容 |
|---|---|---|
| count | byte | 再生回数(0を指定すると256回) |
| address | ushort | サブルーチンのAPU RAMアドレス |
解説
現在の読出位置(このコマンド自身のアドレス)と再生回数をコール・スタックに積み、address へ移動します。サブルーチンの終わりはコマンド 0x05 で示します。
コマンド 0x05 を実行するたびに残り回数が1減り、0になるまでサブルーチンの先頭へ戻ります。0になると、このコマンドの直後から再生を続けます。
コール・スタックはチャネルごとに8段あります。サブルーチンの中からさらにサブルーチンを呼び出すことができます。
このコマンドの処理に時間はかからず、同じティックのうちに続くイベントが読み込まれます。
注意
- コール・スタックの深さを確認する処理はありません。8段を超えて呼び出すと、隣のチャネルのコール・スタックを破壊します。
- 再生回数に0を指定すると、1回目の終了時に255となるため、合計256回再生されます。