MMC の INQUIRY コマンドは製品名やメーカー名といったデバイスの情報を取得するために使います。
INQUIRY コマンドの CDB (Command Descriptor Block) は次のとおりです。
| BYTE\bit |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| 0 | Operation Code = 0x12 |
| 1 | LUN | 予約 |
| 2 | 予約 |
| 3 | 予約 |
| 4 | 予約 |
| 5 | データの最大長 |
INQUIRY コマンドで出力されるデータの内容は次のとおりです。
| BYTE\bit |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| 0 | 予約 | デバイスの種類 |
| 1 | RMB | 予約 |
| 2 | ISO Version | ECMA Version | ANSI Version |
| 3 | 予約 | Response Data Format |
| 4 | 追加データ長 |
| 5 | 予約 |
| 6 | 予約 |
| 7 | 予約 |
| 8 |
| (MSB) |
| メーカー名 (ASCII) |
| (LSB) |
|
| … |
| 15 |
| 16 |
|
| … |
| 31 |
| 32 |
| (MSB) |
| ファームウェアのバージョン (ASCII) |
| (LSB) |
|
| … |
| 35 |
| 36 |
|
| … |
| 55 |
| 56 |
|
| … |
| 95 |
| 96 |
|
| … |
| n |
0バイト目のデバイスの種類は、以下のようになります。(SRB_DeviceType と同じです。)
| コード | デバイスの種類 |
| 0x00 | ハードディスク、フロッピーディスクなど |
| 0x01 | 磁気テープなど |
| 0x02 | プリンタ |
| 0x03 | プロセッサ |
| 0x05 | CD-ROMなど |
| 0x06 | スキャナ |
| 0x07 | MOなど |
「せんべえ焼き、もしくはコースターメーカー」では、もっぱらドライブ名を取得するために使っています。