Merge pull request #2266 from TASVideos/ps2-disque-check

Reorder the optical disk id checks
This commit is contained in:
zeromus 2020-08-03 16:43:15 -04:00 committed by GitHub
commit 93c3f0f217
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 8 additions and 8 deletions

View File

@ -190,6 +190,14 @@ namespace BizHawk.Emulation.DiscSystem
//its a cheap win for a lot of systems, but ONLY if the iso.Parse() method is quick running (might have to time it)
if (isIso)
{
if (iso.Root.Children.TryGetValue("SYSTEM.CNF;1", out var cnf))
{
if (SectorContains("BOOT2", (int)cnf.Offset))
return DiscType.SonyPS2;
else if (SectorContains("BOOT", (int)cnf.Offset))
return DiscType.SonyPSX;
}
var appId = Encoding.ASCII.GetString(iso.VolumeDescriptors[0].ApplicationIdentifier).TrimEnd('\0', ' ');
var sysId = Encoding.ASCII.GetString(iso.VolumeDescriptors[0].SystemIdentifier).TrimEnd('\0', ' ');
@ -222,14 +230,6 @@ namespace BizHawk.Emulation.DiscSystem
return DiscType.Amiga;
}
if (iso.Root.Children.TryGetValue("SYSTEM.CNF;1", out var cnf))
{
if (SectorContains("BOOT2", (int)cnf.Offset))
return DiscType.SonyPS2;
else if (SectorContains("BOOT", (int)cnf.Offset))
return DiscType.SonyPSX;
}
// NeoGeoCD Check
var absTxt = iso.Root.Children.Where(kvp => kvp.Key.Contains("ABS.TXT")).Select(kvp => kvp.Value).FirstOrDefault();
if (absTxt != null && SectorContains("abstracted by snk", Convert.ToInt32(absTxt.Offset))) return DiscType.NeoGeoCD;