mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
[DatFile] Fix more offlinelist reading
This commit is contained in:
@@ -2516,6 +2516,10 @@ namespace SabreTools.Helper
|
|||||||
tempname = String.Join("\\", parent) + "\\" + tempname;
|
tempname = String.Join("\\", parent) + "\\" + tempname;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Special offline list parts
|
||||||
|
string ext = "";
|
||||||
|
string releaseNumber = "";
|
||||||
|
|
||||||
while (software || !subreader.EOF)
|
while (software || !subreader.EOF)
|
||||||
{
|
{
|
||||||
software = false;
|
software = false;
|
||||||
@@ -2534,6 +2538,9 @@ namespace SabreTools.Helper
|
|||||||
case "title":
|
case "title":
|
||||||
tempname = subreader.ReadElementContentAsString();
|
tempname = subreader.ReadElementContentAsString();
|
||||||
break;
|
break;
|
||||||
|
case "releaseNumber":
|
||||||
|
releaseNumber = subreader.ReadElementContentAsString();
|
||||||
|
break;
|
||||||
case "romSize":
|
case "romSize":
|
||||||
if (!Int64.TryParse(subreader.ReadElementContentAsString(), out size))
|
if (!Int64.TryParse(subreader.ReadElementContentAsString(), out size))
|
||||||
{
|
{
|
||||||
@@ -2541,11 +2548,12 @@ namespace SabreTools.Helper
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "romCRC":
|
case "romCRC":
|
||||||
tempname += (subreader.GetAttribute("extension") != null ? subreader.GetAttribute("extension") : "");
|
empty = false;
|
||||||
crc = subreader.ReadElementContentAsString();
|
|
||||||
|
|
||||||
DatItem olrom = new Rom(tempname, size, crc, null, null, ItemStatus.None, null, tempname, null, tempname, null, null,
|
ext = (subreader.GetAttribute("extension") != null ? subreader.GetAttribute("extension") : "");
|
||||||
null, null, null, null, false, null, null, sysid, null, srcid, "");
|
|
||||||
|
DatItem olrom = new Rom(releaseNumber + " - " + tempname + ext, size, subreader.ReadElementContentAsString(), null, null, ItemStatus.None,
|
||||||
|
null, tempname, null, tempname, null, null, null, null, null, null, false, null, null, sysid, null, srcid, "");
|
||||||
|
|
||||||
// Now process and add the rom
|
// Now process and add the rom
|
||||||
ParseAddHelper(olrom, gamename, romname, romtype, sgt, slt, seq, crc, md5, sha1, itemStatus, trim, single, root, clean, logger, out key);
|
ParseAddHelper(olrom, gamename, romname, romtype, sgt, slt, seq, crc, md5, sha1, itemStatus, trim, single, root, clean, logger, out key);
|
||||||
@@ -2562,6 +2570,8 @@ namespace SabreTools.Helper
|
|||||||
manufacturer = subreader.ReadElementContentAsString();
|
manufacturer = subreader.ReadElementContentAsString();
|
||||||
break;
|
break;
|
||||||
case "release":
|
case "release":
|
||||||
|
empty = false;
|
||||||
|
|
||||||
bool? defaultrel = null;
|
bool? defaultrel = null;
|
||||||
if (subreader.GetAttribute("default") != null)
|
if (subreader.GetAttribute("default") != null)
|
||||||
{
|
{
|
||||||
@@ -2583,6 +2593,8 @@ namespace SabreTools.Helper
|
|||||||
subreader.Read();
|
subreader.Read();
|
||||||
break;
|
break;
|
||||||
case "biosset":
|
case "biosset":
|
||||||
|
empty = false;
|
||||||
|
|
||||||
bool? defaultbios = null;
|
bool? defaultbios = null;
|
||||||
if (subreader.GetAttribute("default") != null)
|
if (subreader.GetAttribute("default") != null)
|
||||||
{
|
{
|
||||||
@@ -2605,6 +2617,8 @@ namespace SabreTools.Helper
|
|||||||
subreader.Read();
|
subreader.Read();
|
||||||
break;
|
break;
|
||||||
case "archive":
|
case "archive":
|
||||||
|
empty = false;
|
||||||
|
|
||||||
DatItem archiverom = new Archive(subreader.GetAttribute("name"), tempname, null, gamedesc, null, null,
|
DatItem archiverom = new Archive(subreader.GetAttribute("name"), tempname, null, gamedesc, null, null,
|
||||||
romof, cloneof, sampleof, null, false, null, null, sysid, filename, srcid, null);
|
romof, cloneof, sampleof, null, false, null, null, sysid, filename, srcid, null);
|
||||||
|
|
||||||
@@ -2614,6 +2628,8 @@ namespace SabreTools.Helper
|
|||||||
subreader.Read();
|
subreader.Read();
|
||||||
break;
|
break;
|
||||||
case "sample":
|
case "sample":
|
||||||
|
empty = false;
|
||||||
|
|
||||||
DatItem samplerom = new Sample(subreader.GetAttribute("name"), tempname, null, gamedesc, null, null,
|
DatItem samplerom = new Sample(subreader.GetAttribute("name"), tempname, null, gamedesc, null, null,
|
||||||
romof, cloneof, sampleof, null, false, null, null, sysid, filename, srcid, null);
|
romof, cloneof, sampleof, null, false, null, null, sysid, filename, srcid, null);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user