主题 : 【讨论】DC redump规范与CHD互转当前最佳方案(科普+翻译+工具转载)
级别: 模拟专家
UID: 89721
精华: 0
发帖: 87
威望: 0 星
金钱: 2275 浮游币
贡献值: 127 点
好评度: 240 点
人气: 1 点
在线时间: 253(时)
注册时间: 2005-12-22
最后登录: 2024-12-21
楼主  发表于: 2021-12-05 00:06

【讨论】DC redump规范与CHD互转当前最佳方案(科普+翻译+工具转载)

先说结论:

目前最佳互转方案:

redump → CHD
官方chdman 转 cue+bin

CHD → redump
改版chdman 转 chd


简介:CHD 文件格式是一种无损压缩转储格式,用于存储镜像。数据轨道采用 LZMA 压缩,音频轨道采用 FLAC 压缩。它的压缩率是≥ 7z 压缩的。(7z不支持 FLAC 压缩,对音轨依然采用数据方式而力不从心)
除了压缩率,CHD最大的优点是:支持随机读取。传统的zip,7z压缩基于文件压缩,没有文件块索引,无法对文件内的数据块精确定位,所以如果需要读取压缩包内某一文件的某一块数据时,需要解压缩整个文件。而CHD压缩基于文件块索引。需要某一块数据,不需要解压缩整个文件,能像定位光盘 LBA一样准确定位。另外此转换也是可逆的,不喜欢了可以无损回原镜像,文件具有相同的校验。另外CHD也是带校验的。用verify 命令可冶ΡΓ验文件是否被损坏或者修改。现在新的模拟器基本都支持这种存储格式。可以预见,随着模拟技术的推进,mame作为行业龙头的规范效应,会有越来越多的模拟器和玩家对这种格式持欢迎态度。

当前官方CHD转换工具,CHDMAN对DC镜像支持不足。(DC家用机还未纳入MAME仿真的范畴)。

官方CHDMAN目前已知的问题:
1. redump规范 gdi + bin 转储 CHD 可逆转为 gdi+bin ,文件名有改变,不过bin 文件校验匹配。2. redump规范 cue + bin 转储 CHD 用官方CHDMAN不可逆转.转回 cue + bin ,cue丢失镜像低/高密度信息,bin变为合并镜像。转回 gdi + bin ,部分轨道(通常是第二轨)大小和校验不匹配。
2. Dreamcast MIL-CD (CD规格发售的带(Unl)标记的游戏,例如Pier Solar and the Great Architects (USA) (Unl),Sturmwind (Europe) (Unl) )转储压缩到 .CHD 不能被主流模拟器(retroarch, flycast, demul)识别。

而且,redump.org 从几个月前就取消了对 gdi + bin 的支持,虽然后来因为抗议声大又重新放出。但是gdi 文件本身已经不再更新(现在官网上能下载到的gdi索引文件已经是旧版)。而且Datfile也没了gdi文件的校验,用GDI-Utils作者的话说:Redump.org GDI 和 通用 GDI 虽然有相同的文件扩展名“.gdi”,但是有些许差异。详见此
www 点 romhacking.net/utilities/1449/

由此可见未来的规范依然是 cue+bin

那么,如果在DC redump 和 CHD 之间完美互转有几种方法呢?
1. 官方CHDMAN + Redump gdi+bin ,目前redump 官网能下载到gdi索引,但是有部分缺失。缺失的可以用 cue 转 gdi 索引工具。 Gdi2CHD.zip (773 K) 下载次数:57
    CHD 转回 Redump 如果用官方CHDMAN,只能输出gdi格式。输出后的gdi +bin 需要手动改名以匹配Redump规范。
2. 改版chdman chdman (1).zip (1678 K) 下载次数:78 此改版基于chdman0.237.可以完美转换 官方CHDMAN+Redump cue+bin转换的CHD文件回到Redump cue+bin规范。已有网友实验转换redump全套cue+bin → CHD 又转回 CHD → cue+bin 全部通过CM校验

cue2gdi 出处:
forum 点 batocera.org/d/4668-dreamcast-emulators-and-the-chd-compressed-file-format-support

改版chdman及源代码出处:
github 点 com/mamedev/mame/pull/7717
此链接有大量关于DC gdi的技术讨论,非常精彩。可惜mame官方给与了关闭
[ 此帖被lanyer在2021-12-08 13:57重新编辑 ]
本帖最近评分记录:
  • 人气:+1(willzyj) 辛苦了,送你 1 点人气
  • 金钱:+10(YZB) 辛苦了,送你 1 点人气
  • 级别: 模拟专家
    UID: 89721
    精华: 0
    发帖: 87
    威望: 0 星
    金钱: 2275 浮游币
    贡献值: 127 点
    好评度: 240 点
    人气: 1 点
    在线时间: 253(时)
    注册时间: 2005-12-22
    最后登录: 2024-12-21
    沙发  发表于: 2021-12-05 01:40

    回 1楼(stjohnny) 的帖子

    针对dc redump,原版chdman转换也是成功,但是chd转回redump就有问题。这里讨论的是dc 镜像。其他镜像用官方原版就好。
    [ 此帖被lanyer在2021-12-05 15:19重新编辑 ]
    级别: 模拟专家
    UID: 89721
    精华: 0
    发帖: 87
    威望: 0 星
    金钱: 2275 浮游币
    贡献值: 127 点
    好评度: 240 点
    人气: 1 点
    在线时间: 253(时)
    注册时间: 2005-12-22
    最后登录: 2024-12-21
    板凳  发表于: 2021-12-06 14:13

    回 6楼(aliang) 的帖子

    看了 Pier Solar and the Great Architects (USA) (Unl) cue索引表,
    这个游戏貌似是上文提到的MIL-CD 格式。有可能是chd目前还不支持MIL-CD的转换。
    发现很多 带(Unl)标记的非授权游戏都喜欢用MIL-CD 格式,类似的还有Sturmwind (Europe) (Unl) (Rerelease)
    级别: 模拟专家
    UID: 89721
    精华: 0
    发帖: 87
    威望: 0 星
    金钱: 2275 浮游币
    贡献值: 127 点
    好评度: 240 点
    人气: 1 点
    在线时间: 253(时)
    注册时间: 2005-12-22
    最后登录: 2024-12-21
    地板  发表于: 2021-12-06 15:02

    回 8楼(aliang) 的帖子

    gdi格式已经逐渐被redump淘汰了。以后将是统一标准cue+分轨bin

    目前最佳互转方案:

    redump → CHD
    官方chdman 转 cue+bin

    CHD → redump
    改版chdman 转 chd
    级别: 模拟专家
    UID: 89721
    精华: 0
    发帖: 87
    威望: 0 星
    金钱: 2275 浮游币
    贡献值: 127 点
    好评度: 240 点
    人气: 1 点
    在线时间: 253(时)
    注册时间: 2005-12-22
    最后登录: 2024-12-21
    草席  发表于: 2021-12-12 20:31

    回 5楼(YZB) 的帖子

    实测 模拟器不支持mode1/2048的chd.
    mode1/2352最兼容,全部支持。
    mode2/2352只有 demul 支持。

    还是chd格式太新了。再过10年来看看。
    级别: 模拟专家
    UID: 89721
    精华: 0
    发帖: 87
    威望: 0 星
    金钱: 2275 浮游币
    贡献值: 127 点
    好评度: 240 点
    人气: 1 点
    在线时间: 253(时)
    注册时间: 2005-12-22
    最后登录: 2024-12-21
    5楼  发表于: 2021-12-12 23:55

    回 12楼(YZB) 的帖子

    chd只是一种数据存储格式,类似于iso, img ,isz...和精确模拟没有任何关系。它不属于虚拟机这一层,属于主机对存储的接口层。看redump官方的 dat sheets 就知道,redump 只有一种官方格式,就是 cue+分轨bin
    级别: 模拟专家
    UID: 89721
    精华: 0
    发帖: 87
    威望: 0 星
    金钱: 2275 浮游币
    贡献值: 127 点
    好评度: 240 点
    人气: 1 点
    在线时间: 253(时)
    注册时间: 2005-12-22
    最后登录: 2024-12-21
    6楼  发表于: 2022-01-17 19:31

    回 15楼(fyngd) 的帖子

    www点ppxclub点com/forum.php?mod=viewthread&tid=709084