mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Add No-Intro MIA support
This commit is contained in:
@@ -565,6 +565,9 @@ namespace SabreTools.Core
|
|||||||
AltName,
|
AltName,
|
||||||
AltTitle,
|
AltTitle,
|
||||||
|
|
||||||
|
// Rom (Logiqx)
|
||||||
|
MIA,
|
||||||
|
|
||||||
// Rom (OpenMSX)
|
// Rom (OpenMSX)
|
||||||
Original,
|
Original,
|
||||||
OpenMSXSubType,
|
OpenMSXSubType,
|
||||||
|
|||||||
@@ -449,6 +449,10 @@ namespace SabreTools.Core.Tools
|
|||||||
case "alt-romtitle":
|
case "alt-romtitle":
|
||||||
return DatItemField.AltTitle;
|
return DatItemField.AltTitle;
|
||||||
|
|
||||||
|
// Rom (Logiqx)
|
||||||
|
case "mia":
|
||||||
|
return DatItemField.MIA;
|
||||||
|
|
||||||
// Rom (OpenMSX)
|
// Rom (OpenMSX)
|
||||||
case "original":
|
case "original":
|
||||||
return DatItemField.Original;
|
return DatItemField.Original;
|
||||||
|
|||||||
@@ -606,6 +606,7 @@ namespace SabreTools.DatFiles.Formats
|
|||||||
ItemStatus = reader.GetAttribute("status").AsItemStatus(),
|
ItemStatus = reader.GetAttribute("status").AsItemStatus(),
|
||||||
Date = CleanDate(reader.GetAttribute("date")),
|
Date = CleanDate(reader.GetAttribute("date")),
|
||||||
Inverted = reader.GetAttribute("inverted").AsYesNo(),
|
Inverted = reader.GetAttribute("inverted").AsYesNo(),
|
||||||
|
MIA = reader.GetAttribute("mia").AsYesNo(),
|
||||||
|
|
||||||
Source = new Source
|
Source = new Source
|
||||||
{
|
{
|
||||||
@@ -1090,6 +1091,7 @@ namespace SabreTools.DatFiles.Formats
|
|||||||
xtw.WriteOptionalAttributeString("date", rom.Date);
|
xtw.WriteOptionalAttributeString("date", rom.Date);
|
||||||
xtw.WriteOptionalAttributeString("status", rom.ItemStatus.FromItemStatus(false));
|
xtw.WriteOptionalAttributeString("status", rom.ItemStatus.FromItemStatus(false));
|
||||||
xtw.WriteOptionalAttributeString("inverted", rom.Inverted.FromYesNo());
|
xtw.WriteOptionalAttributeString("inverted", rom.Inverted.FromYesNo());
|
||||||
|
xtw.WriteOptionalAttributeString("mia", rom.MIA.FromYesNo());
|
||||||
xtw.WriteEndElement();
|
xtw.WriteEndElement();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
@@ -1123,6 +1123,9 @@ namespace SabreTools.DatFiles
|
|||||||
if (DatItemMappings.Keys.Contains(DatItemField.AltTitle))
|
if (DatItemMappings.Keys.Contains(DatItemField.AltTitle))
|
||||||
rom.AltTitle = DatItemMappings[DatItemField.AltTitle];
|
rom.AltTitle = DatItemMappings[DatItemField.AltTitle];
|
||||||
|
|
||||||
|
if (DatItemMappings.Keys.Contains(DatItemField.MIA))
|
||||||
|
rom.MIA = DatItemMappings[DatItemField.MIA].AsYesNo();
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region OpenMSX
|
#region OpenMSX
|
||||||
|
|||||||
@@ -230,6 +230,19 @@ namespace SabreTools.DatItems.Formats
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region Logiqx
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Alternate title for the item
|
||||||
|
/// </summary>
|
||||||
|
[JsonProperty("mia", DefaultValueHandling = DefaultValueHandling.Ignore), XmlElement("mia")]
|
||||||
|
public bool? MIA { get; set; } = null;
|
||||||
|
|
||||||
|
[JsonIgnore]
|
||||||
|
public bool MIASpecified { get { return MIA != null; } }
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region OpenMSX
|
#region OpenMSX
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -432,6 +445,8 @@ namespace SabreTools.DatItems.Formats
|
|||||||
AltName = this.AltName,
|
AltName = this.AltName,
|
||||||
AltTitle = this.AltTitle,
|
AltTitle = this.AltTitle,
|
||||||
|
|
||||||
|
MIA = this.MIA,
|
||||||
|
|
||||||
Original = this.Original,
|
Original = this.Original,
|
||||||
OpenMSXSubType = this.OpenMSXSubType,
|
OpenMSXSubType = this.OpenMSXSubType,
|
||||||
OpenMSXType = this.OpenMSXType,
|
OpenMSXType = this.OpenMSXType,
|
||||||
|
|||||||
@@ -51,11 +51,13 @@ namespace SabreTools.Filtering
|
|||||||
public FilterItem<string> Rotation { get; private set; } = new FilterItem<string>();
|
public FilterItem<string> Rotation { get; private set; } = new FilterItem<string>();
|
||||||
public FilterItem<string> Summation { get; private set; } = new FilterItem<string>();
|
public FilterItem<string> Summation { get; private set; } = new FilterItem<string>();
|
||||||
|
|
||||||
|
|
||||||
// Rom (AttractMode)
|
// Rom (AttractMode)
|
||||||
public FilterItem<string> AltName { get; private set; } = new FilterItem<string>();
|
public FilterItem<string> AltName { get; private set; } = new FilterItem<string>();
|
||||||
public FilterItem<string> AltTitle { get; private set; } = new FilterItem<string>();
|
public FilterItem<string> AltTitle { get; private set; } = new FilterItem<string>();
|
||||||
|
|
||||||
|
// Rom (Logiqx)
|
||||||
|
public FilterItem<bool?> MIA { get; private set; } = new FilterItem<bool?>();
|
||||||
|
|
||||||
// Rom (OpenMSX)
|
// Rom (OpenMSX)
|
||||||
public FilterItem<string> Original { get; private set; } = new FilterItem<string>();
|
public FilterItem<string> Original { get; private set; } = new FilterItem<string>();
|
||||||
public FilterItem<OpenMSXSubType> OpenMSXSubType { get; private set; } = new FilterItem<OpenMSXSubType>() { Positive = Core.OpenMSXSubType.NULL, Negative = Core.OpenMSXSubType.NULL };
|
public FilterItem<OpenMSXSubType> OpenMSXSubType { get; private set; } = new FilterItem<OpenMSXSubType>() { Positive = Core.OpenMSXSubType.NULL, Negative = Core.OpenMSXSubType.NULL };
|
||||||
@@ -368,6 +370,11 @@ namespace SabreTools.Filtering
|
|||||||
SetStringFilter(AltTitle, value, negate);
|
SetStringFilter(AltTitle, value, negate);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
// Rom (Logiqx)
|
||||||
|
case DatItemField.MIA:
|
||||||
|
SetBooleanFilter(MIA, value, negate);
|
||||||
|
break;
|
||||||
|
|
||||||
// Rom (OpenMSX)
|
// Rom (OpenMSX)
|
||||||
case DatItemField.Original:
|
case DatItemField.Original:
|
||||||
SetStringFilter(Original, value, negate);
|
SetStringFilter(Original, value, negate);
|
||||||
@@ -1855,6 +1862,14 @@ namespace SabreTools.Filtering
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region Logiqx
|
||||||
|
|
||||||
|
// Filter on MIA>
|
||||||
|
if (!PassBoolFilter(MIA, rom.MIA))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region OpenMSX
|
#region OpenMSX
|
||||||
|
|
||||||
// Filter on original
|
// Filter on original
|
||||||
|
|||||||
@@ -965,6 +965,13 @@ namespace SabreTools.Filtering
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region Logiqx
|
||||||
|
|
||||||
|
if (DatItemFields.Contains(DatItemField.MIA))
|
||||||
|
rom.MIA = null;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region OpenMSX
|
#region OpenMSX
|
||||||
|
|
||||||
if (DatItemFields.Contains(DatItemField.Original))
|
if (DatItemFields.Contains(DatItemField.Original))
|
||||||
|
|||||||
@@ -954,6 +954,13 @@ namespace SabreTools.Filtering
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region Logiqx
|
||||||
|
|
||||||
|
if (datItemFields.Contains(DatItemField.MIA))
|
||||||
|
rom.MIA = newItem.MIA;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region OpenMSX
|
#region OpenMSX
|
||||||
|
|
||||||
if (datItemFields.Contains(DatItemField.Original))
|
if (datItemFields.Contains(DatItemField.Original))
|
||||||
|
|||||||
@@ -44,8 +44,8 @@
|
|||||||
<relatedto>game3</relatedto>
|
<relatedto>game3</relatedto>
|
||||||
</trurip>
|
</trurip>
|
||||||
<disk name="disk" md5="a41d8cd98f00b204e9800998ecf8427e" sha1="aa39a3ee5e6b4b0d3255bfef95601890afd80709" merge="disk2" status="good" />
|
<disk name="disk" md5="a41d8cd98f00b204e9800998ecf8427e" sha1="aa39a3ee5e6b4b0d3255bfef95601890afd80709" merge="disk2" status="good" />
|
||||||
<media name="media" md5="b41d8cd98f00b204e9800998ecf8427e" sha1="ba39a3ee5e6b4b0d3255bfef95601890afd80709" sha256="aa7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad" spamsum="QXXY" />
|
<media name="media" md5="b41d8cd98f00b204e9800998ecf8427e" sha1="ba39a3ee5e6b4b0d3255bfef95601890afd80709" sha256="aa7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad" spamsum="QXXY"/>
|
||||||
<rom name="rom.bin" size="1024" crc="deadbeef" md5="c41d8cd98f00b204e9800998ecf8427e" sha1="ca39a3ee5e6b4b0d3255bfef95601890afd80709" sha256="ca7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad" sha384="ab00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7" sha512="cdaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f" spamsum="QXXZ" merge="rom2.bin" status="good" date="1980-01-01" inverted="true" />
|
<rom name="rom.bin" size="1024" crc="deadbeef" md5="c41d8cd98f00b204e9800998ecf8427e" sha1="ca39a3ee5e6b4b0d3255bfef95601890afd80709" sha256="ca7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad" sha384="ab00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7" sha512="cdaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f" spamsum="QXXZ" merge="rom2.bin" status="good" date="1980-01-01" inverted="true" mia="yes" />
|
||||||
</machine>
|
</machine>
|
||||||
<game name="game2">
|
<game name="game2">
|
||||||
<archive name="archive" />
|
<archive name="archive" />
|
||||||
|
|||||||
Reference in New Issue
Block a user