Cosa sono i file CHD e come puoi usarli?

Cosa sono i file CHD e come puoi usarli?
Un gioco che viene eseguito da un file CHD con la relativa ROM di accompagnamento.

Se ti piacciono i giochi retrò, potresti esserti imbattuto in file con estensione CHD. Questi file in genere contengono piccole gemme che vengono utilizzate per preservare e catalogare alcuni dei giochi più antichi apparsi sulla scena arcade. I file CHD in genere funzionano mano nella mano con un emulatore di macchine arcade open source noto come MAME, ma questo non è il loro unico utilizzo!

Cosa sono i file CHD?

Conosciuti come Compact Hunks of Data, questi file contengono l’intero spettro di risorse utilizzate nelle macchine arcade più vecchie che vengono replicate da un emulatore noto come MAME. Nello specifico di MAME, questi file sono repliche complete del contenuto dei dischi rigidi presenti nelle macchine arcade. Questo spiega perché sono così grandi.

Più recentemente, i file CHD sono diventati un’alternativa di nicchia ai file ISO o alle coppie BIN/CUE per emulare giochi di grandi dimensioni che normalmente giravano su CD-ROM. Ciò include emulatori come alcuni dei core PlayStation Libretro in RetroArch e, per estensione, tutte le popolari distribuzioni orientate all’emulazione per la serie di microcomputer Raspberry Pi.

Un file CHD che risiede nella cartella corretta per MAME.

Se i tuoi CHD sono MAME ROM, dovranno essere archiviati in una cartella all’interno della directory MAME ROMs con lo stesso nome di un archivio zip che contiene il firmware effettivo della macchina arcade da emulare. In Linux, la directory delle ROM di MAME è solitamente ~/.mame/roms. In Windows, è la cartella roms all’interno della directory in cui hai estratto MAME con il programma di installazione portatile.

Una freccia punta alla cartella ROM all'interno di un'installazione di Windows MAME.

Se si tratta di backup di giochi per la PlayStation originale o per qualche altra console che utilizzava dischi ottici, dovrebbero essere inseriti direttamente nella sottodirectory ROM dell’emulatore.

Nel caso degli emulatori di console, i file CHD solitamente contengono l’intero gioco, quindi puoi “aprirli” nell’emulatore e iniziare a giocare. In MAME, però, sono solo la risorsa del gioco, poiché MAME emula principalmente le macchine arcade.

A differenza delle console di gioco, le macchine arcade dalla metà degli anni ’80 in poi avevano solitamente un profilo hardware specifico che consentiva loro di eseguire un singolo gioco. Quasi universalmente seguivano un modello in cui tutto il codice di esecuzione di un gioco veniva archiviato in un chip ROM e tutte le risorse visive venivano archiviate su un CD o, più comunemente, su un disco rigido.

Struttura dei file MAME, file CHD all'interno delle cartelle nell'immagine.

MAME non può aprire i CHD da solo a causa di questo modello. Ricorda, sono la parte disco rigido delle macchine arcade in cui abitavano. MAME deve prima aprire un file ROM contenente il codice di esecuzione (quasi universalmente un file zip). Cercherà una cartella con lo stesso nome del file ROM e cercherà il CHD al suo interno. La struttura delle directory all’interno della cartella ROMs, quindi, deve assomigliare a questa:

  • gioco
    • gioco.chd
  • gioco.zip

Se tutto quello che hai è il file CHD, dovrai trovare il firmware corretto per il gioco che funzioni con la versione di MAME che stai utilizzando.

Controlla il contenuto del file CHD

Il migliore (e, per quanto ne sappiamo, l’unico) strumento per lavorare con i file CHD proviene dalla loro fonte, dallo stesso MAME. Si chiama chdman. A seconda della configurazione di MAME, è già installato oppure puoi portarlo a bordo:

Su Ubuntu/Debian/Mint:

Sulle distribuzioni basate su Fedora/RHEL:

Su ArchLinux:

Dovrebbe essere preinstallato su Windows. Si chiamerà chdman.exe nella directory root di MAME.

Un display del terminale che mostra l'installazione degli strumenti MAME su Arch Linux utilizzando l'helper YAY AUR.

Per controllare un’immagine CHD e vedere alcune informazioni sulla sua struttura, utilizzare:

Se utilizzi Windows, fai clic con il pulsante destro del mouse sulla cartella principale di MAME, fai clic su Apri nel terminale, quindi digita:

Una dimostrazione del comando chdman che mostra informazioni su un file CHD.

Converti i tuoi CHD

Puoi utilizzare lo stesso strumento per estrarre il contenuto di un file CHD e crearne uno.

La conversione di un CHD in un formato più accessibile, come IMG per i backup del disco rigido o un BIN & La combinazione CUE per i backup di CD ha senso solo se utilizzerai quei file in un emulatore diverso che non supporta il formato CHD. Nel caso di file immagine del disco rigido, utilizzare:

Oppure per Windows:

Conversione di un file CHD in un file IMG.

Per i backup su CD, sostituisci extracthd con extractcd in il comando precedente.

Se stai utilizzando un emulatore come PCSX ReARMed o Demul, RetroArch o qualche distribuzione di emulatori per il tuo Raspberry Pi, in teoria, puoi solo devi posizionare i tuoi file nel percorso ROM dell’emulatore affinché possa rilevarli e utilizzarli.

La cartella ROM può sembrare caotica se contiene backup di più di un gioco che:

  • Originariamente era in formato CD
  • Ora è archiviato in BIN & Combinazioni CUE
  • Contiene più tracce audio

Con il CUE & Combinazione BIN, ogni traccia del CD originale viene salvata come file BIN separato, quindi un singolo gioco può essere suddiviso in dozzine di file.

Il formato file CHD è stato creato come un modo più moderno per archiviare tali ROM, eccellendo sotto ogni aspetto. Tutto può essere contenuto in un singolo file e la compressione senza perdita di dati viene applicata in modo intelligente a seconda del contenuto per ottenere risultati ottimali. Ad esempio, i dati tipici potrebbero essere compressi con l’algoritmo zlib, ma le singole tracce audio vengono compresse con Flac. Ciò porta a tassi di compressione elevati con perdita di dati pari a zero, poiché i tipi di compressione utilizzati sono “senza perdita di dati”.

Per convertire un gioco suddiviso tra un CUE e un gruppo di file BIN in un singolo file CHD, utilizzare:

Oppure in Windows:

Anche se puoi, non è necessario modificare i parametri di compressione: le scelte ottimali verranno scelte automaticamente per te. Durante la conversione, chdman presenterà, tra le altre informazioni, i diversi tipi di compressione che utilizza in ciascun caso.

Compressione della combinazione CUE/BIN nel file CHD.

Una volta completata la conversione, prova a caricare il tuo nuovo file CHD nello stesso emulatore utilizzato inizialmente per caricare il gioco. Se funziona, elimina i file originali e passa al gioco successivo.

File manager che visualizza il file CHD convertito.

Quando controlli i file, potresti notare che il file CHD appena creato è significativamente più piccolo dei file BIN, IMG o ISO che hai convertito, poiché molte di queste ROM contengono artefatti dei sistemi di gioco per cui sono state progettate e si comportano come se alcuni bit dei loro dati devono ancora occupare determinate posizioni sul disco. Dato che stai utilizzando un emulatore, la compressione eliminerà gran parte di questo gonfiore senza influire sulla qualità complessiva del contenuto che ti piace.

Se tieni in giro molti giochi retrò, quando converti quelli più grandi nel formato CHD, almeno per gli emulatori che lo supportano, puoi finire per risparmiare più gigabyte di spazio – gigabyte che potresti poi utilizzare per conservare ancora più giochi retrò! Se ti piacciono i giochi retrò, scopri come riavvolgerli a uno stato precedente.

Tutte le immagini e gli screenshot sono di Miguel Leiva-Gomez.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *