Hvad er CHD-filformatet?
.chd - forkortelse for Compressed Hunks of Data - er en binær disk-image-container udviklet af MAME-projektet. Den gemmer arkademaskiners harddiske, CD-ROM'er, DVD'er og LaserDisc-medier i en komprimeret form, som emulatorer kan streame effektivt.
Formatet opdeler kildemediet i enheder med fast størrelse kaldet *hunks*. Hver hunk komprimeres uafhængigt, så emulatoren kun dekomprimerer den hunk, den har brug for, frem for hele aftrykket. Op til fire komprimerings-codecs kan være aktive i en enkelt fil: Deflate (cdzl), LZMA (cdlz), brugerdefineret Huffman (huff) og FLAC (cdfl) til CD-lydspor. En typisk .chd er 30-60 % mindre end den tilsvarende .iso eller .cue+.bin kilde.
Enhver .chd begynder med den 8-byte lange magiske streng MComprHD ved fil-offset 0, efterfulgt af en big-endian header, der registrerer:
- formatversion (v4 eller nuværende v5)
- aktiv codec-liste og samlet ukomprimeret størrelse
- SHA-1-hashes af både rådata og den fulde fil
MAME validerer begge hashes ved indlæsning og afviser aftryk, hvis hash ikke matcher databasen.
Kommandolinjeværktøjet chdman, som følger med MAME, opretter, verificerer og konverterer .chd-filer. Konvertering tilbage til et .bin rå-aftryk er fuldstændig tabsfri (lossless). Gen-arkivering af en .chd i en ZIP sparer minimal plads og ødelægger emulatorens genkendelse, så det frarådes.
Sikkerhed og tryghed
RISIKO: LOWCHD er inerte billeddata uden eksekverbar kode, og den indeholder SHA-1-hashes, så en manipuleret eller korrupt fil opdages ved indlæsning. Den praktiske forsigtighed er juridisk, ikke teknisk: distribution eller download af CHD-filer af ophavsretligt beskyttede spil er normalt piratkopiering - dump diske du selv ejer med chdman. Undgå tvivlsomme «CHD converter»-hjemmesider, der indeholder adware; chdman fra mamedev.org er gratis.
Formatdetaljer
kort fortaltProgrammer der åbner CHD-filer
Tekniske detaljer
dyb specifikation| Magic bytes | MComprHD (8 ASCII-bytes) ved fil-offset 0, efterfulgt af en 4-byte big-endian header-længde |
| Byte-orden | Big-endian |
| Kodning | Binær |
| Container-struktur | Header → hunk-map → komprimerede datablokke per hunk → taggede metadata-poster |
| Komprimerings-codecs | Op til fire samtidige codecs per fil: Deflate (cdzl), LZMA (cdlz), Huffman (huff), FLAC (cdfl) til CD-lyd |
| Hunk-størrelse | Power-of-two byte-antal fastsat ved oprettelse (typisk 4 KB - 512 KB); ensartet for hver hunk i filen |
| Integritets-checksums | SHA-1 af råt ukomprimeret indhold + SHA-1 af den komplette CHD-fil, begge gemt i headeren; MAME håndhæver begge ved indlæsning |
| Medietyper | Harddisk-aftryk, CD-ROM, DVD, LaserDisc og rå sektor-medier |
| Metadatablokke | Taggede nøgle-værdi-poster indlejret efter hunk-mappet: CD-sporlayout, HDD-geometri, drev-identitetsstrenge |
| Typisk komprimeringsgrad | 30-60 % mindre end en tilsvarende ISO- eller CUE+BIN-kilde |
| Udvikler | MAMEdev (MAME-projektet) |
| Understøttede platforme | Windows, macOS, Linux, Android |
| Tabsfri konvertering | chdman kan rekonstruere den nøjagtige originale ISO, BIN, GDI eller rå-aftryk uden datatab |
| Formatversioner | v4 og v5 er i almindelig brug; versionen er kodet som et 4-byte big-endian heltal umiddelbart efter det magiske tag |
| Udgivet | 2002 (MAME, originally for hard-disk-based arcade games) |
| Seneste version | CHD v5 (current header/map format) |
| Åben standard | Ja · royaltyfri |
| Specifikation | docs.mamedev.org |
CHD-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om CHD-filer.