表のサンプル

midiのときの表

SMFの構造概略

分類 種別 データ長 内容
ヘッダ ID 4バイト "MThd" アスキー・コード 'M','T','h','d' の 4バイト
サイズ 4バイト 以降のヘッダのバイト数をビッグエンディアンで格納
ヘッダの場合は値6固定なので、00,00,00,06 の4バイト
フォーマットタイプ 2バイト 値0, 1, 2 のいづれかをビッグエンディアンで格納
ここではフォーマットタイプ 0 の SMF のみ扱うので、
00,00 の2バイト
トラック数 2バイト トラック数をビッグエンディアンで格納
フォーマットタイプが0の場合は、トラック数は1固定なので、
00,01 の2バイト
時間分解能 2バイト 四分音符の分割数をビッグエンディアンで格納
四分音符1つをここで指定した値で分割した長さが、時間の最小単位
ただし1バイト目の最上位ビットが'1'の場合は、別の扱いとなる
ここでは1バイト目の最上位ビットが'0'のSMFのみを扱う
トラック ID 4バイト "MTrk" アスキー・コード 'M','T','r','k' の 4バイト
サイズ 4バイト 以降のトラックのバイト数をビッグエンディアンで格納
デルタタイム 可変長
イベント 可変長
デルタタイム 可変長
イベント 可変長
:
デルタタイム 可変長
イベント 可変長


TXTBLのときの例の表

簡単なテキストの表組みツール (C言語)
TXTBLCNT (簡単なテキストの表組みツールのためのさらなるツール)

関数名 int foo_send(const unsigned char *buf, unsigned bytes)
説明 データ送信開始
引数
項番 仮引数名 説明
1 buf const unsigned char * 送信するデータの先頭アドレス
2 bytes unsigned 送信するデータのバイト数(最大4096*9=36Kバイトまで指定可能)
返却値
項番 説明
1 int 0 FOO_OK 正常終了
<0 FOOO_EINVAL パラメータの値が異常である
FOO_EBUSY 現在送信中である
FOO_EIO エラーが検出された
FOO_ETIMEDOUT タイムアウト発生
前提
FOOドライバが初期化されていること。すでに送信中でないこと。
結果
指定した長さのデータが、送信開始される。送信の完了はドライバ状態の通知を利用すること。
概略説明
指定されたデータを、DMA送信バッファにコピーして、送信を開始する。