diff --git a/CHANGELIST.md b/CHANGELIST.md index 7ee6e6ce..8e782226 100644 --- a/CHANGELIST.md +++ b/CHANGELIST.md @@ -17,6 +17,7 @@ - Prepare Redumper for XGD support - Hash DMI and PFI files for XGD in Redumper - Support GD-ROM info for Redumper +- Futureproof GD-ROM LD in Redumper ### 3.2.1 (2024-08-05) diff --git a/MPF.Processors/Redumper.cs b/MPF.Processors/Redumper.cs index e1bd2f5e..f79f3bf6 100644 --- a/MPF.Processors/Redumper.cs +++ b/MPF.Processors/Redumper.cs @@ -381,11 +381,14 @@ namespace MPF.Processors break; case RedumpSystem.NamcoSegaNintendoTriforce: - info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var triforceBuildDate, out var triforceSerial, out _) ?? string.Empty; - info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = triforceSerial ?? string.Empty; - info.CommonDiscInfo.EXEDateBuildDate = triforceBuildDate ?? string.Empty; - info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; - // TODO: Support region setting from parsed value + if (Type == MediaType.CDROM) + { + info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var gdBuildDate, out var gdSerial, out _) ?? string.Empty; + info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = gdSerial ?? string.Empty; + info.CommonDiscInfo.EXEDateBuildDate = gdBuildDate ?? string.Empty; + info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; + // TODO: Support region setting from parsed value + } break; case RedumpSystem.SegaMegaCDSegaCD: @@ -396,35 +399,47 @@ namespace MPF.Processors break; case RedumpSystem.SegaChihiro: - info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var chihiroBuildDate, out var chihiroSerial, out _) ?? string.Empty; - info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = chihiroSerial ?? string.Empty; - info.CommonDiscInfo.EXEDateBuildDate = chihiroBuildDate ?? string.Empty; - info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; - // TODO: Support region setting from parsed value + if (Type == MediaType.CDROM) + { + info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var gdBuildDate, out var gdSerial, out _) ?? string.Empty; + info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = gdSerial ?? string.Empty; + info.CommonDiscInfo.EXEDateBuildDate = gdBuildDate ?? string.Empty; + info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; + // TODO: Support region setting from parsed value + } break; case RedumpSystem.SegaDreamcast: - info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var dcBuildDate, out var dcSerial, out _) ?? string.Empty; - info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = dcSerial ?? string.Empty; - info.CommonDiscInfo.EXEDateBuildDate = dcBuildDate ?? string.Empty; - info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; - // TODO: Support region setting from parsed value + if (Type == MediaType.CDROM) + { + info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var gdBuildDate, out var gdSerial, out _) ?? string.Empty; + info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = gdSerial ?? string.Empty; + info.CommonDiscInfo.EXEDateBuildDate = gdBuildDate ?? string.Empty; + info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; + // TODO: Support region setting from parsed value + } break; case RedumpSystem.SegaNaomi: - info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var naomiBuildDate, out var naomiSerial, out _) ?? string.Empty; - info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = naomiSerial ?? string.Empty; - info.CommonDiscInfo.EXEDateBuildDate = naomiBuildDate ?? string.Empty; - info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; - // TODO: Support region setting from parsed value + if (Type == MediaType.CDROM) + { + info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var gdBuildDate, out var gdSerial, out _) ?? string.Empty; + info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = gdSerial ?? string.Empty; + info.CommonDiscInfo.EXEDateBuildDate = gdBuildDate ?? string.Empty; + info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; + // TODO: Support region setting from parsed value + } break; case RedumpSystem.SegaNaomi2: - info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var naomi2BuildDate, out var naomi2Serial, out _) ?? string.Empty; - info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = naomi2Serial ?? string.Empty; - info.CommonDiscInfo.EXEDateBuildDate = naomi2BuildDate ?? string.Empty; - info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; - // TODO: Support region setting from parsed value + if (Type == MediaType.CDROM) + { + info.Extras!.Header = GetGDROMHeader($"{basePath}.log", out var gdBuildDate, out var gdSerial, out _) ?? string.Empty; + info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.InternalSerialName] = gdSerial ?? string.Empty; + info.CommonDiscInfo.EXEDateBuildDate = gdBuildDate ?? string.Empty; + info.VersionAndEditions!.Version = GetGDROMVersion(info.Extras.Header) ?? string.Empty; + // TODO: Support region setting from parsed value + } break; case RedumpSystem.SegaSaturn: