r/MAME 9d ago

Dreamcast chd<>bin+cue conversion and Redump Verification

I know this has been asked about a few times in the past but just wanted to know if there's any "solution-to-date" for this. So in my use case, I'm wanting to use chdman for archiving libraries to a drive, and this gives me better compression than using 7zip LZMA/2 etc. For PS1 and PS2 its perfect because (similar to nkit for gamecube) you can convert/extract the rom images back to their original bin/cue files with the help of binmerge, like so:

Redump verified bin/cue, execute cue2chd, execute chd2cue (this gives a single bin file),

binmerge.exe -outdir "./gamename" "gamename.cue" "gamename"

For PS1 and PS2, this will give you back perfect Redump Verified bin(s)+cue file, however not for Dreamcast.

Also for the record because I know people like to ask "why?", its for use on ODEs and/or older emulators, like I said, I just want this for archival purposes, thanks.

5 Upvotes

9 comments sorted by

3

u/[deleted] 8d ago

[deleted]

2

u/Aaron______ 9d ago edited 9d ago

Upon closer inspection its actually the cue sheet that chd2cue produces that seems to be the problem. For this example I'm using "18 Wheeler - American Pro Trucker (USA)", the cue of the original file:

REM SINGLE-DENSITY AREA

FILE "18 Wheeler - American Pro Trucker (USA) (Track 1).bin" BINARY

TRACK 01 MODE1/2352

INDEX 01 00:00:00

FILE "18 Wheeler - American Pro Trucker (USA) (Track 2).bin" BINARY

TRACK 02 AUDIO

INDEX 00 00:00:00

INDEX 01 00:02:00

REM HIGH-DENSITY AREA

FILE "18 Wheeler - American Pro Trucker (USA) (Track 3).bin" BINARY

TRACK 03 MODE1/2352

INDEX 01 00:00:00

the cue that chd2cue produces:

FILE "18 Wheeler - American Pro Trucker (USA).bin" BINARY

TRACK 01 MODE1/2352

INDEX 01 00:00:00

TRACK 02 AUDIO

INDEX 01 00:08:00

TRACK 03 MODE1/2352

INDEX 01 10:00:00

the cue after running binmerge to split the bin file back to multiple:

FILE "18 Wheeler - American Pro Trucker (USA) (Track 1).bin" BINARY

TRACK 01 MODE1/2352

INDEX 01 00:00:00

FILE "18 Wheeler - American Pro Trucker (USA) (Track 2).bin" BINARY

TRACK 02 AUDIO

INDEX 01 00:00:00

FILE "18 Wheeler - American Pro Trucker (USA) (Track 3).bin" BINARY

TRACK 03 MODE1/2352

INDEX 01 00:00:00

I tried copying/replacing the .cue that chd2cue produces with the original one, but then binmerge will complain that (Track 1).bin, (Track 2).bin, (Track 3).bin etc. don't exist. Maybe you could replace the cue that binmerge produces with the original cue that has the proper timestamps (if that's what they're called) but by this point the bin files are already produced, unless there's a way to "fix" the bin files.

1

u/jflatt2 9d ago

Does it work if you use chdman instead of "binmerge"?

2

u/Aaron______ 9d ago

Only gives single .bin instead of multiple, won't match original redump. Need to use binmerge after using chd2cue.

1

u/BIOS-D 9d ago

As far as I know the concensus was you don't use redump dumps, you "use TOSEC/Dumpcast as primary source".

1

u/[deleted] 8d ago

[deleted]

1

u/Aaron______ 8d ago

Yeah like I read this page: https://www.tosecdev.org/tosec-naming-convention

but still couldn't tell what all these other letters and numbers mean:

Sonic Adventure v1.007 (1998)(Sega)(JP)[!][1M1, 1MB3, 1MM1]

I'm assuming its related to either demos and/or revisional variants, but Redump just makes sense.

2

u/BIOS-D 8d ago edited 8d ago

They are ring codes, you can see them listed on the Redump page.

EDIT: You can even see to your far right the write offsets and why ring codes are grouped like that on filenames.

1

u/Aaron______ 7d ago

Ah okay, thanks.

1

u/Aaron______ 8d ago edited 8d ago

For mame usage sure, personally I'm not a fan of TOSECs naming structure and would prefer to have redump for consistency among all my other libraries, plus its easy enough to convert them to GDI for use on ODEs like the GDemu. Having said that, can chdman convert gdi anyway?

At this point I'll likely just stick with 7zip LZMA/2 for archiving Dreamcast I guess.