mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Wire up remaining Logiqx header values
This commit is contained in:
@@ -203,14 +203,41 @@ namespace SabreTools.Library.DatFiles
|
|||||||
[JsonProperty("build")]
|
[JsonProperty("build")]
|
||||||
public string Build { get; set; }
|
public string Build { get; set; }
|
||||||
|
|
||||||
// TODO: Implement the following header values:
|
/// <summary>
|
||||||
// - romcenter.plugin
|
/// RomCenter rom mode
|
||||||
// - romcenter.rommode (merged|split|unmerged) "split"
|
/// </summary>
|
||||||
// - romcenter.biosmode (merged|split|unmerged) "split"
|
[JsonProperty("rommode")]
|
||||||
// - romcenter.samplemode (merged|unmerged) "merged"
|
public string RomMode { get; set; } // (merged|split|unmerged) "split"
|
||||||
// - romcenter.lockrommode (yes|no) "no"
|
|
||||||
// - romcenter.lockbiosmode (yes|no) "no"
|
/// <summary>
|
||||||
// - romcenter.locksamplemode (yes|no) "no"
|
/// RomCenter bios mode
|
||||||
|
/// </summary>
|
||||||
|
[JsonProperty("biosmode")]
|
||||||
|
public string BiosMode { get; set; } // (merged|split|unmerged) "split"
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// RomCenter sample mode
|
||||||
|
/// </summary>
|
||||||
|
[JsonProperty("samplemode")]
|
||||||
|
public string SampleMode { get; set; } // (merged|unmerged) "merged"
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// RomCenter lock rom mode
|
||||||
|
/// </summary>
|
||||||
|
[JsonProperty("lockrommode")]
|
||||||
|
public bool? LockRomMode { get; set; } // (yes|no) "no"
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// RomCenter lock bios mode
|
||||||
|
/// </summary>
|
||||||
|
[JsonProperty("lockbiosmode")]
|
||||||
|
public bool? LockBiosMode { get; set; } // (yes|no) "no"
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// RomCenter lock sample mode
|
||||||
|
/// </summary>
|
||||||
|
[JsonProperty("locksamplemode")]
|
||||||
|
public bool? LockSampleMode { get; set; } // (yes|no) "no"
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
@@ -229,7 +256,7 @@ namespace SabreTools.Library.DatFiles
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// System
|
/// System
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>Known as "plugin" in RomCenter</remarks>
|
/// <remarks>Known as "plugin" in Logiqx and RomCenter</remarks>
|
||||||
[JsonProperty("system")]
|
[JsonProperty("system")]
|
||||||
public string System { get; set; }
|
public string System { get; set; }
|
||||||
|
|
||||||
@@ -260,7 +287,7 @@ namespace SabreTools.Library.DatFiles
|
|||||||
// TODO: Implement the following header values:
|
// TODO: Implement the following header values:
|
||||||
// - newdat.datversionurl (currently reads and writes to Header.Url, not strictly correct)
|
// - newdat.datversionurl (currently reads and writes to Header.Url, not strictly correct)
|
||||||
// - newdat.daturl (currently writes to Header.Url, not strictly correct)
|
// - newdat.daturl (currently writes to Header.Url, not strictly correct)
|
||||||
// - newdat.daturl[fileName] (currently writes to Header.FileName, not strictly correct)
|
// - newdat.daturl[fileName] (currently writes to Header.FileName + ".zip", not strictly correct)
|
||||||
// - newdat.imurl (currently writes to Header.Url, not strictly correct)
|
// - newdat.imurl (currently writes to Header.Url, not strictly correct)
|
||||||
// - search[...].to.find[operation, value (Int32?)]
|
// - search[...].to.find[operation, value (Int32?)]
|
||||||
// - search[...].to[value, default (true|false), auto (true, false)]
|
// - search[...].to[value, default (true|false), auto (true, false)]
|
||||||
|
|||||||
@@ -234,6 +234,36 @@ namespace SabreTools.Library.DatFiles
|
|||||||
Header.Build = (Header.Build == null ? content : Header.Build);
|
Header.Build = (Header.Build == null ? content : Header.Build);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "rommode":
|
||||||
|
content = jtr.ReadAsString();
|
||||||
|
Header.RomMode = (Header.RomMode == null ? content : Header.RomMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "biosmode":
|
||||||
|
content = jtr.ReadAsString();
|
||||||
|
Header.BiosMode = (Header.BiosMode == null ? content : Header.BiosMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "samplemode":
|
||||||
|
content = jtr.ReadAsString();
|
||||||
|
Header.Build = (Header.SampleMode == null ? content : Header.SampleMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "lockrommode":
|
||||||
|
content = jtr.ReadAsString();
|
||||||
|
Header.LockRomMode = (Header.LockRomMode == null ? content.AsYesNo() : Header.LockRomMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "lockbiosmode":
|
||||||
|
content = jtr.ReadAsString();
|
||||||
|
Header.LockBiosMode = (Header.LockBiosMode == null ? content.AsYesNo() : Header.LockBiosMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "locksamplemode":
|
||||||
|
content = jtr.ReadAsString();
|
||||||
|
Header.LockSampleMode = (Header.LockSampleMode == null ? content.AsYesNo() : Header.LockSampleMode);
|
||||||
|
break;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region OfflineList
|
#region OfflineList
|
||||||
@@ -1141,6 +1171,69 @@ namespace SabreTools.Library.DatFiles
|
|||||||
jtw.WriteValue(Header.Build);
|
jtw.WriteValue(Header.Build);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(Header.RomMode))
|
||||||
|
{
|
||||||
|
jtw.WritePropertyName("rommode");
|
||||||
|
jtw.WriteValue(Header.RomMode);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(Header.BiosMode))
|
||||||
|
{
|
||||||
|
jtw.WritePropertyName("biosmode");
|
||||||
|
jtw.WriteValue(Header.BiosMode);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(Header.SampleMode))
|
||||||
|
{
|
||||||
|
jtw.WritePropertyName("samplemode");
|
||||||
|
jtw.WriteValue(Header.SampleMode);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Header.LockRomMode != null)
|
||||||
|
{
|
||||||
|
switch (Header.LockRomMode)
|
||||||
|
{
|
||||||
|
case true:
|
||||||
|
jtw.WritePropertyName("lockrommode");
|
||||||
|
jtw.WriteValue("yes");
|
||||||
|
break;
|
||||||
|
case false:
|
||||||
|
jtw.WritePropertyName("lockrommode");
|
||||||
|
jtw.WriteValue("no");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Header.LockBiosMode != null)
|
||||||
|
{
|
||||||
|
switch (Header.LockBiosMode)
|
||||||
|
{
|
||||||
|
case true:
|
||||||
|
jtw.WritePropertyName("lockbiosmode");
|
||||||
|
jtw.WriteValue("yes");
|
||||||
|
break;
|
||||||
|
case false:
|
||||||
|
jtw.WritePropertyName("lockbiosmode");
|
||||||
|
jtw.WriteValue("no");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Header.LockSampleMode != null)
|
||||||
|
{
|
||||||
|
switch (Header.LockSampleMode)
|
||||||
|
{
|
||||||
|
case true:
|
||||||
|
jtw.WritePropertyName("locksamplemode");
|
||||||
|
jtw.WriteValue("yes");
|
||||||
|
break;
|
||||||
|
case false:
|
||||||
|
jtw.WritePropertyName("locksamplemode");
|
||||||
|
jtw.WriteValue("no");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region OfflineList
|
#region OfflineList
|
||||||
|
|||||||
@@ -237,35 +237,23 @@ namespace SabreTools.Library.DatFiles
|
|||||||
if (Header.System == null)
|
if (Header.System == null)
|
||||||
Header.System = reader.GetAttribute("plugin");
|
Header.System = reader.GetAttribute("plugin");
|
||||||
|
|
||||||
if (reader.GetAttribute("rommode") != null)
|
if (Header.RomMode == null)
|
||||||
{
|
Header.RomMode = reader.GetAttribute("rommode");
|
||||||
// (merged|split|unmerged) "split"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (reader.GetAttribute("biosmode") != null)
|
if (Header.BiosMode == null)
|
||||||
{
|
Header.BiosMode = reader.GetAttribute("biosmode");
|
||||||
// (merged|split|unmerged) "split"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (reader.GetAttribute("samplemode") != null)
|
if (Header.SampleMode == null)
|
||||||
{
|
Header.SampleMode = reader.GetAttribute("samplemode");
|
||||||
// (merged|unmerged) "merged"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (reader.GetAttribute("lockrommode") != null)
|
if (Header.LockRomMode == null)
|
||||||
{
|
Header.LockRomMode = reader.GetAttribute("lockrommode").AsYesNo();
|
||||||
// (yes|no) "no"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (reader.GetAttribute("lockbiosmode") != null)
|
if (Header.LockBiosMode == null)
|
||||||
{
|
Header.LockBiosMode = reader.GetAttribute("lockbiosmode").AsYesNo();
|
||||||
// (yes|no) "no"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (reader.GetAttribute("locksamplemode") != null)
|
if (Header.LockSampleMode == null)
|
||||||
{
|
Header.LockSampleMode = reader.GetAttribute("locksamplemode").AsYesNo();
|
||||||
// (yes|no) "no"
|
|
||||||
}
|
|
||||||
|
|
||||||
reader.Read();
|
reader.Read();
|
||||||
break;
|
break;
|
||||||
@@ -863,6 +851,68 @@ namespace SabreTools.Library.DatFiles
|
|||||||
xtw.WriteEndElement();
|
xtw.WriteEndElement();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Header.System != null
|
||||||
|
|| Header.RomMode != null || Header.LockRomMode != null
|
||||||
|
|| Header.BiosMode != null || Header.LockBiosMode != null
|
||||||
|
|| Header.SampleMode != null || Header.LockSampleMode != null)
|
||||||
|
{
|
||||||
|
xtw.WriteStartElement("romcenter");
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(Header.System))
|
||||||
|
xtw.WriteAttributeString("plugin", Header.System);
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(Header.RomMode))
|
||||||
|
xtw.WriteAttributeString("rommode", Header.RomMode);
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(Header.BiosMode))
|
||||||
|
xtw.WriteAttributeString("biosmode", Header.BiosMode);
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(Header.SampleMode))
|
||||||
|
xtw.WriteAttributeString("samplemode", Header.SampleMode);
|
||||||
|
|
||||||
|
if (Header.LockRomMode != null)
|
||||||
|
{
|
||||||
|
switch (Header.LockRomMode)
|
||||||
|
{
|
||||||
|
case true:
|
||||||
|
xtw.WriteAttributeString("lockrommode", "yes");
|
||||||
|
break;
|
||||||
|
case false:
|
||||||
|
xtw.WriteAttributeString("lockrommode", "no");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Header.LockBiosMode != null)
|
||||||
|
{
|
||||||
|
switch (Header.LockBiosMode)
|
||||||
|
{
|
||||||
|
case true:
|
||||||
|
xtw.WriteAttributeString("lockbiosmode", "yes");
|
||||||
|
break;
|
||||||
|
case false:
|
||||||
|
xtw.WriteAttributeString("lockbiosmode", "no");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Header.LockSampleMode != null)
|
||||||
|
{
|
||||||
|
switch (Header.LockSampleMode)
|
||||||
|
{
|
||||||
|
case true:
|
||||||
|
xtw.WriteAttributeString("locksamplemode", "yes");
|
||||||
|
break;
|
||||||
|
case false:
|
||||||
|
xtw.WriteAttributeString("locksamplemode", "no");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// End romcenter
|
||||||
|
xtw.WriteEndElement();
|
||||||
|
}
|
||||||
|
|
||||||
// End header
|
// End header
|
||||||
xtw.WriteEndElement();
|
xtw.WriteEndElement();
|
||||||
|
|
||||||
|
|||||||
@@ -206,6 +206,30 @@ namespace SabreTools.Library.DatFiles
|
|||||||
Header.Build = (Header.Build == null ? value : Header.Build);
|
Header.Build = (Header.Build == null ? value : Header.Build);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "DatFile.RomMode":
|
||||||
|
Header.RomMode = (Header.RomMode == null ? value : Header.RomMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "DatFile.BiosMode":
|
||||||
|
Header.BiosMode = (Header.BiosMode == null ? value : Header.BiosMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "DatFile.SampleMode":
|
||||||
|
Header.SampleMode = (Header.SampleMode == null ? value : Header.SampleMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "DatFile.LockRomMode":
|
||||||
|
Header.LockRomMode = (Header.LockRomMode == null ? value.AsYesNo() : Header.LockRomMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "DatFile.LockBiosMode":
|
||||||
|
Header.LockBiosMode = (Header.LockBiosMode == null ? value.AsYesNo() : Header.LockBiosMode);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "DatFile.LockSampleMode":
|
||||||
|
Header.LockSampleMode = (Header.LockSampleMode == null ? value.AsYesNo() : Header.LockSampleMode);
|
||||||
|
break;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region OfflineList
|
#region OfflineList
|
||||||
@@ -810,6 +834,36 @@ namespace SabreTools.Library.DatFiles
|
|||||||
case "build":
|
case "build":
|
||||||
return "DatFile.Build";
|
return "DatFile.Build";
|
||||||
|
|
||||||
|
case "rommode":
|
||||||
|
case "rom mode":
|
||||||
|
case "rom-mode":
|
||||||
|
return "DatFile.RomMode";
|
||||||
|
|
||||||
|
case "biosmode":
|
||||||
|
case "bios mode":
|
||||||
|
case "bios-mode":
|
||||||
|
return "DatFile.BiosMode";
|
||||||
|
|
||||||
|
case "samplemode":
|
||||||
|
case "sample mode":
|
||||||
|
case "sample-mode":
|
||||||
|
return "DatFile.SampleMode";
|
||||||
|
|
||||||
|
case "lockrommode":
|
||||||
|
case "lock rom mode":
|
||||||
|
case "lock-rom-mode":
|
||||||
|
return "DatFile.LockRomMode";
|
||||||
|
|
||||||
|
case "lockbiosmode":
|
||||||
|
case "lock bios mode":
|
||||||
|
case "lock-bios-mode":
|
||||||
|
return "DatFile.LockBiosMode";
|
||||||
|
|
||||||
|
case "locksamplemode":
|
||||||
|
case "lock sample mode":
|
||||||
|
case "lock-sample-mode":
|
||||||
|
return "DatFile.LockSampleMode";
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region OfflineList
|
#region OfflineList
|
||||||
|
|||||||
Reference in New Issue
Block a user