得られるデータは、4バイトのヘッダと、 1トラックが8バイトで表される連続したデータからなります。
| BYTE | 内容 |
| 0 〜 3 | ヘッダ |
| 4 〜 11 | トラック 1 |
| 12 〜 19 | トラック 2 |
| … | |
| 4+8×(n-1) 〜 4+8×n-1 | トラック n |
| 4+8×n 〜 4+8×(n+1)-1 | トラック 0xAA (リードアウト) |
ヘッダは、次のとおりです。
| BYTE\bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||
| 0 |
|
|||||||||
| 1 | ||||||||||
| 2 | 開始トラック番号 | |||||||||
| 3 | 終了トラック番号 | |||||||||
ヘッダにTOCデータ長や開始トラック番号と終了トラック番号が書かれているので、 実際にデータを入手するときには、メモリを予め大きめ (100+1トラック分=812バイト) に 確保するか、ヘッダ部のみを入手し、必要な量を計算して確保してください。 なお、「TOCデータ長」にはそれ自体のバイト数 (2バイト) が含まれていないことに 注意してください。
各トラックの内容は、次のとおりです。
| BYTE\bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||||
| 0 | 予約 | |||||||||||
| 1 | ADR | CTRL | ||||||||||
| 2 | トラック番号 | |||||||||||
| 3 | 予約 | |||||||||||
| 4 |
|
|||||||||||
| 5 | ||||||||||||
| 6 | ||||||||||||
| 7 | ||||||||||||
「トラック番号」が 0xAA のとき、リードアウトトラックを表します。 これがないと、最後のトラックの終了時間がわかりません。
「トラックの開始時間」は、コマンド送信時の「TIME」の 設定で、LBA か MSF になります。
LBA の場合、(MSBとLSBに注意)
| BYTE\bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||||
| 4 |
|
|||||||||||
| 5 | ||||||||||||
| 6 | ||||||||||||
| 7 | ||||||||||||
MSF の場合
| BYTE\bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| 4 | ZERO | |||||||
| 5 | 分 | |||||||
| 6 | 秒 | |||||||
| 7 | フレーム (=1/75秒) | |||||||
DVD、HD-DVD、Blu-ray では、このコマンドを実行しないで下さい。 ディスクの内容に関係なく一定の値が帰ってきます。 (MSFでは、255分59秒74フレームが最大ですが、 これを超える長さのDVDもあります。)
余談
「せんべえ焼き、もしくはコースターメーカー」では、 FORMAT=0010B (Full Toc) が失敗したときにこちらを実行します。 これは、Windows95 で試してみたときの名残です。 あと、過去のバージョンでは、 DVDにRead TOC/PMA/ATIPを使って間違っているものがあります。

