CHD ファイル形式とは?
.chd(Compressed Hunks of Data の略)は、MAME プロジェクトによって開発されたバイナリ ディスクイメージ コンテナです。アーケードマシンのハードディスク、CD-ROM、DVD、および LaserDisc メディアを、エミュレータが効率的にストリーミングできる圧縮形式で保存します。
この形式は、ソースメディアを「hunk(ハンク)」と呼ばれる固定サイズの単位に分割します。各ハンクは独立して圧縮されるため、エミュレータはイメージ全体ではなく、必要なハンクのみを解凍します。1つのファイル内で最大4つの圧縮コーデックを有効にできます:Deflate (cdzl)、LZMA (cdlz)、カスタム Huffman (huff)、および CD オーディオトラック用の FLAC (cdfl) です。一般的な .chd は、同等の .iso や .cue+.bin ソースよりも 30-60 % 小さくなります。
すべての .chd は、ファイルオフセット 0 にある 8 バイトのマジック文字列 MComprHD で始まり、その後に以下を記録するビッグエンディアンのヘッダーが続きます:
- フォーマットバージョン(v4 または現在の v5)
- 有効なコーデックリストと解凍後の総サイズ
- 生データとファイル全体の SHA-1 ハッシュ
MAME はロード時に両方のハッシュを検証し、データベースのエントリと一致しないイメージを拒否します。
MAME に同梱されているコマンドラインツール chdman を使用すると、.chd ファイルの作成、検証、変換が可能です。.bin 生イメージへの変換は完全にロスレス(無劣化)です。.chd をさらに ZIP 内にアーカイブしても節約できる容量はごくわずかであり、エミュレータの検出を妨げるため、推奨されません。
セキュリティと安全性
リスク: LOWCHD は実行コードを含まない不活性なイメージデータであり、SHA-1 ハッシュを保持しているため、改ざんや破損したファイルはロード時に検出されます。実用上の注意点は技術的なものではなく法的なものです。著作権のあるゲームの CHD を配布またはダウンロードすることは通常、著作権侵害にあたります。所有しているディスクを chdman でダンプしてください。アドウェアを同梱する怪しい «CHD 変換» サイトは避け、mamedev.org の chdman を使用してください。
形式の詳細
概要CHD ファイルを開くプログラム
技術的詳細
詳細仕様| マジックバイト | ファイルオフセット 0 に MComprHD(8 ASCII バイト)、続いて 4 バイトのビッグエンディアン ヘッダー長 |
| バイト順序 | ビッグエンディアン |
| エンコーディング | バイナリ |
| コンテナ構造 | ヘッダー → ハンクマップ → ハンクごとの圧縮データブロック → タグ付きメタデータレコード |
| 圧縮コーデック | 1ファイルにつき最大4つの同時コーデック:Deflate (cdzl)、LZMA (cdlz)、Huffman (huff)、CD オーディオ用の FLAC (cdfl) |
| ハンクサイズ | 作成時に固定される 2 のべき乗のバイト数(通常 4 KB - 512 KB)。ファイル内のすべてのハンクで均一 |
| 整合性チェックサム | 未圧縮コンテンツの SHA-1 + 完全な CHD ファイルの SHA-1。両方がヘッダーに保存され、MAME はロード時に両方を強制検証する |
| メディアタイプ | ハードディスクイメージ、CD-ROM、DVD、LaserDisc、および生のセクタメディア |
| メタデータブロック | ハンクマップの後に埋め込まれたタグ付きキー・値レコード:CD トラックレイアウト、HDD ジオメトリ、ドライブ識別文字列 |
| 一般的な圧縮率 | 同等の ISO または CUE+BIN ソースより 30-60 % 小さい |
| 開発者 | MAMEdev (MAME プロジェクト) |
| サポートされているプラットフォーム | Windows, macOS, Linux, Android |
| ロスレス・ラウンドトリップ | chdman を使用して、データ損失なしで元の ISO、BIN、GDI、または生イメージを正確に再構築可能 |
| フォーマットバージョン | v4 および v5 が一般的に使用される。バージョンはマジックタグの直後に 4 バイトのビッグエンディアン整数としてエンコードされる |
| リリース日 | 2002 (MAME, originally for hard-disk-based arcade games) |
| 最新バージョン | CHD v5 (current header/map format) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | docs.mamedev.org |
CHD の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。CHD ファイルについて最初の質問をしてみましょう。