A game running off of a CHD file with its proper accompanying ROM.

レトロゲームがお好きな方なら、CHDという拡張子のファイルに出くわしたことがあるかもしれません。これらのファイルには通常、アーケードシーンでヒットした最も古いゲームの保存とカタログ化に使用される小さな宝石が含まれています。CHDファイルは通常、MAMEとして知られるオープンソースのアーケードマシンエミュレータと連携して動作しますが、用途はそれだけではありません!

CHDファイルとは?

Compact Hunks of Dataとして知られるこれらのファイルには、MAMEとして知られるエミュレータによって複製される、古いアーケードマシンで使用されるあらゆるアセットが含まれています。特にMAMEでは、これらのファイルはアーケードマシンのハードディスクの内容の完全なレプリカです。このため、ファイルサイズが非常に大きくなります。

最近では、CHDファイルは、ISOファイルやBIN/CUEペアの代わりに、CD-ROMで動作する大規模なゲームをエミュレートするニッチな選択肢となっています。これには、RetroArchのPlayStation Libretroコアのようなエミュレータや、Raspberry Piシリーズのマイクロコンピュータ用の、人気のあるエミュレーション指向のディストリビューションが含まれます。

A CHD file residing in its proper folder for MAME.

あなたのCHDがMAME ROMの場合、MAME ROMsディレクトリ内の、エミュレートするアーケードマシンの実際のファームウェアを含むzipアーカイブと同じ名前のフォルダに保存する必要があります。Linuxでは、MAMEのROMsディレクトリは通常~/.mame/romsです。Windowsでは、ポータブルインストーラーでMAMEを解凍したディレクトリ内のromsフォルダです。

An arrow points to the ROMs folder within a Windows MAME installation.

オリジナルのPlayStationや光ディスクを使う他のゲーム機のゲームのバックアップであれば、エミュレータのROMサブディレクトリに直接置くべきです。

コンソールエミュレータの場合、CHDファイルは通常ゲーム全体を含んでいるので、エミュレータで「開いて」プレイを始めることができます。しかし、MAMEでは、MAMEは主にアーケードマシンをエミュレートするため、それらはゲームのアセットだけです。

ゲーム機とは異なり、80年代半ば以降のアーケードマシンは通常、1つのゲームを実行するための特定のハードウェアプロファイルを持っていました。ゲーム内の実行コードはすべてROMチップに保存され、ビジュアルアセットはすべてCDか、より一般的なハードディスクドライブに保存されるというモデルです。

MAME file structure, CHD files within the folders in image.

このモデルのため、MAMEはCHDを単独で開くことはできません。覚えておいてほしいのは、それらはアーケードマシンのハードディスク部分であるということです。MAMEは最初に実行コードを含むROMファイル(ほぼ一般的にzipファイル)を開かなければなりません。ROMファイルと同じ名前のフォルダを探し、その中からCHDを探します。ROMフォルダ内のディレクトリ構造は次のようになっていなければなりません:

  • game
    • game.chd
  • game.zip

CHDファイルしかない場合、使用しているMAMEのバージョンで動作するゲームの正しいファームウェアを見つける必要があります。

CHDファイルの内容を確認する

CHDファイルを扱うための最高の(そして私たちの知る限り唯一の)ツールは、MAME自身のソースから入手できます。chdmanと呼ばれています。あなたのMAMEセットアップによりますが、すでにインストールされているか、あなたがインストールすることができます:

Ubuntu/Debian/Mintの場合:

sudo apt installmame-tools

Fedora/RHELベースの場合:

sudo dnf installmame-tools

Arch Linuxの場合

sudopacman-Smame-tools

Windowsにはプリインストールされているはずです。MAMEルートディレクトリにchdman.exeという名前で存在します。

A terminal display showing the installation of MAME tools on Arch Linux using the YAY AUR helper.

CHD イメージをチェックしたり、構造に関する情報を見るには

chdman info-iIMAGE_FILENAME.chd

Windowsを使用している場合は、MAMEルートフォルダを右クリックし、ターミナルで開くをクリックし、次のように入力します:

.♪chdman.exe info-iIMAGE_FILENAME.chd
A demonstration of the chdman command showing info about a CHD file.

CHDを変換する

同じツールを使って、CHDファイルの内容を抽出したり、CHDファイルを作成することができます。

ハードディスクドライブのバックアップの場合はIMG、CDのバックアップの場合はBINとCUEの組み合わせのように、CHDをよりアクセスしやすいフォーマットに変換するのは、CHDフォーマットをサポートしていない別のエミュレータでそれらのファイルを使用する場合にのみ意味があります。ハードディスクのイメージファイルの場合は、次のようにします:

chdman extracthd-iIMAGE_FILE.CHD-oOUTPUT_FILE.IMG

または Windows の場合:

.∕chdman extracthd-iIMAGE_FILE.CHD-oOUTPUT_FILE.IMG
Conversion of a CHD file into an IMG file.

CDバックアップの場合は、上記のコマンドでextracthdを extractcdに置き換えてください。

PCSX ReARMedやDemul、RetroArch、あるいはRaspberry Pi用のエミュレータ・ディストリビューションを使用している場合、理論的には、エミュレータのROMパスにファイルを置くだけで、エミュレータがファイルを検出し、使用できるようになります。

ROMs フォルダは、以下のような複数のゲームのバックアップを含んでいる場合、混沌として見えます:

  • 元はCDフォーマット
  • BINとCUEの組み合わせで保存されている
  • 複数のオーディオトラックを含む

CUEとBINの組み合わせでは、オリジナルCDの各トラックが別々のBINファイルとして保存されるため、1つのゲームを数十のファイルに分割することができます。

CHDファイルフォーマットは、このようなROMを保存する、より現代的な方法として作成されたため、あらゆる点で優れています。すべてを1つのファイルに収めることができ、内容に応じてロスレス圧縮がスマートに適用され、最適な結果が得られます。例えば、典型的なデータはzlibアルゴリズムで圧縮できるが、個々のオーディオトラックはFlacで圧縮される。これは、使用される圧縮の種類が "ロスレス "であるため、データ損失ゼロで大きな圧縮率につながります。

CUEとBINファイルの束に分割されたゲームを1つのCHDファイルに変換するには、次のようにします:

chdman createcd-i "FILENAME.cue" -o "OUTPUT_FILENAME.chd"です。

またはWindowsの場合:

. \chdman.exe createcd-i "FILENAME.cue" -o "OUTPUT_FILENAME.chd"です。

圧縮パラメータを調整する必要はありませんが、最適なものが自動的に選択されます。変換中、chdman はそれぞれのケースで使用する圧縮の種類などを表示します。

Compression of CUE/BIN combination into CHD file.

変換が完了したら、最初にそのゲームをロードするのに使ったのと同じエミュレータで新しい CHD ファイルをロードしてみてください。うまくいったら、元のファイルを削除し、次のゲームに移ります。

File manager displaying converted CHD file.

ファイルを確認すると、新しく作成された CHD ファイルが、変換した BIN、IMG、または ISO ファイルよりもかなり小さいことに気づくかもしれません。これは、これらの ROM の多くには、設計されたゲーム システムからのアーティファクトが含まれており、データの特定のビットがまだディスク上の特定の位置を占める必要があるかのように動作するためです。エミュレータを使用しているため、圧縮によって、エミュレータで楽しむコンテンツの全体的な品質に影響を与えることなく、このような肥大化を取り除くことができます。

多くのレトロゲームを保存している場合、最大容量のゲームをCHDフォーマットに変換すると、少なくともそれをサポートするエミュレータでは、数ギガバイトの容量を節約することができます!レトロゲームをプレイするのが好きなら、以前の状態に巻き戻す方法を学ぼう。

すべての画像とスクリーンショットはMiguel Leiva-Gomezによるものです。

Akira
Akiraは情熱的なゲーマーであり、製品レビュアーです。ゲームをしていないときは、最新のゲーミングアクセサリーを試したり、製品のレビューをしていることが多い。彼の分かりやすいスタイルは、ゲーマーが自分のニーズに最も適した製品を簡単に判断できるようにするものです。また、技術的な問題にも精通しており、その解決方法も知っている。