STed2のソースから、RCPファイルフォーマットを調べてみた。
RCPファイルフォーマット
ファイルヘッダ
ファイルの位置 | 変数の型 | 説明 |
0x0000 - 0x001f | char[32] | ヘッダ文字列 |
0x0020 - 0x005f | char[64] | タイトル |
0x0060 - 0x01bf | char[336] | タイトル |
0x01c0 | char | タイムベースLSB |
0x01c1 | char | テンポ |
0x01c2 | char | 拍子分母 |
0x01c3 | char | 拍子分子 |
0x01c4 | char | キー |
0x01c5 | char | Play Bias |
0x01e6 | char | トラック数 |
0x01e7 | char | タイムベースMSB |
ユーザ・エクスクルーシブ定義
ファイルの位置 | 変数の型 | 説明 |
0x041e - 0x0435 | char[24] | ユーザエクスクルーシブ1 |
0x044e - 0x0465 | char[24] | ユーザエクスクルーシブ2 |
0x047e - 0x0495 | char[24] | ユーザエクスクルーシブ3 |
0x04ae - 0x04c5 | char[24] | ユーザエクスクルーシブ4 |
0x04de - 0x04f5 | char[24] | ユーザエクスクルーシブ5 |
0x050e - 0x0525 | char[24] | ユーザエクスクルーシブ6 |
0x053e - 0x0555 | char[24] | ユーザエクスクルーシブ7 |
0x056e - 0x0585 | char[24] | ユーザエクスクルーシブ8 |
トラックヘッダ(0x0586~)
位置 | 変数の型 | 説明 |
0x0000 - 0x0001 | short | サイズ |
0x0004 | unsigned char | チャンネル |
0x0005 | unsigned char | キー |
0x0006 | unsigned char | ステップ |
0x0007 | unsigned char |
モード |
0x0008 - 0x002B | unsigned char[36] | トラックコメント |
0x002c ~ | unsigned char[サイズ - 0x2c] | トラックデータ |
上記データをトラック数分繰り返し。
トラックデータ
位置 | 変数の型 | 説明 |
0x0000 | unsigned char | イベント |
0x0001 | unsigned char | ステップタイム |
0x0002 | unsigned char | ゲートタイム |
0x0003 | unsigned char | ベロシティ |
補足
イベント一覧
位置 | 説明 |
0x00 - 0x7f | ノートナンバー |
0x90 - 0x97 | ユーザ・エクスクルーシブ 1-8 |
0x98 | チャンネル・エクスクルーシブ |
0x99 | 外部プログラムの実行 |
0xe2 | バンク&プログラム |
0xe5 | キースキャン |
0xe6 | MIDIチャンネル・チェンジ |
0xe7 | テンポ・チェンジ |
0xea | アフター・タッチ |
0xeb | コントロール・チェンジ |
0xec | プログラム・チェンジ |
0xed | ポリフォニック・アフター・タッチ |
0xee | ピッチ・ベンド |
0xd0 | ヤマハ |
0xd1 | ヤマハ・デバイス番号 |
0xd2 | ヤマハ・アドレス |
0xd3 | ヤマハ・XG・アドレス |
0xdd | ローランド |
0xde | ローランド・パラメータ |
0xdf | ローランド・デバイス |
0xf5 | キーチェンジ |
0xf6 | コメント開始 |
0xf8 | ループ終了 |
0xf9 | ループ開始 |
0xfc | セームメジャー |
0xfd | メジャーエンド |
0xfe | トラックの終了 |
0xc0 | DX7 ファンクション |
0xc1 | DX7 パラメータ |
0xc2 | DX7 RERF? |
0xc3 | TX ファンクション |
0xc5 | FB01 パラメータ |
0xc6 | FB01 システム |
0xc7 | TX81Z VCED |
0xc8 | TX81Z ACED |
0xc9 | TX81Z PCED |
0xca | TX81Z システム |
0xcb | TX81Z エフェクト |
0xcc | DX7-2 リモートスイッチ |
0xcd | DX7-2 ACED |
0xce | DX7-2 PCED |
0xcf | TX802 PCED |
0xdc | MKS 7 |
0xf7 | RCP 2nd イベント |