diff --git a/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs b/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs
index 05672d49..22501218 100644
--- a/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs
+++ b/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs
@@ -23,13 +23,13 @@ namespace SabreTools.Data.Extensions.Test
Rom? actual = self.ConvertToRom();
Assert.NotNull(actual);
- Assert.Equal(6, actual.Count);
+ Assert.Equal(5, actual.Count);
Assert.Equal(ItemType.Rom, actual.ItemType);
Assert.Null(actual.Name);
Assert.Null(actual[Rom.MergeKey]);
Assert.Null(actual[Rom.RegionKey]);
Assert.Null(actual[Rom.StatusKey]);
- Assert.Null(actual[Rom.OptionalKey]);
+ Assert.Null(actual.Optional);
Assert.Null(actual[Rom.MD5Key]);
Assert.Null(actual[Rom.SHA1Key]);
}
@@ -43,7 +43,7 @@ namespace SabreTools.Data.Extensions.Test
[Disk.MergeKey] = "XXXXXX",
[Disk.RegionKey] = "XXXXXX",
[Disk.StatusKey] = "XXXXXX",
- [Disk.OptionalKey] = "XXXXXX",
+ Optional = true,
[Disk.MD5Key] = "XXXXXX",
[Disk.SHA1Key] = "XXXXXX",
};
@@ -51,13 +51,13 @@ namespace SabreTools.Data.Extensions.Test
Rom? actual = self.ConvertToRom();
Assert.NotNull(actual);
- Assert.Equal(6, actual.Count);
+ Assert.Equal(5, actual.Count);
Assert.Equal(ItemType.Rom, actual.ItemType);
Assert.Equal("XXXXXX.chd", actual.Name);
Assert.Equal("XXXXXX", actual[Rom.MergeKey]);
Assert.Equal("XXXXXX", actual[Rom.RegionKey]);
Assert.Equal("XXXXXX", actual[Rom.StatusKey]);
- Assert.Equal("XXXXXX", actual[Rom.OptionalKey]);
+ Assert.Equal(true, actual.Optional);
Assert.Equal("XXXXXX", actual[Rom.MD5Key]);
Assert.Equal("XXXXXX", actual[Rom.SHA1Key]);
}
diff --git a/SabreTools.Data.Extensions/MetadataExtensions.cs b/SabreTools.Data.Extensions/MetadataExtensions.cs
index 36d8c2ca..1be262c0 100644
--- a/SabreTools.Data.Extensions/MetadataExtensions.cs
+++ b/SabreTools.Data.Extensions/MetadataExtensions.cs
@@ -137,12 +137,108 @@ namespace SabreTools.Data.Extensions
///
/// Deep clone a DictionaryBase object
///
+ /// TODO: Move this to Clone methods in each file when keys go away entirely
public static DictionaryBase? Clone(this DictionaryBase self)
{
// If construction failed, we can't do anything
if (Activator.CreateInstance(self.GetType()) is not DictionaryBase clone)
return null;
+ // Handle individual type properties
+ if (self is Adjuster selfAdjuster && clone is Adjuster cloneAdjuster)
+ {
+ cloneAdjuster.Default = selfAdjuster.Default;
+ }
+ else if (self is BiosSet selfBiosSet && clone is BiosSet cloneBiosSet)
+ {
+ cloneBiosSet.Default = selfBiosSet.Default;
+ }
+ else if (self is Chip selfChip && clone is Chip cloneChip)
+ {
+ cloneChip.SoundOnly = selfChip.SoundOnly;
+ }
+ else if (self is ConfLocation selfConfLocation && clone is ConfLocation cloneConfLocation)
+ {
+ cloneConfLocation.Inverted = selfConfLocation.Inverted;
+ }
+ else if (self is ConfSetting selfConfSetting && clone is ConfSetting cloneConfSetting)
+ {
+ cloneConfSetting.Default = selfConfSetting.Default;
+ }
+ else if (self is Control selfControl && clone is Control cloneControl)
+ {
+ cloneControl.Reverse = selfControl.Reverse;
+ }
+ else if (self is DipLocation selfDipLocation && clone is DipLocation cloneDipLocation)
+ {
+ cloneDipLocation.Inverted = selfDipLocation.Inverted;
+ }
+ else if (self is DipSwitch selfDipSwitch && clone is DipSwitch cloneDipSwitch)
+ {
+ cloneDipSwitch.Default = selfDipSwitch.Default;
+ }
+ else if (self is DipValue selfDipValue && clone is DipValue cloneDipValue)
+ {
+ cloneDipValue.Default = selfDipValue.Default;
+ }
+ else if (self is Disk selfDisk && clone is Disk cloneDisk)
+ {
+ cloneDisk.Optional = selfDisk.Optional;
+ cloneDisk.Writable = selfDisk.Writable;
+ }
+ else if (self is Display selfDisplay && clone is Display cloneDisplay)
+ {
+ cloneDisplay.FlipX = selfDisplay.FlipX;
+ }
+ else if (self is Driver selfDriver && clone is Driver cloneDriver)
+ {
+ cloneDriver.Incomplete = selfDriver.Incomplete;
+ cloneDriver.NoSoundHardware = selfDriver.NoSoundHardware;
+ cloneDriver.RequiresArtwork = selfDriver.RequiresArtwork;
+ cloneDriver.Unofficial = selfDriver.Unofficial;
+ }
+ else if (self is Header selfHeader && clone is Header cloneHeader)
+ {
+ cloneHeader.Debug = selfHeader.Debug;
+ cloneHeader.ForceZipping = selfHeader.ForceZipping;
+ cloneHeader.LockBiosMode = selfHeader.LockBiosMode;
+ cloneHeader.LockRomMode = selfHeader.LockRomMode;
+ cloneHeader.LockSampleMode = selfHeader.LockSampleMode;
+ }
+ else if (self is Input selfInput && clone is Input cloneInput)
+ {
+ cloneInput.Service = selfInput.Service;
+ cloneInput.Tilt = selfInput.Tilt;
+ }
+ else if (self is Machine selfMachine && clone is Machine cloneMachine)
+ {
+ cloneMachine.IsBios = selfMachine.IsBios;
+ cloneMachine.IsDevice = selfMachine.IsDevice;
+ cloneMachine.IsMechanical = selfMachine.IsMechanical;
+ cloneMachine.Runnable = selfMachine.Runnable;
+ }
+ else if (self is RamOption selfRamOption && clone is RamOption cloneRamOption)
+ {
+ cloneRamOption.Default = selfRamOption.Default;
+ }
+ else if (self is Release selfRelease && clone is Release cloneRelease)
+ {
+ cloneRelease.Default = selfRelease.Default;
+ }
+ else if (self is Rom selfRom && clone is Rom cloneRom)
+ {
+ cloneRom.Dispose = selfRom.Dispose;
+ cloneRom.FileIsAvailable = selfRom.FileIsAvailable;
+ cloneRom.Inverted = selfRom.Inverted;
+ cloneRom.MIA = selfRom.MIA;
+ cloneRom.Optional = selfRom.Optional;
+ cloneRom.SoundOnly = selfRom.SoundOnly;
+ }
+ else if (self is SlotOption selfSlotOption && clone is SlotOption cloneSlotOption)
+ {
+ cloneSlotOption.Default = selfSlotOption.Default;
+ }
+
// Handle known properties
clone.SetName(self.GetName());
@@ -213,7 +309,7 @@ namespace SabreTools.Data.Extensions
[Rom.MergeKey] = disk.ReadString(Disk.MergeKey),
[Rom.RegionKey] = disk.ReadString(Disk.RegionKey),
[Rom.StatusKey] = disk.ReadString(Disk.StatusKey),
- [Rom.OptionalKey] = disk.ReadString(Disk.OptionalKey),
+ Optional = disk.Optional,
[Rom.MD5Key] = disk.ReadString(Disk.MD5Key),
[Rom.SHA1Key] = disk.ReadString(Disk.SHA1Key),
};
diff --git a/SabreTools.Data.Models/AttractMode/Row.cs b/SabreTools.Data.Models/AttractMode/Row.cs
index 06867ab5..6f4c648e 100644
--- a/SabreTools.Data.Models/AttractMode/Row.cs
+++ b/SabreTools.Data.Models/AttractMode/Row.cs
@@ -46,6 +46,6 @@ namespace SabreTools.Data.Models.AttractMode
public string? PlayedTime { get; set; }
- public string? FileIsAvailable { get; set; }
+ public bool? FileIsAvailable { get; set; }
}
}
diff --git a/SabreTools.Data.Models/ClrMamePro/BiosSet.cs b/SabreTools.Data.Models/ClrMamePro/BiosSet.cs
index c9a79177..a6d069ea 100644
--- a/SabreTools.Data.Models/ClrMamePro/BiosSet.cs
+++ b/SabreTools.Data.Models/ClrMamePro/BiosSet.cs
@@ -3,15 +3,15 @@ namespace SabreTools.Data.Models.ClrMamePro
/// biosset
public class BiosSet
{
- /// name
+ /// "name"
[Required]
public string? Name { get; set; }
- /// description
+ /// "description"
[Required]
public string? Description { get; set; }
- /// default
+ /// "default", (yes|no) "no"
public bool? Default { get; set; }
}
}
diff --git a/SabreTools.Data.Models/ClrMamePro/ClrMamePro.cs b/SabreTools.Data.Models/ClrMamePro/ClrMamePro.cs
index 4cc061bd..b9255253 100644
--- a/SabreTools.Data.Models/ClrMamePro/ClrMamePro.cs
+++ b/SabreTools.Data.Models/ClrMamePro/ClrMamePro.cs
@@ -42,8 +42,8 @@ namespace SabreTools.Data.Models.ClrMamePro
/// forcemerging
public string? ForceMerging { get; set; }
- /// forcezipping
- public string? ForceZipping { get; set; }
+ /// forcezipping, (yes|no) "no"
+ public bool? ForceZipping { get; set; }
/// forcepacking
public string? ForcePacking { get; set; }
diff --git a/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs b/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs
index b75d2785..49a970ff 100644
--- a/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs
+++ b/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs
@@ -4,14 +4,14 @@ namespace SabreTools.Data.Models.ClrMamePro
/// dipswitch
public class DipSwitch
{
- /// name
+ /// "name"
[Required]
public string? Name { get; set; }
- /// entry
+ /// "entry"
public string[]? Entry { get; set; }
- /// default, (yes|no) "no"
+ /// "default", (yes|no) "no"
public bool? Default { get; set; }
}
}
diff --git a/SabreTools.Data.Models/ClrMamePro/Input.cs b/SabreTools.Data.Models/ClrMamePro/Input.cs
index 3a413113..a956575a 100644
--- a/SabreTools.Data.Models/ClrMamePro/Input.cs
+++ b/SabreTools.Data.Models/ClrMamePro/Input.cs
@@ -4,24 +4,24 @@ namespace SabreTools.Data.Models.ClrMamePro
/// input
public class Input
{
- /// players, Numeric/remarks>
+ /// "players", Numeric/remarks>
[Required]
public string? Players { get; set; }
- /// control
+ /// "control"
public string? Control { get; set; }
- /// buttons, Numeric
+ /// "buttons", Numeric
[Required]
public string? Buttons { get; set; }
- /// coins, Numeric
+ /// "coins", Numeric
public string? Coins { get; set; }
- /// tilt, (yes|no) "no"
- public string? Tilt { get; set; }
+ /// "tilt", (yes|no) "no"
+ public bool? Tilt { get; set; }
- /// service, (yes|no) "no"
- public string? Service { get; set; }
+ /// "service", (yes|no) "no"
+ public bool? Service { get; set; }
}
}
diff --git a/SabreTools.Data.Models/ClrMamePro/Release.cs b/SabreTools.Data.Models/ClrMamePro/Release.cs
index 7c6bf0f7..afb313d8 100644
--- a/SabreTools.Data.Models/ClrMamePro/Release.cs
+++ b/SabreTools.Data.Models/ClrMamePro/Release.cs
@@ -4,21 +4,21 @@ namespace SabreTools.Data.Models.ClrMamePro
/// release
public class Release
{
- /// name
+ /// "name"
[Required]
public string? Name { get; set; }
- /// region
+ /// "region"
[Required]
public string? Region { get; set; }
- /// language
+ /// "language"
public string? Language { get; set; }
- /// date
+ /// "date"
public string? Date { get; set; }
- /// default
+ /// "default", (yes|no) "no"
public bool? Default { get; set; }
}
}
diff --git a/SabreTools.Data.Models/ClrMamePro/Rom.cs b/SabreTools.Data.Models/ClrMamePro/Rom.cs
index 4034798e..6e64c274 100644
--- a/SabreTools.Data.Models/ClrMamePro/Rom.cs
+++ b/SabreTools.Data.Models/ClrMamePro/Rom.cs
@@ -101,10 +101,10 @@ namespace SabreTools.Data.Models.ClrMamePro
#region RomVault Extensions
/// inverted; Boolean; Appears after Date
- public string? Inverted { get; set; }
+ public bool? Inverted { get; set; }
/// mia; Boolean; Appears after Inverted
- public string? MIA { get; set; }
+ public bool? MIA { get; set; }
#endregion
}
diff --git a/SabreTools.Data.Models/Listxml/Chip.cs b/SabreTools.Data.Models/Listxml/Chip.cs
index 993a967f..c0d48393 100644
--- a/SabreTools.Data.Models/Listxml/Chip.cs
+++ b/SabreTools.Data.Models/Listxml/Chip.cs
@@ -20,7 +20,7 @@ namespace SabreTools.Data.Models.Listxml
/// Only present in older versions
[XmlAttribute("soundonly")]
- public string? SoundOnly { get; set; }
+ public bool? SoundOnly { get; set; }
[XmlAttribute("clock")]
public string? Clock { get; set; }
diff --git a/SabreTools.Data.Models/Listxml/ConfLocation.cs b/SabreTools.Data.Models/Listxml/ConfLocation.cs
index dd1da1dc..b6fe99b3 100644
--- a/SabreTools.Data.Models/Listxml/ConfLocation.cs
+++ b/SabreTools.Data.Models/Listxml/ConfLocation.cs
@@ -17,6 +17,6 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("inverted")]
- public string? Inverted { get; set; }
+ public bool? Inverted { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Listxml/Control.cs b/SabreTools.Data.Models/Listxml/Control.cs
index e5b0f134..3deb7c4e 100644
--- a/SabreTools.Data.Models/Listxml/Control.cs
+++ b/SabreTools.Data.Models/Listxml/Control.cs
@@ -41,7 +41,7 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("reverse")]
- public string? Reverse { get; set; }
+ public bool? Reverse { get; set; }
/// Numeric?
[XmlAttribute("ways")]
diff --git a/SabreTools.Data.Models/Listxml/DipLocation.cs b/SabreTools.Data.Models/Listxml/DipLocation.cs
index f669f3e5..597ffc4a 100644
--- a/SabreTools.Data.Models/Listxml/DipLocation.cs
+++ b/SabreTools.Data.Models/Listxml/DipLocation.cs
@@ -17,6 +17,6 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("inverted")]
- public string? Inverted { get; set; }
+ public bool? Inverted { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Listxml/Disk.cs b/SabreTools.Data.Models/Listxml/Disk.cs
index 3b4c6158..79908639 100644
--- a/SabreTools.Data.Models/Listxml/Disk.cs
+++ b/SabreTools.Data.Models/Listxml/Disk.cs
@@ -29,7 +29,7 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("writable")]
- public string? Writable { get; set; }
+ public bool? Writable { get; set; }
/// (baddump|nodump|good) "good"
[XmlAttribute("status")]
@@ -37,6 +37,6 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("optional")]
- public string? Optional { get; set; }
+ public bool? Optional { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Listxml/Display.cs b/SabreTools.Data.Models/Listxml/Display.cs
index 885cb5f3..420e5892 100644
--- a/SabreTools.Data.Models/Listxml/Display.cs
+++ b/SabreTools.Data.Models/Listxml/Display.cs
@@ -20,7 +20,7 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("flipx")]
- public string? FlipX { get; set; }
+ public bool? FlipX { get; set; }
/// Numeric
[XmlAttribute("width")]
diff --git a/SabreTools.Data.Models/Listxml/Driver.cs b/SabreTools.Data.Models/Listxml/Driver.cs
index 56efb119..98f55f50 100644
--- a/SabreTools.Data.Models/Listxml/Driver.cs
+++ b/SabreTools.Data.Models/Listxml/Driver.cs
@@ -40,18 +40,18 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("requiresartwork")]
- public string? RequiresArtwork { get; set; }
+ public bool? RequiresArtwork { get; set; }
/// (yes|no) "no"
[XmlAttribute("unofficial")]
- public string? Unofficial { get; set; }
+ public bool? Unofficial { get; set; }
/// (yes|no) "no"
[XmlAttribute("nosoundhardware")]
- public string? NoSoundHardware { get; set; }
+ public bool? NoSoundHardware { get; set; }
/// (yes|no) "no"
[XmlAttribute("incomplete")]
- public string? Incomplete { get; set; }
+ public bool? Incomplete { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Listxml/GameBase.cs b/SabreTools.Data.Models/Listxml/GameBase.cs
index bec36fcd..6de1140e 100644
--- a/SabreTools.Data.Models/Listxml/GameBase.cs
+++ b/SabreTools.Data.Models/Listxml/GameBase.cs
@@ -18,19 +18,19 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no", Machine only
[XmlAttribute("isbios")]
- public string? IsBios { get; set; }
+ public bool? IsBios { get; set; }
/// (yes|no) "no", Machine only
[XmlAttribute("isdevice")]
- public string? IsDevice { get; set; }
+ public bool? IsDevice { get; set; }
/// (yes|no) "no", Machine only
[XmlAttribute("ismechanical")]
- public string? IsMechanical { get; set; }
+ public bool? IsMechanical { get; set; }
/// (yes|no) "no"
[XmlAttribute("runnable")]
- public string? Runnable { get; set; }
+ public bool? Runnable { get; set; }
[XmlAttribute("cloneof")]
public string? CloneOf { get; set; }
diff --git a/SabreTools.Data.Models/Listxml/Input.cs b/SabreTools.Data.Models/Listxml/Input.cs
index f856df6d..438e7a6c 100644
--- a/SabreTools.Data.Models/Listxml/Input.cs
+++ b/SabreTools.Data.Models/Listxml/Input.cs
@@ -8,11 +8,11 @@ namespace SabreTools.Data.Models.Listxml
{
/// (yes|no) "no"
[XmlAttribute("service")]
- public string? Service { get; set; }
+ public bool? Service { get; set; }
/// (yes|no) "no"
[XmlAttribute("tilt")]
- public string? Tilt { get; set; }
+ public bool? Tilt { get; set; }
/// Numeric
[Required]
diff --git a/SabreTools.Data.Models/Listxml/Mame.cs b/SabreTools.Data.Models/Listxml/Mame.cs
index 06faa831..a52584c6 100644
--- a/SabreTools.Data.Models/Listxml/Mame.cs
+++ b/SabreTools.Data.Models/Listxml/Mame.cs
@@ -11,7 +11,7 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("debug")]
- public string? Debug { get; set; }
+ public bool? Debug { get; set; }
[Required]
[XmlAttribute("mameconfig")]
diff --git a/SabreTools.Data.Models/Listxml/RamOption.cs b/SabreTools.Data.Models/Listxml/RamOption.cs
index 337d60ba..78c105cc 100644
--- a/SabreTools.Data.Models/Listxml/RamOption.cs
+++ b/SabreTools.Data.Models/Listxml/RamOption.cs
@@ -10,6 +10,7 @@ namespace SabreTools.Data.Models.Listxml
[XmlAttribute("name")]
public string? Name { get; set; }
+ /// (yes|no) "no"
[XmlAttribute("default")]
public bool? Default { get; set; }
diff --git a/SabreTools.Data.Models/Listxml/Rom.cs b/SabreTools.Data.Models/Listxml/Rom.cs
index edaecf51..6448731f 100644
--- a/SabreTools.Data.Models/Listxml/Rom.cs
+++ b/SabreTools.Data.Models/Listxml/Rom.cs
@@ -40,14 +40,14 @@ namespace SabreTools.Data.Models.Listxml
/// (yes|no) "no"
[XmlAttribute("optional")]
- public string? Optional { get; set; }
+ public bool? Optional { get; set; }
/// (yes|no) "no", Only present in older versions
[XmlAttribute("dispose")]
- public string? Dispose { get; set; }
+ public bool? Dispose { get; set; }
/// (yes|no) "no", Only present in older versions
[XmlAttribute("soundonly")]
- public string? SoundOnly { get; set; }
+ public bool? SoundOnly { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Logiqx/Datafile.cs b/SabreTools.Data.Models/Logiqx/Datafile.cs
index 3c0b8eb6..4a9eca43 100644
--- a/SabreTools.Data.Models/Logiqx/Datafile.cs
+++ b/SabreTools.Data.Models/Logiqx/Datafile.cs
@@ -11,7 +11,7 @@ namespace SabreTools.Data.Models.Logiqx
/// (yes|no) "no"
[XmlAttribute("debug")]
- public string? Debug { get; set; }
+ public bool? Debug { get; set; }
/// No-Intro extension
[XmlAttribute(Namespace = "http://www.w3.org/2001/XMLSchema-instance", AttributeName = "schemaLocation")]
diff --git a/SabreTools.Data.Models/Logiqx/Driver.cs b/SabreTools.Data.Models/Logiqx/Driver.cs
index b58fdd42..72991aea 100644
--- a/SabreTools.Data.Models/Logiqx/Driver.cs
+++ b/SabreTools.Data.Models/Logiqx/Driver.cs
@@ -28,18 +28,18 @@ namespace SabreTools.Data.Models.Logiqx
/// (yes|no) "no"
[XmlAttribute("requiresartwork")]
- public string? RequiresArtwork { get; set; }
+ public bool? RequiresArtwork { get; set; }
/// (yes|no) "no"
[XmlAttribute("unofficial")]
- public string? Unofficial { get; set; }
+ public bool? Unofficial { get; set; }
/// (yes|no) "no"
[XmlAttribute("nosoundhardware")]
- public string? NoSoundHardware { get; set; }
+ public bool? NoSoundHardware { get; set; }
/// (yes|no) "no"
[XmlAttribute("incomplete")]
- public string? Incomplete { get; set; }
+ public bool? Incomplete { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Logiqx/GameBase.cs b/SabreTools.Data.Models/Logiqx/GameBase.cs
index 28e6d4ab..be9ed2c6 100644
--- a/SabreTools.Data.Models/Logiqx/GameBase.cs
+++ b/SabreTools.Data.Models/Logiqx/GameBase.cs
@@ -17,15 +17,15 @@ namespace SabreTools.Data.Models.Logiqx
/// (yes|no) "no"
[XmlAttribute("isbios")]
- public string? IsBios { get; set; }
+ public bool? IsBios { get; set; }
/// (yes|no) "no", MAME extension
[XmlAttribute("isdevice")]
- public string? IsDevice { get; set; }
+ public bool? IsDevice { get; set; }
/// (yes|no) "no", MAME extension
[XmlAttribute("ismechanical")]
- public string? IsMechanical { get; set; }
+ public bool? IsMechanical { get; set; }
[XmlAttribute("cloneof")]
public string? CloneOf { get; set; }
@@ -52,7 +52,7 @@ namespace SabreTools.Data.Models.Logiqx
/// (no|partial|yes) "no"
[XmlAttribute("runnable")]
- public string? Runnable { get; set; }
+ public bool? Runnable { get; set; }
[XmlElement("comment")]
public string[]? Comment { get; set; }
diff --git a/SabreTools.Data.Models/Logiqx/Rom.cs b/SabreTools.Data.Models/Logiqx/Rom.cs
index e20d4efb..be687492 100644
--- a/SabreTools.Data.Models/Logiqx/Rom.cs
+++ b/SabreTools.Data.Models/Logiqx/Rom.cs
@@ -92,10 +92,10 @@ namespace SabreTools.Data.Models.Logiqx
/// Boolean; RomVault extension
[XmlAttribute("inverted")]
- public string? Inverted { get; set; }
+ public bool? Inverted { get; set; }
/// Boolean; RomVault extension
[XmlAttribute("mia")]
- public string? MIA { get; set; }
+ public bool? MIA { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Logiqx/RomCenter.cs b/SabreTools.Data.Models/Logiqx/RomCenter.cs
index 157776dc..2840f518 100644
--- a/SabreTools.Data.Models/Logiqx/RomCenter.cs
+++ b/SabreTools.Data.Models/Logiqx/RomCenter.cs
@@ -23,14 +23,14 @@ namespace SabreTools.Data.Models.Logiqx
/// (yes|no) "no"
[XmlAttribute("lockrommode")]
- public string? LockRomMode { get; set; }
+ public bool? LockRomMode { get; set; }
/// (yes|no) "no"
[XmlAttribute("lockbiosmode")]
- public string? LockBiosMode { get; set; }
+ public bool? LockBiosMode { get; set; }
/// (yes|no) "no"
[XmlAttribute("locksamplemode")]
- public string? LockSampleMode { get; set; }
+ public bool? LockSampleMode { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Metadata/Adjuster.cs b/SabreTools.Data.Models/Metadata/Adjuster.cs
index 4e312236..c9c8388c 100644
--- a/SabreTools.Data.Models/Metadata/Adjuster.cs
+++ b/SabreTools.Data.Models/Metadata/Adjuster.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/Metadata/BiosSet.cs b/SabreTools.Data.Models/Metadata/BiosSet.cs
index 19b1c6c7..d7187d2b 100644
--- a/SabreTools.Data.Models/Metadata/BiosSet.cs
+++ b/SabreTools.Data.Models/Metadata/BiosSet.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/Metadata/Chip.cs b/SabreTools.Data.Models/Metadata/Chip.cs
index 0a8860cc..79d6699e 100644
--- a/SabreTools.Data.Models/Metadata/Chip.cs
+++ b/SabreTools.Data.Models/Metadata/Chip.cs
@@ -10,6 +10,9 @@ namespace SabreTools.Data.Models.Metadata
public string? Name { get; set; }
+ /// (yes|no) "no"
+ public bool? SoundOnly { get; set; }
+
#endregion
#region Keys
@@ -20,9 +23,6 @@ namespace SabreTools.Data.Models.Metadata
/// string
public const string FlagsKey = "flags";
- /// (yes|no) "no"
- public const string SoundOnlyKey = "soundonly";
-
/// string
public const string TagKey = "tag";
diff --git a/SabreTools.Data.Models/Metadata/ConfLocation.cs b/SabreTools.Data.Models/Metadata/ConfLocation.cs
index 9fe02618..211330c0 100644
--- a/SabreTools.Data.Models/Metadata/ConfLocation.cs
+++ b/SabreTools.Data.Models/Metadata/ConfLocation.cs
@@ -8,15 +8,15 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
+ public bool? Inverted { get; set; }
+
public string? Name { get; set; }
#endregion
#region Keys
- /// (yes|no) "no"
- public const string InvertedKey = "inverted";
-
/// string, possibly long
public const string NumberKey = "number";
diff --git a/SabreTools.Data.Models/Metadata/ConfSetting.cs b/SabreTools.Data.Models/Metadata/ConfSetting.cs
index 3be87b52..bd91065f 100644
--- a/SabreTools.Data.Models/Metadata/ConfSetting.cs
+++ b/SabreTools.Data.Models/Metadata/ConfSetting.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/Metadata/Control.cs b/SabreTools.Data.Models/Metadata/Control.cs
index c14b816d..28222d70 100644
--- a/SabreTools.Data.Models/Metadata/Control.cs
+++ b/SabreTools.Data.Models/Metadata/Control.cs
@@ -6,6 +6,13 @@ namespace SabreTools.Data.Models.Metadata
[JsonObject("control"), XmlRoot("control")]
public class Control : DatItem
{
+ #region Properties
+
+ /// (yes|no) "no"
+ public bool? Reverse { get; set; }
+
+ #endregion
+
#region Keys
/// long
@@ -26,9 +33,6 @@ namespace SabreTools.Data.Models.Metadata
/// long
public const string ReqButtonsKey = "reqbuttons";
- /// (yes|no) "no"
- public const string ReverseKey = "reverse";
-
/// long
public const string SensitivityKey = "sensitivity";
diff --git a/SabreTools.Data.Models/Metadata/DipLocation.cs b/SabreTools.Data.Models/Metadata/DipLocation.cs
index 58dde81e..65c36fbc 100644
--- a/SabreTools.Data.Models/Metadata/DipLocation.cs
+++ b/SabreTools.Data.Models/Metadata/DipLocation.cs
@@ -8,15 +8,15 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
+ public bool? Inverted { get; set; }
+
public string? Name { get; set; }
#endregion
#region Keys
- /// (yes|no) "no"
- public const string InvertedKey = "inverted";
-
/// string, possibly long
public const string NumberKey = "number";
diff --git a/SabreTools.Data.Models/Metadata/DipSwitch.cs b/SabreTools.Data.Models/Metadata/DipSwitch.cs
index 58bacdfb..7207d926 100644
--- a/SabreTools.Data.Models/Metadata/DipSwitch.cs
+++ b/SabreTools.Data.Models/Metadata/DipSwitch.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/Metadata/DipValue.cs b/SabreTools.Data.Models/Metadata/DipValue.cs
index f3906878..99ab2c6b 100644
--- a/SabreTools.Data.Models/Metadata/DipValue.cs
+++ b/SabreTools.Data.Models/Metadata/DipValue.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/Metadata/Disk.cs b/SabreTools.Data.Models/Metadata/Disk.cs
index f67a0b8e..17510762 100644
--- a/SabreTools.Data.Models/Metadata/Disk.cs
+++ b/SabreTools.Data.Models/Metadata/Disk.cs
@@ -10,6 +10,12 @@ namespace SabreTools.Data.Models.Metadata
public string? Name { get; set; }
+ /// (yes|no) "no"
+ public bool? Optional { get; set; }
+
+ /// (yes|no) "no"
+ public bool? Writable { get; set; }
+
#endregion
#region Keys
@@ -26,9 +32,6 @@ namespace SabreTools.Data.Models.Metadata
/// string
public const string MergeKey = "merge";
- /// (yes|no) "no"
- public const string OptionalKey = "optional";
-
/// string
public const string RegionKey = "region";
@@ -38,9 +41,6 @@ namespace SabreTools.Data.Models.Metadata
/// (baddump|nodump|good|verified) "good"
public const string StatusKey = "status";
- /// (yes|no) "no"
- public const string WritableKey = "writable";
-
#endregion
public Disk() => ItemType = ItemType.Disk;
diff --git a/SabreTools.Data.Models/Metadata/Display.cs b/SabreTools.Data.Models/Metadata/Display.cs
index edbf05dd..e81b6ceb 100644
--- a/SabreTools.Data.Models/Metadata/Display.cs
+++ b/SabreTools.Data.Models/Metadata/Display.cs
@@ -6,10 +6,14 @@ namespace SabreTools.Data.Models.Metadata
[JsonObject("display"), XmlRoot("display")]
public class Display : DatItem
{
- #region Keys
+ #region Properties
/// (yes|no) "no"
- public const string FlipXKey = "flipx";
+ public bool? FlipX { get; set; }
+
+ #endregion
+
+ #region Keys
/// long
public const string HBEndKey = "hbend";
diff --git a/SabreTools.Data.Models/Metadata/Driver.cs b/SabreTools.Data.Models/Metadata/Driver.cs
index 9860acfc..4060acd5 100644
--- a/SabreTools.Data.Models/Metadata/Driver.cs
+++ b/SabreTools.Data.Models/Metadata/Driver.cs
@@ -6,6 +6,22 @@ namespace SabreTools.Data.Models.Metadata
[JsonObject("driver"), XmlRoot("driver")]
public class Driver : DatItem
{
+ #region Properties
+
+ /// (yes|no) "no"
+ public bool? Incomplete { get; set; }
+
+ /// (yes|no) "no"
+ public bool? NoSoundHardware { get; set; }
+
+ /// (yes|no) "no"
+ public bool? RequiresArtwork { get; set; }
+
+ /// (yes|no) "no"
+ public bool? Unofficial { get; set; }
+
+ #endregion
+
#region Keys
/// (plain|dirty)
@@ -20,18 +36,9 @@ namespace SabreTools.Data.Models.Metadata
/// (good|imperfect|preliminary)
public const string EmulationKey = "emulation";
- /// (yes|no) "no"
- public const string IncompleteKey = "incomplete";
-
- /// (yes|no) "no"
- public const string NoSoundHardwareKey = "nosoundhardware";
-
/// string, possibly long
public const string PaletteSizeKey = "palettesize";
- /// (yes|no) "no"
- public const string RequiresArtworkKey = "requiresartwork";
-
/// (supported|unsupported)
public const string SaveStateKey = "savestate";
@@ -41,9 +48,6 @@ namespace SabreTools.Data.Models.Metadata
/// (good|imperfect|preliminary|test)
public const string StatusKey = "status";
- /// (yes|no) "no"
- public const string UnofficialKey = "unofficial";
-
#endregion
public Driver() => ItemType = ItemType.Driver;
diff --git a/SabreTools.Data.Models/Metadata/Header.cs b/SabreTools.Data.Models/Metadata/Header.cs
index 9ed506ee..f4e98ea4 100644
--- a/SabreTools.Data.Models/Metadata/Header.cs
+++ b/SabreTools.Data.Models/Metadata/Header.cs
@@ -8,6 +8,21 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
+ public bool? Debug { get; set; }
+
+ /// (yes|no) "yes"
+ public bool? ForceZipping { get; set; }
+
+ /// (yes|no) "no"
+ public bool? LockBiosMode { get; set; }
+
+ /// (yes|no) "no"
+ public bool? LockRomMode { get; set; }
+
+ /// (yes|no) "no"
+ public bool? LockSampleMode { get; set; }
+
public string? Name { get; set; }
#endregion
@@ -40,9 +55,6 @@ namespace SabreTools.Data.Models.Metadata
/// string
public const string DatVersionKey = "datversion";
- /// (yes|no) "no"
- public const string DebugKey = "debug";
-
/// string
public const string DescriptionKey = "description";
@@ -61,9 +73,6 @@ namespace SabreTools.Data.Models.Metadata
/// (zip|unzip) "zip"
public const string ForcePackingKey = "forcepacking";
- /// (yes|no) "yes"
- public const string ForceZippingKey = "forcezipping";
-
/// string, string[]
public const string HeaderKey = "header";
@@ -86,15 +95,6 @@ namespace SabreTools.Data.Models.Metadata
[NoFilter]
public const string InfosKey = "infos";
- /// (yes|no) "no"
- public const string LockBiosModeKey = "lockbiosmode";
-
- /// (yes|no) "no"
- public const string LockRomModeKey = "lockrommode";
-
- /// (yes|no) "no"
- public const string LockSampleModeKey = "locksamplemode";
-
/// string
public const string MameConfigKey = "mameconfig";
diff --git a/SabreTools.Data.Models/Metadata/Input.cs b/SabreTools.Data.Models/Metadata/Input.cs
index dba3364e..47d9069b 100644
--- a/SabreTools.Data.Models/Metadata/Input.cs
+++ b/SabreTools.Data.Models/Metadata/Input.cs
@@ -6,6 +6,16 @@ namespace SabreTools.Data.Models.Metadata
[JsonObject("input"), XmlRoot("input")]
public class Input : DatItem
{
+ #region Properties
+
+ /// (yes|no) "no"
+ public bool? Service { get; set; }
+
+ /// (yes|no) "no"
+ public bool? Tilt { get; set; }
+
+ #endregion
+
#region Keys
/// long
@@ -20,12 +30,6 @@ namespace SabreTools.Data.Models.Metadata
/// long
public const string PlayersKey = "players";
- /// (yes|no) "no"
- public const string ServiceKey = "service";
-
- /// (yes|no) "no"
- public const string TiltKey = "tilt";
-
#endregion
public Input() => ItemType = ItemType.Input;
diff --git a/SabreTools.Data.Models/Metadata/Machine.cs b/SabreTools.Data.Models/Metadata/Machine.cs
index 82ccf0e1..e6355b33 100644
--- a/SabreTools.Data.Models/Metadata/Machine.cs
+++ b/SabreTools.Data.Models/Metadata/Machine.cs
@@ -8,8 +8,21 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
+ public bool? IsBios { get; set; }
+
+ /// (yes|no) "no"
+ public bool? IsDevice { get; set; }
+
+ /// (yes|no) "no"
+ public bool? IsMechanical { get; set; }
+
public string? Name { get; set; }
+ /// (yes|partial|no) "no"
+ /// TODO: Replace with Runnable type
+ public bool? Runnable { get; set; }
+
#endregion
#region Keys
@@ -146,15 +159,6 @@ namespace SabreTools.Data.Models.Metadata
[NoFilter]
public const string InputKey = "input";
- /// (yes|no) "no"
- public const string IsBiosKey = "isbios";
-
- /// (yes|no) "no"
- public const string IsDeviceKey = "isdevice";
-
- /// (yes|no) "no"
- public const string IsMechanicalKey = "ismechanical";
-
/// string
public const string LanguageKey = "language";
@@ -215,9 +219,6 @@ namespace SabreTools.Data.Models.Metadata
/// string
public const string RotationKey = "rotation";
- /// (yes|no) "no"
- public const string RunnableKey = "runnable";
-
/// Sample[]
[NoFilter]
public const string SampleKey = "sample";
diff --git a/SabreTools.Data.Models/Metadata/RamOption.cs b/SabreTools.Data.Models/Metadata/RamOption.cs
index 1f7d84ea..a8f2092b 100644
--- a/SabreTools.Data.Models/Metadata/RamOption.cs
+++ b/SabreTools.Data.Models/Metadata/RamOption.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/Metadata/Release.cs b/SabreTools.Data.Models/Metadata/Release.cs
index e76e1d4e..c3e64cd5 100644
--- a/SabreTools.Data.Models/Metadata/Release.cs
+++ b/SabreTools.Data.Models/Metadata/Release.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/Metadata/Rom.cs b/SabreTools.Data.Models/Metadata/Rom.cs
index 99648714..39195aac 100644
--- a/SabreTools.Data.Models/Metadata/Rom.cs
+++ b/SabreTools.Data.Models/Metadata/Rom.cs
@@ -8,8 +8,26 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
+ public bool? Dispose { get; set; }
+
+ /// bool; AttractMode.Row
+ public bool? FileIsAvailable { get; set; }
+
+ /// (yes|no) "no"
+ public bool? Inverted { get; set; }
+
+ /// (yes|no) "no"
+ public bool? MIA { get; set; }
+
public string? Name { get; set; }
+ /// (yes|no) "no"
+ public bool? Optional { get; set; }
+
+ /// (yes|no) "no"
+ public bool? SoundOnly { get; set; }
+
#endregion
#region Keys
@@ -68,18 +86,12 @@ namespace SabreTools.Data.Models.Metadata
/// string
public const string DateKey = "date";
- /// (yes|no) "no"
- public const string DisposeKey = "dispose";
-
/// string; OfflineList.FileRomCRC
public const string ExtensionKey = "extension";
/// long; ArchiveDotOrg.File
public const string FileCountKey = "filecount";
- /// bool; AttractMode.Row
- public const string FileIsAvailableKey = "file_is_available";
-
/// string
public const string FlagsKey = "flags";
@@ -110,9 +122,6 @@ namespace SabreTools.Data.Models.Metadata
/// string; ArchiveDotOrg.File
public const string hOCRPageIndexModuleVersionKey = "hocr_pageindex_module_version";
- /// (yes|no) "no"
- public const string InvertedKey = "inverted";
-
/// long; ArchiveDotOrg.File
public const string LastModifiedTimeKey = "mtime";
@@ -140,9 +149,6 @@ namespace SabreTools.Data.Models.Metadata
/// string
public const string MergeKey = "merge";
- /// (yes|no) "no"
- public const string MIAKey = "mia";
-
/// string; ArchiveDotOrg.File
public const string TesseractOCRKey = "ocr";
@@ -170,9 +176,6 @@ namespace SabreTools.Data.Models.Metadata
/// string, possibly long; Originally "offs"
public const string OffsetKey = "offset";
- /// (yes|no) "no"
- public const string OptionalKey = "optional";
-
/// string; ArchiveDotOrg.File
public const string OriginalKey = "original";
@@ -218,9 +221,6 @@ namespace SabreTools.Data.Models.Metadata
/// long
public const string SizeKey = "size";
- /// (yes|no) "no"
- public const string SoundOnlyKey = "soundonly";
-
/// string; ArchiveDotOrg.File
public const string SourceKey = "source";
diff --git a/SabreTools.Data.Models/Metadata/SlotOption.cs b/SabreTools.Data.Models/Metadata/SlotOption.cs
index a2ec5877..1e205bf6 100644
--- a/SabreTools.Data.Models/Metadata/SlotOption.cs
+++ b/SabreTools.Data.Models/Metadata/SlotOption.cs
@@ -8,6 +8,7 @@ namespace SabreTools.Data.Models.Metadata
{
#region Properties
+ /// (yes|no) "no"
public bool? Default { get; set; }
public string? Name { get; set; }
diff --git a/SabreTools.Data.Models/OfflineList/InfoBase.cs b/SabreTools.Data.Models/OfflineList/InfoBase.cs
index cb39fc67..b50a0a24 100644
--- a/SabreTools.Data.Models/OfflineList/InfoBase.cs
+++ b/SabreTools.Data.Models/OfflineList/InfoBase.cs
@@ -5,7 +5,7 @@ namespace SabreTools.Data.Models.OfflineList
{
public class InfoBase
{
- /// Boolean
+ /// (true|false) "false"
[XmlAttribute("visible")]
public string? Visible { get; set; }
@@ -13,7 +13,7 @@ namespace SabreTools.Data.Models.OfflineList
[XmlAttribute("inNamingOption")]
public string? InNamingOption { get; set; }
- /// Boolean
+ /// (true|false) "false"
[XmlAttribute("default")]
public bool? Default { get; set; }
}
diff --git a/SabreTools.Data.Models/OfflineList/To.cs b/SabreTools.Data.Models/OfflineList/To.cs
index 725b0a49..8379e4f7 100644
--- a/SabreTools.Data.Models/OfflineList/To.cs
+++ b/SabreTools.Data.Models/OfflineList/To.cs
@@ -9,7 +9,7 @@ namespace SabreTools.Data.Models.OfflineList
[XmlAttribute("value")]
public string? Value { get; set; }
- /// Boolean
+ /// (true|false) "false"
[XmlAttribute("default")]
public bool? Default { get; set; }
diff --git a/SabreTools.Data.Models/SoftwareList/Disk.cs b/SabreTools.Data.Models/SoftwareList/Disk.cs
index edc0dd46..9fddd1cb 100644
--- a/SabreTools.Data.Models/SoftwareList/Disk.cs
+++ b/SabreTools.Data.Models/SoftwareList/Disk.cs
@@ -22,6 +22,6 @@ namespace SabreTools.Data.Models.SoftwareList
/// (yes|no) "no"
[XmlAttribute("writable")]
- public string? Writeable { get; set; }
+ public bool? Writeable { get; set; }
}
}
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
index 543aa2b8..9129396f 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
@@ -209,23 +209,23 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Header.CommentKey] = "comment",
[Data.Models.Metadata.Header.DateKey] = "date",
[Data.Models.Metadata.Header.DatVersionKey] = "datversion",
- [Data.Models.Metadata.Header.DebugKey] = "yes",
+ Debug = true,
[Data.Models.Metadata.Header.DescriptionKey] = "description",
[Data.Models.Metadata.Header.EmailKey] = "email",
[Data.Models.Metadata.Header.EmulatorVersionKey] = "emulatorversion",
[Data.Models.Metadata.Header.ForceMergingKey] = "merged",
[Data.Models.Metadata.Header.ForceNodumpKey] = "required",
[Data.Models.Metadata.Header.ForcePackingKey] = "zip",
- [Data.Models.Metadata.Header.ForceZippingKey] = "yes",
+ ForceZipping = true,
[Data.Models.Metadata.Header.HeaderKey] = "header",
[Data.Models.Metadata.Header.HomepageKey] = "homepage",
[Data.Models.Metadata.Header.IdKey] = "id",
[Data.Models.Metadata.Header.ImagesKey] = images,
[Data.Models.Metadata.Header.ImFolderKey] = "imfolder",
[Data.Models.Metadata.Header.InfosKey] = infos,
- [Data.Models.Metadata.Header.LockBiosModeKey] = "yes",
- [Data.Models.Metadata.Header.LockRomModeKey] = "yes",
- [Data.Models.Metadata.Header.LockSampleModeKey] = "yes",
+ LockBiosMode = true,
+ LockRomMode = true,
+ LockSampleMode = true,
[Data.Models.Metadata.Header.MameConfigKey] = "mameconfig",
Name = "name",
[Data.Models.Metadata.Header.NewDatKey] = newDat,
@@ -290,9 +290,9 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Machine.ImageNumberKey] = "imagenumber",
[Data.Models.Metadata.Machine.InfoKey] = new Data.Models.Metadata.Info[] { CreateMetadataInfo() },
[Data.Models.Metadata.Machine.InputKey] = CreateMetadataInput(),
- [Data.Models.Metadata.Machine.IsBiosKey] = "yes",
- [Data.Models.Metadata.Machine.IsDeviceKey] = "yes",
- [Data.Models.Metadata.Machine.IsMechanicalKey] = "yes",
+ IsBios = true,
+ IsDevice = true,
+ IsMechanical = true,
[Data.Models.Metadata.Machine.LanguageKey] = "language",
[Data.Models.Metadata.Machine.LocationKey] = "location",
[Data.Models.Metadata.Machine.ManufacturerKey] = "manufacturer",
@@ -312,7 +312,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Machine.RomKey] = new Data.Models.Metadata.Rom[] { CreateMetadataRom() },
[Data.Models.Metadata.Machine.RomOfKey] = "romof",
[Data.Models.Metadata.Machine.RotationKey] = "rotation",
- [Data.Models.Metadata.Machine.RunnableKey] = "yes",
+ Runnable = true,
[Data.Models.Metadata.Machine.SampleKey] = new Data.Models.Metadata.Sample[] { CreateMetadataSample() },
[Data.Models.Metadata.Machine.SampleOfKey] = "sampleof",
[Data.Models.Metadata.Machine.SaveTypeKey] = "savetype",
@@ -407,7 +407,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Chip.ClockKey] = 12345L,
[Data.Models.Metadata.Chip.FlagsKey] = "flags",
Name = "name",
- [Data.Models.Metadata.Chip.SoundOnlyKey] = "yes",
+ SoundOnly = true,
[Data.Models.Metadata.Chip.TagKey] = "tag",
[Data.Models.Metadata.Chip.ChipTypeKey] = "cpu",
};
@@ -441,7 +441,7 @@ namespace SabreTools.Metadata.DatFiles.Test
{
return new Data.Models.Metadata.ConfLocation
{
- [Data.Models.Metadata.ConfLocation.InvertedKey] = "yes",
+ Inverted = true,
Name = "name",
[Data.Models.Metadata.ConfLocation.NumberKey] = "number",
};
@@ -468,7 +468,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Control.MinimumKey] = 12345L,
[Data.Models.Metadata.Control.PlayerKey] = 12345L,
[Data.Models.Metadata.Control.ReqButtonsKey] = 12345L,
- [Data.Models.Metadata.Control.ReverseKey] = "yes",
+ Reverse = true,
[Data.Models.Metadata.Control.SensitivityKey] = 12345L,
[Data.Models.Metadata.Control.ControlTypeKey] = "lightgun",
[Data.Models.Metadata.Control.WaysKey] = "ways",
@@ -503,7 +503,7 @@ namespace SabreTools.Metadata.DatFiles.Test
{
return new Data.Models.Metadata.DipLocation
{
- [Data.Models.Metadata.DipLocation.InvertedKey] = "yes",
+ Inverted = true,
Name = "name",
[Data.Models.Metadata.DipLocation.NumberKey] = "number",
};
@@ -556,10 +556,10 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Disk.MD5Key] = HashType.MD5.ZeroString,
[Data.Models.Metadata.Disk.MergeKey] = "merge",
Name = "name",
- [Data.Models.Metadata.Disk.OptionalKey] = "yes",
+ Optional = true,
[Data.Models.Metadata.Disk.RegionKey] = "region",
[Data.Models.Metadata.Disk.SHA1Key] = HashType.SHA1.ZeroString,
- [Data.Models.Metadata.Disk.WritableKey] = "yes",
+ Writable = true,
};
}
@@ -576,7 +576,7 @@ namespace SabreTools.Metadata.DatFiles.Test
{
return new Data.Models.Metadata.Display
{
- [Data.Models.Metadata.Display.FlipXKey] = "yes",
+ FlipX = true,
[Data.Models.Metadata.Display.HBEndKey] = 12345L,
[Data.Models.Metadata.Display.HBStartKey] = 12345L,
[Data.Models.Metadata.Display.HeightKey] = 12345L,
@@ -601,14 +601,14 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Driver.CocktailKey] = "good",
[Data.Models.Metadata.Driver.ColorKey] = "good",
[Data.Models.Metadata.Driver.EmulationKey] = "good",
- [Data.Models.Metadata.Driver.IncompleteKey] = "yes",
- [Data.Models.Metadata.Driver.NoSoundHardwareKey] = "yes",
+ Incomplete = true,
+ NoSoundHardware = true,
[Data.Models.Metadata.Driver.PaletteSizeKey] = "pallettesize",
- [Data.Models.Metadata.Driver.RequiresArtworkKey] = "yes",
+ RequiresArtwork = true,
[Data.Models.Metadata.Driver.SaveStateKey] = "supported",
[Data.Models.Metadata.Driver.SoundKey] = "good",
[Data.Models.Metadata.Driver.StatusKey] = "good",
- [Data.Models.Metadata.Driver.UnofficialKey] = "yes",
+ Unofficial = true,
};
}
@@ -664,8 +664,8 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Input.CoinsKey] = 12345L,
[Data.Models.Metadata.Input.ControlKey] = new Data.Models.Metadata.Control[] { CreateMetadataControl() },
[Data.Models.Metadata.Input.PlayersKey] = 12345L,
- [Data.Models.Metadata.Input.ServiceKey] = "yes",
- [Data.Models.Metadata.Input.TiltKey] = "yes",
+ Service = true,
+ Tilt = true,
};
}
@@ -788,10 +788,10 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Rom.CRC64Key] = HashType.CRC64.ZeroString,
[Data.Models.Metadata.Rom.CreatorKey] = "creator",
[Data.Models.Metadata.Rom.DateKey] = "date",
- [Data.Models.Metadata.Rom.DisposeKey] = "yes",
+ Dispose = true,
[Data.Models.Metadata.Rom.ExtensionKey] = "extension",
[Data.Models.Metadata.Rom.FileCountKey] = 12345L,
- [Data.Models.Metadata.Rom.FileIsAvailableKey] = true,
+ FileIsAvailable = true,
[Data.Models.Metadata.Rom.FlagsKey] = "flags",
[Data.Models.Metadata.Rom.FormatKey] = "format",
[Data.Models.Metadata.Rom.HeaderKey] = "header",
@@ -802,7 +802,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Rom.hOCRFtsTextModuleVersionKey] = "hocr_fts_text_module_version",
[Data.Models.Metadata.Rom.hOCRPageIndexhOCRVersionKey] = "hocr_pageindex_hocr_version",
[Data.Models.Metadata.Rom.hOCRPageIndexModuleVersionKey] = "hocr_pageindex_module_version",
- [Data.Models.Metadata.Rom.InvertedKey] = "yes",
+ Inverted = true,
[Data.Models.Metadata.Rom.LastModifiedTimeKey] = "mtime",
[Data.Models.Metadata.Rom.LengthKey] = "length",
[Data.Models.Metadata.Rom.LoadFlagKey] = "load16_byte",
@@ -812,7 +812,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Rom.MD5Key] = HashType.MD5.ZeroString,
// [Data.Models.Metadata.Rom.OpenMSXMediaType] = null, // Omit due to other test
[Data.Models.Metadata.Rom.MergeKey] = "merge",
- [Data.Models.Metadata.Rom.MIAKey] = "yes",
+ MIA = true,
Name = "name",
[Data.Models.Metadata.Rom.TesseractOCRKey] = "ocr",
[Data.Models.Metadata.Rom.TesseractOCRConvertedKey] = "ocr_converted",
@@ -823,7 +823,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Rom.TesseractOCRModuleVersionKey] = "ocr_module_version",
[Data.Models.Metadata.Rom.TesseractOCRParametersKey] = "ocr_parameters",
[Data.Models.Metadata.Rom.OffsetKey] = "offset",
- [Data.Models.Metadata.Rom.OptionalKey] = "yes",
+ Optional = true,
[Data.Models.Metadata.Rom.OriginalKey] = "original",
[Data.Models.Metadata.Rom.PDFModuleVersionKey] = "pdf_module_version",
[Data.Models.Metadata.Rom.PreviewImageKey] = "preview-image",
@@ -839,7 +839,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Rom.SHA384Key] = HashType.SHA384.ZeroString,
[Data.Models.Metadata.Rom.SHA512Key] = HashType.SHA512.ZeroString,
[Data.Models.Metadata.Rom.SizeKey] = 12345L,
- [Data.Models.Metadata.Rom.SoundOnlyKey] = "yes",
+ SoundOnly = true,
[Data.Models.Metadata.Rom.SourceKey] = "source",
[Data.Models.Metadata.Rom.SpamSumKey] = HashType.SpamSum.ZeroString,
[Data.Models.Metadata.Rom.StartKey] = "start",
@@ -938,7 +938,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Software.PartKey] = new Data.Models.Metadata.Part[] { CreateMetadataPart() },
[Data.Models.Metadata.Software.PublisherKey] = "publisher",
[Data.Models.Metadata.Software.SharedFeatKey] = new Data.Models.Metadata.SharedFeat[] { CreateMetadataSharedFeat() },
- [Data.Models.Metadata.Software.SupportedKey] = "yes",
+ [Data.Models.Metadata.Software.SupportedKey] = true,
[Data.Models.Metadata.Software.YearKey] = "year",
};
}
@@ -1010,7 +1010,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Score = "score",
Players = "players",
Enabled = "enabled",
- CRC = "true",
+ CRC = "yes",
Source = "source",
CloneOf = "cloneof",
RelatedTo = "relatedto",
@@ -1045,23 +1045,23 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("comment", datHeader.ReadString(Data.Models.Metadata.Header.CommentKey));
Assert.Equal("date", datHeader.ReadString(Data.Models.Metadata.Header.DateKey));
Assert.Equal("datversion", datHeader.ReadString(Data.Models.Metadata.Header.DatVersionKey));
- Assert.True(datHeader.ReadBool(Data.Models.Metadata.Header.DebugKey));
+ Assert.True(datHeader.Debug);
Assert.Equal("description", datHeader.ReadString(Data.Models.Metadata.Header.DescriptionKey));
Assert.Equal("email", datHeader.ReadString(Data.Models.Metadata.Header.EmailKey));
Assert.Equal("emulatorversion", datHeader.ReadString(Data.Models.Metadata.Header.EmulatorVersionKey));
Assert.Equal("merged", datHeader.ReadString(Data.Models.Metadata.Header.ForceMergingKey));
Assert.Equal("required", datHeader.ReadString(Data.Models.Metadata.Header.ForceNodumpKey));
Assert.Equal("zip", datHeader.ReadString(Data.Models.Metadata.Header.ForcePackingKey));
- Assert.True(datHeader.ReadBool(Data.Models.Metadata.Header.ForceZippingKey));
+ Assert.True(datHeader.ForceZipping);
Assert.Equal("header", datHeader.ReadString(Data.Models.Metadata.Header.HeaderKey));
Assert.Equal("homepage", datHeader.ReadString(Data.Models.Metadata.Header.HomepageKey));
Assert.Equal("id", datHeader.ReadString(Data.Models.Metadata.Header.IdKey));
Assert.NotNull(datHeader.ReadString(Data.Models.Metadata.Header.ImagesKey));
Assert.Equal("imfolder", datHeader.ReadString(Data.Models.Metadata.Header.ImFolderKey));
Assert.NotNull(datHeader.ReadString(Data.Models.Metadata.Header.InfosKey));
- Assert.True(datHeader.ReadBool(Data.Models.Metadata.Header.LockBiosModeKey));
- Assert.True(datHeader.ReadBool(Data.Models.Metadata.Header.LockRomModeKey));
- Assert.True(datHeader.ReadBool(Data.Models.Metadata.Header.LockSampleModeKey));
+ Assert.True(datHeader.LockBiosMode);
+ Assert.True(datHeader.LockRomMode);
+ Assert.True(datHeader.LockSampleMode);
Assert.Equal("mameconfig", datHeader.ReadString(Data.Models.Metadata.Header.MameConfigKey));
Assert.Equal("name", datHeader.Name);
Assert.NotNull(datHeader.ReadString(Data.Models.Metadata.Header.NewDatKey));
@@ -1109,9 +1109,9 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.CRC32.ZeroString, machine.ReadString(Data.Models.Metadata.Machine.Im1CRCKey));
Assert.Equal(HashType.CRC32.ZeroString, machine.ReadString(Data.Models.Metadata.Machine.Im2CRCKey));
Assert.Equal("imagenumber", machine.ReadString(Data.Models.Metadata.Machine.ImageNumberKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.IsBiosKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.IsDeviceKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.IsMechanicalKey));
+ Assert.Equal(true, machine.IsBios);
+ Assert.Equal(true, machine.IsDevice);
+ Assert.Equal(true, machine.IsMechanical);
Assert.Equal("language", machine.ReadString(Data.Models.Metadata.Machine.LanguageKey));
Assert.Equal("location", machine.ReadString(Data.Models.Metadata.Machine.LocationKey));
Assert.Equal("manufacturer", machine.ReadString(Data.Models.Metadata.Machine.ManufacturerKey));
@@ -1125,7 +1125,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("releasenumber", machine.ReadString(Data.Models.Metadata.Machine.ReleaseNumberKey));
Assert.Equal("romof", machine.ReadString(Data.Models.Metadata.Machine.RomOfKey));
Assert.Equal("rotation", machine.ReadString(Data.Models.Metadata.Machine.RotationKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.RunnableKey));
+ Assert.Equal(true, machine.Runnable);
Assert.Equal("sampleof", machine.ReadString(Data.Models.Metadata.Machine.SampleOfKey));
Assert.Equal("savetype", machine.ReadString(Data.Models.Metadata.Machine.SaveTypeKey));
Assert.Equal("sourcefile", machine.ReadString(Data.Models.Metadata.Machine.SourceFileKey));
@@ -1177,7 +1177,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(12345L, chip.ReadLong(Data.Models.Metadata.Chip.ClockKey));
Assert.Equal("flags", chip.ReadString(Data.Models.Metadata.Chip.FlagsKey));
Assert.Equal("name", chip.GetName());
- Assert.True(chip.ReadBool(Data.Models.Metadata.Chip.SoundOnlyKey));
+ Assert.True(chip.SoundOnly);
Assert.Equal("tag", chip.ReadString(Data.Models.Metadata.Chip.TagKey));
Assert.Equal("cpu", chip.ReadString(Data.Models.Metadata.Chip.ChipTypeKey));
}
@@ -1215,7 +1215,7 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateConfLocation(ConfLocation? confLocation)
{
Assert.NotNull(confLocation);
- Assert.True(confLocation.ReadBool(Data.Models.Metadata.ConfLocation.InvertedKey));
+ Assert.True(confLocation.Inverted);
Assert.Equal("name", confLocation.GetName());
Assert.Equal("number", confLocation.ReadString(Data.Models.Metadata.ConfLocation.NumberKey));
}
@@ -1240,7 +1240,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(12345L, control.ReadLong(Data.Models.Metadata.Control.MinimumKey));
Assert.Equal(12345L, control.ReadLong(Data.Models.Metadata.Control.PlayerKey));
Assert.Equal(12345L, control.ReadLong(Data.Models.Metadata.Control.ReqButtonsKey));
- Assert.True(control.ReadBool(Data.Models.Metadata.Control.ReverseKey));
+ Assert.True(control.Reverse);
Assert.Equal(12345L, control.ReadLong(Data.Models.Metadata.Control.SensitivityKey));
Assert.Equal("lightgun", control.ReadString(Data.Models.Metadata.Control.ControlTypeKey));
Assert.Equal("ways", control.ReadString(Data.Models.Metadata.Control.WaysKey));
@@ -1284,7 +1284,7 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateDipLocation(DipLocation? dipLocation)
{
Assert.NotNull(dipLocation);
- Assert.True(dipLocation.ReadBool(Data.Models.Metadata.DipLocation.InvertedKey));
+ Assert.True(dipLocation.Inverted);
Assert.Equal("name", dipLocation.GetName());
Assert.Equal("number", dipLocation.ReadString(Data.Models.Metadata.DipLocation.NumberKey));
}
@@ -1335,10 +1335,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.MD5.ZeroString, disk.ReadString(Data.Models.Metadata.Disk.MD5Key));
Assert.Equal("merge", disk.ReadString(Data.Models.Metadata.Disk.MergeKey));
Assert.Equal("name", disk.GetName());
- Assert.True(disk.ReadBool(Data.Models.Metadata.Disk.OptionalKey));
+ Assert.True(disk.Optional);
Assert.Equal("region", disk.ReadString(Data.Models.Metadata.Disk.RegionKey));
Assert.Equal(HashType.SHA1.ZeroString, disk.ReadString(Data.Models.Metadata.Disk.SHA1Key));
- Assert.True(disk.ReadBool(Data.Models.Metadata.Disk.WritableKey));
+ Assert.True(disk.Writable);
}
private static void ValidateDiskArea(DiskArea? diskArea)
@@ -1350,7 +1350,7 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateDisplay(Display? display)
{
Assert.NotNull(display);
- Assert.True(display.ReadBool(Data.Models.Metadata.Display.FlipXKey));
+ Assert.True(display.FlipX);
Assert.Equal(12345L, display.ReadLong(Data.Models.Metadata.Display.HBEndKey));
Assert.Equal(12345L, display.ReadLong(Data.Models.Metadata.Display.HBStartKey));
Assert.Equal(12345L, display.ReadLong(Data.Models.Metadata.Display.HeightKey));
@@ -1373,14 +1373,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.CocktailKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.ColorKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.EmulationKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.IncompleteKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.NoSoundHardwareKey));
+ Assert.True(driver.Incomplete);
+ Assert.True(driver.NoSoundHardware);
Assert.Equal("pallettesize", driver.ReadString(Data.Models.Metadata.Driver.PaletteSizeKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.RequiresArtworkKey));
+ Assert.True(driver.RequiresArtwork);
Assert.Equal("supported", driver.ReadString(Data.Models.Metadata.Driver.SaveStateKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.SoundKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.StatusKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.UnofficialKey));
+ Assert.True(driver.Unofficial);
}
private static void ValidateExtension(Extension? extension)
@@ -1412,8 +1412,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(12345L, input.ReadLong(Data.Models.Metadata.Input.ButtonsKey));
Assert.Equal(12345L, input.ReadLong(Data.Models.Metadata.Input.CoinsKey));
Assert.Equal(12345L, input.ReadLong(Data.Models.Metadata.Input.PlayersKey));
- Assert.True(input.ReadBool(Data.Models.Metadata.Input.ServiceKey));
- Assert.True(input.ReadBool(Data.Models.Metadata.Input.TiltKey));
+ Assert.True(input.Service);
+ Assert.True(input.Tilt);
Control[]? controls = input.Read(Data.Models.Metadata.Input.ControlKey);
Assert.NotNull(controls);
@@ -1508,10 +1508,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.CRC64.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.CRC64Key));
Assert.Equal("creator", rom.ReadString(Data.Models.Metadata.Rom.CreatorKey));
Assert.Equal("date", rom.ReadString(Data.Models.Metadata.Rom.DateKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.DisposeKey));
+ Assert.True(rom.Dispose);
Assert.Equal("extension", rom.ReadString(Data.Models.Metadata.Rom.ExtensionKey));
Assert.Equal(12345L, rom.ReadLong(Data.Models.Metadata.Rom.FileCountKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.FileIsAvailableKey));
+ Assert.True(rom.FileIsAvailable);
Assert.Equal("flags", rom.ReadString(Data.Models.Metadata.Rom.FlagsKey));
Assert.Equal("format", rom.ReadString(Data.Models.Metadata.Rom.FormatKey));
Assert.Equal("header", rom.ReadString(Data.Models.Metadata.Rom.HeaderKey));
@@ -1522,7 +1522,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("hocr_fts_text_module_version", rom.ReadString(Data.Models.Metadata.Rom.hOCRFtsTextModuleVersionKey));
Assert.Equal("hocr_pageindex_hocr_version", rom.ReadString(Data.Models.Metadata.Rom.hOCRPageIndexhOCRVersionKey));
Assert.Equal("hocr_pageindex_module_version", rom.ReadString(Data.Models.Metadata.Rom.hOCRPageIndexModuleVersionKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.InvertedKey));
+ Assert.True(rom.Inverted);
Assert.Equal("mtime", rom.ReadString(Data.Models.Metadata.Rom.LastModifiedTimeKey));
Assert.Equal("length", rom.ReadString(Data.Models.Metadata.Rom.LengthKey));
Assert.Equal("load16_byte", rom.ReadString(Data.Models.Metadata.Rom.LoadFlagKey));
@@ -1532,7 +1532,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.MD5.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.MD5Key));
Assert.Null(rom.ReadString(Data.Models.Metadata.Rom.OpenMSXMediaType)); // Omit due to other test
Assert.Equal("merge", rom.ReadString(Data.Models.Metadata.Rom.MergeKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.MIAKey));
+ Assert.True(rom.MIA);
Assert.Equal("name", rom.GetName());
Assert.Equal("ocr", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRKey));
Assert.Equal("ocr_converted", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRConvertedKey));
@@ -1543,7 +1543,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("ocr_module_version", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRModuleVersionKey));
Assert.Equal("ocr_parameters", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRParametersKey));
Assert.Equal("offset", rom.ReadString(Data.Models.Metadata.Rom.OffsetKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.OptionalKey));
+ Assert.True(rom.Optional);
Assert.Equal("original", rom.ReadString(Data.Models.Metadata.Rom.OriginalKey));
Assert.Equal("pdf_module_version", rom.ReadString(Data.Models.Metadata.Rom.PDFModuleVersionKey));
Assert.Equal("preview-image", rom.ReadString(Data.Models.Metadata.Rom.PreviewImageKey));
@@ -1559,7 +1559,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.SHA384.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SHA384Key));
Assert.Equal(HashType.SHA512.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SHA512Key));
Assert.Equal(12345L, rom.ReadLong(Data.Models.Metadata.Rom.SizeKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.SoundOnlyKey));
+ Assert.True(rom.SoundOnly);
Assert.Equal("source", rom.ReadString(Data.Models.Metadata.Rom.SourceKey));
Assert.Equal(HashType.SpamSum.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SpamSumKey));
Assert.Equal("start", rom.ReadString(Data.Models.Metadata.Rom.StartKey));
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs
index aaa2eaa1..021711fa 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs
@@ -20,7 +20,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -65,7 +65,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -110,7 +110,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -158,7 +158,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -210,7 +210,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -255,7 +255,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -307,7 +307,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine deviceMachine = new Machine();
deviceMachine.SetName("device");
- deviceMachine.Write(Data.Models.Metadata.Machine.IsDeviceKey, true);
+ deviceMachine.IsDevice = true;
Machine slotOptionMachine = new Machine();
slotOptionMachine.SetName("slotoption");
@@ -366,7 +366,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine deviceMachine = new Machine();
deviceMachine.SetName("device");
- deviceMachine.Write(Data.Models.Metadata.Machine.IsDeviceKey, true);
+ deviceMachine.IsDevice = true;
Machine slotOptionMachine = new Machine();
slotOptionMachine.SetName("slotoption");
@@ -423,7 +423,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -468,7 +468,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -516,11 +516,11 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine biosMachine = new Machine();
biosMachine.SetName("bios");
- biosMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ biosMachine.IsBios = true;
Machine deviceMachine = new Machine();
deviceMachine.SetName("device");
- deviceMachine.Write(Data.Models.Metadata.Machine.IsDeviceKey, true);
+ deviceMachine.IsDevice = true;
DatItem biosItem = new Rom();
biosItem.Write(DatItem.MachineKey, biosMachine);
@@ -548,11 +548,11 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine biosMachine = new Machine();
biosMachine.SetName("bios");
- biosMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ biosMachine.IsBios = true;
Machine deviceMachine = new Machine();
deviceMachine.SetName("device");
- deviceMachine.Write(Data.Models.Metadata.Machine.IsDeviceKey, true);
+ deviceMachine.IsDevice = true;
DatItem biosItem = new Rom();
DatItem deviceItem = new Rom();
@@ -692,7 +692,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
@@ -741,7 +741,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine childMachine = new Machine();
childMachine.SetName("child");
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
- childMachine.Write(Data.Models.Metadata.Machine.IsBiosKey, true);
+ childMachine.IsBios = true;
DatItem parentItem = new Rom();
parentItem.SetName("parent_rom");
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
index 4dd4f923..21afa4e8 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
@@ -381,23 +381,23 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("comment", header.ReadString(Data.Models.Metadata.Header.CommentKey));
Assert.Equal("date", header.ReadString(Data.Models.Metadata.Header.DateKey));
Assert.Equal("datversion", header.ReadString(Data.Models.Metadata.Header.DatVersionKey));
- Assert.True(header.ReadBool(Data.Models.Metadata.Header.DebugKey));
+ Assert.True(header.Debug);
Assert.Equal("description", header.ReadString(Data.Models.Metadata.Header.DescriptionKey));
Assert.Equal("email", header.ReadString(Data.Models.Metadata.Header.EmailKey));
Assert.Equal("emulatorversion", header.ReadString(Data.Models.Metadata.Header.EmulatorVersionKey));
Assert.Equal("merged", header.ReadString(Data.Models.Metadata.Header.ForceMergingKey));
Assert.Equal("required", header.ReadString(Data.Models.Metadata.Header.ForceNodumpKey));
Assert.Equal("zip", header.ReadString(Data.Models.Metadata.Header.ForcePackingKey));
- Assert.True(header.ReadBool(Data.Models.Metadata.Header.ForceZippingKey));
+ Assert.True(header.ForceZipping);
Assert.Equal("header", header.ReadString(Data.Models.Metadata.Header.HeaderKey));
Assert.Equal("homepage", header.ReadString(Data.Models.Metadata.Header.HomepageKey));
Assert.Equal("id", header.ReadString(Data.Models.Metadata.Header.IdKey));
Assert.NotNull(header.Read(Data.Models.Metadata.Header.ImagesKey));
Assert.Equal("imfolder", header.ReadString(Data.Models.Metadata.Header.ImFolderKey));
Assert.NotNull(header.Read(Data.Models.Metadata.Header.InfosKey));
- Assert.True(header.ReadBool(Data.Models.Metadata.Header.LockBiosModeKey));
- Assert.True(header.ReadBool(Data.Models.Metadata.Header.LockRomModeKey));
- Assert.True(header.ReadBool(Data.Models.Metadata.Header.LockSampleModeKey));
+ Assert.True(header.LockBiosMode);
+ Assert.True(header.LockRomMode);
+ Assert.True(header.LockSampleMode);
Assert.Equal("mameconfig", header.ReadString(Data.Models.Metadata.Header.MameConfigKey));
Assert.Equal("name", header.Name);
Assert.NotNull(header.Read(Data.Models.Metadata.Header.NewDatKey));
@@ -444,9 +444,9 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.CRC32.ZeroString, machine.ReadString(Data.Models.Metadata.Machine.Im1CRCKey));
Assert.Equal(HashType.CRC32.ZeroString, machine.ReadString(Data.Models.Metadata.Machine.Im2CRCKey));
Assert.Equal("imagenumber", machine.ReadString(Data.Models.Metadata.Machine.ImageNumberKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.IsBiosKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.IsDeviceKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.IsMechanicalKey));
+ Assert.Equal(true, machine.IsBios);
+ Assert.Equal(true, machine.IsDevice);
+ Assert.Equal(true, machine.IsMechanical);
Assert.Equal("language", machine.ReadString(Data.Models.Metadata.Machine.LanguageKey));
Assert.Equal("location", machine.ReadString(Data.Models.Metadata.Machine.LocationKey));
Assert.Equal("manufacturer", machine.ReadString(Data.Models.Metadata.Machine.ManufacturerKey));
@@ -460,7 +460,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("releasenumber", machine.ReadString(Data.Models.Metadata.Machine.ReleaseNumberKey));
Assert.Equal("romof", machine.ReadString(Data.Models.Metadata.Machine.RomOfKey));
Assert.Equal("rotation", machine.ReadString(Data.Models.Metadata.Machine.RotationKey));
- Assert.Equal("yes", machine.ReadString(Data.Models.Metadata.Machine.RunnableKey));
+ Assert.Equal(true, machine.Runnable);
Assert.Equal("sampleof", machine.ReadString(Data.Models.Metadata.Machine.SampleOfKey));
Assert.Equal("savetype", machine.ReadString(Data.Models.Metadata.Machine.SaveTypeKey));
Assert.Equal("sourcefile", machine.ReadString(Data.Models.Metadata.Machine.SourceFileKey));
@@ -684,7 +684,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(12345, chip.ReadLong(Data.Models.Metadata.Chip.ClockKey));
Assert.Equal("flags", chip.ReadString(Data.Models.Metadata.Chip.FlagsKey));
Assert.Equal("name", chip.Name);
- Assert.True(chip.ReadBool(Data.Models.Metadata.Chip.SoundOnlyKey));
+ Assert.True(chip.SoundOnly);
Assert.Equal("tag", chip.ReadString(Data.Models.Metadata.Chip.TagKey));
Assert.Equal("cpu", chip.ReadString(Data.Models.Metadata.Chip.ChipTypeKey));
}
@@ -722,7 +722,7 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateMetadataConfLocation(Data.Models.Metadata.ConfLocation? confLocation)
{
Assert.NotNull(confLocation);
- Assert.True(confLocation.ReadBool(Data.Models.Metadata.ConfLocation.InvertedKey));
+ Assert.True(confLocation.Inverted);
Assert.Equal("name", confLocation.Name);
Assert.Equal("number", confLocation.ReadString(Data.Models.Metadata.ConfLocation.NumberKey));
}
@@ -747,7 +747,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(12345, control.ReadLong(Data.Models.Metadata.Control.MinimumKey));
Assert.Equal(12345, control.ReadLong(Data.Models.Metadata.Control.PlayerKey));
Assert.Equal(12345, control.ReadLong(Data.Models.Metadata.Control.ReqButtonsKey));
- Assert.True(control.ReadBool(Data.Models.Metadata.Control.ReverseKey));
+ Assert.True(control.Reverse);
Assert.Equal(12345, control.ReadLong(Data.Models.Metadata.Control.SensitivityKey));
Assert.Equal("lightgun", control.ReadString(Data.Models.Metadata.Control.ControlTypeKey));
Assert.Equal("ways", control.ReadString(Data.Models.Metadata.Control.WaysKey));
@@ -796,7 +796,7 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateMetadataDipLocation(Data.Models.Metadata.DipLocation? dipLocation)
{
Assert.NotNull(dipLocation);
- Assert.True(dipLocation.ReadBool(Data.Models.Metadata.DipLocation.InvertedKey));
+ Assert.True(dipLocation.Inverted);
Assert.Equal("name", dipLocation.Name);
Assert.Equal("number", dipLocation.ReadString(Data.Models.Metadata.DipLocation.NumberKey));
}
@@ -847,10 +847,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.MD5.ZeroString, disk.ReadString(Data.Models.Metadata.Disk.MD5Key));
Assert.Equal("merge", disk.ReadString(Data.Models.Metadata.Disk.MergeKey));
Assert.Equal("name", disk.Name);
- Assert.True(disk.ReadBool(Data.Models.Metadata.Disk.OptionalKey));
+ Assert.True(disk.Optional);
Assert.Equal("region", disk.ReadString(Data.Models.Metadata.Disk.RegionKey));
Assert.Equal(HashType.SHA1.ZeroString, disk.ReadString(Data.Models.Metadata.Disk.SHA1Key));
- Assert.True(disk.ReadBool(Data.Models.Metadata.Disk.WritableKey));
+ Assert.True(disk.Writable);
}
private static void ValidateMetadataDiskArea(Data.Models.Metadata.DiskArea? diskArea)
@@ -867,7 +867,7 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateMetadataDisplay(Data.Models.Metadata.Display? display)
{
Assert.NotNull(display);
- Assert.True(display.ReadBool(Data.Models.Metadata.Display.FlipXKey));
+ Assert.True(display.FlipX);
Assert.Equal(12345, display.ReadLong(Data.Models.Metadata.Display.HBEndKey));
Assert.Equal(12345, display.ReadLong(Data.Models.Metadata.Display.HBStartKey));
Assert.Equal(12345, display.ReadLong(Data.Models.Metadata.Display.HeightKey));
@@ -890,14 +890,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.CocktailKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.ColorKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.EmulationKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.IncompleteKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.NoSoundHardwareKey));
+ Assert.True(driver.Incomplete);
+ Assert.True(driver.NoSoundHardware);
Assert.Equal("pallettesize", driver.ReadString(Data.Models.Metadata.Driver.PaletteSizeKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.RequiresArtworkKey));
+ Assert.True(driver.RequiresArtwork);
Assert.Equal("supported", driver.ReadString(Data.Models.Metadata.Driver.SaveStateKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.SoundKey));
Assert.Equal("good", driver.ReadString(Data.Models.Metadata.Driver.StatusKey));
- Assert.True(driver.ReadBool(Data.Models.Metadata.Driver.UnofficialKey));
+ Assert.True(driver.Unofficial);
}
private static void ValidateMetadataExtension(Data.Models.Metadata.Extension? extension)
@@ -929,8 +929,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(12345, input.ReadLong(Data.Models.Metadata.Input.ButtonsKey));
Assert.Equal(12345, input.ReadLong(Data.Models.Metadata.Input.CoinsKey));
Assert.Equal(12345, input.ReadLong(Data.Models.Metadata.Input.PlayersKey));
- Assert.True(input.ReadBool(Data.Models.Metadata.Input.ServiceKey));
- Assert.True(input.ReadBool(Data.Models.Metadata.Input.TiltKey));
+ Assert.True(input.Service);
+ Assert.True(input.Tilt);
Data.Models.Metadata.Control[]? controls = input.ReadArray(Data.Models.Metadata.Input.ControlKey);
Assert.NotNull(controls);
@@ -1053,10 +1053,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.CRC64.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.CRC64Key));
Assert.Equal("creator", rom.ReadString(Data.Models.Metadata.Rom.CreatorKey));
Assert.Equal("date", rom.ReadString(Data.Models.Metadata.Rom.DateKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.DisposeKey));
+ Assert.True(rom.Dispose);
Assert.Equal("extension", rom.ReadString(Data.Models.Metadata.Rom.ExtensionKey));
Assert.Equal(12345, rom.ReadLong(Data.Models.Metadata.Rom.FileCountKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.FileIsAvailableKey));
+ Assert.True(rom.FileIsAvailable);
Assert.Equal("flags", rom.ReadString(Data.Models.Metadata.Rom.FlagsKey));
Assert.Equal("format", rom.ReadString(Data.Models.Metadata.Rom.FormatKey));
Assert.Equal("header", rom.ReadString(Data.Models.Metadata.Rom.HeaderKey));
@@ -1067,7 +1067,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("hocr_fts_text_module_version", rom.ReadString(Data.Models.Metadata.Rom.hOCRFtsTextModuleVersionKey));
Assert.Equal("hocr_pageindex_hocr_version", rom.ReadString(Data.Models.Metadata.Rom.hOCRPageIndexhOCRVersionKey));
Assert.Equal("hocr_pageindex_module_version", rom.ReadString(Data.Models.Metadata.Rom.hOCRPageIndexModuleVersionKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.InvertedKey));
+ Assert.True(rom.Inverted);
Assert.Equal("mtime", rom.ReadString(Data.Models.Metadata.Rom.LastModifiedTimeKey));
Assert.Equal("length", rom.ReadString(Data.Models.Metadata.Rom.LengthKey));
Assert.Equal("load16_byte", rom.ReadString(Data.Models.Metadata.Rom.LoadFlagKey));
@@ -1077,7 +1077,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.MD5.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.MD5Key));
Assert.Null(rom.ReadString(Data.Models.Metadata.Rom.OpenMSXMediaType)); // Omit due to other test
Assert.Equal("merge", rom.ReadString(Data.Models.Metadata.Rom.MergeKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.MIAKey));
+ Assert.True(rom.MIA);
Assert.Equal("name", rom.Name);
Assert.Equal("ocr", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRKey));
Assert.Equal("ocr_converted", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRConvertedKey));
@@ -1088,7 +1088,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("ocr_module_version", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRModuleVersionKey));
Assert.Equal("ocr_parameters", rom.ReadString(Data.Models.Metadata.Rom.TesseractOCRParametersKey));
Assert.Equal("offset", rom.ReadString(Data.Models.Metadata.Rom.OffsetKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.OptionalKey));
+ Assert.True(rom.Optional);
Assert.Equal("original", rom.ReadString(Data.Models.Metadata.Rom.OriginalKey));
Assert.Equal("pdf_module_version", rom.ReadString(Data.Models.Metadata.Rom.PDFModuleVersionKey));
Assert.Equal("preview-image", rom.ReadString(Data.Models.Metadata.Rom.PreviewImageKey));
@@ -1104,7 +1104,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.SHA384.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SHA384Key));
Assert.Equal(HashType.SHA512.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SHA512Key));
Assert.Equal(12345, rom.ReadLong(Data.Models.Metadata.Rom.SizeKey));
- Assert.True(rom.ReadBool(Data.Models.Metadata.Rom.SoundOnlyKey));
+ Assert.True(rom.SoundOnly);
Assert.Equal("source", rom.ReadString(Data.Models.Metadata.Rom.SourceKey));
Assert.Equal(HashType.SpamSum.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SpamSumKey));
Assert.Equal("start", rom.ReadString(Data.Models.Metadata.Rom.StartKey));
@@ -1244,7 +1244,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal("ratings", trurip.Ratings);
Assert.Equal("score", trurip.Score);
Assert.Equal("players", trurip.Players);
- Assert.Equal("enabled", trurip.Enabled);
+ Assert.Equal(expected: "enabled", trurip.Enabled);
Assert.Equal("yes", trurip.CRC);
Assert.Equal("sourcefile", trurip.Source);
Assert.Equal("cloneof", trurip.CloneOf);
diff --git a/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs b/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs
index 2d30295d..cf262850 100644
--- a/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs
+++ b/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs
@@ -105,8 +105,8 @@ namespace SabreTools.Metadata.DatFiles
Header.Write(Data.Models.Metadata.Header.DateKey, header.ReadString(Data.Models.Metadata.Header.DateKey));
if (Header.ReadString(Data.Models.Metadata.Header.DatVersionKey) is null)
Header.Write(Data.Models.Metadata.Header.DatVersionKey, header.ReadString(Data.Models.Metadata.Header.DatVersionKey));
- if (Header.ReadBool(Data.Models.Metadata.Header.DebugKey) is null)
- Header.Write(Data.Models.Metadata.Header.DebugKey, header.ReadBool(Data.Models.Metadata.Header.DebugKey));
+ if (Header.Debug is null)
+ Header.Debug = header.Debug;
if (Header.ReadString(Data.Models.Metadata.Header.DescriptionKey) is null)
Header.Write(Data.Models.Metadata.Header.DescriptionKey, header.ReadString(Data.Models.Metadata.Header.DescriptionKey));
if (Header.ReadString(Data.Models.Metadata.Header.EmailKey) is null)
@@ -119,8 +119,8 @@ namespace SabreTools.Metadata.DatFiles
Header.Write(Data.Models.Metadata.Header.ForceNodumpKey, header.ReadString(Data.Models.Metadata.Header.ForceNodumpKey).AsNodumpFlag().AsStringValue());
if (Header.ReadString(Data.Models.Metadata.Header.ForcePackingKey).AsPackingFlag() == PackingFlag.None)
Header.Write(Data.Models.Metadata.Header.ForcePackingKey, header.ReadString(Data.Models.Metadata.Header.ForcePackingKey).AsPackingFlag().AsStringValue());
- if (Header.ReadBool(Data.Models.Metadata.Header.ForceZippingKey) is null)
- Header.Write(Data.Models.Metadata.Header.ForceZippingKey, header.ReadBool(Data.Models.Metadata.Header.ForceZippingKey));
+ if (Header.ForceZipping is null)
+ Header.ForceZipping = header.ForceZipping;
if (Header.ReadString(Data.Models.Metadata.Header.HeaderKey) is null)
Header.Write(Data.Models.Metadata.Header.HeaderKey, header.ReadString(Data.Models.Metadata.Header.HeaderKey));
if (Header.ReadString(Data.Models.Metadata.Header.HomepageKey) is null)
@@ -129,12 +129,12 @@ namespace SabreTools.Metadata.DatFiles
Header.Write(Data.Models.Metadata.Header.IdKey, header.ReadString(Data.Models.Metadata.Header.IdKey));
if (Header.ReadString(Data.Models.Metadata.Header.ImFolderKey) is null)
Header.Write(Data.Models.Metadata.Header.ImFolderKey, header.ReadString(Data.Models.Metadata.Header.ImFolderKey));
- if (Header.ReadBool(Data.Models.Metadata.Header.LockBiosModeKey) is null)
- Header.Write(Data.Models.Metadata.Header.LockBiosModeKey, header.ReadBool(Data.Models.Metadata.Header.LockBiosModeKey));
- if (Header.ReadBool(Data.Models.Metadata.Header.LockRomModeKey) is null)
- Header.Write(Data.Models.Metadata.Header.LockRomModeKey, header.ReadBool(Data.Models.Metadata.Header.LockRomModeKey));
- if (Header.ReadBool(Data.Models.Metadata.Header.LockSampleModeKey) is null)
- Header.Write(Data.Models.Metadata.Header.LockSampleModeKey, header.ReadBool(Data.Models.Metadata.Header.LockSampleModeKey));
+ if (Header.LockBiosMode is null)
+ Header.LockBiosMode = header.LockBiosMode;
+ if (Header.LockRomMode is null)
+ Header.LockRomMode = header.LockRomMode;
+ if (Header.LockSampleMode is null)
+ Header.LockSampleMode = header.LockSampleMode;
if (Header.ReadString(Data.Models.Metadata.Header.MameConfigKey) is null)
Header.Write(Data.Models.Metadata.Header.MameConfigKey, header.ReadString(Data.Models.Metadata.Header.MameConfigKey));
if (Header.Name is null)
diff --git a/SabreTools.Metadata.DatFiles/DatFile.Splitting.cs b/SabreTools.Metadata.DatFiles/DatFile.Splitting.cs
index be6c7c63..02f72357 100644
--- a/SabreTools.Metadata.DatFiles/DatFile.Splitting.cs
+++ b/SabreTools.Metadata.DatFiles/DatFile.Splitting.cs
@@ -660,7 +660,7 @@ namespace SabreTools.Metadata.DatFiles
continue;
// If the machine (is/is not) a device, we want to continue
- if (deviceOnly ^ (datItems[0].GetMachine()!.ReadBool(Data.Models.Metadata.Machine.IsDeviceKey) == true))
+ if (deviceOnly ^ (datItems[0].GetMachine()!.IsDevice == true))
continue;
// Get the first item from the bucket
@@ -820,7 +820,7 @@ namespace SabreTools.Metadata.DatFiles
continue;
// If the machine (is/is not) a device, we want to continue
- if (deviceOnly ^ (machine.Value.ReadBool(Data.Models.Metadata.Machine.IsDeviceKey) == true))
+ if (deviceOnly ^ (machine.Value.IsDevice == true))
continue;
// Get all device reference names from the current machine
@@ -1079,11 +1079,8 @@ namespace SabreTools.Metadata.DatFiles
#endif
// Remove flagged items
- if ((machine.ReadBool(Data.Models.Metadata.Machine.IsBiosKey) == true)
- || (machine.ReadBool(Data.Models.Metadata.Machine.IsDeviceKey) == true))
- {
+ if ((machine.IsBios == true) || (machine.IsDevice == true))
RemoveBucket(bucket);
- }
#if NET40_OR_GREATER || NETCOREAPP || NETSTANDARD2_0_OR_GREATER
});
#else
@@ -1127,8 +1124,7 @@ namespace SabreTools.Metadata.DatFiles
#endif
// Remove flagged items
- if ((machine.Value.ReadBool(Data.Models.Metadata.Machine.IsBiosKey) == true)
- || (machine.Value.ReadBool(Data.Models.Metadata.Machine.IsDeviceKey) == true))
+ if ((machine.Value.IsBios == true) || (machine.Value.IsDevice == true))
{
foreach (var key in items.Keys)
{
diff --git a/SabreTools.Metadata.DatFiles/DatHeader.cs b/SabreTools.Metadata.DatFiles/DatHeader.cs
index 197387f6..430fab85 100644
--- a/SabreTools.Metadata.DatFiles/DatHeader.cs
+++ b/SabreTools.Metadata.DatFiles/DatHeader.cs
@@ -47,6 +47,18 @@ namespace SabreTools.Metadata.DatFiles
}
}
+ public bool? Debug
+ {
+ get => _internal.Debug;
+ set => _internal.Debug = value;
+ }
+
+ public bool? ForceZipping
+ {
+ get => _internal.ForceZipping;
+ set => _internal.ForceZipping = value;
+ }
+
[JsonIgnore]
public bool ImagesSpecified
{
@@ -65,6 +77,24 @@ namespace SabreTools.Metadata.DatFiles
}
}
+ public bool? LockBiosMode
+ {
+ get => _internal.LockBiosMode;
+ set => _internal.LockBiosMode = value;
+ }
+
+ public bool? LockRomMode
+ {
+ get => _internal.LockRomMode;
+ set => _internal.LockRomMode = value;
+ }
+
+ public bool? LockSampleMode
+ {
+ get => _internal.LockSampleMode;
+ set => _internal.LockSampleMode = value;
+ }
+
[JsonIgnore]
public bool NewDatSpecified
{
diff --git a/SabreTools.Metadata.DatItems.Test/Formats/DiskTests.cs b/SabreTools.Metadata.DatItems.Test/Formats/DiskTests.cs
index df8ff31b..643d5ca9 100644
--- a/SabreTools.Metadata.DatItems.Test/Formats/DiskTests.cs
+++ b/SabreTools.Metadata.DatItems.Test/Formats/DiskTests.cs
@@ -27,7 +27,7 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
disk.Write(Data.Models.Metadata.Disk.MergeKey, "XXXXXX");
disk.Write(Data.Models.Metadata.Disk.RegionKey, "XXXXXX");
disk.Write(Data.Models.Metadata.Disk.StatusKey, "good");
- disk.Write(Data.Models.Metadata.Disk.OptionalKey, "XXXXXX");
+ disk.Optional = true;
disk.Write(Data.Models.Metadata.Disk.MD5Key, HashType.MD5.ZeroString);
disk.Write(Data.Models.Metadata.Disk.SHA1Key, HashType.SHA1.ZeroString);
disk.Write(DatItem.DupeTypeKey, DupeType.All | DupeType.External);
@@ -42,7 +42,7 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
Assert.Equal("XXXXXX", actual.ReadString(Data.Models.Metadata.Rom.MergeKey));
Assert.Equal("XXXXXX", actual.ReadString(Data.Models.Metadata.Rom.RegionKey));
Assert.Equal("good", actual.ReadString(Data.Models.Metadata.Rom.StatusKey));
- Assert.Equal("XXXXXX", actual.ReadString(Data.Models.Metadata.Rom.OptionalKey));
+ Assert.Equal(true, actual.Optional);
Assert.Equal(HashType.MD5.ZeroString, actual.ReadString(Data.Models.Metadata.Rom.MD5Key));
Assert.Equal(HashType.SHA1.ZeroString, actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(DupeType.All | DupeType.External, actual.Read(DatItem.DupeTypeKey));
diff --git a/SabreTools.Metadata.DatItems/Formats/Chip.cs b/SabreTools.Metadata.DatItems/Formats/Chip.cs
index dd83cf93..753d295f 100644
--- a/SabreTools.Metadata.DatItems/Formats/Chip.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Chip.cs
@@ -10,6 +10,17 @@ namespace SabreTools.Metadata.DatItems.Formats
[JsonObject("chip"), XmlRoot("chip")]
public sealed class Chip : DatItem
{
+ #region Fields
+
+ [JsonIgnore]
+ public bool? SoundOnly
+ {
+ get => (_internal as Data.Models.Metadata.Chip)?.SoundOnly;
+ set => (_internal as Data.Models.Metadata.Chip)?.SoundOnly = value;
+ }
+
+ #endregion
+
#region Constructors
public Chip() : base() { }
@@ -17,10 +28,6 @@ namespace SabreTools.Metadata.DatItems.Formats
public Chip(Data.Models.Metadata.Chip item) : base(item)
{
// Process flag values
- bool? soundOnly = ReadBool(Data.Models.Metadata.Chip.SoundOnlyKey);
- if (soundOnly is not null)
- Write(Data.Models.Metadata.Chip.SoundOnlyKey, soundOnly.FromYesNo());
-
string? chipType = ReadString(Data.Models.Metadata.Chip.ChipTypeKey);
if (chipType is not null)
Write(Data.Models.Metadata.Chip.ChipTypeKey, chipType.AsChipType()?.AsStringValue());
diff --git a/SabreTools.Metadata.DatItems/Formats/ConfLocation.cs b/SabreTools.Metadata.DatItems/Formats/ConfLocation.cs
index 34835759..372639a5 100644
--- a/SabreTools.Metadata.DatItems/Formats/ConfLocation.cs
+++ b/SabreTools.Metadata.DatItems/Formats/ConfLocation.cs
@@ -10,17 +10,21 @@ namespace SabreTools.Metadata.DatItems.Formats
[JsonObject("conflocation"), XmlRoot("conflocation")]
public sealed class ConfLocation : DatItem
{
+ #region Fields
+
+ public bool? Inverted
+ {
+ get => (_internal as Data.Models.Metadata.ConfLocation)?.Inverted;
+ set => (_internal as Data.Models.Metadata.ConfLocation)?.Inverted = value;
+ }
+
+ #endregion
+
#region Constructors
public ConfLocation() : base() { }
- public ConfLocation(Data.Models.Metadata.ConfLocation item) : base(item)
- {
- // Process flag values
- bool? inverted = ReadBool(Data.Models.Metadata.ConfLocation.InvertedKey);
- if (inverted is not null)
- Write(Data.Models.Metadata.ConfLocation.InvertedKey, inverted.FromYesNo());
- }
+ public ConfLocation(Data.Models.Metadata.ConfLocation item) : base(item) { }
public ConfLocation(Data.Models.Metadata.ConfLocation item, Machine machine, Source source) : this(item)
{
diff --git a/SabreTools.Metadata.DatItems/Formats/Control.cs b/SabreTools.Metadata.DatItems/Formats/Control.cs
index b8840a00..1c9c611f 100644
--- a/SabreTools.Metadata.DatItems/Formats/Control.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Control.cs
@@ -10,6 +10,16 @@ namespace SabreTools.Metadata.DatItems.Formats
[JsonObject("control"), XmlRoot("control")]
public sealed class Control : DatItem
{
+ #region Fields
+
+ public bool? Reverse
+ {
+ get => (_internal as Data.Models.Metadata.Control)?.Reverse;
+ set => (_internal as Data.Models.Metadata.Control)?.Reverse = value;
+ }
+
+ #endregion
+
#region Constructors
public Control() : base() { }
@@ -41,10 +51,6 @@ namespace SabreTools.Metadata.DatItems.Formats
if (reqButtons is not null)
Write(Data.Models.Metadata.Control.ReqButtonsKey, reqButtons.ToString());
- bool? reverse = ReadBool(Data.Models.Metadata.Control.ReverseKey);
- if (reverse is not null)
- Write(Data.Models.Metadata.Control.ReverseKey, reverse.FromYesNo());
-
long? sensitivity = ReadLong(Data.Models.Metadata.Control.SensitivityKey);
if (sensitivity is not null)
Write(Data.Models.Metadata.Control.SensitivityKey, sensitivity.ToString());
diff --git a/SabreTools.Metadata.DatItems/Formats/DipLocation.cs b/SabreTools.Metadata.DatItems/Formats/DipLocation.cs
index 207e4b14..de5d8b25 100644
--- a/SabreTools.Metadata.DatItems/Formats/DipLocation.cs
+++ b/SabreTools.Metadata.DatItems/Formats/DipLocation.cs
@@ -10,17 +10,21 @@ namespace SabreTools.Metadata.DatItems.Formats
[JsonObject("diplocation"), XmlRoot("diplocation")]
public sealed class DipLocation : DatItem
{
+ #region Fields
+
+ public bool? Inverted
+ {
+ get => (_internal as Data.Models.Metadata.DipLocation)?.Inverted;
+ set => (_internal as Data.Models.Metadata.DipLocation)?.Inverted = value;
+ }
+
+ #endregion
+
#region Constructors
public DipLocation() : base() { }
- public DipLocation(Data.Models.Metadata.DipLocation item) : base(item)
- {
- // Process flag values
- bool? inverted = ReadBool(Data.Models.Metadata.DipLocation.InvertedKey);
- if (inverted is not null)
- Write(Data.Models.Metadata.DipLocation.InvertedKey, inverted.FromYesNo());
- }
+ public DipLocation(Data.Models.Metadata.DipLocation item) : base(item) { }
public DipLocation(Data.Models.Metadata.DipLocation item, Machine machine, Source source) : this(item)
{
diff --git a/SabreTools.Metadata.DatItems/Formats/Disk.cs b/SabreTools.Metadata.DatItems/Formats/Disk.cs
index 82753e3d..b3510c18 100644
--- a/SabreTools.Metadata.DatItems/Formats/Disk.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Disk.cs
@@ -38,6 +38,12 @@ namespace SabreTools.Metadata.DatItems.Formats
}
}
+ public bool? Optional
+ {
+ get => (_internal as Data.Models.Metadata.Disk)?.Optional;
+ set => (_internal as Data.Models.Metadata.Disk)?.Optional = value;
+ }
+
[JsonIgnore]
public bool PartSpecified
{
@@ -50,6 +56,12 @@ namespace SabreTools.Metadata.DatItems.Formats
}
}
+ public bool? Writable
+ {
+ get => (_internal as Data.Models.Metadata.Disk)?.Writable;
+ set => (_internal as Data.Models.Metadata.Disk)?.Writable = value;
+ }
+
#endregion
#region Constructors
@@ -65,18 +77,10 @@ namespace SabreTools.Metadata.DatItems.Formats
Write(DupeTypeKey, 0x00);
// Process flag values
- bool? optional = ReadBool(Data.Models.Metadata.Disk.OptionalKey);
- if (optional is not null)
- Write(Data.Models.Metadata.Disk.OptionalKey, optional.FromYesNo());
-
string? status = ReadString(Data.Models.Metadata.Disk.StatusKey);
if (status is not null)
Write(Data.Models.Metadata.Disk.StatusKey, status.AsItemStatus()?.AsStringValue());
- bool? writable = ReadBool(Data.Models.Metadata.Disk.WritableKey);
- if (writable is not null)
- Write(Data.Models.Metadata.Disk.WritableKey, writable.FromYesNo());
-
// Process hash values
string? md5 = ReadString(Data.Models.Metadata.Disk.MD5Key);
if (md5 is not null)
diff --git a/SabreTools.Metadata.DatItems/Formats/Display.cs b/SabreTools.Metadata.DatItems/Formats/Display.cs
index 8921a2f6..c3462fa7 100644
--- a/SabreTools.Metadata.DatItems/Formats/Display.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Display.cs
@@ -11,6 +11,16 @@ namespace SabreTools.Metadata.DatItems.Formats
[JsonObject("display"), XmlRoot("display")]
public sealed class Display : DatItem
{
+ #region Fields
+
+ public bool? FlipX
+ {
+ get => (_internal as Data.Models.Metadata.Display)?.FlipX;
+ set => (_internal as Data.Models.Metadata.Display)?.FlipX = value;
+ }
+
+ #endregion
+
#region Constructors
public Display() : base() { }
@@ -18,10 +28,6 @@ namespace SabreTools.Metadata.DatItems.Formats
public Display(Data.Models.Metadata.Display item) : base(item)
{
// Process flag values
- bool? flipX = ReadBool(Data.Models.Metadata.Display.FlipXKey);
- if (flipX is not null)
- Write(Data.Models.Metadata.Display.FlipXKey, flipX.FromYesNo());
-
long? hbEnd = ReadLong(Data.Models.Metadata.Display.HBEndKey);
if (hbEnd is not null)
Write(Data.Models.Metadata.Display.HBEndKey, hbEnd.ToString());
diff --git a/SabreTools.Metadata.DatItems/Formats/Driver.cs b/SabreTools.Metadata.DatItems/Formats/Driver.cs
index 03a038bf..7d538da3 100644
--- a/SabreTools.Metadata.DatItems/Formats/Driver.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Driver.cs
@@ -10,6 +10,34 @@ namespace SabreTools.Metadata.DatItems.Formats
[JsonObject("driver"), XmlRoot("driver")]
public sealed class Driver : DatItem
{
+ #region Fields
+
+ public bool? Incomplete
+ {
+ get => (_internal as Data.Models.Metadata.Driver)?.Incomplete;
+ set => (_internal as Data.Models.Metadata.Driver)?.Incomplete = value;
+ }
+
+ public bool? NoSoundHardware
+ {
+ get => (_internal as Data.Models.Metadata.Driver)?.NoSoundHardware;
+ set => (_internal as Data.Models.Metadata.Driver)?.NoSoundHardware = value;
+ }
+
+ public bool? RequiresArtwork
+ {
+ get => (_internal as Data.Models.Metadata.Driver)?.RequiresArtwork;
+ set => (_internal as Data.Models.Metadata.Driver)?.RequiresArtwork = value;
+ }
+
+ public bool? Unofficial
+ {
+ get => (_internal as Data.Models.Metadata.Driver)?.Unofficial;
+ set => (_internal as Data.Models.Metadata.Driver)?.Unofficial = value;
+ }
+
+ #endregion
+
#region Constructors
public Driver() : base() { }
@@ -29,22 +57,10 @@ namespace SabreTools.Metadata.DatItems.Formats
if (emulation is not null)
Write(Data.Models.Metadata.Driver.EmulationKey, emulation.AsSupportStatus()?.AsStringValue());
- bool? incomplete = ReadBool(Data.Models.Metadata.Driver.IncompleteKey);
- if (incomplete is not null)
- Write(Data.Models.Metadata.Driver.IncompleteKey, incomplete.FromYesNo());
-
- bool? noSoundHardware = ReadBool(Data.Models.Metadata.Driver.NoSoundHardwareKey);
- if (noSoundHardware is not null)
- Write(Data.Models.Metadata.Driver.NoSoundHardwareKey, noSoundHardware.FromYesNo());
-
long? paletteSize = ReadLong(Data.Models.Metadata.Driver.PaletteSizeKey);
if (paletteSize is not null)
Write(Data.Models.Metadata.Driver.PaletteSizeKey, paletteSize.ToString());
- bool? requiresArtwork = ReadBool(Data.Models.Metadata.Driver.RequiresArtworkKey);
- if (requiresArtwork is not null)
- Write(Data.Models.Metadata.Driver.RequiresArtworkKey, requiresArtwork.FromYesNo());
-
string? saveState = ReadString(Data.Models.Metadata.Driver.SaveStateKey);
if (saveState is not null)
Write(Data.Models.Metadata.Driver.SaveStateKey, saveState.AsSupported()?.AsStringValue(useSecond: true));
@@ -56,10 +72,6 @@ namespace SabreTools.Metadata.DatItems.Formats
string? status = ReadString(Data.Models.Metadata.Driver.StatusKey);
if (status is not null)
Write(Data.Models.Metadata.Driver.StatusKey, status.AsSupportStatus()?.AsStringValue());
-
- bool? unofficial = ReadBool(Data.Models.Metadata.Driver.UnofficialKey);
- if (unofficial is not null)
- Write(Data.Models.Metadata.Driver.UnofficialKey, unofficial.FromYesNo());
}
public Driver(Data.Models.Metadata.Driver item, Machine machine, Source source) : this(item)
diff --git a/SabreTools.Metadata.DatItems/Formats/Input.cs b/SabreTools.Metadata.DatItems/Formats/Input.cs
index 2b71950f..de343b4f 100644
--- a/SabreTools.Metadata.DatItems/Formats/Input.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Input.cs
@@ -23,6 +23,18 @@ namespace SabreTools.Metadata.DatItems.Formats
}
}
+ public bool? Service
+ {
+ get => (_internal as Data.Models.Metadata.Input)?.Service;
+ set => (_internal as Data.Models.Metadata.Input)?.Service = value;
+ }
+
+ public bool? Tilt
+ {
+ get => (_internal as Data.Models.Metadata.Input)?.Tilt;
+ set => (_internal as Data.Models.Metadata.Input)?.Tilt = value;
+ }
+
#endregion
#region Constructors
@@ -44,14 +56,6 @@ namespace SabreTools.Metadata.DatItems.Formats
if (players is not null)
Write(Data.Models.Metadata.Input.PlayersKey, players.ToString());
- bool? service = ReadBool(Data.Models.Metadata.Input.ServiceKey);
- if (service is not null)
- Write(Data.Models.Metadata.Input.ServiceKey, service.FromYesNo());
-
- bool? tilt = ReadBool(Data.Models.Metadata.Input.TiltKey);
- if (tilt is not null)
- Write(Data.Models.Metadata.Input.TiltKey, tilt.FromYesNo());
-
// Handle subitems
var controls = item.ReadArray(Data.Models.Metadata.Input.ControlKey);
if (controls is not null)
diff --git a/SabreTools.Metadata.DatItems/Formats/Rom.cs b/SabreTools.Metadata.DatItems/Formats/Rom.cs
index 005110e7..f3670a55 100644
--- a/SabreTools.Metadata.DatItems/Formats/Rom.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Rom.cs
@@ -28,26 +28,6 @@ namespace SabreTools.Metadata.DatItems.Formats
#region Fields
- [JsonIgnore]
- public bool ItemStatusSpecified
- {
- get
- {
- var status = ReadString(Data.Models.Metadata.Rom.StatusKey).AsItemStatus();
- return status is not null && status != ItemStatus.None;
- }
- }
-
- [JsonIgnore]
- public bool OriginalSpecified
- {
- get
- {
- var original = Read("ORIGINAL");
- return original is not null && original != default;
- }
- }
-
[JsonIgnore]
public bool DataAreaSpecified
{
@@ -62,6 +42,56 @@ namespace SabreTools.Metadata.DatItems.Formats
}
}
+ public bool? Dispose
+ {
+ get => (_internal as Data.Models.Metadata.Rom)?.Dispose;
+ set => (_internal as Data.Models.Metadata.Rom)?.Dispose = value;
+ }
+
+ public bool? FileIsAvailable
+ {
+ get => (_internal as Data.Models.Metadata.Rom)?.FileIsAvailable;
+ set => (_internal as Data.Models.Metadata.Rom)?.FileIsAvailable = value;
+ }
+
+ public bool? Inverted
+ {
+ get => (_internal as Data.Models.Metadata.Rom)?.Inverted;
+ set => (_internal as Data.Models.Metadata.Rom)?.Inverted = value;
+ }
+
+ [JsonIgnore]
+ public bool ItemStatusSpecified
+ {
+ get
+ {
+ var status = ReadString(Data.Models.Metadata.Rom.StatusKey).AsItemStatus();
+ return status is not null && status != ItemStatus.None;
+ }
+ }
+
+ public bool? MIA
+ {
+ get => (_internal as Data.Models.Metadata.Rom)?.MIA;
+ set => (_internal as Data.Models.Metadata.Rom)?.MIA = value;
+ }
+
+ public bool? Optional
+ {
+ get => (_internal as Data.Models.Metadata.Rom)?.Optional;
+ set => (_internal as Data.Models.Metadata.Rom)?.Optional = value;
+ }
+
+ [JsonIgnore]
+ public bool OriginalSpecified
+ {
+ get
+ {
+ var original = Read("ORIGINAL");
+ return original is not null && original != default;
+ }
+ }
+
[JsonIgnore]
public bool PartSpecified
{
@@ -74,6 +104,12 @@ namespace SabreTools.Metadata.DatItems.Formats
}
}
+ public bool? SoundOnly
+ {
+ get => (_internal as Data.Models.Metadata.Rom)?.SoundOnly;
+ set => (_internal as Data.Models.Metadata.Rom)?.SoundOnly = value;
+ }
+
#endregion
#region Constructors
@@ -194,14 +230,6 @@ namespace SabreTools.Metadata.DatItems.Formats
Write(DupeTypeKey, 0x00);
// Process flag values
- bool? dispose = ReadBool(Data.Models.Metadata.Rom.DisposeKey);
- if (dispose is not null)
- Write(Data.Models.Metadata.Rom.DisposeKey, dispose.FromYesNo());
-
- bool? inverted = ReadBool(Data.Models.Metadata.Rom.InvertedKey);
- if (inverted is not null)
- Write(Data.Models.Metadata.Rom.InvertedKey, inverted.FromYesNo());
-
string? loadFlag = ReadString(Data.Models.Metadata.Rom.LoadFlagKey);
if (loadFlag is not null)
Write(Data.Models.Metadata.Rom.LoadFlagKey, loadFlag.AsLoadFlag()?.AsStringValue());
@@ -210,18 +238,6 @@ namespace SabreTools.Metadata.DatItems.Formats
if (openMSXMediaType is not null)
Write(Data.Models.Metadata.Rom.OpenMSXMediaType, openMSXMediaType.AsOpenMSXSubType()?.AsStringValue());
- bool? mia = ReadBool(Data.Models.Metadata.Rom.MIAKey);
- if (mia is not null)
- Write(Data.Models.Metadata.Rom.MIAKey, mia.FromYesNo());
-
- bool? optional = ReadBool(Data.Models.Metadata.Rom.OptionalKey);
- if (optional is not null)
- Write(Data.Models.Metadata.Rom.OptionalKey, optional.FromYesNo());
-
- bool? soundOnly = ReadBool(Data.Models.Metadata.Rom.SoundOnlyKey);
- if (soundOnly is not null)
- Write(Data.Models.Metadata.Rom.SoundOnlyKey, soundOnly.FromYesNo());
-
string? status = ReadString(Data.Models.Metadata.Rom.StatusKey);
if (status is not null)
Write(Data.Models.Metadata.Rom.StatusKey, status.AsItemStatus()?.AsStringValue());
diff --git a/SabreTools.Metadata.DatItems/Machine.cs b/SabreTools.Metadata.DatItems/Machine.cs
index 23ca5437..28657240 100644
--- a/SabreTools.Metadata.DatItems/Machine.cs
+++ b/SabreTools.Metadata.DatItems/Machine.cs
@@ -13,6 +13,34 @@ namespace SabreTools.Metadata.DatItems
[JsonObject("machine"), XmlRoot("machine")]
public sealed class Machine : ModelBackedItem, ICloneable, IEquatable
{
+ #region Fields
+
+ public bool? IsBios
+ {
+ get => _internal.IsBios;
+ set => _internal.IsBios = value;
+ }
+
+ public bool? IsDevice
+ {
+ get => _internal.IsDevice;
+ set => _internal.IsDevice = value;
+ }
+
+ public bool? IsMechanical
+ {
+ get => _internal.IsMechanical;
+ set => _internal.IsMechanical = value;
+ }
+
+ public bool? Runnable
+ {
+ get => _internal.Runnable;
+ set => _internal.Runnable = value;
+ }
+
+ #endregion
+
#region Constructors
public Machine()
@@ -63,18 +91,6 @@ namespace SabreTools.Metadata.DatItems
if (im2Crc is not null)
Write(Data.Models.Metadata.Machine.Im2CRCKey, TextHelper.NormalizeCRC32(im2Crc));
- bool? isBios = ReadBool(Data.Models.Metadata.Machine.IsBiosKey);
- if (isBios is not null)
- Write(Data.Models.Metadata.Machine.IsBiosKey, isBios.FromYesNo());
-
- bool? isDevice = ReadBool(Data.Models.Metadata.Machine.IsDeviceKey);
- if (isDevice is not null)
- Write(Data.Models.Metadata.Machine.IsDeviceKey, isDevice.FromYesNo());
-
- bool? isMechanical = ReadBool(Data.Models.Metadata.Machine.IsMechanicalKey);
- if (isMechanical is not null)
- Write(Data.Models.Metadata.Machine.IsMechanicalKey, isMechanical.FromYesNo());
-
string? supported = ReadString(Data.Models.Metadata.Machine.SupportedKey);
if (supported is not null)
Write(Data.Models.Metadata.Machine.SupportedKey, supported.AsSupported()?.AsStringValue());
diff --git a/SabreTools.Metadata.Filter/FilterObject.cs b/SabreTools.Metadata.Filter/FilterObject.cs
index 27dcd70c..f673a530 100644
--- a/SabreTools.Metadata.Filter/FilterObject.cs
+++ b/SabreTools.Metadata.Filter/FilterObject.cs
@@ -356,10 +356,30 @@ namespace SabreTools.Metadata.Filter
checkValue = item.Default.FromYesNo();
return true;
+ case Chip item when Key.FieldName == "soundonly":
+ checkValue = item.SoundOnly.FromYesNo();
+ return true;
+
+ case ConfLocation item when Key.FieldName == "inverted":
+ checkValue = item.Inverted.FromYesNo();
+ return true;
+
case ConfSetting item when Key.FieldName == "default":
checkValue = item.Default.FromYesNo();
return true;
+ case Control item when Key.FieldName == "reverse":
+ checkValue = item.Reverse.FromYesNo();
+ return true;
+
+ case DipLocation item when Key.FieldName == "inverted":
+ checkValue = item.Inverted.FromYesNo();
+ return true;
+
+ case DipLocation item when Key.FieldName == "inverted":
+ checkValue = item.Inverted.FromYesNo();
+ return true;
+
case DipSwitch item when Key.FieldName == "default":
checkValue = item.Default.FromYesNo();
return true;
@@ -368,6 +388,66 @@ namespace SabreTools.Metadata.Filter
checkValue = item.Default.FromYesNo();
return true;
+ case Disk item when Key.FieldName == "optional":
+ checkValue = item.Optional.FromYesNo();
+ return true;
+ case Disk item when Key.FieldName == "writable":
+ checkValue = item.Writable.FromYesNo();
+ return true;
+
+ case Display item when Key.FieldName == "flipx":
+ checkValue = item.FlipX.FromYesNo();
+ return true;
+
+ case Driver item when Key.FieldName == "incomplete":
+ checkValue = item.Incomplete.FromYesNo();
+ return true;
+ case Driver item when Key.FieldName == "nosoundhardware":
+ checkValue = item.NoSoundHardware.FromYesNo();
+ return true;
+ case Driver item when Key.FieldName == "requiresartwork":
+ checkValue = item.RequiresArtwork.FromYesNo();
+ return true;
+ case Driver item when Key.FieldName == "unofficial":
+ checkValue = item.Unofficial.FromYesNo();
+ return true;
+
+ case Header item when Key.FieldName == "debug":
+ checkValue = item.Debug.FromYesNo();
+ return true;
+ case Header item when Key.FieldName == "forcezipping":
+ checkValue = item.ForceZipping.FromYesNo();
+ return true;
+ case Header item when Key.FieldName == "lockbiosmode":
+ checkValue = item.LockBiosMode.FromYesNo();
+ return true;
+ case Header item when Key.FieldName == "lockrommode":
+ checkValue = item.LockRomMode.FromYesNo();
+ return true;
+ case Header item when Key.FieldName == "locksamplemode":
+ checkValue = item.LockSampleMode.FromYesNo();
+ return true;
+
+ case Input item when Key.FieldName == "service":
+ checkValue = item.Service.FromYesNo();
+ return true;
+ case Input item when Key.FieldName == "tilt":
+ checkValue = item.Tilt.FromYesNo();
+ return true;
+
+ case Machine item when Key.FieldName == "isbios":
+ checkValue = item.IsBios.FromYesNo();
+ return true;
+ case Machine item when Key.FieldName == "isdevice":
+ checkValue = item.IsDevice.FromYesNo();
+ return true;
+ case Machine item when Key.FieldName == "ismechanical":
+ checkValue = item.IsMechanical.FromYesNo();
+ return true;
+ case Machine item when Key.FieldName == "runnable":
+ checkValue = item.Runnable.FromYesNo();
+ return true;
+
case RamOption item when Key.FieldName == "default":
checkValue = item.Default.FromYesNo();
return true;
@@ -376,6 +456,25 @@ namespace SabreTools.Metadata.Filter
checkValue = item.Default.FromYesNo();
return true;
+ case Rom item when Key.FieldName == "dispose":
+ checkValue = item.Dispose.FromYesNo();
+ return true;
+ case Rom item when Key.FieldName == "fileisavailable":
+ checkValue = item.FileIsAvailable.FromYesNo();
+ return true;
+ case Rom item when Key.FieldName == "inverted":
+ checkValue = item.Inverted.FromYesNo();
+ return true;
+ case Rom item when Key.FieldName == "mia":
+ checkValue = item.MIA.FromYesNo();
+ return true;
+ case Rom item when Key.FieldName == "optional":
+ checkValue = item.Optional.FromYesNo();
+ return true;
+ case Rom item when Key.FieldName == "soundonly":
+ checkValue = item.SoundOnly.FromYesNo();
+ return true;
+
case SlotOption item when Key.FieldName == "default":
checkValue = item.Default.FromYesNo();
return true;
diff --git a/SabreTools.Metadata.Filter/FilterRunner.cs b/SabreTools.Metadata.Filter/FilterRunner.cs
index 14bf5a83..5c373e94 100644
--- a/SabreTools.Metadata.Filter/FilterRunner.cs
+++ b/SabreTools.Metadata.Filter/FilterRunner.cs
@@ -73,11 +73,11 @@ namespace SabreTools.Metadata.Filter
string key = filter.Key.ToString();
// Special case for machine types
- if (filter.Key.ItemName == MetadataFile.MachineKey && filter.Key.FieldName == Machine.IsBiosKey)
+ if (filter.Key.ItemName == MetadataFile.MachineKey && filter.Key.FieldName == "isbios")
key = $"{MetadataFile.MachineKey}.COMBINEDTYPE";
- else if (filter.Key.ItemName == MetadataFile.MachineKey && filter.Key.FieldName == Machine.IsDeviceKey)
+ else if (filter.Key.ItemName == MetadataFile.MachineKey && filter.Key.FieldName == "isdevice")
key = $"{MetadataFile.MachineKey}.COMBINEDTYPE";
- else if (filter.Key.ItemName == MetadataFile.MachineKey && filter.Key.FieldName == Machine.IsMechanicalKey)
+ else if (filter.Key.ItemName == MetadataFile.MachineKey && filter.Key.FieldName == "ismechanical")
key = $"{MetadataFile.MachineKey}.COMBINEDTYPE";
// Set the expected group type
diff --git a/SabreTools.Serialization.CrossModel.Test/AttractModeTests.cs b/SabreTools.Serialization.CrossModel.Test/AttractModeTests.cs
index b93aaccb..9e0fc4dc 100644
--- a/SabreTools.Serialization.CrossModel.Test/AttractModeTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/AttractModeTests.cs
@@ -58,7 +58,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Tags = "XXXXXX",
PlayedCount = "XXXXXX",
PlayedTime = "XXXXXX",
- FileIsAvailable = "XXXXXX",
+ FileIsAvailable = true,
};
return new Data.Models.AttractMode.MetadataFile
@@ -105,7 +105,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", row.Tags);
Assert.Equal("XXXXXX", row.PlayedCount);
Assert.Equal("XXXXXX", row.PlayedTime);
- Assert.Equal("XXXXXX", row.FileIsAvailable);
+ Assert.Equal(true, row.FileIsAvailable);
}
}
}
diff --git a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
index f47f1e29..ba602350 100644
--- a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
@@ -74,7 +74,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Header = "XXXXXX",
Type = "XXXXXX",
ForceMerging = "XXXXXX",
- ForceZipping = "XXXXXX",
+ ForceZipping = true,
ForcePacking = "XXXXXX",
};
@@ -121,8 +121,8 @@ namespace SabreTools.Serialization.CrossModel.Test
Offs = "XXXXXX",
Serial = "XXXXXX",
Header = "XXXXXX",
- Inverted = "XXXXXX",
- MIA = "XXXXXX",
+ Inverted = true,
+ MIA = true,
};
var disk = new Data.Models.ClrMamePro.Disk
@@ -184,8 +184,8 @@ namespace SabreTools.Serialization.CrossModel.Test
Control = "XXXXXX",
Buttons = "XXXXXX",
Coins = "XXXXXX",
- Tilt = "XXXXXX",
- Service = "XXXXXX",
+ Tilt = true,
+ Service = true,
};
var dipswitch = new Data.Models.ClrMamePro.DipSwitch
@@ -263,7 +263,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", cmp.Header);
Assert.Equal("XXXXXX", cmp.Type);
Assert.Equal("XXXXXX", cmp.ForceMerging);
- Assert.Equal("XXXXXX", cmp.ForceZipping);
+ Assert.Equal(true, cmp.ForceZipping);
Assert.Equal("XXXXXX", cmp.ForcePacking);
}
@@ -384,8 +384,8 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", rom.Offs);
Assert.Equal("XXXXXX", rom.Serial);
Assert.Equal("XXXXXX", rom.Header);
- Assert.Equal("XXXXXX", rom.Inverted);
- Assert.Equal("XXXXXX", rom.MIA);
+ Assert.Equal(true, rom.Inverted);
+ Assert.Equal(true, rom.MIA);
}
///
@@ -479,8 +479,8 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", input.Control);
Assert.Equal("XXXXXX", input.Buttons);
Assert.Equal("XXXXXX", input.Coins);
- Assert.Equal("XXXXXX", input.Tilt);
- Assert.Equal("XXXXXX", input.Service);
+ Assert.Equal(true, input.Tilt);
+ Assert.Equal(true, input.Service);
}
///
diff --git a/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs b/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs
index 60d915a8..bb92df2d 100644
--- a/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs
@@ -23,7 +23,7 @@ namespace SabreTools.Serialization.CrossModel.Test
// Validate the data
Assert.NotNull(newMame);
Assert.Equal("XXXXXX", newMame.Build);
- Assert.Equal("XXXXXX", newMame.Debug);
+ Assert.Equal(true, newMame.Debug);
Assert.Equal("XXXXXX", newMame.MameConfig);
Assert.NotNull(newMame.Game);
@@ -50,7 +50,7 @@ namespace SabreTools.Serialization.CrossModel.Test
// Validate the data
Assert.NotNull(newMame);
Assert.Equal("XXXXXX", newMame.Build);
- Assert.Equal("XXXXXX", newMame.Debug);
+ Assert.Equal(true, newMame.Debug);
Assert.Equal("XXXXXX", newMame.MameConfig);
Assert.NotNull(newMame.Game);
@@ -81,9 +81,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Region = "XXXXXX",
Offset = "XXXXXX",
Status = "XXXXXX",
- Optional = "XXXXXX",
- Dispose = "XXXXXX",
- SoundOnly = "XXXXXX",
+ Optional = true,
+ Dispose = true,
+ SoundOnly = true,
};
var disk = new Data.Models.Listxml.Disk
@@ -94,9 +94,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Merge = "XXXXXX",
Region = "XXXXXX",
Index = "XXXXXX",
- Writable = "XXXXXX",
+ Writable = true,
Status = "XXXXXX",
- Optional = "XXXXXX",
+ Optional = true,
};
var deviceref = new Data.Models.Listxml.DeviceRef
@@ -114,7 +114,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Name = "XXXXXX",
Tag = "XXXXXX",
Type = "XXXXXX",
- SoundOnly = "XXXXXX",
+ SoundOnly = true,
Clock = "XXXXXX",
};
@@ -123,7 +123,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Tag = "XXXXXX",
Type = "XXXXXX",
Rotate = "XXXXXX",
- FlipX = "XXXXXX",
+ FlipX = true,
Width = "XXXXXX",
Height = "XXXXXX",
Refresh = "XXXXXX",
@@ -162,7 +162,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Maximum = "XXXXXX",
Sensitivity = "XXXXXX",
KeyDelta = "XXXXXX",
- Reverse = "XXXXXX",
+ Reverse = true,
Ways = "XXXXXX",
Ways2 = "XXXXXX",
Ways3 = "XXXXXX",
@@ -170,8 +170,8 @@ namespace SabreTools.Serialization.CrossModel.Test
var input = new Data.Models.Listxml.Input
{
- Service = "XXXXXX",
- Tilt = "XXXXXX",
+ Service = true,
+ Tilt = true,
Players = "XXXXXX",
//ControlAttr = "XXXXXX", // Mututally exclusive with input.Control
Buttons = "XXXXXX",
@@ -191,7 +191,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var dipvalue = new Data.Models.Listxml.DipValue
@@ -216,7 +216,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var confsetting = new Data.Models.Listxml.ConfSetting
@@ -264,10 +264,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var feature = new Data.Models.Listxml.Feature
@@ -332,10 +332,10 @@ namespace SabreTools.Serialization.CrossModel.Test
: new Data.Models.Listxml.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
+ gameBase.Runnable = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -367,7 +367,7 @@ namespace SabreTools.Serialization.CrossModel.Test
return new Data.Models.Listxml.Mame
{
Build = "XXXXXX",
- Debug = "XXXXXX",
+ Debug = true,
MameConfig = "XXXXXX",
Game = [gameBase],
};
@@ -381,10 +381,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(gb);
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
+ Assert.Equal(true, gb.Runnable);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -493,9 +493,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", rom.Region);
Assert.Equal("XXXXXX", rom.Offset);
Assert.Equal("XXXXXX", rom.Status);
- Assert.Equal("XXXXXX", rom.Optional);
- Assert.Equal("XXXXXX", rom.Dispose);
- Assert.Equal("XXXXXX", rom.SoundOnly);
+ Assert.Equal(true, rom.Optional);
+ Assert.Equal(true, rom.Dispose);
+ Assert.Equal(true, rom.SoundOnly);
}
///
@@ -510,9 +510,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", disk.Merge);
Assert.Equal("XXXXXX", disk.Region);
Assert.Equal("XXXXXX", disk.Index);
- Assert.Equal("XXXXXX", disk.Writable);
+ Assert.Equal(true, disk.Writable);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Optional);
+ Assert.Equal(true, disk.Optional);
}
///
@@ -542,7 +542,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", chip.Name);
Assert.Equal("XXXXXX", chip.Tag);
Assert.Equal("XXXXXX", chip.Type);
- Assert.Equal("XXXXXX", chip.SoundOnly);
+ Assert.Equal(true, chip.SoundOnly);
Assert.Equal("XXXXXX", chip.Clock);
}
@@ -555,7 +555,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", display.Tag);
Assert.Equal("XXXXXX", display.Type);
Assert.Equal("XXXXXX", display.Rotate);
- Assert.Equal("XXXXXX", display.FlipX);
+ Assert.Equal(true, display.FlipX);
Assert.Equal("XXXXXX", display.Width);
Assert.Equal("XXXXXX", display.Height);
Assert.Equal("XXXXXX", display.Refresh);
@@ -598,8 +598,8 @@ namespace SabreTools.Serialization.CrossModel.Test
private static void Validate(Data.Models.Listxml.Input? input)
{
Assert.NotNull(input);
- Assert.Equal("XXXXXX", input.Service);
- Assert.Equal("XXXXXX", input.Tilt);
+ Assert.Equal(true, input.Service);
+ Assert.Equal(true, input.Tilt);
Assert.Equal("XXXXXX", input.Players);
//Assert.Equal("XXXXXX", input.ControlAttr); // Mututally exclusive with input.Control
Assert.Equal("XXXXXX", input.Buttons);
@@ -624,7 +624,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", control.Maximum);
Assert.Equal("XXXXXX", control.Sensitivity);
Assert.Equal("XXXXXX", control.KeyDelta);
- Assert.Equal("XXXXXX", control.Reverse);
+ Assert.Equal(true, control.Reverse);
Assert.Equal("XXXXXX", control.Ways);
Assert.Equal("XXXXXX", control.Ways2);
Assert.Equal("XXXXXX", control.Ways3);
@@ -670,7 +670,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(diplocation);
Assert.Equal("XXXXXX", diplocation.Name);
Assert.Equal("XXXXXX", diplocation.Number);
- Assert.Equal("XXXXXX", diplocation.Inverted);
+ Assert.Equal(true, diplocation.Inverted);
}
///
@@ -713,7 +713,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(conflocation);
Assert.Equal("XXXXXX", conflocation.Name);
Assert.Equal("XXXXXX", conflocation.Number);
- Assert.Equal("XXXXXX", conflocation.Inverted);
+ Assert.Equal(true, conflocation.Inverted);
}
///
@@ -774,10 +774,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
index c0ec27c0..10a6e549 100644
--- a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
@@ -23,7 +23,7 @@ namespace SabreTools.Serialization.CrossModel.Test
// Validate the data
Assert.NotNull(newDf);
Assert.Equal("XXXXXX", newDf.Build);
- Assert.Equal("XXXXXX", newDf.Debug);
+ Assert.Equal(true, newDf.Debug);
Assert.Equal("XXXXXX", newDf.SchemaLocation);
Validate(newDf.Header);
@@ -55,7 +55,7 @@ namespace SabreTools.Serialization.CrossModel.Test
// Validate the data
Assert.NotNull(newDf);
Assert.Equal("XXXXXX", newDf.Build);
- Assert.Equal("XXXXXX", newDf.Debug);
+ Assert.Equal(true, newDf.Debug);
Assert.Equal("XXXXXX", newDf.SchemaLocation);
Validate(newDf.Header);
@@ -87,9 +87,9 @@ namespace SabreTools.Serialization.CrossModel.Test
RomMode = "XXXXXX",
BiosMode = "XXXXXX",
SampleMode = "XXXXXX",
- LockRomMode = "XXXXXX",
- LockBiosMode = "XXXXXX",
- LockSampleMode = "XXXXXX",
+ LockRomMode = true,
+ LockBiosMode = true,
+ LockSampleMode = true,
};
var header = new Data.Models.Logiqx.Header
@@ -169,8 +169,8 @@ namespace SabreTools.Serialization.CrossModel.Test
Serial = "XXXXXX",
Header = "XXXXXX",
Date = "XXXXXX",
- Inverted = "XXXXXX",
- MIA = "XXXXXX",
+ Inverted = true,
+ MIA = true,
};
var disk = new Data.Models.Logiqx.Disk
@@ -213,10 +213,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var softwarelist = new Data.Models.Logiqx.SoftwareList
@@ -232,9 +232,9 @@ namespace SabreTools.Serialization.CrossModel.Test
: new Data.Models.Logiqx.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -242,7 +242,7 @@ namespace SabreTools.Serialization.CrossModel.Test
gameBase.RebuildTo = "XXXXXX";
gameBase.Id = "XXXXXX";
gameBase.CloneOfId = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.Runnable = true;
gameBase.Comment = ["XXXXXX"];
gameBase.Description = "XXXXXX";
gameBase.Year = "XXXXXX";
@@ -276,7 +276,7 @@ namespace SabreTools.Serialization.CrossModel.Test
return new Data.Models.Logiqx.Datafile
{
Build = "XXXXXX",
- Debug = "XXXXXX",
+ Debug = true,
SchemaLocation = "XXXXXX",
Header = header,
Game = [gameBase],
@@ -329,9 +329,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", rc.RomMode);
Assert.Equal("XXXXXX", rc.BiosMode);
Assert.Equal("XXXXXX", rc.SampleMode);
- Assert.Equal("XXXXXX", rc.LockRomMode);
- Assert.Equal("XXXXXX", rc.LockBiosMode);
- Assert.Equal("XXXXXX", rc.LockSampleMode);
+ Assert.Equal(true, rc.LockRomMode);
+ Assert.Equal(true, rc.LockBiosMode);
+ Assert.Equal(true, rc.LockSampleMode);
}
///
@@ -345,9 +345,9 @@ namespace SabreTools.Serialization.CrossModel.Test
else
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -355,7 +355,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", gb.RebuildTo);
Assert.Equal("XXXXXX", gb.Id);
Assert.Equal("XXXXXX", gb.CloneOfId);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.Runnable);
Assert.NotNull(gb.Comment);
string comment = Assert.Single(gb.Comment);
@@ -485,8 +485,8 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", rom.Serial);
Assert.Equal("XXXXXX", rom.Header);
Assert.Equal("XXXXXX", rom.Date);
- Assert.Equal("XXXXXX", rom.Inverted);
- Assert.Equal("XXXXXX", rom.MIA);
+ Assert.Equal(true, rom.Inverted);
+ Assert.Equal(true, rom.MIA);
}
///
@@ -553,10 +553,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.CrossModel.Test/M1Tests.cs b/SabreTools.Serialization.CrossModel.Test/M1Tests.cs
index 9034351c..f59e6ada 100644
--- a/SabreTools.Serialization.CrossModel.Test/M1Tests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/M1Tests.cs
@@ -77,9 +77,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Region = "XXXXXX",
Offset = "XXXXXX",
Status = "XXXXXX",
- Optional = "XXXXXX",
- Dispose = "XXXXXX",
- SoundOnly = "XXXXXX",
+ Optional = true,
+ Dispose = true,
+ SoundOnly = true,
};
var disk = new Data.Models.Listxml.Disk
@@ -90,9 +90,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Merge = "XXXXXX",
Region = "XXXXXX",
Index = "XXXXXX",
- Writable = "XXXXXX",
+ Writable = true,
Status = "XXXXXX",
- Optional = "XXXXXX",
+ Optional = true,
};
var deviceref = new Data.Models.Listxml.DeviceRef
@@ -110,7 +110,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Name = "XXXXXX",
Tag = "XXXXXX",
Type = "XXXXXX",
- SoundOnly = "XXXXXX",
+ SoundOnly = true,
Clock = "XXXXXX",
};
@@ -119,7 +119,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Tag = "XXXXXX",
Type = "XXXXXX",
Rotate = "XXXXXX",
- FlipX = "XXXXXX",
+ FlipX = true,
Width = "XXXXXX",
Height = "XXXXXX",
Refresh = "XXXXXX",
@@ -158,7 +158,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Maximum = "XXXXXX",
Sensitivity = "XXXXXX",
KeyDelta = "XXXXXX",
- Reverse = "XXXXXX",
+ Reverse = true,
Ways = "XXXXXX",
Ways2 = "XXXXXX",
Ways3 = "XXXXXX",
@@ -166,8 +166,8 @@ namespace SabreTools.Serialization.CrossModel.Test
var input = new Data.Models.Listxml.Input
{
- Service = "XXXXXX",
- Tilt = "XXXXXX",
+ Service = true,
+ Tilt = true,
Players = "XXXXXX",
//ControlAttr = "XXXXXX", // Mututally exclusive with input.Control
Buttons = "XXXXXX",
@@ -187,7 +187,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var dipvalue = new Data.Models.Listxml.DipValue
@@ -212,7 +212,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var confsetting = new Data.Models.Listxml.ConfSetting
@@ -260,10 +260,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var feature = new Data.Models.Listxml.Feature
@@ -328,10 +328,10 @@ namespace SabreTools.Serialization.CrossModel.Test
: new Data.Models.Listxml.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
+ gameBase.Runnable = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -375,10 +375,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(gb);
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
+ Assert.Equal(true, gb.Runnable);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -487,9 +487,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", rom.Region);
Assert.Equal("XXXXXX", rom.Offset);
Assert.Equal("XXXXXX", rom.Status);
- Assert.Equal("XXXXXX", rom.Optional);
- Assert.Equal("XXXXXX", rom.Dispose);
- Assert.Equal("XXXXXX", rom.SoundOnly);
+ Assert.Equal(true, rom.Optional);
+ Assert.Equal(true, rom.Dispose);
+ Assert.Equal(true, rom.SoundOnly);
}
///
@@ -504,9 +504,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", disk.Merge);
Assert.Equal("XXXXXX", disk.Region);
Assert.Equal("XXXXXX", disk.Index);
- Assert.Equal("XXXXXX", disk.Writable);
+ Assert.Equal(true, disk.Writable);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Optional);
+ Assert.Equal(true, disk.Optional);
}
///
@@ -536,7 +536,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", chip.Name);
Assert.Equal("XXXXXX", chip.Tag);
Assert.Equal("XXXXXX", chip.Type);
- Assert.Equal("XXXXXX", chip.SoundOnly);
+ Assert.Equal(true, chip.SoundOnly);
Assert.Equal("XXXXXX", chip.Clock);
}
@@ -549,7 +549,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", display.Tag);
Assert.Equal("XXXXXX", display.Type);
Assert.Equal("XXXXXX", display.Rotate);
- Assert.Equal("XXXXXX", display.FlipX);
+ Assert.Equal(true, display.FlipX);
Assert.Equal("XXXXXX", display.Width);
Assert.Equal("XXXXXX", display.Height);
Assert.Equal("XXXXXX", display.Refresh);
@@ -592,8 +592,8 @@ namespace SabreTools.Serialization.CrossModel.Test
private static void Validate(Data.Models.Listxml.Input? input)
{
Assert.NotNull(input);
- Assert.Equal("XXXXXX", input.Service);
- Assert.Equal("XXXXXX", input.Tilt);
+ Assert.Equal(true, input.Service);
+ Assert.Equal(true, input.Tilt);
Assert.Equal("XXXXXX", input.Players);
//Assert.Equal("XXXXXX", input.ControlAttr); // Mututally exclusive with input.Control
Assert.Equal("XXXXXX", input.Buttons);
@@ -618,7 +618,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", control.Maximum);
Assert.Equal("XXXXXX", control.Sensitivity);
Assert.Equal("XXXXXX", control.KeyDelta);
- Assert.Equal("XXXXXX", control.Reverse);
+ Assert.Equal(true, control.Reverse);
Assert.Equal("XXXXXX", control.Ways);
Assert.Equal("XXXXXX", control.Ways2);
Assert.Equal("XXXXXX", control.Ways3);
@@ -664,7 +664,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(diplocation);
Assert.Equal("XXXXXX", diplocation.Name);
Assert.Equal("XXXXXX", diplocation.Number);
- Assert.Equal("XXXXXX", diplocation.Inverted);
+ Assert.Equal(true, diplocation.Inverted);
}
///
@@ -707,7 +707,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(conflocation);
Assert.Equal("XXXXXX", conflocation.Name);
Assert.Equal("XXXXXX", conflocation.Number);
- Assert.Equal("XXXXXX", conflocation.Inverted);
+ Assert.Equal(true, conflocation.Inverted);
}
///
@@ -768,10 +768,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.CrossModel.Test/MessTests.cs b/SabreTools.Serialization.CrossModel.Test/MessTests.cs
index c024874a..f4bf8f47 100644
--- a/SabreTools.Serialization.CrossModel.Test/MessTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/MessTests.cs
@@ -77,9 +77,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Region = "XXXXXX",
Offset = "XXXXXX",
Status = "XXXXXX",
- Optional = "XXXXXX",
- Dispose = "XXXXXX",
- SoundOnly = "XXXXXX",
+ Optional = true,
+ Dispose = true,
+ SoundOnly = true,
};
var disk = new Data.Models.Listxml.Disk
@@ -90,9 +90,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Merge = "XXXXXX",
Region = "XXXXXX",
Index = "XXXXXX",
- Writable = "XXXXXX",
+ Writable = true,
Status = "XXXXXX",
- Optional = "XXXXXX",
+ Optional = true,
};
var deviceref = new Data.Models.Listxml.DeviceRef
@@ -110,7 +110,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Name = "XXXXXX",
Tag = "XXXXXX",
Type = "XXXXXX",
- SoundOnly = "XXXXXX",
+ SoundOnly = true,
Clock = "XXXXXX",
};
@@ -119,7 +119,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Tag = "XXXXXX",
Type = "XXXXXX",
Rotate = "XXXXXX",
- FlipX = "XXXXXX",
+ FlipX = true,
Width = "XXXXXX",
Height = "XXXXXX",
Refresh = "XXXXXX",
@@ -158,7 +158,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Maximum = "XXXXXX",
Sensitivity = "XXXXXX",
KeyDelta = "XXXXXX",
- Reverse = "XXXXXX",
+ Reverse = true,
Ways = "XXXXXX",
Ways2 = "XXXXXX",
Ways3 = "XXXXXX",
@@ -166,8 +166,8 @@ namespace SabreTools.Serialization.CrossModel.Test
var input = new Data.Models.Listxml.Input
{
- Service = "XXXXXX",
- Tilt = "XXXXXX",
+ Service = true,
+ Tilt = true,
Players = "XXXXXX",
//ControlAttr = "XXXXXX", // Mututally exclusive with input.Control
Buttons = "XXXXXX",
@@ -187,7 +187,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var dipvalue = new Data.Models.Listxml.DipValue
@@ -212,7 +212,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var confsetting = new Data.Models.Listxml.ConfSetting
@@ -260,10 +260,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var feature = new Data.Models.Listxml.Feature
@@ -328,10 +328,10 @@ namespace SabreTools.Serialization.CrossModel.Test
: new Data.Models.Listxml.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
+ gameBase.Runnable = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -375,10 +375,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(gb);
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
+ Assert.Equal(true, gb.Runnable);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -487,9 +487,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", rom.Region);
Assert.Equal("XXXXXX", rom.Offset);
Assert.Equal("XXXXXX", rom.Status);
- Assert.Equal("XXXXXX", rom.Optional);
- Assert.Equal("XXXXXX", rom.Dispose);
- Assert.Equal("XXXXXX", rom.SoundOnly);
+ Assert.Equal(true, rom.Optional);
+ Assert.Equal(true, rom.Dispose);
+ Assert.Equal(true, rom.SoundOnly);
}
///
@@ -504,9 +504,9 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", disk.Merge);
Assert.Equal("XXXXXX", disk.Region);
Assert.Equal("XXXXXX", disk.Index);
- Assert.Equal("XXXXXX", disk.Writable);
+ Assert.Equal(true, disk.Writable);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Optional);
+ Assert.Equal(true, disk.Optional);
}
///
@@ -536,7 +536,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", chip.Name);
Assert.Equal("XXXXXX", chip.Tag);
Assert.Equal("XXXXXX", chip.Type);
- Assert.Equal("XXXXXX", chip.SoundOnly);
+ Assert.Equal(true, chip.SoundOnly);
Assert.Equal("XXXXXX", chip.Clock);
}
@@ -549,7 +549,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", display.Tag);
Assert.Equal("XXXXXX", display.Type);
Assert.Equal("XXXXXX", display.Rotate);
- Assert.Equal("XXXXXX", display.FlipX);
+ Assert.Equal(true, display.FlipX);
Assert.Equal("XXXXXX", display.Width);
Assert.Equal("XXXXXX", display.Height);
Assert.Equal("XXXXXX", display.Refresh);
@@ -592,8 +592,8 @@ namespace SabreTools.Serialization.CrossModel.Test
private static void Validate(Data.Models.Listxml.Input? input)
{
Assert.NotNull(input);
- Assert.Equal("XXXXXX", input.Service);
- Assert.Equal("XXXXXX", input.Tilt);
+ Assert.Equal(true, input.Service);
+ Assert.Equal(true, input.Tilt);
Assert.Equal("XXXXXX", input.Players);
//Assert.Equal("XXXXXX", input.ControlAttr); // Mututally exclusive with input.Control
Assert.Equal("XXXXXX", input.Buttons);
@@ -618,7 +618,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", control.Maximum);
Assert.Equal("XXXXXX", control.Sensitivity);
Assert.Equal("XXXXXX", control.KeyDelta);
- Assert.Equal("XXXXXX", control.Reverse);
+ Assert.Equal(true, control.Reverse);
Assert.Equal("XXXXXX", control.Ways);
Assert.Equal("XXXXXX", control.Ways2);
Assert.Equal("XXXXXX", control.Ways3);
@@ -664,7 +664,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(diplocation);
Assert.Equal("XXXXXX", diplocation.Name);
Assert.Equal("XXXXXX", diplocation.Number);
- Assert.Equal("XXXXXX", diplocation.Inverted);
+ Assert.Equal(true, diplocation.Inverted);
}
///
@@ -707,7 +707,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(conflocation);
Assert.Equal("XXXXXX", conflocation.Name);
Assert.Equal("XXXXXX", conflocation.Number);
- Assert.Equal("XXXXXX", conflocation.Inverted);
+ Assert.Equal(true, conflocation.Inverted);
}
///
@@ -768,10 +768,10 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs b/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs
index 0f4132a2..5624c411 100644
--- a/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs
@@ -82,7 +82,7 @@ namespace SabreTools.Serialization.CrossModel.Test
MD5 = "XXXXXX",
SHA1 = "XXXXXX",
Status = "XXXXXX",
- Writeable = "XXXXXX",
+ Writeable = true,
};
var diskarea = new Data.Models.SoftwareList.DiskArea
@@ -278,7 +278,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", disk.MD5);
Assert.Equal("XXXXXX", disk.SHA1);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Writeable);
+ Assert.Equal(true, disk.Writeable);
}
///
diff --git a/SabreTools.Serialization.CrossModel/AttractMode.Deserializer.cs b/SabreTools.Serialization.CrossModel/AttractMode.Deserializer.cs
index 9019ffbf..80af4ed7 100644
--- a/SabreTools.Serialization.CrossModel/AttractMode.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/AttractMode.Deserializer.cs
@@ -78,7 +78,7 @@ namespace SabreTools.Serialization.CrossModel
Tags = parent.ReadString(Data.Models.Metadata.Machine.TagsKey),
PlayedCount = parent.ReadString(Data.Models.Metadata.Machine.PlayedCountKey),
PlayedTime = parent.ReadString(Data.Models.Metadata.Machine.PlayedTimeKey),
- FileIsAvailable = item.ReadString(Data.Models.Metadata.Rom.FileIsAvailableKey),
+ FileIsAvailable = item.FileIsAvailable,
};
return row;
}
diff --git a/SabreTools.Serialization.CrossModel/AttractMode.Serializer.cs b/SabreTools.Serialization.CrossModel/AttractMode.Serializer.cs
index 1ae5ab1e..ccb23543 100644
--- a/SabreTools.Serialization.CrossModel/AttractMode.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/AttractMode.Serializer.cs
@@ -80,7 +80,7 @@ namespace SabreTools.Serialization.CrossModel
Name = item.Title,
[Data.Models.Metadata.Rom.AltRomnameKey] = item.AltRomname,
[Data.Models.Metadata.Rom.AltTitleKey] = item.AltTitle,
- [Data.Models.Metadata.Rom.FileIsAvailableKey] = item.FileIsAvailable,
+ FileIsAvailable = item.FileIsAvailable,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
index decc19fb..89ea67f7 100644
--- a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
@@ -56,7 +56,7 @@ namespace SabreTools.Serialization.CrossModel
Header = item.ReadString(Data.Models.Metadata.Header.HeaderKey),
Type = item.ReadString(Data.Models.Metadata.Header.TypeKey),
ForceMerging = item.ReadString(Data.Models.Metadata.Header.ForceMergingKey),
- ForceZipping = item.ReadString(Data.Models.Metadata.Header.ForceZippingKey),
+ ForceZipping = item.ForceZipping,
ForcePacking = item.ReadString(Data.Models.Metadata.Header.ForcePackingKey),
};
return clrMamePro;
@@ -233,8 +233,8 @@ namespace SabreTools.Serialization.CrossModel
Control = item.ReadString(Data.Models.Metadata.Input.ControlKey),
Buttons = item.ReadString(Data.Models.Metadata.Input.ButtonsKey),
Coins = item.ReadString(Data.Models.Metadata.Input.CoinsKey),
- Tilt = item.ReadString(Data.Models.Metadata.Input.TiltKey),
- Service = item.ReadString(Data.Models.Metadata.Input.ServiceKey),
+ Tilt = item.Tilt,
+ Service = item.Service,
};
return input;
}
@@ -303,8 +303,8 @@ namespace SabreTools.Serialization.CrossModel
Serial = item.ReadString(Data.Models.Metadata.Rom.SerialKey),
Header = item.ReadString(Data.Models.Metadata.Rom.HeaderKey),
Date = item.ReadString(Data.Models.Metadata.Rom.DateKey),
- Inverted = item.ReadString(Data.Models.Metadata.Rom.InvertedKey),
- MIA = item.ReadString(Data.Models.Metadata.Rom.MIAKey),
+ Inverted = item.Inverted,
+ MIA = item.MIA,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
index 29f6c4e0..25aff94f 100644
--- a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
@@ -48,7 +48,7 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Header.HeaderKey] = item.Header,
[Data.Models.Metadata.Header.TypeKey] = item.Type,
[Data.Models.Metadata.Header.ForceMergingKey] = item.ForceMerging,
- [Data.Models.Metadata.Header.ForceZippingKey] = item.ForceZipping,
+ ForceZipping = item.ForceZipping,
[Data.Models.Metadata.Header.ForcePackingKey] = item.ForcePacking,
};
return header;
@@ -246,8 +246,8 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Input.ControlKey] = item.Control,
[Data.Models.Metadata.Input.ButtonsKey] = item.Buttons,
[Data.Models.Metadata.Input.CoinsKey] = item.Coins,
- [Data.Models.Metadata.Input.TiltKey] = item.Tilt,
- [Data.Models.Metadata.Input.ServiceKey] = item.Service,
+ Tilt = item.Tilt,
+ Service = item.Service,
};
return input;
}
@@ -316,8 +316,8 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Rom.SerialKey] = item.Serial,
[Data.Models.Metadata.Rom.HeaderKey] = item.Header,
[Data.Models.Metadata.Rom.DateKey] = item.Date,
- [Data.Models.Metadata.Rom.InvertedKey] = item.Inverted,
- [Data.Models.Metadata.Rom.MIAKey] = item.MIA,
+ Inverted = item.Inverted,
+ MIA = item.MIA,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs b/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs
index ac5806ef..20d48a95 100644
--- a/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs
@@ -27,7 +27,7 @@ namespace SabreTools.Serialization.CrossModel
private static Set ConvertMachineFromInternalModel(Data.Models.Metadata.Machine item)
{
var set = new Set();
- if (item.ReadString(Data.Models.Metadata.Machine.IsDeviceKey) == "yes")
+ if (item.IsDevice == true)
set.Device = item.Name;
else
set.Driver = item.Name;
diff --git a/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs b/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs
index 86844857..c167fc22 100644
--- a/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs
@@ -47,7 +47,7 @@ namespace SabreTools.Serialization.CrossModel
if (!string.IsNullOrEmpty(item.Device))
{
machine.Name = item.Device;
- machine[Data.Models.Metadata.Machine.IsDeviceKey] = "yes";
+ machine.IsDevice = true;
}
else
{
diff --git a/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs b/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs
index f6c89311..5a828b7b 100644
--- a/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs
@@ -29,7 +29,7 @@ namespace SabreTools.Serialization.CrossModel
var mame = new Mame
{
Build = item.ReadString(Data.Models.Metadata.Header.BuildKey),
- Debug = item.ReadString(Data.Models.Metadata.Header.DebugKey),
+ Debug = item.Debug,
MameConfig = item.ReadString(Data.Models.Metadata.Header.MameConfigKey),
};
@@ -45,10 +45,10 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
SourceFile = item.ReadString(Data.Models.Metadata.Machine.SourceFileKey),
- IsBios = item.ReadString(Data.Models.Metadata.Machine.IsBiosKey),
- IsDevice = item.ReadString(Data.Models.Metadata.Machine.IsDeviceKey),
- IsMechanical = item.ReadString(Data.Models.Metadata.Machine.IsMechanicalKey),
- Runnable = item.ReadString(Data.Models.Metadata.Machine.RunnableKey),
+ IsBios = item.IsBios,
+ IsDevice = item.IsDevice,
+ IsMechanical = item.IsMechanical,
+ Runnable = item.Runnable,
CloneOf = item.ReadString(Data.Models.Metadata.Machine.CloneOfKey),
RomOf = item.ReadString(Data.Models.Metadata.Machine.RomOfKey),
SampleOf = item.ReadString(Data.Models.Metadata.Machine.SampleOfKey),
@@ -195,7 +195,7 @@ namespace SabreTools.Serialization.CrossModel
Name = item.Name,
Tag = item.ReadString(Data.Models.Metadata.Chip.TagKey),
Type = item.ReadString(Data.Models.Metadata.Chip.ChipTypeKey),
- SoundOnly = item.ReadString(Data.Models.Metadata.Chip.SoundOnlyKey),
+ SoundOnly = item.SoundOnly,
Clock = item.ReadString(Data.Models.Metadata.Chip.ClockKey),
};
return chip;
@@ -252,7 +252,7 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
Number = item.ReadString(Data.Models.Metadata.ConfLocation.NumberKey),
- Inverted = item.ReadString(Data.Models.Metadata.ConfLocation.InvertedKey),
+ Inverted = item.Inverted,
};
return confLocation;
}
@@ -291,7 +291,7 @@ namespace SabreTools.Serialization.CrossModel
Maximum = item.ReadString(Data.Models.Metadata.Control.MaximumKey),
Sensitivity = item.ReadString(Data.Models.Metadata.Control.SensitivityKey),
KeyDelta = item.ReadString(Data.Models.Metadata.Control.KeyDeltaKey),
- Reverse = item.ReadString(Data.Models.Metadata.Control.ReverseKey),
+ Reverse = item.Reverse,
Ways = item.ReadString(Data.Models.Metadata.Control.WaysKey),
Ways2 = item.ReadString(Data.Models.Metadata.Control.Ways2Key),
Ways3 = item.ReadString(Data.Models.Metadata.Control.Ways3Key),
@@ -345,7 +345,7 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
Number = item.ReadString(Data.Models.Metadata.DipLocation.NumberKey),
- Inverted = item.ReadString(Data.Models.Metadata.DipLocation.InvertedKey),
+ Inverted = item.Inverted,
};
return dipLocation;
}
@@ -409,9 +409,9 @@ namespace SabreTools.Serialization.CrossModel
Merge = item.ReadString(Data.Models.Metadata.Disk.MergeKey),
Region = item.ReadString(Data.Models.Metadata.Disk.RegionKey),
Index = item.ReadString(Data.Models.Metadata.Disk.IndexKey),
- Writable = item.ReadString(Data.Models.Metadata.Disk.WritableKey),
+ Writable = item.Writable,
Status = item.ReadString(Data.Models.Metadata.Disk.StatusKey),
- Optional = item.ReadString(Data.Models.Metadata.Disk.OptionalKey),
+ Optional = item.Optional,
};
return disk;
}
@@ -426,7 +426,7 @@ namespace SabreTools.Serialization.CrossModel
Tag = item.ReadString(Data.Models.Metadata.Display.TagKey),
Type = item.ReadString(Data.Models.Metadata.Display.DisplayTypeKey),
Rotate = item.ReadString(Data.Models.Metadata.Display.RotateKey),
- FlipX = item.ReadString(Data.Models.Metadata.Display.FlipXKey),
+ FlipX = item.FlipX,
Width = item.ReadString(Data.Models.Metadata.Display.WidthKey),
Height = item.ReadString(Data.Models.Metadata.Display.HeightKey),
Refresh = item.ReadString(Data.Models.Metadata.Display.RefreshKey),
@@ -455,10 +455,10 @@ namespace SabreTools.Serialization.CrossModel
Emulation = item.ReadString(Data.Models.Metadata.Driver.EmulationKey),
Cocktail = item.ReadString(Data.Models.Metadata.Driver.CocktailKey),
SaveState = item.ReadString(Data.Models.Metadata.Driver.SaveStateKey),
- RequiresArtwork = item.ReadString(Data.Models.Metadata.Driver.RequiresArtworkKey),
- Unofficial = item.ReadString(Data.Models.Metadata.Driver.UnofficialKey),
- NoSoundHardware = item.ReadString(Data.Models.Metadata.Driver.NoSoundHardwareKey),
- Incomplete = item.ReadString(Data.Models.Metadata.Driver.IncompleteKey),
+ RequiresArtwork = item.RequiresArtwork,
+ Unofficial = item.Unofficial,
+ NoSoundHardware = item.NoSoundHardware,
+ Incomplete = item.Incomplete,
};
return driver;
}
@@ -496,8 +496,8 @@ namespace SabreTools.Serialization.CrossModel
{
var input = new Input
{
- Service = item.ReadString(Data.Models.Metadata.Input.ServiceKey),
- Tilt = item.ReadString(Data.Models.Metadata.Input.TiltKey),
+ Service = item.Service,
+ Tilt = item.Tilt,
Players = item.ReadString(Data.Models.Metadata.Input.PlayersKey),
Buttons = item.ReadString(Data.Models.Metadata.Input.ButtonsKey),
Coins = item.ReadString(Data.Models.Metadata.Input.CoinsKey),
@@ -574,9 +574,9 @@ namespace SabreTools.Serialization.CrossModel
Region = item.ReadString(Data.Models.Metadata.Rom.RegionKey),
Offset = item.ReadString(Data.Models.Metadata.Rom.OffsetKey),
Status = item.ReadString(Data.Models.Metadata.Rom.StatusKey),
- Optional = item.ReadString(Data.Models.Metadata.Rom.OptionalKey),
- Dispose = item.ReadString(Data.Models.Metadata.Rom.DisposeKey),
- SoundOnly = item.ReadString(Data.Models.Metadata.Rom.SoundOnlyKey),
+ Optional = item.Optional,
+ Dispose = item.Dispose,
+ SoundOnly = item.SoundOnly,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs b/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs
index 8ffd89eb..335a5866 100644
--- a/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs
@@ -33,7 +33,7 @@ namespace SabreTools.Serialization.CrossModel
var header = new Data.Models.Metadata.Header
{
[Data.Models.Metadata.Header.BuildKey] = item.Build,
- [Data.Models.Metadata.Header.DebugKey] = item.Debug,
+ Debug = item.Debug,
[Data.Models.Metadata.Header.MameConfigKey] = item.MameConfig,
};
return header;
@@ -48,10 +48,10 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
[Data.Models.Metadata.Machine.SourceFileKey] = item.SourceFile,
- [Data.Models.Metadata.Machine.IsBiosKey] = item.IsBios,
- [Data.Models.Metadata.Machine.IsDeviceKey] = item.IsDevice,
- [Data.Models.Metadata.Machine.IsMechanicalKey] = item.IsMechanical,
- [Data.Models.Metadata.Machine.RunnableKey] = item.Runnable,
+ IsBios = item.IsBios,
+ IsDevice = item.IsDevice,
+ IsMechanical = item.IsMechanical,
+ Runnable = item.Runnable,
[Data.Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
[Data.Models.Metadata.Machine.RomOfKey] = item.RomOf,
[Data.Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
@@ -228,7 +228,7 @@ namespace SabreTools.Serialization.CrossModel
Name = item.Name,
[Data.Models.Metadata.Chip.TagKey] = item.Tag,
[Data.Models.Metadata.Chip.ChipTypeKey] = item.Type,
- [Data.Models.Metadata.Chip.SoundOnlyKey] = item.SoundOnly,
+ SoundOnly = item.SoundOnly,
[Data.Models.Metadata.Chip.ClockKey] = item.Clock,
};
return chip;
@@ -288,7 +288,7 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
[Data.Models.Metadata.ConfLocation.NumberKey] = item.Number,
- [Data.Models.Metadata.ConfLocation.InvertedKey] = item.Inverted,
+ Inverted = item.Inverted,
};
return confLocation;
}
@@ -326,7 +326,7 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Control.MaximumKey] = item.Maximum,
[Data.Models.Metadata.Control.SensitivityKey] = item.Sensitivity,
[Data.Models.Metadata.Control.KeyDeltaKey] = item.KeyDelta,
- [Data.Models.Metadata.Control.ReverseKey] = item.Reverse,
+ Reverse = item.Reverse,
[Data.Models.Metadata.Control.WaysKey] = item.Ways,
[Data.Models.Metadata.Control.Ways2Key] = item.Ways2,
[Data.Models.Metadata.Control.Ways3Key] = item.Ways3,
@@ -381,7 +381,7 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
[Data.Models.Metadata.DipLocation.NumberKey] = item.Number,
- [Data.Models.Metadata.DipLocation.InvertedKey] = item.Inverted,
+ Inverted = item.Inverted,
};
return dipLocation;
}
@@ -447,9 +447,9 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Disk.MergeKey] = item.Merge,
[Data.Models.Metadata.Disk.RegionKey] = item.Region,
[Data.Models.Metadata.Disk.IndexKey] = item.Index,
- [Data.Models.Metadata.Disk.WritableKey] = item.Writable,
+ Writable = item.Writable,
[Data.Models.Metadata.Disk.StatusKey] = item.Status,
- [Data.Models.Metadata.Disk.OptionalKey] = item.Optional,
+ Optional = item.Optional,
};
return disk;
}
@@ -464,7 +464,7 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Display.TagKey] = item.Tag,
[Data.Models.Metadata.Display.DisplayTypeKey] = item.Type,
[Data.Models.Metadata.Display.RotateKey] = item.Rotate,
- [Data.Models.Metadata.Display.FlipXKey] = item.FlipX,
+ FlipX = item.FlipX,
[Data.Models.Metadata.Display.WidthKey] = item.Width,
[Data.Models.Metadata.Display.HeightKey] = item.Height,
[Data.Models.Metadata.Display.RefreshKey] = item.Refresh,
@@ -493,10 +493,10 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Driver.EmulationKey] = item.Emulation,
[Data.Models.Metadata.Driver.CocktailKey] = item.Cocktail,
[Data.Models.Metadata.Driver.SaveStateKey] = item.SaveState,
- [Data.Models.Metadata.Driver.RequiresArtworkKey] = item.RequiresArtwork,
- [Data.Models.Metadata.Driver.UnofficialKey] = item.Unofficial,
- [Data.Models.Metadata.Driver.NoSoundHardwareKey] = item.NoSoundHardware,
- [Data.Models.Metadata.Driver.IncompleteKey] = item.Incomplete,
+ RequiresArtwork = item.RequiresArtwork,
+ Unofficial = item.Unofficial,
+ NoSoundHardware = item.NoSoundHardware,
+ Incomplete = item.Incomplete,
};
return driver;
}
@@ -534,8 +534,8 @@ namespace SabreTools.Serialization.CrossModel
{
var input = new Data.Models.Metadata.Input
{
- [Data.Models.Metadata.Input.ServiceKey] = item.Service,
- [Data.Models.Metadata.Input.TiltKey] = item.Tilt,
+ Service = item.Service,
+ Tilt = item.Tilt,
[Data.Models.Metadata.Input.PlayersKey] = item.Players,
[Data.Models.Metadata.Input.ControlKey] = item.ControlAttr,
[Data.Models.Metadata.Input.ButtonsKey] = item.Buttons,
@@ -613,9 +613,9 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Rom.RegionKey] = item.Region,
[Data.Models.Metadata.Rom.OffsetKey] = item.Offset,
[Data.Models.Metadata.Rom.StatusKey] = item.Status,
- [Data.Models.Metadata.Rom.OptionalKey] = item.Optional,
- [Data.Models.Metadata.Rom.DisposeKey] = item.Dispose,
- [Data.Models.Metadata.Rom.SoundOnlyKey] = item.SoundOnly,
+ Optional = item.Optional,
+ Dispose = item.Dispose,
+ SoundOnly = item.SoundOnly,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
index 1cc2a969..06946884 100644
--- a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
@@ -22,7 +22,7 @@ namespace SabreTools.Serialization.CrossModel
if (header is not null)
{
datafile.Build = header.ReadString(Data.Models.Metadata.Header.BuildKey);
- datafile.Debug = header.ReadString(Data.Models.Metadata.Header.DebugKey);
+ datafile.Debug = header.Debug;
datafile.SchemaLocation = header.ReadString(Data.Models.Metadata.Header.SchemaLocationKey);
datafile.Header = ConvertHeaderFromInternalModel(header);
}
@@ -81,9 +81,9 @@ namespace SabreTools.Serialization.CrossModel
string? romMode = item.ReadString(Data.Models.Metadata.Header.RomModeKey);
string? biosMode = item.ReadString(Data.Models.Metadata.Header.BiosModeKey);
string? sampleMode = item.ReadString(Data.Models.Metadata.Header.SampleModeKey);
- string? lockRomMode = item.ReadString(Data.Models.Metadata.Header.LockRomModeKey);
- string? lockBiosMode = item.ReadString(Data.Models.Metadata.Header.LockBiosModeKey);
- string? lockSampleMode = item.ReadString(Data.Models.Metadata.Header.LockSampleModeKey);
+ bool? lockRomMode = item.LockRomMode;
+ bool? lockBiosMode = item.LockBiosMode;
+ bool? lockSampleMode = item.LockSampleMode;
if (plugin is not null
|| romMode is not null
@@ -122,9 +122,9 @@ namespace SabreTools.Serialization.CrossModel
gameBase.Name = item.Name;
gameBase.SourceFile = item.ReadString(Data.Models.Metadata.Machine.SourceFileKey);
- gameBase.IsBios = item.ReadString(Data.Models.Metadata.Machine.IsBiosKey);
- gameBase.IsDevice = item.ReadString(Data.Models.Metadata.Machine.IsDeviceKey);
- gameBase.IsMechanical = item.ReadString(Data.Models.Metadata.Machine.IsMechanicalKey);
+ gameBase.IsBios = item.IsBios;
+ gameBase.IsDevice = item.IsDevice;
+ gameBase.IsMechanical = item.IsMechanical;
gameBase.CloneOf = item.ReadString(Data.Models.Metadata.Machine.CloneOfKey);
gameBase.RomOf = item.ReadString(Data.Models.Metadata.Machine.RomOfKey);
gameBase.SampleOf = item.ReadString(Data.Models.Metadata.Machine.SampleOfKey);
@@ -132,7 +132,7 @@ namespace SabreTools.Serialization.CrossModel
gameBase.RebuildTo = item.ReadString(Data.Models.Metadata.Machine.RebuildToKey);
gameBase.Id = item.ReadString(Data.Models.Metadata.Machine.IdKey);
gameBase.CloneOfId = item.ReadString(Data.Models.Metadata.Machine.CloneOfIdKey);
- gameBase.Runnable = item.ReadString(Data.Models.Metadata.Machine.RunnableKey);
+ gameBase.Runnable = item.Runnable;
gameBase.Comment = item.ReadStringArray(Data.Models.Metadata.Machine.CommentKey);
gameBase.Description = item.ReadString(Data.Models.Metadata.Machine.DescriptionKey);
gameBase.Year = item.ReadString(Data.Models.Metadata.Machine.YearKey);
@@ -253,10 +253,10 @@ namespace SabreTools.Serialization.CrossModel
Emulation = item.ReadString(Data.Models.Metadata.Driver.EmulationKey),
Cocktail = item.ReadString(Data.Models.Metadata.Driver.CocktailKey),
SaveState = item.ReadString(Data.Models.Metadata.Driver.SaveStateKey),
- RequiresArtwork = item.ReadString(Data.Models.Metadata.Driver.RequiresArtworkKey),
- Unofficial = item.ReadString(Data.Models.Metadata.Driver.UnofficialKey),
- NoSoundHardware = item.ReadString(Data.Models.Metadata.Driver.NoSoundHardwareKey),
- Incomplete = item.ReadString(Data.Models.Metadata.Driver.IncompleteKey),
+ RequiresArtwork = item.RequiresArtwork,
+ Unofficial = item.Unofficial,
+ NoSoundHardware = item.NoSoundHardware,
+ Incomplete = item.Incomplete,
};
return driver;
}
@@ -322,8 +322,8 @@ namespace SabreTools.Serialization.CrossModel
Serial = item.ReadString(Data.Models.Metadata.Rom.SerialKey),
Header = item.ReadString(Data.Models.Metadata.Rom.HeaderKey),
Date = item.ReadString(Data.Models.Metadata.Rom.DateKey),
- Inverted = item.ReadString(Data.Models.Metadata.Rom.InvertedKey),
- MIA = item.ReadString(Data.Models.Metadata.Rom.MIAKey),
+ Inverted = item.Inverted,
+ MIA = item.MIA,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
index ffefd9f4..b2d21245 100644
--- a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
@@ -40,7 +40,7 @@ namespace SabreTools.Serialization.CrossModel
var header = item.Header is not null ? ConvertHeaderToInternalModel(item.Header) : [];
header[Data.Models.Metadata.Header.BuildKey] = item.Build;
- header[Data.Models.Metadata.Header.DebugKey] = item.Debug;
+ header.Debug = item.Debug;
header[Data.Models.Metadata.Header.SchemaLocationKey] = item.SchemaLocation;
return header;
@@ -82,9 +82,9 @@ namespace SabreTools.Serialization.CrossModel
header[Data.Models.Metadata.Header.RomModeKey] = item.RomCenter.RomMode;
header[Data.Models.Metadata.Header.BiosModeKey] = item.RomCenter.BiosMode;
header[Data.Models.Metadata.Header.SampleModeKey] = item.RomCenter.SampleMode;
- header[Data.Models.Metadata.Header.LockRomModeKey] = item.RomCenter.LockRomMode;
- header[Data.Models.Metadata.Header.LockBiosModeKey] = item.RomCenter.LockBiosMode;
- header[Data.Models.Metadata.Header.LockSampleModeKey] = item.RomCenter.LockSampleMode;
+ header.LockRomMode = item.RomCenter.LockRomMode;
+ header.LockBiosMode = item.RomCenter.LockBiosMode;
+ header.LockSampleMode = item.RomCenter.LockSampleMode;
}
return header;
@@ -128,9 +128,9 @@ namespace SabreTools.Serialization.CrossModel
{
Name = machineName,
[Data.Models.Metadata.Machine.SourceFileKey] = item.SourceFile,
- [Data.Models.Metadata.Machine.IsBiosKey] = item.IsBios,
- [Data.Models.Metadata.Machine.IsDeviceKey] = item.IsDevice,
- [Data.Models.Metadata.Machine.IsMechanicalKey] = item.IsMechanical,
+ IsBios = item.IsBios,
+ IsDevice = item.IsDevice,
+ IsMechanical = item.IsMechanical,
[Data.Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
[Data.Models.Metadata.Machine.RomOfKey] = item.RomOf,
[Data.Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
@@ -138,7 +138,7 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Machine.RebuildToKey] = item.RebuildTo,
[Data.Models.Metadata.Machine.IdKey] = item.Id,
[Data.Models.Metadata.Machine.CloneOfIdKey] = item.CloneOfId,
- [Data.Models.Metadata.Machine.RunnableKey] = item.Runnable,
+ Runnable = item.Runnable,
[Data.Models.Metadata.Machine.CommentKey] = item.Comment,
[Data.Models.Metadata.Machine.DescriptionKey] = item.Description,
[Data.Models.Metadata.Machine.YearKey] = item.Year,
@@ -247,10 +247,10 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Driver.EmulationKey] = item.Emulation,
[Data.Models.Metadata.Driver.CocktailKey] = item.Cocktail,
[Data.Models.Metadata.Driver.SaveStateKey] = item.SaveState,
- [Data.Models.Metadata.Driver.RequiresArtworkKey] = item.RequiresArtwork,
- [Data.Models.Metadata.Driver.UnofficialKey] = item.Unofficial,
- [Data.Models.Metadata.Driver.NoSoundHardwareKey] = item.NoSoundHardware,
- [Data.Models.Metadata.Driver.IncompleteKey] = item.Incomplete,
+ RequiresArtwork = item.RequiresArtwork,
+ Unofficial = item.Unofficial,
+ NoSoundHardware = item.NoSoundHardware,
+ Incomplete = item.Incomplete,
};
return driver;
}
@@ -316,8 +316,8 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Rom.SerialKey] = item.Serial,
[Data.Models.Metadata.Rom.HeaderKey] = item.Header,
[Data.Models.Metadata.Rom.DateKey] = item.Date,
- [Data.Models.Metadata.Rom.InvertedKey] = item.Inverted,
- [Data.Models.Metadata.Rom.MIAKey] = item.MIA,
+ Inverted = item.Inverted,
+ MIA = item.MIA,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/SabreTools.Serialization.CrossModel.csproj b/SabreTools.Serialization.CrossModel/SabreTools.Serialization.CrossModel.csproj
index ed57e9a1..d1ee4aa5 100644
--- a/SabreTools.Serialization.CrossModel/SabreTools.Serialization.CrossModel.csproj
+++ b/SabreTools.Serialization.CrossModel/SabreTools.Serialization.CrossModel.csproj
@@ -35,6 +35,7 @@
+
diff --git a/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs b/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs
index 911dd26c..987962da 100644
--- a/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs
@@ -130,7 +130,7 @@ namespace SabreTools.Serialization.CrossModel
MD5 = item.ReadString(Data.Models.Metadata.Disk.MD5Key),
SHA1 = item.ReadString(Data.Models.Metadata.Disk.SHA1Key),
Status = item.ReadString(Data.Models.Metadata.Disk.StatusKey),
- Writeable = item.ReadString(Data.Models.Metadata.Disk.WritableKey),
+ Writeable = item.Writable,
};
return disk;
}
diff --git a/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs b/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs
index 73318d52..7fcdeee8 100644
--- a/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs
@@ -129,7 +129,7 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Disk.MD5Key] = item.MD5,
[Data.Models.Metadata.Disk.SHA1Key] = item.SHA1,
[Data.Models.Metadata.Disk.StatusKey] = item.Status,
- [Data.Models.Metadata.Disk.WritableKey] = item.Writeable,
+ Writable = item.Writeable,
};
return disk;
}
diff --git a/SabreTools.Serialization.Readers.Test/AttractModeTests.cs b/SabreTools.Serialization.Readers.Test/AttractModeTests.cs
index 6134ee51..70bd264d 100644
--- a/SabreTools.Serialization.Readers.Test/AttractModeTests.cs
+++ b/SabreTools.Serialization.Readers.Test/AttractModeTests.cs
@@ -150,7 +150,7 @@ namespace SabreTools.Serialization.Readers.Test
Tags = "XXXXXX",
PlayedCount = "XXXXXX",
PlayedTime = "XXXXXX",
- FileIsAvailable = "XXXXXX",
+ FileIsAvailable = true,
};
return new Data.Models.AttractMode.MetadataFile
@@ -201,7 +201,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", row.Tags);
Assert.Equal("XXXXXX", row.PlayedCount);
Assert.Equal("XXXXXX", row.PlayedTime);
- Assert.Equal("XXXXXX", row.FileIsAvailable);
+ Assert.Equal(true, row.FileIsAvailable);
}
else
{
diff --git a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
index 8539c4b7..e2d4abb2 100644
--- a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
+++ b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
@@ -191,7 +191,7 @@ namespace SabreTools.Serialization.Readers.Test
Header = "XXXXXX",
Type = "XXXXXX",
ForceMerging = "XXXXXX",
- ForceZipping = "XXXXXX",
+ ForceZipping = true,
ForcePacking = "XXXXXX",
};
@@ -238,8 +238,8 @@ namespace SabreTools.Serialization.Readers.Test
Offs = "XXXXXX",
Serial = "XXXXXX",
Header = "XXXXXX",
- Inverted = "XXXXXX",
- MIA = "XXXXXX",
+ Inverted = true,
+ MIA = true,
};
var disk = new Data.Models.ClrMamePro.Disk
@@ -301,8 +301,8 @@ namespace SabreTools.Serialization.Readers.Test
Control = "XXXXXX",
Buttons = "XXXXXX",
Coins = "XXXXXX",
- Tilt = "XXXXXX",
- Service = "XXXXXX",
+ Tilt = true,
+ Service = true,
};
var dipswitch = new Data.Models.ClrMamePro.DipSwitch
@@ -380,7 +380,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", cmp.Header);
Assert.Equal("XXXXXX", cmp.Type);
Assert.Equal("XXXXXX", cmp.ForceMerging);
- Assert.Equal("XXXXXX", cmp.ForceZipping);
+ Assert.Equal(true, cmp.ForceZipping);
Assert.Equal("XXXXXX", cmp.ForcePacking);
}
@@ -501,8 +501,8 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", rom.Offs);
Assert.Equal("XXXXXX", rom.Serial);
Assert.Equal("XXXXXX", rom.Header);
- Assert.Equal("XXXXXX", rom.Inverted);
- Assert.Equal("XXXXXX", rom.MIA);
+ Assert.Equal(true, rom.Inverted);
+ Assert.Equal(true, rom.MIA);
}
///
@@ -596,8 +596,8 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", input.Control);
Assert.Equal("XXXXXX", input.Buttons);
Assert.Equal("XXXXXX", input.Coins);
- Assert.Equal("XXXXXX", input.Tilt);
- Assert.Equal("XXXXXX", input.Service);
+ Assert.Equal(true, input.Tilt);
+ Assert.Equal(true, input.Service);
}
///
diff --git a/SabreTools.Serialization.Readers.Test/ListxmlTests.cs b/SabreTools.Serialization.Readers.Test/ListxmlTests.cs
index 12c75f96..0b58b6b7 100644
--- a/SabreTools.Serialization.Readers.Test/ListxmlTests.cs
+++ b/SabreTools.Serialization.Readers.Test/ListxmlTests.cs
@@ -89,7 +89,7 @@ namespace SabreTools.Serialization.Readers.Test
// Validate the data
Assert.NotNull(newMame);
Assert.Equal("XXXXXX", newMame.Build);
- Assert.Equal("XXXXXX", newMame.Debug);
+ Assert.Equal(true, newMame.Debug);
Assert.Equal("XXXXXX", newMame.MameConfig);
Assert.NotNull(newMame.Game);
@@ -117,7 +117,7 @@ namespace SabreTools.Serialization.Readers.Test
// Validate the data
Assert.NotNull(newMame);
Assert.Equal("XXXXXX", newMame.Build);
- Assert.Equal("XXXXXX", newMame.Debug);
+ Assert.Equal(true, newMame.Debug);
Assert.Equal("XXXXXX", newMame.MameConfig);
Assert.NotNull(newMame.Game);
@@ -148,9 +148,9 @@ namespace SabreTools.Serialization.Readers.Test
Region = "XXXXXX",
Offset = "XXXXXX",
Status = "XXXXXX",
- Optional = "XXXXXX",
- Dispose = "XXXXXX",
- SoundOnly = "XXXXXX",
+ Optional = true,
+ Dispose = true,
+ SoundOnly = true,
};
var disk = new Data.Models.Listxml.Disk
@@ -161,9 +161,9 @@ namespace SabreTools.Serialization.Readers.Test
Merge = "XXXXXX",
Region = "XXXXXX",
Index = "XXXXXX",
- Writable = "XXXXXX",
+ Writable = true,
Status = "XXXXXX",
- Optional = "XXXXXX",
+ Optional = true,
};
var deviceref = new Data.Models.Listxml.DeviceRef
@@ -181,7 +181,7 @@ namespace SabreTools.Serialization.Readers.Test
Name = "XXXXXX",
Tag = "XXXXXX",
Type = "XXXXXX",
- SoundOnly = "XXXXXX",
+ SoundOnly = true,
Clock = "XXXXXX",
};
@@ -190,7 +190,7 @@ namespace SabreTools.Serialization.Readers.Test
Tag = "XXXXXX",
Type = "XXXXXX",
Rotate = "XXXXXX",
- FlipX = "XXXXXX",
+ FlipX = true,
Width = "XXXXXX",
Height = "XXXXXX",
Refresh = "XXXXXX",
@@ -229,7 +229,7 @@ namespace SabreTools.Serialization.Readers.Test
Maximum = "XXXXXX",
Sensitivity = "XXXXXX",
KeyDelta = "XXXXXX",
- Reverse = "XXXXXX",
+ Reverse = true,
Ways = "XXXXXX",
Ways2 = "XXXXXX",
Ways3 = "XXXXXX",
@@ -237,8 +237,8 @@ namespace SabreTools.Serialization.Readers.Test
var input = new Data.Models.Listxml.Input
{
- Service = "XXXXXX",
- Tilt = "XXXXXX",
+ Service = true,
+ Tilt = true,
Players = "XXXXXX",
ControlAttr = "XXXXXX",
Buttons = "XXXXXX",
@@ -258,7 +258,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var dipvalue = new Data.Models.Listxml.DipValue
@@ -283,7 +283,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var confsetting = new Data.Models.Listxml.ConfSetting
@@ -331,10 +331,10 @@ namespace SabreTools.Serialization.Readers.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var feature = new Data.Models.Listxml.Feature
@@ -399,10 +399,10 @@ namespace SabreTools.Serialization.Readers.Test
: new Data.Models.Listxml.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
+ gameBase.Runnable = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -434,7 +434,7 @@ namespace SabreTools.Serialization.Readers.Test
return new Data.Models.Listxml.Mame
{
Build = "XXXXXX",
- Debug = "XXXXXX",
+ Debug = true,
MameConfig = "XXXXXX",
Game = [gameBase],
};
@@ -448,10 +448,10 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(gb);
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
+ Assert.Equal(true, gb.Runnable);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -560,9 +560,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", rom.Region);
Assert.Equal("XXXXXX", rom.Offset);
Assert.Equal("XXXXXX", rom.Status);
- Assert.Equal("XXXXXX", rom.Optional);
- Assert.Equal("XXXXXX", rom.Dispose);
- Assert.Equal("XXXXXX", rom.SoundOnly);
+ Assert.Equal(true, rom.Optional);
+ Assert.Equal(true, rom.Dispose);
+ Assert.Equal(true, rom.SoundOnly);
}
///
@@ -577,9 +577,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", disk.Merge);
Assert.Equal("XXXXXX", disk.Region);
Assert.Equal("XXXXXX", disk.Index);
- Assert.Equal("XXXXXX", disk.Writable);
+ Assert.Equal(true, disk.Writable);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Optional);
+ Assert.Equal(true, disk.Optional);
}
///
@@ -609,7 +609,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", chip.Name);
Assert.Equal("XXXXXX", chip.Tag);
Assert.Equal("XXXXXX", chip.Type);
- Assert.Equal("XXXXXX", chip.SoundOnly);
+ Assert.Equal(true, chip.SoundOnly);
Assert.Equal("XXXXXX", chip.Clock);
}
@@ -622,7 +622,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", display.Tag);
Assert.Equal("XXXXXX", display.Type);
Assert.Equal("XXXXXX", display.Rotate);
- Assert.Equal("XXXXXX", display.FlipX);
+ Assert.Equal(true, display.FlipX);
Assert.Equal("XXXXXX", display.Width);
Assert.Equal("XXXXXX", display.Height);
Assert.Equal("XXXXXX", display.Refresh);
@@ -665,8 +665,8 @@ namespace SabreTools.Serialization.Readers.Test
private static void Validate(Data.Models.Listxml.Input? input)
{
Assert.NotNull(input);
- Assert.Equal("XXXXXX", input.Service);
- Assert.Equal("XXXXXX", input.Tilt);
+ Assert.Equal(true, input.Service);
+ Assert.Equal(true, input.Tilt);
Assert.Equal("XXXXXX", input.Players);
Assert.Equal("XXXXXX", input.ControlAttr); // Mututally exclusive with input.Control
Assert.Equal("XXXXXX", input.Buttons);
@@ -691,7 +691,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", control.Maximum);
Assert.Equal("XXXXXX", control.Sensitivity);
Assert.Equal("XXXXXX", control.KeyDelta);
- Assert.Equal("XXXXXX", control.Reverse);
+ Assert.Equal(true, control.Reverse);
Assert.Equal("XXXXXX", control.Ways);
Assert.Equal("XXXXXX", control.Ways2);
Assert.Equal("XXXXXX", control.Ways3);
@@ -737,7 +737,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(diplocation);
Assert.Equal("XXXXXX", diplocation.Name);
Assert.Equal("XXXXXX", diplocation.Number);
- Assert.Equal("XXXXXX", diplocation.Inverted);
+ Assert.Equal(true, diplocation.Inverted);
}
///
@@ -780,7 +780,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(conflocation);
Assert.Equal("XXXXXX", conflocation.Name);
Assert.Equal("XXXXXX", conflocation.Number);
- Assert.Equal("XXXXXX", conflocation.Inverted);
+ Assert.Equal(true, conflocation.Inverted);
}
///
@@ -841,10 +841,10 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
index e2918439..4cf70aed 100644
--- a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
+++ b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
@@ -89,7 +89,7 @@ namespace SabreTools.Serialization.Readers.Test
// Validate the data
Assert.NotNull(newDf);
Assert.Equal("XXXXXX", newDf.Build);
- Assert.Equal("XXXXXX", newDf.Debug);
+ Assert.Equal(true, newDf.Debug);
// Assert.Equal("XXXXXX", newDf.SchemaLocation); // TODO: Fix this based on No-Intro DATs
Validate(newDf.Header);
@@ -121,7 +121,7 @@ namespace SabreTools.Serialization.Readers.Test
// Validate the data
Assert.NotNull(newDf);
Assert.Equal("XXXXXX", newDf.Build);
- Assert.Equal("XXXXXX", newDf.Debug);
+ Assert.Equal(true, newDf.Debug);
// Assert.Equal("XXXXXX", newDf.SchemaLocation); // TODO: Fix this based on No-Intro DATs
Validate(newDf.Header);
@@ -152,9 +152,9 @@ namespace SabreTools.Serialization.Readers.Test
RomMode = "XXXXXX",
BiosMode = "XXXXXX",
SampleMode = "XXXXXX",
- LockRomMode = "XXXXXX",
- LockBiosMode = "XXXXXX",
- LockSampleMode = "XXXXXX",
+ LockRomMode = true,
+ LockBiosMode = true,
+ LockSampleMode = true,
};
var header = new Data.Models.Logiqx.Header
@@ -234,8 +234,8 @@ namespace SabreTools.Serialization.Readers.Test
Serial = "XXXXXX",
Header = "XXXXXX",
Date = "XXXXXX",
- Inverted = "XXXXXX",
- MIA = "XXXXXX",
+ Inverted = true,
+ MIA = true,
};
var disk = new Data.Models.Logiqx.Disk
@@ -278,10 +278,10 @@ namespace SabreTools.Serialization.Readers.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var softwarelist = new Data.Models.Logiqx.SoftwareList
@@ -297,9 +297,9 @@ namespace SabreTools.Serialization.Readers.Test
: new Data.Models.Logiqx.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -307,7 +307,7 @@ namespace SabreTools.Serialization.Readers.Test
gameBase.RebuildTo = "XXXXXX";
gameBase.Id = "XXXXXX";
gameBase.CloneOfId = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.Runnable = true;
gameBase.Comment = ["XXXXXX"];
gameBase.Description = "XXXXXX";
gameBase.Year = "XXXXXX";
@@ -329,7 +329,7 @@ namespace SabreTools.Serialization.Readers.Test
return new Data.Models.Logiqx.Datafile
{
Build = "XXXXXX",
- Debug = "XXXXXX",
+ Debug = true,
SchemaLocation = "XXXXXX",
Header = header,
Game = [gameBase],
@@ -382,9 +382,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", rc.RomMode);
Assert.Equal("XXXXXX", rc.BiosMode);
Assert.Equal("XXXXXX", rc.SampleMode);
- Assert.Equal("XXXXXX", rc.LockRomMode);
- Assert.Equal("XXXXXX", rc.LockBiosMode);
- Assert.Equal("XXXXXX", rc.LockSampleMode);
+ Assert.Equal(true, rc.LockRomMode);
+ Assert.Equal(true, rc.LockBiosMode);
+ Assert.Equal(true, rc.LockSampleMode);
}
///
@@ -395,9 +395,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(gb);
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -405,7 +405,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", gb.RebuildTo);
Assert.Equal("XXXXXX", gb.Id);
Assert.Equal("XXXXXX", gb.CloneOfId);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.Runnable);
Assert.NotNull(gb.Comment);
string comment = Assert.Single(gb.Comment);
@@ -533,8 +533,8 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", rom.Serial);
Assert.Equal("XXXXXX", rom.Header);
Assert.Equal("XXXXXX", rom.Date);
- Assert.Equal("XXXXXX", rom.Inverted);
- Assert.Equal("XXXXXX", rom.MIA);
+ Assert.Equal(true, rom.Inverted);
+ Assert.Equal(true, rom.MIA);
}
///
@@ -601,10 +601,10 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.Readers.Test/M1Tests.cs b/SabreTools.Serialization.Readers.Test/M1Tests.cs
index 090d6a64..5f955026 100644
--- a/SabreTools.Serialization.Readers.Test/M1Tests.cs
+++ b/SabreTools.Serialization.Readers.Test/M1Tests.cs
@@ -144,9 +144,9 @@ namespace SabreTools.Serialization.Readers.Test
Region = "XXXXXX",
Offset = "XXXXXX",
Status = "XXXXXX",
- Optional = "XXXXXX",
- Dispose = "XXXXXX",
- SoundOnly = "XXXXXX",
+ Optional = true,
+ Dispose = true,
+ SoundOnly = true,
};
var disk = new Data.Models.Listxml.Disk
@@ -157,9 +157,9 @@ namespace SabreTools.Serialization.Readers.Test
Merge = "XXXXXX",
Region = "XXXXXX",
Index = "XXXXXX",
- Writable = "XXXXXX",
+ Writable = true,
Status = "XXXXXX",
- Optional = "XXXXXX",
+ Optional = true,
};
var deviceref = new Data.Models.Listxml.DeviceRef
@@ -177,7 +177,7 @@ namespace SabreTools.Serialization.Readers.Test
Name = "XXXXXX",
Tag = "XXXXXX",
Type = "XXXXXX",
- SoundOnly = "XXXXXX",
+ SoundOnly = true,
Clock = "XXXXXX",
};
@@ -186,7 +186,7 @@ namespace SabreTools.Serialization.Readers.Test
Tag = "XXXXXX",
Type = "XXXXXX",
Rotate = "XXXXXX",
- FlipX = "XXXXXX",
+ FlipX = true,
Width = "XXXXXX",
Height = "XXXXXX",
Refresh = "XXXXXX",
@@ -225,7 +225,7 @@ namespace SabreTools.Serialization.Readers.Test
Maximum = "XXXXXX",
Sensitivity = "XXXXXX",
KeyDelta = "XXXXXX",
- Reverse = "XXXXXX",
+ Reverse = true,
Ways = "XXXXXX",
Ways2 = "XXXXXX",
Ways3 = "XXXXXX",
@@ -233,8 +233,8 @@ namespace SabreTools.Serialization.Readers.Test
var input = new Data.Models.Listxml.Input
{
- Service = "XXXXXX",
- Tilt = "XXXXXX",
+ Service = true,
+ Tilt = true,
Players = "XXXXXX",
//ControlAttr = "XXXXXX", // Mututally exclusive with input.Control
Buttons = "XXXXXX",
@@ -254,7 +254,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var dipvalue = new Data.Models.Listxml.DipValue
@@ -279,7 +279,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var confsetting = new Data.Models.Listxml.ConfSetting
@@ -327,10 +327,10 @@ namespace SabreTools.Serialization.Readers.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var feature = new Data.Models.Listxml.Feature
@@ -395,10 +395,10 @@ namespace SabreTools.Serialization.Readers.Test
: new Data.Models.Listxml.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
+ gameBase.Runnable = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -442,10 +442,10 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(gb);
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
+ Assert.Equal(true, gb.Runnable);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -554,9 +554,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", rom.Region);
Assert.Equal("XXXXXX", rom.Offset);
Assert.Equal("XXXXXX", rom.Status);
- Assert.Equal("XXXXXX", rom.Optional);
- Assert.Equal("XXXXXX", rom.Dispose);
- Assert.Equal("XXXXXX", rom.SoundOnly);
+ Assert.Equal(true, rom.Optional);
+ Assert.Equal(true, rom.Dispose);
+ Assert.Equal(true, rom.SoundOnly);
}
///
@@ -571,9 +571,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", disk.Merge);
Assert.Equal("XXXXXX", disk.Region);
Assert.Equal("XXXXXX", disk.Index);
- Assert.Equal("XXXXXX", disk.Writable);
+ Assert.Equal(true, disk.Writable);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Optional);
+ Assert.Equal(true, disk.Optional);
}
///
@@ -603,7 +603,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", chip.Name);
Assert.Equal("XXXXXX", chip.Tag);
Assert.Equal("XXXXXX", chip.Type);
- Assert.Equal("XXXXXX", chip.SoundOnly);
+ Assert.Equal(true, chip.SoundOnly);
Assert.Equal("XXXXXX", chip.Clock);
}
@@ -616,7 +616,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", display.Tag);
Assert.Equal("XXXXXX", display.Type);
Assert.Equal("XXXXXX", display.Rotate);
- Assert.Equal("XXXXXX", display.FlipX);
+ Assert.Equal(true, display.FlipX);
Assert.Equal("XXXXXX", display.Width);
Assert.Equal("XXXXXX", display.Height);
Assert.Equal("XXXXXX", display.Refresh);
@@ -659,8 +659,8 @@ namespace SabreTools.Serialization.Readers.Test
private static void Validate(Data.Models.Listxml.Input? input)
{
Assert.NotNull(input);
- Assert.Equal("XXXXXX", input.Service);
- Assert.Equal("XXXXXX", input.Tilt);
+ Assert.Equal(true, input.Service);
+ Assert.Equal(true, input.Tilt);
Assert.Equal("XXXXXX", input.Players);
//Assert.Equal("XXXXXX", input.ControlAttr); // Mututally exclusive with input.Control
Assert.Equal("XXXXXX", input.Buttons);
@@ -685,7 +685,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", control.Maximum);
Assert.Equal("XXXXXX", control.Sensitivity);
Assert.Equal("XXXXXX", control.KeyDelta);
- Assert.Equal("XXXXXX", control.Reverse);
+ Assert.Equal(true, control.Reverse);
Assert.Equal("XXXXXX", control.Ways);
Assert.Equal("XXXXXX", control.Ways2);
Assert.Equal("XXXXXX", control.Ways3);
@@ -731,7 +731,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(diplocation);
Assert.Equal("XXXXXX", diplocation.Name);
Assert.Equal("XXXXXX", diplocation.Number);
- Assert.Equal("XXXXXX", diplocation.Inverted);
+ Assert.Equal(true, diplocation.Inverted);
}
///
@@ -774,7 +774,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(conflocation);
Assert.Equal("XXXXXX", conflocation.Name);
Assert.Equal("XXXXXX", conflocation.Number);
- Assert.Equal("XXXXXX", conflocation.Inverted);
+ Assert.Equal(true, conflocation.Inverted);
}
///
@@ -835,10 +835,10 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.Readers.Test/MessTests.cs b/SabreTools.Serialization.Readers.Test/MessTests.cs
index d808f559..710ee7ea 100644
--- a/SabreTools.Serialization.Readers.Test/MessTests.cs
+++ b/SabreTools.Serialization.Readers.Test/MessTests.cs
@@ -144,9 +144,9 @@ namespace SabreTools.Serialization.Readers.Test
Region = "XXXXXX",
Offset = "XXXXXX",
Status = "XXXXXX",
- Optional = "XXXXXX",
- Dispose = "XXXXXX",
- SoundOnly = "XXXXXX",
+ Optional = true,
+ Dispose = true,
+ SoundOnly = true,
};
var disk = new Data.Models.Listxml.Disk
@@ -157,9 +157,9 @@ namespace SabreTools.Serialization.Readers.Test
Merge = "XXXXXX",
Region = "XXXXXX",
Index = "XXXXXX",
- Writable = "XXXXXX",
+ Writable = true,
Status = "XXXXXX",
- Optional = "XXXXXX",
+ Optional = true,
};
var deviceref = new Data.Models.Listxml.DeviceRef
@@ -177,7 +177,7 @@ namespace SabreTools.Serialization.Readers.Test
Name = "XXXXXX",
Tag = "XXXXXX",
Type = "XXXXXX",
- SoundOnly = "XXXXXX",
+ SoundOnly = true,
Clock = "XXXXXX",
};
@@ -186,7 +186,7 @@ namespace SabreTools.Serialization.Readers.Test
Tag = "XXXXXX",
Type = "XXXXXX",
Rotate = "XXXXXX",
- FlipX = "XXXXXX",
+ FlipX = true,
Width = "XXXXXX",
Height = "XXXXXX",
Refresh = "XXXXXX",
@@ -225,7 +225,7 @@ namespace SabreTools.Serialization.Readers.Test
Maximum = "XXXXXX",
Sensitivity = "XXXXXX",
KeyDelta = "XXXXXX",
- Reverse = "XXXXXX",
+ Reverse = true,
Ways = "XXXXXX",
Ways2 = "XXXXXX",
Ways3 = "XXXXXX",
@@ -233,8 +233,8 @@ namespace SabreTools.Serialization.Readers.Test
var input = new Data.Models.Listxml.Input
{
- Service = "XXXXXX",
- Tilt = "XXXXXX",
+ Service = true,
+ Tilt = true,
Players = "XXXXXX",
//ControlAttr = "XXXXXX", // Mututally exclusive with input.Control
Buttons = "XXXXXX",
@@ -254,7 +254,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var dipvalue = new Data.Models.Listxml.DipValue
@@ -279,7 +279,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "XXXXXX",
Number = "XXXXXX",
- Inverted = "XXXXXX",
+ Inverted = true,
};
var confsetting = new Data.Models.Listxml.ConfSetting
@@ -327,10 +327,10 @@ namespace SabreTools.Serialization.Readers.Test
Emulation = "XXXXXX",
Cocktail = "XXXXXX",
SaveState = "XXXXXX",
- RequiresArtwork = "XXXXXX",
- Unofficial = "XXXXXX",
- NoSoundHardware = "XXXXXX",
- Incomplete = "XXXXXX",
+ RequiresArtwork = true,
+ Unofficial = true,
+ NoSoundHardware = true,
+ Incomplete = true,
};
var feature = new Data.Models.Listxml.Feature
@@ -395,10 +395,10 @@ namespace SabreTools.Serialization.Readers.Test
: new Data.Models.Listxml.Machine();
gameBase.Name = "XXXXXX";
gameBase.SourceFile = "XXXXXX";
- gameBase.IsBios = "XXXXXX";
- gameBase.IsDevice = "XXXXXX";
- gameBase.IsMechanical = "XXXXXX";
- gameBase.Runnable = "XXXXXX";
+ gameBase.IsBios = true;
+ gameBase.IsDevice = true;
+ gameBase.IsMechanical = true;
+ gameBase.Runnable = true;
gameBase.CloneOf = "XXXXXX";
gameBase.RomOf = "XXXXXX";
gameBase.SampleOf = "XXXXXX";
@@ -442,10 +442,10 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(gb);
Assert.Equal("XXXXXX", gb.Name);
Assert.Equal("XXXXXX", gb.SourceFile);
- Assert.Equal("XXXXXX", gb.IsBios);
- Assert.Equal("XXXXXX", gb.IsDevice);
- Assert.Equal("XXXXXX", gb.IsMechanical);
- Assert.Equal("XXXXXX", gb.Runnable);
+ Assert.Equal(true, gb.IsBios);
+ Assert.Equal(true, gb.IsDevice);
+ Assert.Equal(true, gb.IsMechanical);
+ Assert.Equal(true, gb.Runnable);
Assert.Equal("XXXXXX", gb.CloneOf);
Assert.Equal("XXXXXX", gb.RomOf);
Assert.Equal("XXXXXX", gb.SampleOf);
@@ -554,9 +554,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", rom.Region);
Assert.Equal("XXXXXX", rom.Offset);
Assert.Equal("XXXXXX", rom.Status);
- Assert.Equal("XXXXXX", rom.Optional);
- Assert.Equal("XXXXXX", rom.Dispose);
- Assert.Equal("XXXXXX", rom.SoundOnly);
+ Assert.Equal(true, rom.Optional);
+ Assert.Equal(true, rom.Dispose);
+ Assert.Equal(true, rom.SoundOnly);
}
///
@@ -571,9 +571,9 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", disk.Merge);
Assert.Equal("XXXXXX", disk.Region);
Assert.Equal("XXXXXX", disk.Index);
- Assert.Equal("XXXXXX", disk.Writable);
+ Assert.Equal(true, disk.Writable);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Optional);
+ Assert.Equal(true, disk.Optional);
}
///
@@ -603,7 +603,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", chip.Name);
Assert.Equal("XXXXXX", chip.Tag);
Assert.Equal("XXXXXX", chip.Type);
- Assert.Equal("XXXXXX", chip.SoundOnly);
+ Assert.Equal(true, chip.SoundOnly);
Assert.Equal("XXXXXX", chip.Clock);
}
@@ -616,7 +616,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", display.Tag);
Assert.Equal("XXXXXX", display.Type);
Assert.Equal("XXXXXX", display.Rotate);
- Assert.Equal("XXXXXX", display.FlipX);
+ Assert.Equal(true, display.FlipX);
Assert.Equal("XXXXXX", display.Width);
Assert.Equal("XXXXXX", display.Height);
Assert.Equal("XXXXXX", display.Refresh);
@@ -659,8 +659,8 @@ namespace SabreTools.Serialization.Readers.Test
private static void Validate(Data.Models.Listxml.Input? input)
{
Assert.NotNull(input);
- Assert.Equal("XXXXXX", input.Service);
- Assert.Equal("XXXXXX", input.Tilt);
+ Assert.Equal(true, input.Service);
+ Assert.Equal(true, input.Tilt);
Assert.Equal("XXXXXX", input.Players);
//Assert.Equal("XXXXXX", input.ControlAttr); // Mututally exclusive with input.Control
Assert.Equal("XXXXXX", input.Buttons);
@@ -685,7 +685,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", control.Maximum);
Assert.Equal("XXXXXX", control.Sensitivity);
Assert.Equal("XXXXXX", control.KeyDelta);
- Assert.Equal("XXXXXX", control.Reverse);
+ Assert.Equal(true, control.Reverse);
Assert.Equal("XXXXXX", control.Ways);
Assert.Equal("XXXXXX", control.Ways2);
Assert.Equal("XXXXXX", control.Ways3);
@@ -731,7 +731,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(diplocation);
Assert.Equal("XXXXXX", diplocation.Name);
Assert.Equal("XXXXXX", diplocation.Number);
- Assert.Equal("XXXXXX", diplocation.Inverted);
+ Assert.Equal(true, diplocation.Inverted);
}
///
@@ -774,7 +774,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(conflocation);
Assert.Equal("XXXXXX", conflocation.Name);
Assert.Equal("XXXXXX", conflocation.Number);
- Assert.Equal("XXXXXX", conflocation.Inverted);
+ Assert.Equal(true, conflocation.Inverted);
}
///
@@ -835,10 +835,10 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", driver.Emulation);
Assert.Equal("XXXXXX", driver.Cocktail);
Assert.Equal("XXXXXX", driver.SaveState);
- Assert.Equal("XXXXXX", driver.RequiresArtwork);
- Assert.Equal("XXXXXX", driver.Unofficial);
- Assert.Equal("XXXXXX", driver.NoSoundHardware);
- Assert.Equal("XXXXXX", driver.Incomplete);
+ Assert.Equal(true, driver.RequiresArtwork);
+ Assert.Equal(true, driver.Unofficial);
+ Assert.Equal(true, driver.NoSoundHardware);
+ Assert.Equal(true, driver.Incomplete);
}
///
diff --git a/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs b/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs
index 5b568e52..d90e1ded 100644
--- a/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs
+++ b/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs
@@ -155,7 +155,7 @@ namespace SabreTools.Serialization.Readers.Test
MD5 = "XXXXXX",
SHA1 = "XXXXXX",
Status = "XXXXXX",
- Writeable = "XXXXXX",
+ Writeable = true,
};
var diskarea = new Data.Models.SoftwareList.DiskArea
@@ -351,7 +351,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", disk.MD5);
Assert.Equal("XXXXXX", disk.SHA1);
Assert.Equal("XXXXXX", disk.Status);
- Assert.Equal("XXXXXX", disk.Writeable);
+ Assert.Equal(true, disk.Writeable);
}
///
diff --git a/SabreTools.Serialization.Readers/AttractMode.cs b/SabreTools.Serialization.Readers/AttractMode.cs
index 8bbd00ab..69b22426 100644
--- a/SabreTools.Serialization.Readers/AttractMode.cs
+++ b/SabreTools.Serialization.Readers/AttractMode.cs
@@ -1,6 +1,7 @@
using System.Collections.Generic;
using System.IO;
using System.Text;
+using SabreTools.Data.Extensions;
using SabreTools.Data.Models.AttractMode;
using SabreTools.Text.SeparatedValue;
@@ -99,7 +100,7 @@ namespace SabreTools.Serialization.Readers
Tags = reader.Line[18],
PlayedCount = reader.Line[19],
PlayedTime = reader.Line[20],
- FileIsAvailable = reader.Line[21],
+ FileIsAvailable = reader.Line[21].AsYesNo(),
};
}
diff --git a/SabreTools.Serialization.Readers/ClrMamePro.cs b/SabreTools.Serialization.Readers/ClrMamePro.cs
index e7952b3c..75e973e1 100644
--- a/SabreTools.Serialization.Readers/ClrMamePro.cs
+++ b/SabreTools.Serialization.Readers/ClrMamePro.cs
@@ -248,7 +248,7 @@ namespace SabreTools.Serialization.Readers
dat.ClrMamePro.ForceMerging = reader.Standalone?.Value;
break;
case "forcezipping":
- dat.ClrMamePro.ForceZipping = reader.Standalone?.Value;
+ dat.ClrMamePro.ForceZipping = reader.Standalone?.Value?.AsYesNo();
break;
case "forcepacking":
dat.ClrMamePro.ForcePacking = reader.Standalone?.Value;
@@ -599,10 +599,10 @@ namespace SabreTools.Serialization.Readers
rom.Date = kvp.Value;
break;
case "inverted":
- rom.Inverted = kvp.Value;
+ rom.Inverted = kvp.Value.AsYesNo();
break;
case "mia":
- rom.MIA = kvp.Value;
+ rom.MIA = kvp.Value.AsYesNo();
break;
default:
// TODO: Log invalid values
@@ -884,10 +884,10 @@ namespace SabreTools.Serialization.Readers
input.Coins = kvp.Value;
break;
case "tilt":
- input.Tilt = kvp.Value;
+ input.Tilt = kvp.Value.AsYesNo();
break;
case "service":
- input.Service = kvp.Value;
+ input.Service = kvp.Value.AsYesNo();
break;
default:
// TODO: Log invalid values
diff --git a/SabreTools.Serialization.Readers/Listxml.cs b/SabreTools.Serialization.Readers/Listxml.cs
index e497a1f6..9c9570f3 100644
--- a/SabreTools.Serialization.Readers/Listxml.cs
+++ b/SabreTools.Serialization.Readers/Listxml.cs
@@ -71,7 +71,7 @@ namespace SabreTools.Serialization.Readers
var obj = new Mame();
obj.Build = reader.GetAttribute("build");
- obj.Debug = reader.GetAttribute("debug");
+ obj.Debug = reader.GetAttribute("debug").AsYesNo();
obj.MameConfig = reader.GetAttribute("mameconfig");
List games = [];
@@ -190,7 +190,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Tag = reader.GetAttribute("tag");
obj.Type = reader.GetAttribute("type");
- obj.SoundOnly = reader.GetAttribute("soundonly");
+ obj.SoundOnly = reader.GetAttribute("soundonly").AsYesNo();
obj.Clock = reader.GetAttribute("clock");
return obj;
@@ -285,7 +285,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Number = reader.GetAttribute("number");
- obj.Inverted = reader.GetAttribute("inverted");
+ obj.Inverted = reader.GetAttribute("inverted").AsYesNo();
return obj;
}
@@ -348,7 +348,7 @@ namespace SabreTools.Serialization.Readers
obj.Maximum = reader.GetAttribute("maximum");
obj.Sensitivity = reader.GetAttribute("sensitivity");
obj.KeyDelta = reader.GetAttribute("keydelta");
- obj.Reverse = reader.GetAttribute("reverse");
+ obj.Reverse = reader.GetAttribute("reverse").AsYesNo();
obj.Ways = reader.GetAttribute("ways");
obj.Ways2 = reader.GetAttribute("ways2");
obj.Ways3 = reader.GetAttribute("ways3");
@@ -435,7 +435,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Number = reader.GetAttribute("number");
- obj.Inverted = reader.GetAttribute("inverted");
+ obj.Inverted = reader.GetAttribute("inverted").AsYesNo();
return obj;
}
@@ -557,9 +557,9 @@ namespace SabreTools.Serialization.Readers
obj.Merge = reader.GetAttribute("merge");
obj.Region = reader.GetAttribute("region");
obj.Index = reader.GetAttribute("index");
- obj.Writable = reader.GetAttribute("writable");
+ obj.Writable = reader.GetAttribute("writable").AsYesNo();
obj.Status = reader.GetAttribute("status");
- obj.Optional = reader.GetAttribute("optional");
+ obj.Optional = reader.GetAttribute("optional").AsYesNo();
return obj;
}
@@ -576,7 +576,7 @@ namespace SabreTools.Serialization.Readers
obj.Tag = reader.GetAttribute("tag");
obj.Type = reader.GetAttribute("type");
obj.Rotate = reader.GetAttribute("rotate");
- obj.FlipX = reader.GetAttribute("flipx");
+ obj.FlipX = reader.GetAttribute("flipx").AsYesNo();
obj.Width = reader.GetAttribute("width");
obj.Height = reader.GetAttribute("height");
obj.Refresh = reader.GetAttribute("refresh");
@@ -607,10 +607,10 @@ namespace SabreTools.Serialization.Readers
obj.Emulation = reader.GetAttribute("emulation");
obj.Cocktail = reader.GetAttribute("cocktail");
obj.SaveState = reader.GetAttribute("savestate");
- obj.RequiresArtwork = reader.GetAttribute("requiresartwork");
- obj.Unofficial = reader.GetAttribute("unofficial");
- obj.NoSoundHardware = reader.GetAttribute("nosoundhardware");
- obj.Incomplete = reader.GetAttribute("incomplete");
+ obj.RequiresArtwork = reader.GetAttribute("requiresartwork").AsYesNo();
+ obj.Unofficial = reader.GetAttribute("unofficial").AsYesNo();
+ obj.NoSoundHardware = reader.GetAttribute("nosoundhardware").AsYesNo();
+ obj.Incomplete = reader.GetAttribute("incomplete").AsYesNo();
return obj;
}
@@ -662,10 +662,10 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.SourceFile = reader.GetAttribute("sourcefile");
- obj.IsBios = reader.GetAttribute("isbios");
- obj.IsDevice = reader.GetAttribute("isdevice");
- obj.IsMechanical = reader.GetAttribute("ismechanical");
- obj.Runnable = reader.GetAttribute("runnable");
+ obj.IsBios = reader.GetAttribute("isbios").AsYesNo();
+ obj.IsDevice = reader.GetAttribute("isdevice").AsYesNo();
+ obj.IsMechanical = reader.GetAttribute("ismechanical").AsYesNo();
+ obj.Runnable = reader.GetAttribute("runnable").AsYesNo();
obj.CloneOf = reader.GetAttribute("cloneof");
obj.RomOf = reader.GetAttribute("romof");
obj.SampleOf = reader.GetAttribute("sampleof");
@@ -920,8 +920,8 @@ namespace SabreTools.Serialization.Readers
{
var obj = new Input();
- obj.Service = reader.GetAttribute("service");
- obj.Tilt = reader.GetAttribute("tilt");
+ obj.Service = reader.GetAttribute("service").AsYesNo();
+ obj.Tilt = reader.GetAttribute("tilt").AsYesNo();
obj.Players = reader.GetAttribute("players");
obj.ControlAttr = reader.GetAttribute("control");
obj.Buttons = reader.GetAttribute("buttons");
@@ -1053,9 +1053,9 @@ namespace SabreTools.Serialization.Readers
obj.Region = reader.GetAttribute("region");
obj.Offset = reader.GetAttribute("offset");
obj.Status = reader.GetAttribute("status");
- obj.Optional = reader.GetAttribute("optional");
- obj.Dispose = reader.GetAttribute("dispose");
- obj.SoundOnly = reader.GetAttribute("soundonly");
+ obj.Optional = reader.GetAttribute("optional").AsYesNo();
+ obj.Dispose = reader.GetAttribute("dispose").AsYesNo();
+ obj.SoundOnly = reader.GetAttribute("soundonly").AsYesNo();
return obj;
}
diff --git a/SabreTools.Serialization.Readers/Logiqx.cs b/SabreTools.Serialization.Readers/Logiqx.cs
index cbead97a..603b21ee 100644
--- a/SabreTools.Serialization.Readers/Logiqx.cs
+++ b/SabreTools.Serialization.Readers/Logiqx.cs
@@ -71,7 +71,7 @@ namespace SabreTools.Serialization.Readers
var obj = new Datafile();
obj.Build = reader.GetAttribute("build");
- obj.Debug = reader.GetAttribute("debug");
+ obj.Debug = reader.GetAttribute("debug").AsYesNo();
// TODO: Fix this based on No-Intro DATs
// obj.SchemaLocation = reader.GetAttribute("schemaLocation");
@@ -281,9 +281,9 @@ namespace SabreTools.Serialization.Readers
obj.RomMode = reader.GetAttribute("rommode");
obj.BiosMode = reader.GetAttribute("biosmode");
obj.SampleMode = reader.GetAttribute("samplemode");
- obj.LockRomMode = reader.GetAttribute("lockrommode");
- obj.LockBiosMode = reader.GetAttribute("lockbiosmode");
- obj.LockSampleMode = reader.GetAttribute("locksamplemode");
+ obj.LockRomMode = reader.GetAttribute("lockrommode").AsYesNo();
+ obj.LockBiosMode = reader.GetAttribute("lockbiosmode").AsYesNo();
+ obj.LockSampleMode = reader.GetAttribute("locksamplemode").AsYesNo();
return obj;
}
@@ -422,10 +422,10 @@ namespace SabreTools.Serialization.Readers
obj.Emulation = reader.GetAttribute("emulation");
obj.Cocktail = reader.GetAttribute("cocktail");
obj.SaveState = reader.GetAttribute("savestate");
- obj.RequiresArtwork = reader.GetAttribute("requiresartwork");
- obj.Unofficial = reader.GetAttribute("unofficial");
- obj.NoSoundHardware = reader.GetAttribute("nosoundhardware");
- obj.Incomplete = reader.GetAttribute("incomplete");
+ obj.RequiresArtwork = reader.GetAttribute("requiresartwork").AsYesNo();
+ obj.Unofficial = reader.GetAttribute("unofficial").AsYesNo();
+ obj.NoSoundHardware = reader.GetAttribute("nosoundhardware").AsYesNo();
+ obj.Incomplete = reader.GetAttribute("incomplete").AsYesNo();
return obj;
}
@@ -447,9 +447,9 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.SourceFile = reader.GetAttribute("sourcefile");
- obj.IsBios = reader.GetAttribute("isbios");
- obj.IsDevice = reader.GetAttribute("isdevice");
- obj.IsMechanical = reader.GetAttribute("ismechanical");
+ obj.IsBios = reader.GetAttribute("isbios").AsYesNo();
+ obj.IsDevice = reader.GetAttribute("isdevice").AsYesNo();
+ obj.IsMechanical = reader.GetAttribute("ismechanical").AsYesNo();
obj.CloneOf = reader.GetAttribute("cloneof");
obj.RomOf = reader.GetAttribute("romof");
obj.SampleOf = reader.GetAttribute("sampleof");
@@ -457,7 +457,7 @@ namespace SabreTools.Serialization.Readers
obj.RebuildTo = reader.GetAttribute("rebuildto");
obj.Id = reader.GetAttribute("id");
obj.CloneOfId = reader.GetAttribute("cloneofid");
- obj.Runnable = reader.GetAttribute("runnable");
+ obj.Runnable = reader.GetAttribute("runnable").AsYesNo();
List comments = [];
List categories = [];
@@ -710,8 +710,8 @@ namespace SabreTools.Serialization.Readers
obj.Serial = reader.GetAttribute("serial");
obj.Header = reader.GetAttribute("header");
obj.Date = reader.GetAttribute("date");
- obj.Inverted = reader.GetAttribute("inverted");
- obj.MIA = reader.GetAttribute("mia");
+ obj.Inverted = reader.GetAttribute("inverted").AsYesNo();
+ obj.MIA = reader.GetAttribute("mia").AsYesNo();
return obj;
}
diff --git a/SabreTools.Serialization.Readers/M1.cs b/SabreTools.Serialization.Readers/M1.cs
index 8e744ff4..961b6c6b 100644
--- a/SabreTools.Serialization.Readers/M1.cs
+++ b/SabreTools.Serialization.Readers/M1.cs
@@ -188,7 +188,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Tag = reader.GetAttribute("tag");
obj.Type = reader.GetAttribute("type");
- obj.SoundOnly = reader.GetAttribute("soundonly");
+ obj.SoundOnly = reader.GetAttribute("soundonly").AsYesNo();
obj.Clock = reader.GetAttribute("clock");
return obj;
@@ -283,7 +283,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Number = reader.GetAttribute("number");
- obj.Inverted = reader.GetAttribute("inverted");
+ obj.Inverted = reader.GetAttribute("inverted").AsYesNo();
return obj;
}
@@ -346,7 +346,7 @@ namespace SabreTools.Serialization.Readers
obj.Maximum = reader.GetAttribute("maximum");
obj.Sensitivity = reader.GetAttribute("sensitivity");
obj.KeyDelta = reader.GetAttribute("keydelta");
- obj.Reverse = reader.GetAttribute("reverse");
+ obj.Reverse = reader.GetAttribute("reverse").AsYesNo();
obj.Ways = reader.GetAttribute("ways");
obj.Ways2 = reader.GetAttribute("ways2");
obj.Ways3 = reader.GetAttribute("ways3");
@@ -433,7 +433,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Number = reader.GetAttribute("number");
- obj.Inverted = reader.GetAttribute("inverted");
+ obj.Inverted = reader.GetAttribute("inverted").AsYesNo();
return obj;
}
@@ -555,9 +555,9 @@ namespace SabreTools.Serialization.Readers
obj.Merge = reader.GetAttribute("merge");
obj.Region = reader.GetAttribute("region");
obj.Index = reader.GetAttribute("index");
- obj.Writable = reader.GetAttribute("writable");
+ obj.Writable = reader.GetAttribute("writable").AsYesNo();
obj.Status = reader.GetAttribute("status");
- obj.Optional = reader.GetAttribute("optional");
+ obj.Optional = reader.GetAttribute("optional").AsYesNo();
return obj;
}
@@ -574,7 +574,7 @@ namespace SabreTools.Serialization.Readers
obj.Tag = reader.GetAttribute("tag");
obj.Type = reader.GetAttribute("type");
obj.Rotate = reader.GetAttribute("rotate");
- obj.FlipX = reader.GetAttribute("flipx");
+ obj.FlipX = reader.GetAttribute("flipx").AsYesNo();
obj.Width = reader.GetAttribute("width");
obj.Height = reader.GetAttribute("height");
obj.Refresh = reader.GetAttribute("refresh");
@@ -605,10 +605,10 @@ namespace SabreTools.Serialization.Readers
obj.Emulation = reader.GetAttribute("emulation");
obj.Cocktail = reader.GetAttribute("cocktail");
obj.SaveState = reader.GetAttribute("savestate");
- obj.RequiresArtwork = reader.GetAttribute("requiresartwork");
- obj.Unofficial = reader.GetAttribute("unofficial");
- obj.NoSoundHardware = reader.GetAttribute("nosoundhardware");
- obj.Incomplete = reader.GetAttribute("incomplete");
+ obj.RequiresArtwork = reader.GetAttribute("requiresartwork").AsYesNo();
+ obj.Unofficial = reader.GetAttribute("unofficial").AsYesNo();
+ obj.NoSoundHardware = reader.GetAttribute("nosoundhardware").AsYesNo();
+ obj.Incomplete = reader.GetAttribute("incomplete").AsYesNo();
return obj;
}
@@ -660,10 +660,10 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.SourceFile = reader.GetAttribute("sourcefile");
- obj.IsBios = reader.GetAttribute("isbios");
- obj.IsDevice = reader.GetAttribute("isdevice");
- obj.IsMechanical = reader.GetAttribute("ismechanical");
- obj.Runnable = reader.GetAttribute("runnable");
+ obj.IsBios = reader.GetAttribute("isbios").AsYesNo();
+ obj.IsDevice = reader.GetAttribute("isdevice").AsYesNo();
+ obj.IsMechanical = reader.GetAttribute("ismechanical").AsYesNo();
+ obj.Runnable = reader.GetAttribute("runnable").AsYesNo();
obj.CloneOf = reader.GetAttribute("cloneof");
obj.RomOf = reader.GetAttribute("romof");
obj.SampleOf = reader.GetAttribute("sampleof");
@@ -918,8 +918,8 @@ namespace SabreTools.Serialization.Readers
{
var obj = new Input();
- obj.Service = reader.GetAttribute("service");
- obj.Tilt = reader.GetAttribute("tilt");
+ obj.Service = reader.GetAttribute("service").AsYesNo();
+ obj.Tilt = reader.GetAttribute("tilt").AsYesNo();
obj.Players = reader.GetAttribute("players");
obj.ControlAttr = reader.GetAttribute("control");
obj.Buttons = reader.GetAttribute("buttons");
@@ -1051,9 +1051,9 @@ namespace SabreTools.Serialization.Readers
obj.Region = reader.GetAttribute("region");
obj.Offset = reader.GetAttribute("offset");
obj.Status = reader.GetAttribute("status");
- obj.Optional = reader.GetAttribute("optional");
- obj.Dispose = reader.GetAttribute("dispose");
- obj.SoundOnly = reader.GetAttribute("soundonly");
+ obj.Optional = reader.GetAttribute("optional").AsYesNo();
+ obj.Dispose = reader.GetAttribute("dispose").AsYesNo();
+ obj.SoundOnly = reader.GetAttribute("soundonly").AsYesNo();
return obj;
}
diff --git a/SabreTools.Serialization.Readers/Mess.cs b/SabreTools.Serialization.Readers/Mess.cs
index 1a197ff2..c555b12e 100644
--- a/SabreTools.Serialization.Readers/Mess.cs
+++ b/SabreTools.Serialization.Readers/Mess.cs
@@ -188,7 +188,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Tag = reader.GetAttribute("tag");
obj.Type = reader.GetAttribute("type");
- obj.SoundOnly = reader.GetAttribute("soundonly");
+ obj.SoundOnly = reader.GetAttribute("soundonly").AsYesNo();
obj.Clock = reader.GetAttribute("clock");
return obj;
@@ -283,7 +283,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Number = reader.GetAttribute("number");
- obj.Inverted = reader.GetAttribute("inverted");
+ obj.Inverted = reader.GetAttribute("inverted").AsYesNo();
return obj;
}
@@ -346,7 +346,7 @@ namespace SabreTools.Serialization.Readers
obj.Maximum = reader.GetAttribute("maximum");
obj.Sensitivity = reader.GetAttribute("sensitivity");
obj.KeyDelta = reader.GetAttribute("keydelta");
- obj.Reverse = reader.GetAttribute("reverse");
+ obj.Reverse = reader.GetAttribute("reverse").AsYesNo();
obj.Ways = reader.GetAttribute("ways");
obj.Ways2 = reader.GetAttribute("ways2");
obj.Ways3 = reader.GetAttribute("ways3");
@@ -433,7 +433,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Number = reader.GetAttribute("number");
- obj.Inverted = reader.GetAttribute("inverted");
+ obj.Inverted = reader.GetAttribute("inverted").AsYesNo();
return obj;
}
@@ -555,9 +555,9 @@ namespace SabreTools.Serialization.Readers
obj.Merge = reader.GetAttribute("merge");
obj.Region = reader.GetAttribute("region");
obj.Index = reader.GetAttribute("index");
- obj.Writable = reader.GetAttribute("writable");
+ obj.Writable = reader.GetAttribute("writable").AsYesNo();
obj.Status = reader.GetAttribute("status");
- obj.Optional = reader.GetAttribute("optional");
+ obj.Optional = reader.GetAttribute("optional").AsYesNo();
return obj;
}
@@ -574,7 +574,7 @@ namespace SabreTools.Serialization.Readers
obj.Tag = reader.GetAttribute("tag");
obj.Type = reader.GetAttribute("type");
obj.Rotate = reader.GetAttribute("rotate");
- obj.FlipX = reader.GetAttribute("flipx");
+ obj.FlipX = reader.GetAttribute("flipx").AsYesNo();
obj.Width = reader.GetAttribute("width");
obj.Height = reader.GetAttribute("height");
obj.Refresh = reader.GetAttribute("refresh");
@@ -605,10 +605,10 @@ namespace SabreTools.Serialization.Readers
obj.Emulation = reader.GetAttribute("emulation");
obj.Cocktail = reader.GetAttribute("cocktail");
obj.SaveState = reader.GetAttribute("savestate");
- obj.RequiresArtwork = reader.GetAttribute("requiresartwork");
- obj.Unofficial = reader.GetAttribute("unofficial");
- obj.NoSoundHardware = reader.GetAttribute("nosoundhardware");
- obj.Incomplete = reader.GetAttribute("incomplete");
+ obj.RequiresArtwork = reader.GetAttribute("requiresartwork").AsYesNo();
+ obj.Unofficial = reader.GetAttribute("unofficial").AsYesNo();
+ obj.NoSoundHardware = reader.GetAttribute("nosoundhardware").AsYesNo();
+ obj.Incomplete = reader.GetAttribute("incomplete").AsYesNo();
return obj;
}
@@ -660,10 +660,10 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.SourceFile = reader.GetAttribute("sourcefile");
- obj.IsBios = reader.GetAttribute("isbios");
- obj.IsDevice = reader.GetAttribute("isdevice");
- obj.IsMechanical = reader.GetAttribute("ismechanical");
- obj.Runnable = reader.GetAttribute("runnable");
+ obj.IsBios = reader.GetAttribute("isbios").AsYesNo();
+ obj.IsDevice = reader.GetAttribute("isdevice").AsYesNo();
+ obj.IsMechanical = reader.GetAttribute("ismechanical").AsYesNo();
+ obj.Runnable = reader.GetAttribute("runnable").AsYesNo();
obj.CloneOf = reader.GetAttribute("cloneof");
obj.RomOf = reader.GetAttribute("romof");
obj.SampleOf = reader.GetAttribute("sampleof");
@@ -918,8 +918,8 @@ namespace SabreTools.Serialization.Readers
{
var obj = new Input();
- obj.Service = reader.GetAttribute("service");
- obj.Tilt = reader.GetAttribute("tilt");
+ obj.Service = reader.GetAttribute("service").AsYesNo();
+ obj.Tilt = reader.GetAttribute("tilt").AsYesNo();
obj.Players = reader.GetAttribute("players");
obj.ControlAttr = reader.GetAttribute("control");
obj.Buttons = reader.GetAttribute("buttons");
@@ -1051,9 +1051,9 @@ namespace SabreTools.Serialization.Readers
obj.Region = reader.GetAttribute("region");
obj.Offset = reader.GetAttribute("offset");
obj.Status = reader.GetAttribute("status");
- obj.Optional = reader.GetAttribute("optional");
- obj.Dispose = reader.GetAttribute("dispose");
- obj.SoundOnly = reader.GetAttribute("soundonly");
+ obj.Optional = reader.GetAttribute("optional").AsYesNo();
+ obj.Dispose = reader.GetAttribute("dispose").AsYesNo();
+ obj.SoundOnly = reader.GetAttribute("soundonly").AsYesNo();
return obj;
}
diff --git a/SabreTools.Serialization.Readers/SoftwareList.cs b/SabreTools.Serialization.Readers/SoftwareList.cs
index 649d0cce..5a2fe176 100644
--- a/SabreTools.Serialization.Readers/SoftwareList.cs
+++ b/SabreTools.Serialization.Readers/SoftwareList.cs
@@ -243,7 +243,7 @@ namespace SabreTools.Serialization.Readers
obj.MD5 = reader.GetAttribute("md5");
obj.SHA1 = reader.GetAttribute("sha1");
obj.Status = reader.GetAttribute("status");
- obj.Writeable = reader.GetAttribute("writable");
+ obj.Writeable = reader.GetAttribute("writable").AsYesNo();
return obj;
}
diff --git a/SabreTools.Serialization.Writers/AttractMode.cs b/SabreTools.Serialization.Writers/AttractMode.cs
index 29898453..35b2be3d 100644
--- a/SabreTools.Serialization.Writers/AttractMode.cs
+++ b/SabreTools.Serialization.Writers/AttractMode.cs
@@ -186,7 +186,7 @@ namespace SabreTools.Serialization.Writers
row.Tags,
row.PlayedCount,
row.PlayedTime,
- row.FileIsAvailable,
+ row.FileIsAvailable.ToString()?.ToLowerInvariant(),
];
}
else
diff --git a/SabreTools.Serialization.Writers/ClrMamePro.cs b/SabreTools.Serialization.Writers/ClrMamePro.cs
index 75ea39b9..8f3341d3 100644
--- a/SabreTools.Serialization.Writers/ClrMamePro.cs
+++ b/SabreTools.Serialization.Writers/ClrMamePro.cs
@@ -112,7 +112,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalStandalone("header", header.Header);
writer.WriteOptionalStandalone("type", header.Type);
writer.WriteOptionalStandalone("forcemerging", header.ForceMerging);
- writer.WriteOptionalStandalone("forcezipping", header.ForceZipping);
+ writer.WriteOptionalStandalone("forcezipping", header.ForceZipping.FromYesNo());
writer.WriteOptionalStandalone("forcepacking", header.ForcePacking);
writer.WriteEndElement(); // clrmamepro
@@ -283,8 +283,8 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("serial", rom.Serial);
writer.WriteOptionalAttributeString("header", rom.Header);
writer.WriteOptionalAttributeString("date", rom.Date);
- writer.WriteOptionalAttributeString("inverted", rom.Inverted);
- writer.WriteOptionalAttributeString("mia", rom.MIA);
+ writer.WriteOptionalAttributeString("inverted", rom.Inverted.FromYesNo());
+ writer.WriteOptionalAttributeString("mia", rom.MIA.FromYesNo());
writer.WriteEndElement(); // rom
}
}
@@ -453,8 +453,8 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("control", input.Control);
writer.WriteRequiredAttributeString("buttons", input.Buttons, throwOnError: true);
writer.WriteOptionalAttributeString("coins", input.Coins);
- writer.WriteOptionalAttributeString("tilt", input.Tilt);
- writer.WriteOptionalAttributeString("service", input.Service);
+ writer.WriteOptionalAttributeString("tilt", input.Tilt.FromYesNo());
+ writer.WriteOptionalAttributeString("service", input.Service.FromYesNo());
writer.WriteEndElement(); // input
}
diff --git a/SabreTools.Serialization.Writers/Listxml.cs b/SabreTools.Serialization.Writers/Listxml.cs
index b834c5eb..c2960be4 100644
--- a/SabreTools.Serialization.Writers/Listxml.cs
+++ b/SabreTools.Serialization.Writers/Listxml.cs
@@ -50,7 +50,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteStartElement("mame");
writer.WriteOptionalAttributeString("build", obj.Build);
- writer.WriteOptionalAttributeString("debug", obj.Debug);
+ writer.WriteOptionalAttributeString("debug", obj.Debug.FromYesNo());
writer.WriteRequiredAttributeString("mameconfig", obj.MameConfig);
if (obj.Game is not null && obj.Game.Length > 0)
@@ -126,7 +126,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("tag", obj.Tag);
writer.WriteRequiredAttributeString("type", obj.Type);
- writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly);
+ writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly.FromYesNo());
writer.WriteOptionalAttributeString("clock", obj.Clock);
writer.WriteEndElement();
@@ -195,7 +195,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteRequiredAttributeString("number", obj.Number);
- writer.WriteOptionalAttributeString("inverted", obj.Inverted);
+ writer.WriteOptionalAttributeString("inverted", obj.Inverted.FromYesNo());
writer.WriteEndElement();
}
@@ -236,7 +236,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("maximum", obj.Maximum);
writer.WriteOptionalAttributeString("sensitivity", obj.Sensitivity);
writer.WriteOptionalAttributeString("keydelta", obj.KeyDelta);
- writer.WriteOptionalAttributeString("reverse", obj.Reverse);
+ writer.WriteOptionalAttributeString("reverse", obj.Reverse.FromYesNo());
writer.WriteOptionalAttributeString("ways", obj.Ways);
writer.WriteOptionalAttributeString("ways2", obj.Ways2);
writer.WriteOptionalAttributeString("ways3", obj.Ways3);
@@ -298,7 +298,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteRequiredAttributeString("number", obj.Number);
- writer.WriteOptionalAttributeString("inverted", obj.Inverted);
+ writer.WriteOptionalAttributeString("inverted", obj.Inverted.FromYesNo());
writer.WriteEndElement();
}
@@ -372,9 +372,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("merge", obj.Merge);
writer.WriteOptionalAttributeString("region", obj.Region);
writer.WriteOptionalAttributeString("index", obj.Index);
- writer.WriteOptionalAttributeString("writable", obj.Writable);
+ writer.WriteOptionalAttributeString("writable", obj.Writable.FromYesNo());
writer.WriteOptionalAttributeString("status", obj.Status);
- writer.WriteOptionalAttributeString("optional", obj.Optional);
+ writer.WriteOptionalAttributeString("optional", obj.Optional.FromYesNo());
writer.WriteEndElement();
}
@@ -391,7 +391,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("tag", obj.Tag);
writer.WriteRequiredAttributeString("type", obj.Type);
writer.WriteOptionalAttributeString("rotate", obj.Rotate);
- writer.WriteOptionalAttributeString("flipx", obj.FlipX);
+ writer.WriteOptionalAttributeString("flipx", obj.FlipX.FromYesNo());
writer.WriteOptionalAttributeString("width", obj.Width);
writer.WriteOptionalAttributeString("height", obj.Height);
writer.WriteRequiredAttributeString("refresh", obj.Refresh);
@@ -422,10 +422,10 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("emulation", obj.Emulation);
writer.WriteRequiredAttributeString("cocktail", obj.Cocktail);
writer.WriteRequiredAttributeString("savestate", obj.SaveState);
- writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork);
- writer.WriteOptionalAttributeString("unofficial", obj.Unofficial);
- writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware);
- writer.WriteOptionalAttributeString("incomplete", obj.Incomplete);
+ writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork.FromYesNo());
+ writer.WriteOptionalAttributeString("unofficial", obj.Unofficial.FromYesNo());
+ writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware.FromYesNo());
+ writer.WriteOptionalAttributeString("incomplete", obj.Incomplete.FromYesNo());
writer.WriteEndElement();
}
@@ -476,10 +476,10 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("sourcefile", obj.SourceFile);
- writer.WriteOptionalAttributeString("isbios", obj.IsBios);
- writer.WriteOptionalAttributeString("isdevice", obj.IsDevice);
- writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical);
- writer.WriteOptionalAttributeString("runnable", obj.Runnable);
+ writer.WriteOptionalAttributeString("isbios", obj.IsBios.FromYesNo());
+ writer.WriteOptionalAttributeString("isdevice", obj.IsDevice.FromYesNo());
+ writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical.FromYesNo());
+ writer.WriteOptionalAttributeString("runnable", obj.Runnable.FromYesNo());
writer.WriteOptionalAttributeString("cloneof", obj.CloneOf);
writer.WriteOptionalAttributeString("romof", obj.RomOf);
writer.WriteOptionalAttributeString("sampleof", obj.SampleOf);
@@ -646,8 +646,8 @@ namespace SabreTools.Serialization.Writers
{
writer.WriteStartElement("input");
- writer.WriteOptionalAttributeString("service", obj.Service);
- writer.WriteOptionalAttributeString("tilt", obj.Tilt);
+ writer.WriteOptionalAttributeString("service", obj.Service.FromYesNo());
+ writer.WriteOptionalAttributeString("tilt", obj.Tilt.FromYesNo());
writer.WriteRequiredAttributeString("players", obj.Players);
writer.WriteOptionalAttributeString("control", obj.ControlAttr);
writer.WriteOptionalAttributeString("buttons", obj.Buttons);
@@ -737,9 +737,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("region", obj.Region);
writer.WriteOptionalAttributeString("offset", obj.Offset);
writer.WriteOptionalAttributeString("status", obj.Status);
- writer.WriteOptionalAttributeString("optional", obj.Optional);
- writer.WriteOptionalAttributeString("dispose", obj.Dispose);
- writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly);
+ writer.WriteOptionalAttributeString("optional", obj.Optional.FromYesNo());
+ writer.WriteOptionalAttributeString("dispose", obj.Dispose.FromYesNo());
+ writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly.FromYesNo());
writer.WriteEndElement();
}
diff --git a/SabreTools.Serialization.Writers/Logiqx.cs b/SabreTools.Serialization.Writers/Logiqx.cs
index ab668ac0..5b834f74 100644
--- a/SabreTools.Serialization.Writers/Logiqx.cs
+++ b/SabreTools.Serialization.Writers/Logiqx.cs
@@ -87,7 +87,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteStartElement("datafile");
writer.WriteOptionalAttributeString("build", obj.Build);
- writer.WriteOptionalAttributeString("debug", obj.Debug);
+ writer.WriteOptionalAttributeString("debug", obj.Debug.FromYesNo());
// TODO: Fix schema location writing
// writer.WriteOptionalAttributeString("schemaLocation", obj.SchemaLocation);
@@ -178,9 +178,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("rommode", obj.RomMode);
writer.WriteOptionalAttributeString("biosmode", obj.BiosMode);
writer.WriteOptionalAttributeString("samplemode", obj.SampleMode);
- writer.WriteOptionalAttributeString("lockrommode", obj.LockRomMode);
- writer.WriteOptionalAttributeString("lockbiosmode", obj.LockBiosMode);
- writer.WriteOptionalAttributeString("locksamplemode", obj.LockSampleMode);
+ writer.WriteOptionalAttributeString("lockrommode", obj.LockRomMode.FromYesNo());
+ writer.WriteOptionalAttributeString("lockbiosmode", obj.LockBiosMode.FromYesNo());
+ writer.WriteOptionalAttributeString("locksamplemode", obj.LockSampleMode.FromYesNo());
writer.WriteEndElement();
}
@@ -295,10 +295,10 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("emulation", obj.Emulation);
writer.WriteRequiredAttributeString("cocktail", obj.Cocktail);
writer.WriteRequiredAttributeString("savestate", obj.SaveState);
- writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork);
- writer.WriteOptionalAttributeString("unofficial", obj.Unofficial);
- writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware);
- writer.WriteOptionalAttributeString("incomplete", obj.Incomplete);
+ writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork.FromYesNo());
+ writer.WriteOptionalAttributeString("unofficial", obj.Unofficial.FromYesNo());
+ writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware.FromYesNo());
+ writer.WriteOptionalAttributeString("incomplete", obj.Incomplete.FromYesNo());
writer.WriteEndElement();
}
@@ -319,9 +319,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("sourcefile", obj.SourceFile);
- writer.WriteOptionalAttributeString("isbios", obj.IsBios);
- writer.WriteOptionalAttributeString("isdevice", obj.IsDevice);
- writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical);
+ writer.WriteOptionalAttributeString("isbios", obj.IsBios.FromYesNo());
+ writer.WriteOptionalAttributeString("isdevice", obj.IsDevice.FromYesNo());
+ writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical.FromYesNo());
writer.WriteOptionalAttributeString("cloneof", obj.CloneOf);
writer.WriteOptionalAttributeString("romof", obj.RomOf);
writer.WriteOptionalAttributeString("sampleof", obj.SampleOf);
@@ -329,7 +329,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("rebuildto", obj.RebuildTo);
writer.WriteOptionalAttributeString("id", obj.Id);
writer.WriteOptionalAttributeString("cloneofid", obj.CloneOfId);
- writer.WriteOptionalAttributeString("runnable", obj.Runnable);
+ writer.WriteOptionalAttributeString("runnable", obj.Runnable.FromYesNo());
if (obj.Comment is not null && obj.Comment.Length > 0)
{
@@ -503,8 +503,8 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("serial", obj.Serial);
writer.WriteOptionalAttributeString("header", obj.Header);
writer.WriteOptionalAttributeString("date", obj.Date);
- writer.WriteOptionalAttributeString("inverted", obj.Inverted);
- writer.WriteOptionalAttributeString("mia", obj.MIA);
+ writer.WriteOptionalAttributeString("inverted", obj.Inverted.FromYesNo());
+ writer.WriteOptionalAttributeString("mia", obj.MIA.FromYesNo());
writer.WriteEndElement();
}
diff --git a/SabreTools.Serialization.Writers/M1.cs b/SabreTools.Serialization.Writers/M1.cs
index cb9c879c..ea04975f 100644
--- a/SabreTools.Serialization.Writers/M1.cs
+++ b/SabreTools.Serialization.Writers/M1.cs
@@ -124,7 +124,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("tag", obj.Tag);
writer.WriteRequiredAttributeString("type", obj.Type);
- writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly);
+ writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly.FromYesNo());
writer.WriteOptionalAttributeString("clock", obj.Clock);
writer.WriteEndElement();
@@ -193,7 +193,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteRequiredAttributeString("number", obj.Number);
- writer.WriteOptionalAttributeString("inverted", obj.Inverted);
+ writer.WriteOptionalAttributeString("inverted", obj.Inverted.FromYesNo());
writer.WriteEndElement();
}
@@ -234,7 +234,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("maximum", obj.Maximum);
writer.WriteOptionalAttributeString("sensitivity", obj.Sensitivity);
writer.WriteOptionalAttributeString("keydelta", obj.KeyDelta);
- writer.WriteOptionalAttributeString("reverse", obj.Reverse);
+ writer.WriteOptionalAttributeString("reverse", obj.Reverse.FromYesNo());
writer.WriteOptionalAttributeString("ways", obj.Ways);
writer.WriteOptionalAttributeString("ways2", obj.Ways2);
writer.WriteOptionalAttributeString("ways3", obj.Ways3);
@@ -296,7 +296,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteRequiredAttributeString("number", obj.Number);
- writer.WriteOptionalAttributeString("inverted", obj.Inverted);
+ writer.WriteOptionalAttributeString("inverted", obj.Inverted.FromYesNo());
writer.WriteEndElement();
}
@@ -370,9 +370,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("merge", obj.Merge);
writer.WriteOptionalAttributeString("region", obj.Region);
writer.WriteOptionalAttributeString("index", obj.Index);
- writer.WriteOptionalAttributeString("writable", obj.Writable);
+ writer.WriteOptionalAttributeString("writable", obj.Writable.FromYesNo());
writer.WriteOptionalAttributeString("status", obj.Status);
- writer.WriteOptionalAttributeString("optional", obj.Optional);
+ writer.WriteOptionalAttributeString("optional", obj.Optional.FromYesNo());
writer.WriteEndElement();
}
@@ -389,7 +389,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("tag", obj.Tag);
writer.WriteRequiredAttributeString("type", obj.Type);
writer.WriteOptionalAttributeString("rotate", obj.Rotate);
- writer.WriteOptionalAttributeString("flipx", obj.FlipX);
+ writer.WriteOptionalAttributeString("flipx", obj.FlipX.FromYesNo());
writer.WriteOptionalAttributeString("width", obj.Width);
writer.WriteOptionalAttributeString("height", obj.Height);
writer.WriteRequiredAttributeString("refresh", obj.Refresh);
@@ -420,10 +420,10 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("emulation", obj.Emulation);
writer.WriteRequiredAttributeString("cocktail", obj.Cocktail);
writer.WriteRequiredAttributeString("savestate", obj.SaveState);
- writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork);
- writer.WriteOptionalAttributeString("unofficial", obj.Unofficial);
- writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware);
- writer.WriteOptionalAttributeString("incomplete", obj.Incomplete);
+ writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork.FromYesNo());
+ writer.WriteOptionalAttributeString("unofficial", obj.Unofficial.FromYesNo());
+ writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware.FromYesNo());
+ writer.WriteOptionalAttributeString("incomplete", obj.Incomplete.FromYesNo());
writer.WriteEndElement();
}
@@ -474,10 +474,10 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("sourcefile", obj.SourceFile);
- writer.WriteOptionalAttributeString("isbios", obj.IsBios);
- writer.WriteOptionalAttributeString("isdevice", obj.IsDevice);
- writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical);
- writer.WriteOptionalAttributeString("runnable", obj.Runnable);
+ writer.WriteOptionalAttributeString("isbios", obj.IsBios.FromYesNo());
+ writer.WriteOptionalAttributeString("isdevice", obj.IsDevice.FromYesNo());
+ writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical.FromYesNo());
+ writer.WriteOptionalAttributeString("runnable", obj.Runnable.FromYesNo());
writer.WriteOptionalAttributeString("cloneof", obj.CloneOf);
writer.WriteOptionalAttributeString("romof", obj.RomOf);
writer.WriteOptionalAttributeString("sampleof", obj.SampleOf);
@@ -644,8 +644,8 @@ namespace SabreTools.Serialization.Writers
{
writer.WriteStartElement("input");
- writer.WriteOptionalAttributeString("service", obj.Service);
- writer.WriteOptionalAttributeString("tilt", obj.Tilt);
+ writer.WriteOptionalAttributeString("service", obj.Service.FromYesNo());
+ writer.WriteOptionalAttributeString("tilt", obj.Tilt.FromYesNo());
writer.WriteRequiredAttributeString("players", obj.Players);
writer.WriteOptionalAttributeString("control", obj.ControlAttr);
writer.WriteOptionalAttributeString("buttons", obj.Buttons);
@@ -735,9 +735,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("region", obj.Region);
writer.WriteOptionalAttributeString("offset", obj.Offset);
writer.WriteOptionalAttributeString("status", obj.Status);
- writer.WriteOptionalAttributeString("optional", obj.Optional);
- writer.WriteOptionalAttributeString("dispose", obj.Dispose);
- writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly);
+ writer.WriteOptionalAttributeString("optional", obj.Optional.FromYesNo());
+ writer.WriteOptionalAttributeString("dispose", obj.Dispose.FromYesNo());
+ writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly.FromYesNo());
writer.WriteEndElement();
}
diff --git a/SabreTools.Serialization.Writers/Mess.cs b/SabreTools.Serialization.Writers/Mess.cs
index 698bd133..df019522 100644
--- a/SabreTools.Serialization.Writers/Mess.cs
+++ b/SabreTools.Serialization.Writers/Mess.cs
@@ -124,7 +124,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("tag", obj.Tag);
writer.WriteRequiredAttributeString("type", obj.Type);
- writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly);
+ writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly.FromYesNo());
writer.WriteOptionalAttributeString("clock", obj.Clock);
writer.WriteEndElement();
@@ -193,7 +193,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteRequiredAttributeString("number", obj.Number);
- writer.WriteOptionalAttributeString("inverted", obj.Inverted);
+ writer.WriteOptionalAttributeString("inverted", obj.Inverted.FromYesNo());
writer.WriteEndElement();
}
@@ -234,7 +234,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("maximum", obj.Maximum);
writer.WriteOptionalAttributeString("sensitivity", obj.Sensitivity);
writer.WriteOptionalAttributeString("keydelta", obj.KeyDelta);
- writer.WriteOptionalAttributeString("reverse", obj.Reverse);
+ writer.WriteOptionalAttributeString("reverse", obj.Reverse.FromYesNo());
writer.WriteOptionalAttributeString("ways", obj.Ways);
writer.WriteOptionalAttributeString("ways2", obj.Ways2);
writer.WriteOptionalAttributeString("ways3", obj.Ways3);
@@ -296,7 +296,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteRequiredAttributeString("number", obj.Number);
- writer.WriteOptionalAttributeString("inverted", obj.Inverted);
+ writer.WriteOptionalAttributeString("inverted", obj.Inverted.FromYesNo());
writer.WriteEndElement();
}
@@ -370,9 +370,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("merge", obj.Merge);
writer.WriteOptionalAttributeString("region", obj.Region);
writer.WriteOptionalAttributeString("index", obj.Index);
- writer.WriteOptionalAttributeString("writable", obj.Writable);
+ writer.WriteOptionalAttributeString("writable", obj.Writable.FromYesNo());
writer.WriteOptionalAttributeString("status", obj.Status);
- writer.WriteOptionalAttributeString("optional", obj.Optional);
+ writer.WriteOptionalAttributeString("optional", obj.Optional.FromYesNo());
writer.WriteEndElement();
}
@@ -389,7 +389,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("tag", obj.Tag);
writer.WriteRequiredAttributeString("type", obj.Type);
writer.WriteOptionalAttributeString("rotate", obj.Rotate);
- writer.WriteOptionalAttributeString("flipx", obj.FlipX);
+ writer.WriteOptionalAttributeString("flipx", obj.FlipX.FromYesNo());
writer.WriteOptionalAttributeString("width", obj.Width);
writer.WriteOptionalAttributeString("height", obj.Height);
writer.WriteRequiredAttributeString("refresh", obj.Refresh);
@@ -420,10 +420,10 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("emulation", obj.Emulation);
writer.WriteRequiredAttributeString("cocktail", obj.Cocktail);
writer.WriteRequiredAttributeString("savestate", obj.SaveState);
- writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork);
- writer.WriteOptionalAttributeString("unofficial", obj.Unofficial);
- writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware);
- writer.WriteOptionalAttributeString("incomplete", obj.Incomplete);
+ writer.WriteOptionalAttributeString("requiresartwork", obj.RequiresArtwork.FromYesNo());
+ writer.WriteOptionalAttributeString("unofficial", obj.Unofficial.FromYesNo());
+ writer.WriteOptionalAttributeString("nosoundhardware", obj.NoSoundHardware.FromYesNo());
+ writer.WriteOptionalAttributeString("incomplete", obj.Incomplete.FromYesNo());
writer.WriteEndElement();
}
@@ -474,10 +474,10 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("sourcefile", obj.SourceFile);
- writer.WriteOptionalAttributeString("isbios", obj.IsBios);
- writer.WriteOptionalAttributeString("isdevice", obj.IsDevice);
- writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical);
- writer.WriteOptionalAttributeString("runnable", obj.Runnable);
+ writer.WriteOptionalAttributeString("isbios", obj.IsBios.FromYesNo());
+ writer.WriteOptionalAttributeString("isdevice", obj.IsDevice.FromYesNo());
+ writer.WriteOptionalAttributeString("ismechanical", obj.IsMechanical.FromYesNo());
+ writer.WriteOptionalAttributeString("runnable", obj.Runnable.FromYesNo());
writer.WriteOptionalAttributeString("cloneof", obj.CloneOf);
writer.WriteOptionalAttributeString("romof", obj.RomOf);
writer.WriteOptionalAttributeString("sampleof", obj.SampleOf);
@@ -644,8 +644,8 @@ namespace SabreTools.Serialization.Writers
{
writer.WriteStartElement("input");
- writer.WriteOptionalAttributeString("service", obj.Service);
- writer.WriteOptionalAttributeString("tilt", obj.Tilt);
+ writer.WriteOptionalAttributeString("service", obj.Service.FromYesNo());
+ writer.WriteOptionalAttributeString("tilt", obj.Tilt.FromYesNo());
writer.WriteRequiredAttributeString("players", obj.Players);
writer.WriteOptionalAttributeString("control", obj.ControlAttr);
writer.WriteOptionalAttributeString("buttons", obj.Buttons);
@@ -735,9 +735,9 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("region", obj.Region);
writer.WriteOptionalAttributeString("offset", obj.Offset);
writer.WriteOptionalAttributeString("status", obj.Status);
- writer.WriteOptionalAttributeString("optional", obj.Optional);
- writer.WriteOptionalAttributeString("dispose", obj.Dispose);
- writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly);
+ writer.WriteOptionalAttributeString("optional", obj.Optional.FromYesNo());
+ writer.WriteOptionalAttributeString("dispose", obj.Dispose.FromYesNo());
+ writer.WriteOptionalAttributeString("soundonly", obj.SoundOnly.FromYesNo());
writer.WriteEndElement();
}
diff --git a/SabreTools.Serialization.Writers/SoftwareList.cs b/SabreTools.Serialization.Writers/SoftwareList.cs
index e7b316bf..9cd31522 100644
--- a/SabreTools.Serialization.Writers/SoftwareList.cs
+++ b/SabreTools.Serialization.Writers/SoftwareList.cs
@@ -172,7 +172,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalAttributeString("md5", obj.MD5);
writer.WriteOptionalAttributeString("sha1", obj.SHA1);
writer.WriteOptionalAttributeString("status", obj.Status);
- writer.WriteOptionalAttributeString("writable", obj.Writeable);
+ writer.WriteOptionalAttributeString("writable", obj.Writeable.FromYesNo());
writer.WriteEndElement();
}