diff --git a/SabreTools.Data.Extensions/MetadataExtensions.cs b/SabreTools.Data.Extensions/MetadataExtensions.cs
index 77d4714f..cfdcb275 100644
--- a/SabreTools.Data.Extensions/MetadataExtensions.cs
+++ b/SabreTools.Data.Extensions/MetadataExtensions.cs
@@ -199,6 +199,7 @@ namespace SabreTools.Data.Extensions
else if (self is DataArea selfDataArea && clone is DataArea cloneDataArea)
{
cloneDataArea.Endianness = selfDataArea.Endianness;
+ cloneDataArea.Size = selfDataArea.Size;
}
else if (self is Device selfDevice && clone is Device cloneDevice)
{
@@ -345,6 +346,7 @@ namespace SabreTools.Data.Extensions
cloneRom.MIA = selfRom.MIA;
cloneRom.OpenMSXMediaType = selfRom.OpenMSXMediaType;
cloneRom.Optional = selfRom.Optional;
+ cloneRom.Size = selfRom.Size;
cloneRom.SoundOnly = selfRom.SoundOnly;
cloneRom.Status = selfRom.Status;
cloneRom.Value = selfRom.Value;
@@ -1037,10 +1039,10 @@ namespace SabreTools.Data.Extensions
if (self is null || other is null)
return;
- long? selfSize = self.ReadLong(Rom.SizeKey);
- long? otherSize = other.ReadLong(Rom.SizeKey);
+ long? selfSize = self.Size;
+ long? otherSize = other.Size;
if (selfSize is null && otherSize is not null)
- self[Rom.SizeKey] = otherSize;
+ self.Size = otherSize;
string? selfCrc16 = self.ReadString(Rom.CRC16Key);
string? otherCrc16 = other.ReadString(Rom.CRC16Key);
diff --git a/SabreTools.Data.Models/ClrMamePro/Rom.cs b/SabreTools.Data.Models/ClrMamePro/Rom.cs
index b84d1b68..329fa18e 100644
--- a/SabreTools.Data.Models/ClrMamePro/Rom.cs
+++ b/SabreTools.Data.Models/ClrMamePro/Rom.cs
@@ -13,7 +13,7 @@ namespace SabreTools.Data.Models.ClrMamePro
/// size, Numeric
[Required]
- public string? Size { get; set; }
+ public long? Size { get; set; }
/// crc
public string? CRC { get; set; }
diff --git a/SabreTools.Data.Models/DosCenter/File.cs b/SabreTools.Data.Models/DosCenter/File.cs
index 7766ead6..99b30442 100644
--- a/SabreTools.Data.Models/DosCenter/File.cs
+++ b/SabreTools.Data.Models/DosCenter/File.cs
@@ -10,7 +10,7 @@ namespace SabreTools.Data.Models.DosCenter
/// size, attribute, numeric
[Required]
- public string? Size { get; set; }
+ public long? Size { get; set; }
/// crc, attribute
[Required]
diff --git a/SabreTools.Data.Models/EverdriveSMDB/Row.cs b/SabreTools.Data.Models/EverdriveSMDB/Row.cs
index ddc19765..d81cc3fb 100644
--- a/SabreTools.Data.Models/EverdriveSMDB/Row.cs
+++ b/SabreTools.Data.Models/EverdriveSMDB/Row.cs
@@ -21,6 +21,6 @@ namespace SabreTools.Data.Models.EverdriveSMDB
[Required]
public string? CRC32 { get; set; }
- public string? Size { get; set; }
+ public long? Size { get; set; }
}
}
diff --git a/SabreTools.Data.Models/Listrom/Row.cs b/SabreTools.Data.Models/Listrom/Row.cs
index 28e32499..a86bb239 100644
--- a/SabreTools.Data.Models/Listrom/Row.cs
+++ b/SabreTools.Data.Models/Listrom/Row.cs
@@ -18,7 +18,7 @@ namespace SabreTools.Data.Models.Listrom
[Required]
public string? Name { get; set; }
- public string? Size { get; set; }
+ public long? Size { get; set; }
public bool Bad { get; set; }
diff --git a/SabreTools.Data.Models/Listxml/Rom.cs b/SabreTools.Data.Models/Listxml/Rom.cs
index a2f60acc..d537ea66 100644
--- a/SabreTools.Data.Models/Listxml/Rom.cs
+++ b/SabreTools.Data.Models/Listxml/Rom.cs
@@ -14,10 +14,9 @@ namespace SabreTools.Data.Models.Listxml
[XmlAttribute("bios")]
public string? Bios { get; set; }
- /// Numeric
[Required]
[XmlAttribute("size")]
- public string? Size { get; set; }
+ public long? Size { get; set; }
[XmlAttribute("crc")]
public string? CRC { get; set; }
diff --git a/SabreTools.Data.Models/Logiqx/Rom.cs b/SabreTools.Data.Models/Logiqx/Rom.cs
index ea05a3a8..bef09c1c 100644
--- a/SabreTools.Data.Models/Logiqx/Rom.cs
+++ b/SabreTools.Data.Models/Logiqx/Rom.cs
@@ -14,7 +14,7 @@ namespace SabreTools.Data.Models.Logiqx
[Required]
[XmlAttribute("size")]
- public string? Size { get; set; }
+ public long? Size { get; set; }
/// Hash extension
[XmlAttribute("crc16")]
diff --git a/SabreTools.Data.Models/Metadata/DataArea.cs b/SabreTools.Data.Models/Metadata/DataArea.cs
index 07fe7cc1..9ca44103 100644
--- a/SabreTools.Data.Models/Metadata/DataArea.cs
+++ b/SabreTools.Data.Models/Metadata/DataArea.cs
@@ -13,6 +13,8 @@ namespace SabreTools.Data.Models.Metadata
public string? Name { get; set; }
+ public long? Size { get; set; }
+
#endregion
#region Keys
@@ -21,9 +23,6 @@ namespace SabreTools.Data.Models.Metadata
[NoFilter]
public const string RomKey = "rom";
- /// long
- public const string SizeKey = "size";
-
/// (8|16|32|64) "8"
/// TODO: Convert to enum
public const string WidthKey = "width";
diff --git a/SabreTools.Data.Models/Metadata/Rom.cs b/SabreTools.Data.Models/Metadata/Rom.cs
index 9217cfbd..d83a81bb 100644
--- a/SabreTools.Data.Models/Metadata/Rom.cs
+++ b/SabreTools.Data.Models/Metadata/Rom.cs
@@ -31,6 +31,8 @@ namespace SabreTools.Data.Models.Metadata
/// (yes|no) "no"
public bool? Optional { get; set; }
+ public long? Size { get; set; }
+
/// (yes|no) "no"
public bool? SoundOnly { get; set; }
@@ -223,9 +225,6 @@ namespace SabreTools.Data.Models.Metadata
/// string
public const string SHA512Key = "sha512";
- /// long
- public const string SizeKey = "size";
-
/// string; ArchiveDotOrg.File
public const string SourceKey = "source";
diff --git a/SabreTools.Data.Models/OfflineList/Game.cs b/SabreTools.Data.Models/OfflineList/Game.cs
index 508437f9..c86e68e0 100644
--- a/SabreTools.Data.Models/OfflineList/Game.cs
+++ b/SabreTools.Data.Models/OfflineList/Game.cs
@@ -20,7 +20,7 @@ namespace SabreTools.Data.Models.OfflineList
/// Numeric
[XmlElement("romSize")]
- public string? RomSize { get; set; }
+ public long? RomSize { get; set; }
[XmlElement("publisher")]
public string? Publisher { get; set; }
diff --git a/SabreTools.Data.Models/RomCenter/Rom.cs b/SabreTools.Data.Models/RomCenter/Rom.cs
index f7db5251..c60d454f 100644
--- a/SabreTools.Data.Models/RomCenter/Rom.cs
+++ b/SabreTools.Data.Models/RomCenter/Rom.cs
@@ -22,7 +22,7 @@ namespace SabreTools.Data.Models.RomCenter
public string? RomCRC { get; set; }
/// 6
- public string? RomSize { get; set; }
+ public long? RomSize { get; set; }
/// 7
public string? RomOf { get; set; }
diff --git a/SabreTools.Data.Models/SeparatedValue/Row.cs b/SabreTools.Data.Models/SeparatedValue/Row.cs
index 5fed32c0..d68461ee 100644
--- a/SabreTools.Data.Models/SeparatedValue/Row.cs
+++ b/SabreTools.Data.Models/SeparatedValue/Row.cs
@@ -35,7 +35,7 @@ namespace SabreTools.Data.Models.SeparatedValue
public string? DiskName { get; set; }
/// Size, Numeric
- public string? Size { get; set; }
+ public long? Size { get; set; }
/// CRC
public string? CRC { get; set; }
diff --git a/SabreTools.Data.Models/SoftwareList/DataArea.cs b/SabreTools.Data.Models/SoftwareList/DataArea.cs
index dfe7dfee..58cf3219 100644
--- a/SabreTools.Data.Models/SoftwareList/DataArea.cs
+++ b/SabreTools.Data.Models/SoftwareList/DataArea.cs
@@ -13,7 +13,7 @@ namespace SabreTools.Data.Models.SoftwareList
[Required]
[XmlAttribute("size")]
- public string? Size { get; set; }
+ public long? Size { get; set; }
/// (8|16|32|64) "8"
[XmlAttribute("width")]
diff --git a/SabreTools.Data.Models/SoftwareList/Rom.cs b/SabreTools.Data.Models/SoftwareList/Rom.cs
index 265f8127..67d7a8d1 100644
--- a/SabreTools.Data.Models/SoftwareList/Rom.cs
+++ b/SabreTools.Data.Models/SoftwareList/Rom.cs
@@ -12,7 +12,7 @@ namespace SabreTools.Data.Models.SoftwareList
public string? Name { get; set; }
[XmlAttribute("size")]
- public string? Size { get; set; }
+ public long? Size { get; set; }
[XmlAttribute("length")]
public string? Length { get; set; }
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
index 947c6f36..09812fb1 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
@@ -542,7 +542,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Endianness = Data.Models.Metadata.Endianness.Big,
Name = "name",
[Data.Models.Metadata.DataArea.RomKey] = new Data.Models.Metadata.Rom[] { [] },
- [Data.Models.Metadata.DataArea.SizeKey] = 12345L,
+ Size = 12345L,
[Data.Models.Metadata.DataArea.WidthKey] = 64,
};
}
@@ -838,7 +838,7 @@ namespace SabreTools.Metadata.DatFiles.Test
[Data.Models.Metadata.Rom.SHA256Key] = HashType.SHA256.ZeroString,
[Data.Models.Metadata.Rom.SHA384Key] = HashType.SHA384.ZeroString,
[Data.Models.Metadata.Rom.SHA512Key] = HashType.SHA512.ZeroString,
- [Data.Models.Metadata.Rom.SizeKey] = 12345L,
+ Size = 12345L,
SoundOnly = true,
[Data.Models.Metadata.Rom.SourceKey] = "source",
[Data.Models.Metadata.Rom.SpamSumKey] = HashType.SpamSum.ZeroString,
@@ -1253,7 +1253,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(dataArea);
Assert.Equal(Data.Models.Metadata.Endianness.Big, dataArea.Endianness);
Assert.Equal("name", dataArea.Name);
- Assert.Equal(12345L, dataArea.ReadLong(Data.Models.Metadata.DataArea.SizeKey));
+ Assert.Equal(12345L, dataArea.Size);
Assert.Equal(64, dataArea.ReadLong(Data.Models.Metadata.DataArea.WidthKey));
}
@@ -1558,7 +1558,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.SHA256.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SHA256Key));
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.Equal(12345L, rom.Size);
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));
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs
index 62c11937..fa405df6 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.Splitting.cs
@@ -22,23 +22,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -67,23 +64,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -112,23 +106,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -160,23 +151,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -212,23 +200,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -257,23 +242,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -325,9 +307,8 @@ namespace SabreTools.Metadata.DatFiles.Test
slotOptionItem.Machine = slotOptionMachine;
slotOptionItem.Source = source;
- DatItem datItem = new Rom();
+ DatItem datItem = new Rom() { Size = 12345 };
datItem.SetName("rom");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
datItem.Machine = itemMachine;
datItem.Source = source;
@@ -380,9 +361,8 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem slotOptionItem = new Sample();
slotOptionItem.SetName("slot_option_item");
- DatItem datItem = new Rom();
+ DatItem datItem = new Rom() { Size = 12345 };
datItem.SetName("rom");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
DatItem deviceRef = new DeviceRef();
@@ -425,23 +405,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -470,23 +447,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -587,23 +561,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Name = "child";
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -637,23 +608,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Name = "child";
childMachine.Write(Data.Models.Metadata.Machine.CloneOfKey, "parent");
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -694,23 +662,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
@@ -743,23 +708,20 @@ namespace SabreTools.Metadata.DatFiles.Test
childMachine.Write(Data.Models.Metadata.Machine.RomOfKey, "parent");
childMachine.IsBios = true;
- DatItem parentItem = new Rom();
+ DatItem parentItem = new Rom() { Size = 12345 };
parentItem.SetName("parent_rom");
- parentItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
parentItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
parentItem.Machine = parentMachine;
parentItem.Source = source;
- DatItem matchChildItem = new Rom();
+ DatItem matchChildItem = new Rom() { Size = 12345 };
matchChildItem.SetName("match_child_rom");
- matchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
matchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
matchChildItem.Machine = childMachine;
matchChildItem.Source = source;
- DatItem noMatchChildItem = new Rom();
+ DatItem noMatchChildItem = new Rom() { Size = 12345 };
noMatchChildItem.SetName("no_match_child_rom");
- noMatchChildItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
noMatchChildItem.Write(Data.Models.Metadata.Rom.CRCKey, "beefdead");
noMatchChildItem.Machine = childMachine;
noMatchChildItem.Source = source;
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
index d12014b2..f286010a 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
@@ -760,7 +760,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(dataArea);
Assert.Equal(Data.Models.Metadata.Endianness.Big, dataArea.Endianness);
Assert.Equal("name", dataArea.Name);
- Assert.Equal(12345, dataArea.ReadLong(Data.Models.Metadata.DataArea.SizeKey));
+ Assert.Equal(12345, dataArea.Size);
Assert.Equal(64, dataArea.ReadLong(Data.Models.Metadata.DataArea.WidthKey));
Data.Models.Metadata.Rom[]? roms = dataArea.ReadArray(Data.Models.Metadata.DataArea.RomKey);
@@ -1103,7 +1103,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.Equal(HashType.SHA256.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.SHA256Key));
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.Equal(12345, rom.Size);
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));
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs
index 0987c682..b773c286 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs
@@ -1368,9 +1368,8 @@ namespace SabreTools.Metadata.DatFiles.Test
machine.Write(Data.Models.Metadata.Machine.PublisherKey, "publisher");
machine.Write(Data.Models.Metadata.Machine.CategoryKey, "category");
- DatItem item = new Rom();
+ DatItem item = new Rom() { Size = 12345 };
item.SetName("name");
- item.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
item.Write(Data.Models.Metadata.Rom.CRC16Key, "crc16");
item.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
item.Write(Data.Models.Metadata.Rom.CRC64Key, "crc64");
@@ -1472,9 +1471,8 @@ namespace SabreTools.Metadata.DatFiles.Test
machine.Write(Data.Models.Metadata.Machine.PublisherKey, "publisher");
machine.Write(Data.Models.Metadata.Machine.CategoryKey, "category");
- DatItem item = new Rom();
+ DatItem item = new Rom() { Size = 12345 };
item.SetName("name");
- item.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
item.Write(Data.Models.Metadata.Rom.CRC16Key, "crc16");
item.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
item.Write(Data.Models.Metadata.Rom.CRC64Key, "crc64");
@@ -1505,7 +1503,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = DatFile.ProcessNullifiedItem(item);
Sample? sample = actual as Sample;
Assert.NotNull(sample);
- Assert.Null(sample.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Null(sample.ReadString("size"));
Assert.Null(sample.ReadString(Data.Models.Metadata.Rom.CRC16Key));
Assert.Null(sample.ReadString(Data.Models.Metadata.Rom.CRCKey));
Assert.Null(sample.ReadString(Data.Models.Metadata.Rom.CRC64Key));
@@ -1524,13 +1522,12 @@ namespace SabreTools.Metadata.DatFiles.Test
[Fact]
public void ProcessNullifiedItem_SizeNonNull()
{
- DatItem item = new Rom();
- item.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ DatItem item = new Rom() { Size = 12345 };
DatItem actual = DatFile.ProcessNullifiedItem(item);
Rom? rom = actual as Rom;
Assert.NotNull(rom);
- Assert.Equal(12345, rom.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, rom.Size);
Assert.Null(rom.ReadString(Data.Models.Metadata.Rom.CRC16Key));
Assert.Null(rom.ReadString(Data.Models.Metadata.Rom.CRCKey));
Assert.Null(rom.ReadString(Data.Models.Metadata.Rom.CRC64Key));
@@ -1555,7 +1552,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = DatFile.ProcessNullifiedItem(item);
Rom? rom = actual as Rom;
Assert.NotNull(rom);
- Assert.Null(rom.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Null(rom.Size);
Assert.Equal(HashType.CRC32.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.CRCKey));
Assert.Null(rom.ReadString(Data.Models.Metadata.Rom.MD2Key));
Assert.Null(rom.ReadString(Data.Models.Metadata.Rom.MD4Key));
@@ -1590,7 +1587,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = DatFile.ProcessNullifiedItem(item);
Rom? rom = actual as Rom;
Assert.NotNull(rom);
- Assert.Equal(0, rom.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(0, rom.Size);
Assert.Equal(HashType.CRC16.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.CRC16Key));
Assert.Equal(HashType.CRC32.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.CRCKey));
Assert.Equal(HashType.CRC64.ZeroString, rom.ReadString(Data.Models.Metadata.Rom.CRC64Key));
@@ -1958,7 +1955,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("name");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romA.Machine = (Machine)machine.Clone();
romA.Source = (Source)source.Clone();
@@ -1972,7 +1969,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actualItemA as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("name", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -1986,14 +1983,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("romA");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romA.Machine = (Machine)machine.Clone();
romA.Source = (Source)source.Clone();
Rom romB = new Rom();
romB.SetName("romB");
- romB.Write(Data.Models.Metadata.Rom.SizeKey, 23456);
+ romB.Size = 23456;
romB.Write(Data.Models.Metadata.Rom.CRCKey, "crc2");
romB.Machine = (Machine)machine.Clone();
romB.Source = (Source)source.Clone();
@@ -2008,13 +2005,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actual[0] as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("romA", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
Rom? actualRomB = actual[1] as Rom;
Assert.NotNull(actualRomB);
Assert.Equal("romB", actualRomB.Name);
- Assert.Equal(23456, actualRomB.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(23456, actualRomB.Size);
Assert.Equal("crc2", actualRomB.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -2028,14 +2025,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("rom");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romA.Machine = (Machine)machine.Clone();
romA.Source = (Source)source.Clone();
Rom romB = new Rom();
romB.SetName("rom");
- romB.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romB.Size = 12345;
romB.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romB.Machine = (Machine)machine.Clone();
romB.Source = (Source)source.Clone();
@@ -2049,7 +2046,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actualItemA as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("rom", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -2063,14 +2060,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("rom");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romA.Machine = (Machine)machine.Clone();
romA.Source = (Source)source.Clone();
Rom romB = new Rom();
romB.SetName("rom");
- romB.Write(Data.Models.Metadata.Rom.SizeKey, 23456);
+ romB.Size = 23456;
romB.Write(Data.Models.Metadata.Rom.CRCKey, "crc2");
romB.Machine = (Machine)machine.Clone();
romB.Source = (Source)source.Clone();
@@ -2085,13 +2082,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actual[0] as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("rom", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
Rom? actualRomB = actual[1] as Rom;
Assert.NotNull(actualRomB);
Assert.Equal("rom_crc2", actualRomB.Name);
- Assert.Equal(23456, actualRomB.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(23456, actualRomB.Size);
Assert.Equal("crc2", actualRomB.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -2120,7 +2117,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("name");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romA.Machine = (Machine)machine.Clone();
romA.Source = (Source)source.Clone();
@@ -2136,7 +2133,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actualItemA.Value as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("name", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -2150,14 +2147,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("romA");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romA.Machine = (Machine)machine.Clone();
romA.Source = (Source)source.Clone();
Rom romB = new Rom();
romB.SetName("romB");
- romB.Write(Data.Models.Metadata.Rom.SizeKey, 23456);
+ romB.Size = 23456;
romB.Write(Data.Models.Metadata.Rom.CRCKey, "crc2");
romB.Machine = (Machine)machine.Clone();
romB.Source = (Source)source.Clone();
@@ -2175,13 +2172,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actual[0].Value as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("romA", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
Rom? actualRomB = actual[1].Value as Rom;
Assert.NotNull(actualRomB);
Assert.Equal("romB", actualRomB.Name);
- Assert.Equal(23456, actualRomB.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(23456, actualRomB.Size);
Assert.Equal("crc2", actualRomB.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -2199,13 +2196,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("rom");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
long romAIndex = datFile.AddItemDB(romA, machineIndex, sourceIndex, statsOnly: false);
Rom romB = new Rom();
romB.SetName("rom");
- romB.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romB.Size = 12345;
romB.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
long romBIndex = datFile.AddItemDB(romB, machineIndex, sourceIndex, statsOnly: false);
@@ -2220,7 +2217,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actualItemA.Value as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("rom", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -2234,14 +2231,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom romA = new Rom();
romA.SetName("rom");
- romA.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
+ romA.Size = 12345;
romA.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
romA.Machine = (Machine)machine.Clone();
romA.Source = (Source)source.Clone();
Rom romB = new Rom();
romB.SetName("rom");
- romB.Write(Data.Models.Metadata.Rom.SizeKey, 23456);
+ romB.Size = 23456;
romB.Write(Data.Models.Metadata.Rom.CRCKey, "crc2");
romB.Machine = (Machine)machine.Clone();
romB.Source = (Source)source.Clone();
@@ -2259,13 +2256,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Rom? actualRomA = actual[0].Value as Rom;
Assert.NotNull(actualRomA);
Assert.Equal("rom", actualRomA.Name);
- Assert.Equal(12345, actualRomA.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRomA.Size);
Assert.Equal("crc", actualRomA.ReadString(Data.Models.Metadata.Rom.CRCKey));
Rom? actualRomB = actual[1].Value as Rom;
Assert.NotNull(actualRomB);
Assert.Equal("rom_crc2", actualRomB.Name);
- Assert.Equal(23456, actualRomB.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(23456, actualRomB.Size);
Assert.Equal("crc2", actualRomB.ReadString(Data.Models.Metadata.Rom.CRCKey));
}
@@ -2317,9 +2314,8 @@ namespace SabreTools.Metadata.DatFiles.Test
[Fact]
public void ShouldIgnore_NoIgnoreBlanksZeroRom_False()
{
- DatItem? datItem = new Rom();
+ DatItem? datItem = new Rom() { Size = 12345 };
datItem.SetName("name");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
DatFile datFile = new Logiqx(null, useGame: false);
@@ -2340,9 +2336,8 @@ namespace SabreTools.Metadata.DatFiles.Test
[Fact]
public void ShouldIgnore_MissingRequired_True()
{
- DatItem? datItem = new Rom();
+ DatItem? datItem = new Rom() { Size = 12345 };
datItem.SetName("name");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
DatFile datFile = new Logiqx(null, useGame: false);
bool actual = datFile.ShouldIgnore(datItem, ignoreBlanks: true);
@@ -2352,9 +2347,8 @@ namespace SabreTools.Metadata.DatFiles.Test
[Fact]
public void ShouldIgnore_AllVerified_False()
{
- DatItem? datItem = new Rom();
+ DatItem? datItem = new Rom() { Size = 12345 };
datItem.SetName("name");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "crc");
datItem.Write(Data.Models.Metadata.Rom.MD2Key, "crc");
datItem.Write(Data.Models.Metadata.Rom.MD4Key, "crc");
diff --git a/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs b/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs
index cfb8ead3..3e9827f3 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs
@@ -300,7 +300,7 @@ namespace SabreTools.Metadata.DatFiles.Test
var rom = new Rom();
rom.Status = ItemStatus.Good;
- rom.Write(Data.Models.Metadata.Rom.SizeKey, 1);
+ rom.Size = 1;
rom.Write(Data.Models.Metadata.Rom.CRC16Key, HashType.CRC16.ZeroString);
rom.Write(Data.Models.Metadata.Rom.CRCKey, HashType.CRC32.ZeroString);
rom.Write(Data.Models.Metadata.Rom.CRC64Key, HashType.CRC64.ZeroString);
diff --git a/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs b/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs
index 5e0d3f74..8ebb40fb 100644
--- a/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs
@@ -127,7 +127,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.SHA1Key,
]));
}
@@ -288,7 +288,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.CRCKey,
]));
}
@@ -741,7 +741,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.CRCKey,
Data.Models.Metadata.Rom.SHA1Key,
]));
@@ -806,7 +806,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.SHA1Key,
]));
}
@@ -1123,7 +1123,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.SHA1Key,
]));
}
@@ -1276,7 +1276,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.CRCKey,
]));
}
@@ -1336,7 +1336,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
Data.Models.Metadata.Rom.CRCKey,
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
]));
}
@@ -1421,7 +1421,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.SHA1Key,
]));
}
@@ -1479,7 +1479,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.SHA1Key,
]));
}
@@ -1537,7 +1537,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Rom.Name),
- Data.Models.Metadata.Rom.SizeKey,
+ nameof(Data.Models.Metadata.Rom.Size),
Data.Models.Metadata.Rom.SHA1Key,
]));
}
@@ -1623,7 +1623,7 @@ namespace SabreTools.Metadata.DatFiles.Test
nameof(Data.Models.Metadata.Part.Name),
nameof(Data.Models.Metadata.Part.Interface),
nameof(Data.Models.Metadata.DataArea.Name),
- Data.Models.Metadata.DataArea.SizeKey,
+ nameof(Data.Models.Metadata.DataArea.Size),
]));
}
diff --git a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs
index 069df989..4e249bff 100644
--- a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs
@@ -135,9 +135,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Source source = new Source(0, source: null);
Machine machine = new Machine();
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = 12345 };
rom.SetName("item");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
rom.Write(Data.Models.Metadata.Rom.SHA1Key, "deadbeef");
var dict = new ItemDictionaryDB();
@@ -148,7 +147,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default")).Value;
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Equal(12345, actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRom.Size);
Assert.Equal("deadbeef", actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.None, actualRom.Status);
}
@@ -159,9 +158,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Source source = new Source(0, source: null);
Machine machine = new Machine();
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = 12345 };
rom.SetName("item");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
var dict = new ItemDictionaryDB();
long sourceIndex = dict.AddSource(source);
@@ -171,7 +169,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default")).Value;
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Equal(12345, actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRom.Size);
Assert.Null(actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.Nodump, actualRom.Status);
}
@@ -194,7 +192,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default")).Value;
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Null(actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Null(actualRom.Size);
Assert.Equal("deadbeef", actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.None, actualRom.Status);
}
@@ -216,7 +214,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default")).Value;
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Equal(0, actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(0, actualRom.Size);
Assert.Equal(HashType.SHA1.ZeroString, actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.None, actualRom.Status);
}
@@ -298,18 +296,16 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
rom2.RemoveFlag = true;
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
// Setup the dictionary
var dict = new ItemDictionaryDB();
@@ -548,11 +544,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem datItem = new Rom();
+ DatItem datItem = new Rom() { Size = 1024 };
datItem.SetName("rom-1");
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
datItem.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
var dict = new ItemDictionaryDB();
long sourceIndex = dict.AddSource(source);
@@ -576,11 +571,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem datItem = new Rom();
+ DatItem datItem = new Rom() { Size = 1024 };
datItem.SetName("rom-1");
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
datItem.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
var dict = new ItemDictionaryDB();
long sourceIndex = dict.AddSource(source);
@@ -628,29 +622,25 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine2 = new Machine();
machine2.Name = "game-2";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
- DatItem rom3 = new Rom();
+ DatItem rom3 = new Rom() { Size = 1024 };
rom3.SetName("rom-3");
rom3.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
rom3.Write(Data.Models.Metadata.Rom.SHA1Key, "00000ea4014ce66679e7e17d56ac510f67e39e26");
- rom3.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
- DatItem rom4 = new Rom();
+ DatItem rom4 = new Rom() { Size = 1024 };
rom4.SetName("rom-4");
rom4.Write(Data.Models.Metadata.Rom.CRCKey, "DEADBEEF");
rom4.Write(Data.Models.Metadata.Rom.SHA1Key, "00000151d437442e74e5134023fab8bf694a2487");
- rom4.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
// Setup the dictionary
var dict = new ItemDictionaryDB();
@@ -679,15 +669,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
// Setup the dictionary
var dict = new ItemDictionaryDB();
@@ -918,15 +906,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
// Setup the dictionary
var dict = new ItemDictionaryDB();
@@ -936,10 +922,9 @@ namespace SabreTools.Metadata.DatFiles.Test
dict.AddItem(rom2, machineIndex, sourceIndex, statsOnly: false);
// Setup the test item
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = hasDuplicate ? 1024 : 2048 };
rom.SetName("rom-1");
rom.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, hasDuplicate ? "1024" : "2048");
var actual = dict.GetDuplicates(new KeyValuePair(-1, rom));
Assert.Equal(expected, actual.Count);
@@ -960,15 +945,13 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
// Setup the dictionary
var dict = new ItemDictionaryDB();
@@ -978,10 +961,9 @@ namespace SabreTools.Metadata.DatFiles.Test
dict.AddItem(rom2, machineIndex, sourceIndex, statsOnly: false);
// Setup the test item
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = expected ? 1024 : 2048 };
rom.SetName("rom-1");
rom.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, expected ? "1024" : "2048");
bool actual = dict.HasDuplicates(new KeyValuePair(-1, rom));
Assert.Equal(expected, actual);
@@ -999,9 +981,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "machine";
- DatItem item = new Rom();
+ DatItem item = new Rom() { Size = 12345 };
item.SetName("rom");
- item.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
item.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
var dict = new ItemDictionaryDB();
diff --git a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs
index 2a40441c..b92fd822 100644
--- a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs
@@ -135,9 +135,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Source source = new Source(0, source: null);
Machine machine = new Machine();
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = 12345 };
rom.SetName("item");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
rom.Write(Data.Models.Metadata.Rom.SHA1Key, "deadbeef");
rom.Source = source;
rom.Machine = machine;
@@ -148,7 +147,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default"));
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Equal(12345, actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRom.Size);
Assert.Equal("deadbeef", actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.None, actualRom.Status);
}
@@ -159,9 +158,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Source source = new Source(0, source: null);
Machine machine = new Machine();
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = 12345 };
rom.SetName("item");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
rom.Source = source;
rom.Machine = machine;
@@ -171,7 +169,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default"));
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Equal(12345, actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actualRom.Size);
Assert.Null(actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.Nodump, actualRom.Status);
}
@@ -194,7 +192,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default"));
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Null(actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Null(actualRom.Size);
Assert.Equal("deadbeef", actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.None, actualRom.Status);
}
@@ -216,7 +214,7 @@ namespace SabreTools.Metadata.DatFiles.Test
DatItem actual = Assert.Single(dict.GetItemsForBucket("default"));
Rom? actualRom = actual as Rom;
Assert.NotNull(actualRom);
- Assert.Equal(0, actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(0, actualRom.Size);
Assert.Equal(HashType.SHA1.ZeroString, actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
Assert.Equal(Data.Models.Metadata.ItemStatus.None, actualRom.Status);
}
@@ -266,19 +264,17 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine);
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
rom2.RemoveFlag = true;
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom2.CopyMachineInformation(machine);
// Setup the dictionary
@@ -408,11 +404,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem datItem = new Rom();
+ DatItem datItem = new Rom() { Size = 1024 };
datItem.SetName("rom-1");
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
datItem.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
datItem.CopyMachineInformation(machine);
var dict = new ItemDictionary();
@@ -434,11 +429,10 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem datItem = new Rom();
+ DatItem datItem = new Rom() { Size = 1024 };
datItem.SetName("rom-1");
datItem.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
datItem.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- datItem.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
datItem.CopyMachineInformation(machine);
var dict = new ItemDictionary();
@@ -468,32 +462,28 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine2 = new Machine();
machine2.Name = "game-2";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine1);
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine1);
- DatItem rom3 = new Rom();
+ DatItem rom3 = new Rom() { Size = 1024 };
rom3.SetName("rom-3");
rom3.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
rom3.Write(Data.Models.Metadata.Rom.SHA1Key, "00000ea4014ce66679e7e17d56ac510f67e39e26");
- rom3.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine2);
- DatItem rom4 = new Rom();
+ DatItem rom4 = new Rom() { Size = 1024 };
rom4.SetName("rom-4");
rom4.Write(Data.Models.Metadata.Rom.CRCKey, "DEAEEF");
rom4.Write(Data.Models.Metadata.Rom.SHA1Key, "00000151d437442e74e5134023fab8bf694a2487");
- rom4.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine2);
// Setup the dictionary
@@ -518,16 +508,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine);
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom2.CopyMachineInformation(machine);
// Setup the dictionary
@@ -711,16 +699,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine);
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom2.CopyMachineInformation(machine);
// Setup the dictionary
@@ -729,10 +715,9 @@ namespace SabreTools.Metadata.DatFiles.Test
dict.AddItem(rom2, statsOnly: false);
// Setup the test item
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = hasDuplicate ? 1024 : 2048 };
rom.SetName("rom-1");
rom.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, hasDuplicate ? "1024" : "2048");
rom.CopyMachineInformation(machine);
var actual = dict.GetDuplicates(rom);
@@ -752,16 +737,14 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "game-1";
- DatItem rom1 = new Rom();
+ DatItem rom1 = new Rom() { Size = 1024 };
rom1.SetName("rom-1");
rom1.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom1.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine);
- DatItem rom2 = new Rom();
+ DatItem rom2 = new Rom() { Size = 1024 };
rom2.SetName("rom-2");
rom2.Write(Data.Models.Metadata.Rom.SHA1Key, "000000e948edcb4f7704b8af85a77a3339ecce44");
- rom2.Write(Data.Models.Metadata.Rom.SizeKey, "1024");
rom1.CopyMachineInformation(machine);
// Setup the dictionary
@@ -770,10 +753,9 @@ namespace SabreTools.Metadata.DatFiles.Test
dict.AddItem("game-1", rom2);
// Setup the test item
- DatItem rom = new Rom();
+ DatItem rom = new Rom() { Size = expected ? 1024 : 2048 };
rom.SetName("rom-1");
rom.Write(Data.Models.Metadata.Rom.SHA1Key, "0000000fbbb37f8488100b1b4697012de631a5e6");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, expected ? "1024" : "2048");
rom1.CopyMachineInformation(machine);
bool actual = dict.HasDuplicates(rom);
@@ -792,9 +774,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Machine machine = new Machine();
machine.Name = "machine";
- DatItem item = new Rom();
+ DatItem item = new Rom() { Size = 12345 };
item.SetName("rom");
- item.Write(Data.Models.Metadata.Rom.SizeKey, 12345);
item.Write(Data.Models.Metadata.Rom.CRCKey, "deadbeef");
item.Source = source;
item.Machine = machine;
diff --git a/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs b/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs
index d935a962..212c1add 100644
--- a/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs
+++ b/SabreTools.Metadata.DatFiles/DatFile.FromMetadata.cs
@@ -609,7 +609,7 @@ namespace SabreTools.Metadata.DatFiles
// Convert the item
var romItem = new Rom(rom, machine, source);
- long? size = romItem.ReadLong(Data.Models.Metadata.Rom.SizeKey);
+ long? size = romItem.Size;
// If the rom is a continue or ignore
Data.Models.Metadata.LoadFlag? loadFlag = rom.LoadFlag;
@@ -618,8 +618,8 @@ namespace SabreTools.Metadata.DatFiles
|| loadFlag == Data.Models.Metadata.LoadFlag.Ignore))
{
var lastRom = addRoms[addRoms.Count - 1];
- long? lastSize = lastRom.ReadLong(Data.Models.Metadata.Rom.SizeKey);
- lastRom.Write(Data.Models.Metadata.Rom.SizeKey, lastSize + size);
+ long? lastSize = lastRom.Size;
+ lastRom.Size = lastSize + size;
continue;
}
diff --git a/SabreTools.Metadata.DatFiles/DatFile.ToMetadata.cs b/SabreTools.Metadata.DatFiles/DatFile.ToMetadata.cs
index 0e3dcd98..59a833ec 100644
--- a/SabreTools.Metadata.DatFiles/DatFile.ToMetadata.cs
+++ b/SabreTools.Metadata.DatFiles/DatFile.ToMetadata.cs
@@ -360,7 +360,7 @@ namespace SabreTools.Metadata.DatFiles
aggregateDataArea = [];
aggregateDataArea.Endianness = dataArea.Endianness;
aggregateDataArea.Name = dataArea.Name;
- aggregateDataArea[Data.Models.Metadata.DataArea.SizeKey] = dataArea.ReadString(Data.Models.Metadata.DataArea.SizeKey);
+ aggregateDataArea.Size = dataArea.Size;
aggregateDataArea[Data.Models.Metadata.DataArea.WidthKey] = dataArea.ReadString(Data.Models.Metadata.DataArea.WidthKey);
}
@@ -786,7 +786,7 @@ namespace SabreTools.Metadata.DatFiles
aggregateDataArea = [];
aggregateDataArea.Endianness = dataArea.Endianness;
aggregateDataArea.Name = dataArea.Name;
- aggregateDataArea[Data.Models.Metadata.DataArea.SizeKey] = dataArea.ReadString(Data.Models.Metadata.DataArea.SizeKey);
+ aggregateDataArea.Size = dataArea.Size;
aggregateDataArea[Data.Models.Metadata.DataArea.WidthKey] = dataArea.ReadString(Data.Models.Metadata.DataArea.WidthKey);
}
diff --git a/SabreTools.Metadata.DatFiles/DatFile.cs b/SabreTools.Metadata.DatFiles/DatFile.cs
index 6ce84666..150560c7 100644
--- a/SabreTools.Metadata.DatFiles/DatFile.cs
+++ b/SabreTools.Metadata.DatFiles/DatFile.cs
@@ -639,7 +639,7 @@ namespace SabreTools.Metadata.DatFiles
sha256 = rom.ReadString(Data.Models.Metadata.Rom.SHA256Key) ?? string.Empty;
sha384 = rom.ReadString(Data.Models.Metadata.Rom.SHA384Key) ?? string.Empty;
sha512 = rom.ReadString(Data.Models.Metadata.Rom.SHA512Key) ?? string.Empty;
- size = rom.ReadLong(Data.Models.Metadata.Rom.SizeKey).ToString() ?? string.Empty;
+ size = rom.Size.ToString() ?? string.Empty;
spamsum = rom.ReadString(Data.Models.Metadata.Rom.SpamSumKey) ?? string.Empty;
}
@@ -681,7 +681,7 @@ namespace SabreTools.Metadata.DatFiles
return item;
// If the item has a size
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is not null)
+ if (rom.Size is not null)
return rom;
// If the item CRC isn't "null"
@@ -690,7 +690,7 @@ namespace SabreTools.Metadata.DatFiles
// If the Rom has "null" characteristics, ensure all fields
rom.Name = rom.Name == "null" ? "-" : rom.Name;
- rom.Write(Data.Models.Metadata.Rom.SizeKey, "0");
+ rom.Size = 0;
rom.Write(Data.Models.Metadata.Rom.CRC16Key,
rom.ReadString(Data.Models.Metadata.Rom.CRC16Key) == "null" ? HashType.CRC16.ZeroString : null);
rom.Write(Data.Models.Metadata.Rom.CRCKey,
@@ -999,7 +999,7 @@ namespace SabreTools.Metadata.DatFiles
if (ignoreBlanks && datItem is Rom rom)
{
// If we have a 0-size or blank rom, then we ignore
- long? size = rom.ReadLong(Data.Models.Metadata.Rom.SizeKey);
+ long? size = rom.Size;
if (size == 0 || size is null)
{
string itemString = JsonConvert.SerializeObject(datItem, Formatting.None);
diff --git a/SabreTools.Metadata.DatFiles/DatStatistics.cs b/SabreTools.Metadata.DatFiles/DatStatistics.cs
index 8dcd2dab..146f6f95 100644
--- a/SabreTools.Metadata.DatFiles/DatStatistics.cs
+++ b/SabreTools.Metadata.DatFiles/DatStatistics.cs
@@ -374,7 +374,7 @@ namespace SabreTools.Metadata.DatFiles
ItemStatus? status = rom.Status;
if (status != ItemStatus.Nodump)
{
- TotalSize += rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) ?? 0;
+ TotalSize += rom.Size ?? 0;
AddHashCount(HashType.CRC16, string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC16Key)) ? 0 : 1);
AddHashCount(HashType.CRC32, string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)) ? 0 : 1);
AddHashCount(HashType.CRC64, string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC64Key)) ? 0 : 1);
@@ -503,7 +503,7 @@ namespace SabreTools.Metadata.DatFiles
ItemStatus? status = rom.Status;
if (status != ItemStatus.Nodump)
{
- TotalSize -= rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) ?? 0;
+ TotalSize -= rom.Size ?? 0;
RemoveHashCount(HashType.CRC16, string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC16Key)) ? 0 : 1);
RemoveHashCount(HashType.CRC32, string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)) ? 0 : 1);
RemoveHashCount(HashType.CRC64, string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC64Key)) ? 0 : 1);
diff --git a/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs b/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs
index c11b02e0..d1af7ab7 100644
--- a/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs
@@ -90,8 +90,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
case Rom rom:
if (string.IsNullOrEmpty(rom.Name))
missingFields.Add(nameof(Data.Models.Metadata.Rom.Name));
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC16Key))
&& string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey))
&& string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC64Key))
diff --git a/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs b/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs
index 37bda622..30af27c7 100644
--- a/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs
@@ -36,8 +36,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
switch (datItem)
{
case Rom rom:
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
// if (string.IsNullOrEmpty(rom.Date))
// missingFields.Add(Data.Models.Metadata.Rom.DateKey);
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)))
diff --git a/SabreTools.Metadata.DatFiles/Formats/Listrom.cs b/SabreTools.Metadata.DatFiles/Formats/Listrom.cs
index 8a5ef1cc..1c12704f 100644
--- a/SabreTools.Metadata.DatFiles/Formats/Listrom.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/Listrom.cs
@@ -46,8 +46,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
break;
case Rom rom:
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)))
missingFields.Add(Data.Models.Metadata.Rom.CRCKey);
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.SHA1Key)))
diff --git a/SabreTools.Metadata.DatFiles/Formats/Listxml.cs b/SabreTools.Metadata.DatFiles/Formats/Listxml.cs
index 27e985fe..711ea24c 100644
--- a/SabreTools.Metadata.DatFiles/Formats/Listxml.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/Listxml.cs
@@ -269,8 +269,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
case Rom rom:
if (string.IsNullOrEmpty(rom.Name))
missingFields.Add(nameof(Data.Models.Metadata.Rom.Name));
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey))
&& string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.SHA1Key)))
{
diff --git a/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs b/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs
index dbc731cd..aa421835 100644
--- a/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs
@@ -282,8 +282,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
case Rom rom:
if (string.IsNullOrEmpty(rom.Name))
missingFields.Add(nameof(Data.Models.Metadata.Rom.Name));
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC16Key))
&& string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey))
&& string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRC64Key))
diff --git a/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs b/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs
index 3539fbfe..dfd9668f 100644
--- a/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs
@@ -32,8 +32,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
switch (datItem)
{
case Rom rom:
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)))
missingFields.Add(Data.Models.Metadata.Rom.CRCKey);
break;
diff --git a/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs b/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs
index 2a73074b..5e53ac89 100644
--- a/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs
@@ -38,8 +38,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
case Rom rom:
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)))
missingFields.Add(Data.Models.Metadata.Rom.CRCKey);
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
break;
default:
diff --git a/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs b/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs
index 4345d918..52613e24 100644
--- a/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs
@@ -93,8 +93,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
break;
case Rom rom:
- if (rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) is null || rom.ReadLong(Data.Models.Metadata.Rom.SizeKey) < 0)
- missingFields.Add(Data.Models.Metadata.Rom.SizeKey);
+ if (rom.Size is null || rom.Size < 0)
+ missingFields.Add(nameof(Data.Models.Metadata.Rom.Size));
if (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey))
&& string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.MD5Key))
&& string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.SHA1Key))
diff --git a/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs b/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs
index a0fc9f15..3dbeea76 100644
--- a/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs
@@ -187,14 +187,14 @@ namespace SabreTools.Metadata.DatFiles.Formats
if (!rom.DataAreaSpecified)
{
missingFields.Add(nameof(Data.Models.Metadata.DataArea.Name));
- missingFields.Add(Data.Models.Metadata.DataArea.SizeKey);
+ missingFields.Add(nameof(Data.Models.Metadata.DataArea.Size));
}
else
{
if (string.IsNullOrEmpty(rom.Read(Rom.DataAreaKey)!.Name))
missingFields.Add(nameof(Data.Models.Metadata.DataArea.Name));
- if (rom.Read(Rom.DataAreaKey)!.ReadLong(Data.Models.Metadata.DataArea.SizeKey) is null)
- missingFields.Add(Data.Models.Metadata.DataArea.SizeKey);
+ if (rom.Read(Rom.DataAreaKey)!.Size is null)
+ missingFields.Add(nameof(Data.Models.Metadata.DataArea.Size));
}
break;
diff --git a/SabreTools.Metadata.DatFiles/ItemDictionary.cs b/SabreTools.Metadata.DatFiles/ItemDictionary.cs
index 3f3c30a8..acd8c9f9 100644
--- a/SabreTools.Metadata.DatFiles/ItemDictionary.cs
+++ b/SabreTools.Metadata.DatFiles/ItemDictionary.cs
@@ -136,7 +136,7 @@ namespace SabreTools.Metadata.DatFiles
}
else if (item is Rom rom)
{
- long? size = rom.ReadLong(Data.Models.Metadata.Rom.SizeKey);
+ long? size = rom.Size;
// If we have the case where there is SHA-1 and nothing else, we don't fill in any other part of the data
if (size is null && !string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.SHA1Key)))
@@ -149,7 +149,7 @@ namespace SabreTools.Metadata.DatFiles
else if ((size == 0 || size is null)
&& (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)) || rom.HasZeroHash()))
{
- rom.Write(Data.Models.Metadata.Rom.SizeKey, "0");
+ rom.Size = 0;
rom.Write(Data.Models.Metadata.Rom.CRC16Key, null); // HashType.CRC16.ZeroString
rom.Write(Data.Models.Metadata.Rom.CRCKey, HashType.CRC32.ZeroString);
rom.Write(Data.Models.Metadata.Rom.CRC64Key, null); // HashType.CRC64.ZeroString
diff --git a/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs b/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs
index f9ded0ea..f75d98e4 100644
--- a/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs
+++ b/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs
@@ -225,7 +225,7 @@ namespace SabreTools.Metadata.DatFiles
}
else if (item is Rom rom)
{
- long? size = rom.ReadLong(Data.Models.Metadata.Rom.SizeKey);
+ long? size = rom.Size;
// If we have the case where there is SHA-1 and nothing else, we don't fill in any other part of the data
if (size is null && !string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.SHA1Key)))
@@ -238,7 +238,7 @@ namespace SabreTools.Metadata.DatFiles
else if ((size == 0 || size is null)
&& (string.IsNullOrEmpty(rom.ReadString(Data.Models.Metadata.Rom.CRCKey)) || rom.HasZeroHash()))
{
- rom.Write(Data.Models.Metadata.Rom.SizeKey, "0");
+ rom.Size = 0;
rom.Write(Data.Models.Metadata.Rom.CRC16Key, null); // HashType.CRC16.ZeroString
rom.Write(Data.Models.Metadata.Rom.CRCKey, HashType.CRC32.ZeroString);
rom.Write(Data.Models.Metadata.Rom.CRC64Key, null); // HashType.CRC64.ZeroString
diff --git a/SabreTools.Metadata.DatItems.Test/Formats/FileTests.cs b/SabreTools.Metadata.DatItems.Test/Formats/FileTests.cs
index 48a8eb8c..b5fb4214 100644
--- a/SabreTools.Metadata.DatItems.Test/Formats/FileTests.cs
+++ b/SabreTools.Metadata.DatItems.Test/Formats/FileTests.cs
@@ -36,7 +36,7 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
Rom actual = file.ConvertToRom();
Assert.Equal("XXXXXX.XXXXXX", actual.GetName());
- Assert.Equal(12345, actual.ReadLong(Data.Models.Metadata.Rom.SizeKey));
+ Assert.Equal(12345, actual.Size);
Assert.Equal("deadbeef", actual.ReadString(Data.Models.Metadata.Rom.CRCKey));
Assert.Equal("000000000000000000000000deadbeef", actual.ReadString(Data.Models.Metadata.Rom.MD5Key));
Assert.Equal("00000000000000000000000000000000deadbeef", actual.ReadString(Data.Models.Metadata.Rom.SHA1Key));
diff --git a/SabreTools.Metadata.DatItems/Formats/DataArea.cs b/SabreTools.Metadata.DatItems/Formats/DataArea.cs
index 7c184987..5bbb67ee 100644
--- a/SabreTools.Metadata.DatItems/Formats/DataArea.cs
+++ b/SabreTools.Metadata.DatItems/Formats/DataArea.cs
@@ -29,6 +29,12 @@ namespace SabreTools.Metadata.DatItems.Formats
set => (_internal as Data.Models.Metadata.DataArea)?.Name = value;
}
+ public long? Size
+ {
+ get => (_internal as Data.Models.Metadata.DataArea)?.Size;
+ set => (_internal as Data.Models.Metadata.DataArea)?.Size = value;
+ }
+
#endregion
#region Constructors
@@ -38,10 +44,6 @@ namespace SabreTools.Metadata.DatItems.Formats
public DataArea(Data.Models.Metadata.DataArea item) : base(item)
{
// Process flag values
- long? size = ReadLong(Data.Models.Metadata.DataArea.SizeKey);
- if (size is not null)
- Write(Data.Models.Metadata.DataArea.SizeKey, size.ToString());
-
long? width = ReadLong(Data.Models.Metadata.DataArea.WidthKey);
if (width is not null)
Write(Data.Models.Metadata.DataArea.WidthKey, width.ToString());
diff --git a/SabreTools.Metadata.DatItems/Formats/File.cs b/SabreTools.Metadata.DatItems/Formats/File.cs
index aba4ee09..65929857 100644
--- a/SabreTools.Metadata.DatItems/Formats/File.cs
+++ b/SabreTools.Metadata.DatItems/Formats/File.cs
@@ -137,7 +137,7 @@ namespace SabreTools.Metadata.DatItems.Formats
var rom = new Rom();
rom.SetName($"{Id}.{Extension}");
- rom.Write(Data.Models.Metadata.Rom.SizeKey, Size);
+ rom.Size = Size;
rom.Write(Data.Models.Metadata.Rom.CRCKey, CRC);
rom.Write(Data.Models.Metadata.Rom.MD5Key, MD5);
rom.Write(Data.Models.Metadata.Rom.SHA1Key, SHA1);
diff --git a/SabreTools.Metadata.DatItems/Formats/Rom.cs b/SabreTools.Metadata.DatItems/Formats/Rom.cs
index 5581774c..6a412e9f 100644
--- a/SabreTools.Metadata.DatItems/Formats/Rom.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Rom.cs
@@ -36,7 +36,7 @@ namespace SabreTools.Metadata.DatItems.Formats
var dataArea = Read(DataAreaKey);
return dataArea is not null
&& (!string.IsNullOrEmpty(dataArea.Name)
- || dataArea.ReadLong(Data.Models.Metadata.DataArea.SizeKey) is not null
+ || dataArea.Size is not null
|| dataArea.ReadLong(Data.Models.Metadata.DataArea.WidthKey) is not null
|| dataArea.Endianness is not null);
}
@@ -115,6 +115,12 @@ namespace SabreTools.Metadata.DatItems.Formats
}
}
+ public long? Size
+ {
+ get => (_internal as Data.Models.Metadata.Rom)?.Size;
+ set => (_internal as Data.Models.Metadata.Rom)?.Size = value;
+ }
+
public bool? SoundOnly
{
get => (_internal as Data.Models.Metadata.Rom)?.SoundOnly;
@@ -193,10 +199,6 @@ namespace SabreTools.Metadata.DatItems.Formats
CopyMachineInformation(machine);
// Process hash values
- long? size = ReadLong(Data.Models.Metadata.Rom.SizeKey);
- if (size is not null)
- Write(Data.Models.Metadata.Rom.SizeKey, size.ToString());
-
// TODO: This should be normalized to CRC-16
string? crc16 = ReadString(Data.Models.Metadata.Rom.CRC16Key);
if (crc16 is not null)
@@ -253,10 +255,6 @@ namespace SabreTools.Metadata.DatItems.Formats
DupeType = 0x00;
// Process hash values
- long? size = ReadLong(Data.Models.Metadata.Rom.SizeKey);
- if (size is not null)
- Write(Data.Models.Metadata.Rom.SizeKey, size.ToString());
-
// TODO: This should be normalized to CRC-16
string? crc16 = ReadString(Data.Models.Metadata.Rom.CRC16Key);
if (crc16 is not null)
diff --git a/SabreTools.Metadata.Filter/FilterObject.cs b/SabreTools.Metadata.Filter/FilterObject.cs
index aa13aa9a..7e6f844d 100644
--- a/SabreTools.Metadata.Filter/FilterObject.cs
+++ b/SabreTools.Metadata.Filter/FilterObject.cs
@@ -418,6 +418,9 @@ namespace SabreTools.Metadata.Filter
case DataArea item when fieldName == "endianness":
checkValue = item.Endianness?.AsStringValue();
return true;
+ case DataArea item when fieldName == "size":
+ checkValue = item.Size?.ToString();
+ return true;
case Device item when fieldName == "type":
checkValue = item.DeviceType?.AsStringValue();
@@ -701,6 +704,9 @@ namespace SabreTools.Metadata.Filter
case Rom item when fieldName == "optional":
checkValue = item.Optional.FromYesNo();
return true;
+ case Rom item when fieldName == "size":
+ checkValue = item.Size?.ToString();
+ return true;
case Rom item when fieldName == "soundonly":
checkValue = item.SoundOnly.FromYesNo();
return true;
diff --git a/SabreTools.Metadata.Filter/FilterRunner.cs b/SabreTools.Metadata.Filter/FilterRunner.cs
index 5c373e94..ddbe82ee 100644
--- a/SabreTools.Metadata.Filter/FilterRunner.cs
+++ b/SabreTools.Metadata.Filter/FilterRunner.cs
@@ -84,13 +84,11 @@ namespace SabreTools.Metadata.Filter
GroupType groupType = GroupType.OR;
// Special case for size
- if (filter.Key.ItemName == "item" && filter.Key.FieldName == DataArea.SizeKey)
+ if (filter.Key.ItemName == "item" && filter.Key.FieldName == "size")
groupType = GroupType.AND;
- else if (filter.Key.ItemName == "item" && filter.Key.FieldName == Rom.SizeKey)
+ else if (filter.Key.ItemName == "dataarea" && filter.Key.FieldName == "size")
groupType = GroupType.AND;
- if (filter.Key.ItemName == "dataarea" && filter.Key.FieldName == DataArea.SizeKey)
- groupType = GroupType.AND;
- else if (filter.Key.ItemName == "rom" && filter.Key.FieldName == Rom.SizeKey)
+ else if (filter.Key.ItemName == "rom" && filter.Key.FieldName == "size")
groupType = GroupType.AND;
// Ensure the key exists
diff --git a/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs b/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs
index 399726ba..fcc21628 100644
--- a/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs
+++ b/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs
@@ -270,7 +270,7 @@ namespace SabreTools.Metadata.Test
{
Status = ItemStatus.Nodump,
Name = "name",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -289,7 +289,7 @@ namespace SabreTools.Metadata.Test
{
Status = ItemStatus.Nodump,
Name = "name",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -315,7 +315,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "name",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = "XXXXXX",
@@ -333,7 +333,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "name",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = string.Empty,
@@ -376,7 +376,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -402,7 +402,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -445,7 +445,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -463,7 +463,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -489,7 +489,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = string.Empty,
@@ -507,7 +507,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -533,7 +533,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = "XXXXXX",
@@ -551,7 +551,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -577,7 +577,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -595,7 +595,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -621,7 +621,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -639,7 +639,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -665,7 +665,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -683,7 +683,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -709,7 +709,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -727,7 +727,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -753,7 +753,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -771,7 +771,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -797,7 +797,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -815,7 +815,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -841,7 +841,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -859,7 +859,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -885,7 +885,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -903,7 +903,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -929,7 +929,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -947,7 +947,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -973,7 +973,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = string.Empty,
[Rom.CRCKey] = string.Empty,
[Rom.CRC64Key] = string.Empty,
@@ -991,7 +991,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -1017,7 +1017,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Rom
{
Name = "XXXXXX1",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
@@ -1035,7 +1035,7 @@ namespace SabreTools.Metadata.Test
DictionaryBase other = new Rom
{
Name = "XXXXXX2",
- [Rom.SizeKey] = 12345,
+ Size = 12345,
[Rom.CRC16Key] = "XXXXXX",
[Rom.CRCKey] = "XXXXXX",
[Rom.CRC64Key] = "XXXXXX",
diff --git a/SabreTools.Metadata/DictionaryBaseExtensions.cs b/SabreTools.Metadata/DictionaryBaseExtensions.cs
index 5af2c364..21649bff 100644
--- a/SabreTools.Metadata/DictionaryBaseExtensions.cs
+++ b/SabreTools.Metadata/DictionaryBaseExtensions.cs
@@ -498,8 +498,8 @@ namespace SabreTools.Metadata
string? selfName = self.Name;
string? otherName = other.Name;
- long? selfSize = self.ReadLong(Rom.SizeKey);
- long? otherSize = other.ReadLong(Rom.SizeKey);
+ long? selfSize = self.Size;
+ long? otherSize = other.Size;
// If all hashes are empty but they're both nodump and the names match, then they're dupes
if (selfStatus == ItemStatus.Nodump
diff --git a/SabreTools.Serialization.CrossModel.Test/ArchiveDotOrgTests.cs b/SabreTools.Serialization.CrossModel.Test/ArchiveDotOrgTests.cs
index 4b829eb1..863930c9 100644
--- a/SabreTools.Serialization.CrossModel.Test/ArchiveDotOrgTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/ArchiveDotOrgTests.cs
@@ -38,7 +38,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Source = "XXXXXX",
BitTorrentMagnetHash = "XXXXXX",
LastModifiedTime = "XXXXXX",
- Size = "XXXXXX",
+ Size = "12345",
MD5 = "XXXXXX",
CRC32 = "XXXXXX",
SHA1 = "XXXXXX",
@@ -112,7 +112,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", file.Source);
Assert.Equal("XXXXXX", file.BitTorrentMagnetHash);
Assert.Equal("XXXXXX", file.LastModifiedTime);
- Assert.Equal("XXXXXX", file.Size);
+ Assert.Equal("12345", file.Size);
Assert.Equal("XXXXXX", file.MD5);
Assert.Equal("XXXXXX", file.CRC32);
Assert.Equal("XXXXXX", file.SHA1);
diff --git a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
index 14ff0570..5077fd63 100644
--- a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
@@ -97,7 +97,7 @@ namespace SabreTools.Serialization.CrossModel.Test
var rom = new Data.Models.ClrMamePro.Rom
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
CRC16 = "XXXXXX",
CRC = "XXXXXX",
CRC64 = "XXXXXX",
@@ -360,7 +360,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC16);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.CRC64);
diff --git a/SabreTools.Serialization.CrossModel.Test/DosCenterTests.cs b/SabreTools.Serialization.CrossModel.Test/DosCenterTests.cs
index 1299669c..e51dbebb 100644
--- a/SabreTools.Serialization.CrossModel.Test/DosCenterTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/DosCenterTests.cs
@@ -47,7 +47,7 @@ namespace SabreTools.Serialization.CrossModel.Test
var file = new Data.Models.DosCenter.File
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Date = "XXXXXX",
@@ -101,7 +101,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX", rom.Date);
diff --git a/SabreTools.Serialization.CrossModel.Test/EverdriveSMDBTests.cs b/SabreTools.Serialization.CrossModel.Test/EverdriveSMDBTests.cs
index 2d19837c..b3e7ca0c 100644
--- a/SabreTools.Serialization.CrossModel.Test/EverdriveSMDBTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/EverdriveSMDBTests.cs
@@ -39,7 +39,7 @@ namespace SabreTools.Serialization.CrossModel.Test
SHA1 = "XXXXXX",
MD5 = "XXXXXX",
CRC32 = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
};
return new Data.Models.EverdriveSMDB.MetadataFile
@@ -59,7 +59,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", row.SHA1);
Assert.Equal("XXXXXX", row.MD5);
Assert.Equal("XXXXXX", row.CRC32);
- Assert.Equal("XXXXXX", row.Size);
+ Assert.Equal(12345L, row.Size);
}
}
}
diff --git a/SabreTools.Serialization.CrossModel.Test/ListromTests.cs b/SabreTools.Serialization.CrossModel.Test/ListromTests.cs
index dc7e6b8a..16fba80d 100644
--- a/SabreTools.Serialization.CrossModel.Test/ListromTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/ListromTests.cs
@@ -37,7 +37,7 @@ namespace SabreTools.Serialization.CrossModel.Test
var rom = new Data.Models.Listrom.Row
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
Bad = true,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
@@ -104,7 +104,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(row);
Assert.Equal("name", row.Name);
- Assert.Equal("XXXXXX", row.Size);
+ Assert.Equal(12345L, row.Size);
Assert.True(row.Bad);
Assert.Equal("XXXXXX", row.CRC);
Assert.Equal("XXXXXX", row.SHA1);
diff --git a/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs b/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs
index f8d265c8..fbc8d6c6 100644
--- a/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs
@@ -74,7 +74,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "name",
Bios = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Merge = "XXXXXX",
@@ -486,7 +486,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
Assert.Equal("XXXXXX", rom.Bios);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX", rom.Merge);
diff --git a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
index b72c9725..b06c0000 100644
--- a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
@@ -148,7 +148,7 @@ namespace SabreTools.Serialization.CrossModel.Test
var rom = new Data.Models.Logiqx.Rom
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
CRC16 = "XXXXXX",
CRC = "XXXXXX",
CRC64 = "XXXXXX",
@@ -464,7 +464,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC16);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.CRC64);
diff --git a/SabreTools.Serialization.CrossModel.Test/M1Tests.cs b/SabreTools.Serialization.CrossModel.Test/M1Tests.cs
index d3b3bbda..57eb1005 100644
--- a/SabreTools.Serialization.CrossModel.Test/M1Tests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/M1Tests.cs
@@ -70,7 +70,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "name",
Bios = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Merge = "XXXXXX",
@@ -480,7 +480,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
Assert.Equal("XXXXXX", rom.Bios);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX", rom.Merge);
diff --git a/SabreTools.Serialization.CrossModel.Test/MessTests.cs b/SabreTools.Serialization.CrossModel.Test/MessTests.cs
index d8107b27..d1fedb5e 100644
--- a/SabreTools.Serialization.CrossModel.Test/MessTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/MessTests.cs
@@ -70,7 +70,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Name = "name",
Bios = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Merge = "XXXXXX",
@@ -480,7 +480,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
Assert.Equal("XXXXXX", rom.Bios);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX", rom.Merge);
diff --git a/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs b/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs
index b2d42112..24d7909f 100644
--- a/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs
@@ -191,7 +191,7 @@ namespace SabreTools.Serialization.CrossModel.Test
ReleaseNumber = "XXXXXX",
Title = "XXXXXX",
SaveType = "XXXXXX",
- RomSize = "XXXXXX",
+ RomSize = 12345L,
Publisher = "XXXXXX",
Location = "XXXXXX",
SourceRom = "XXXXXX",
@@ -379,7 +379,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", game.ReleaseNumber);
Assert.Equal("XXXXXX", game.Title);
Assert.Equal("XXXXXX", game.SaveType);
- Assert.Equal("0", game.RomSize); // Converted due to filtering
+ Assert.Equal(12345L, game.RomSize);
Assert.Equal("XXXXXX", game.Publisher);
Assert.Equal("XXXXXX", game.Location);
Assert.Equal("XXXXXX", game.SourceRom);
diff --git a/SabreTools.Serialization.CrossModel.Test/RomCenterTests.cs b/SabreTools.Serialization.CrossModel.Test/RomCenterTests.cs
index 86bfa6c5..96d18db9 100644
--- a/SabreTools.Serialization.CrossModel.Test/RomCenterTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/RomCenterTests.cs
@@ -66,7 +66,7 @@ namespace SabreTools.Serialization.CrossModel.Test
GameDescription = "description",
RomName = "XXXXXX",
RomCRC = "XXXXXX",
- RomSize = "XXXXXX",
+ RomSize = 12345L,
RomOf = "XXXXXX",
MergeName = "XXXXXX",
};
@@ -145,7 +145,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("description", rom.GameDescription);
Assert.Equal("XXXXXX", rom.RomName);
Assert.Equal("XXXXXX", rom.RomCRC);
- Assert.Equal("XXXXXX", rom.RomSize);
+ Assert.Equal(12345L, rom.RomSize);
Assert.Equal("XXXXXX", rom.RomOf);
Assert.Equal("XXXXXX", rom.MergeName);
}
diff --git a/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs b/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs
index c64a9ca1..83448455 100644
--- a/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs
@@ -76,7 +76,7 @@ namespace SabreTools.Serialization.CrossModel.Test
GameDescription = "description",
Type = "rom",
RomName = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
MD5 = "XXXXXX",
SHA1 = "XXXXXX",
@@ -168,7 +168,7 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("rom", row.Type);
Assert.Equal("XXXXXX", row.RomName);
Assert.Null(row.DiskName);
- Assert.Equal("XXXXXX", row.Size);
+ Assert.Equal(12345L, row.Size);
Assert.Equal("XXXXXX", row.CRC);
Assert.Equal("XXXXXX", row.MD5);
Assert.Equal("XXXXXX", row.SHA1);
diff --git a/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs b/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs
index 0106999e..9a13de11 100644
--- a/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs
@@ -57,7 +57,7 @@ namespace SabreTools.Serialization.CrossModel.Test
var rom = new Data.Models.SoftwareList.Rom
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
Length = "XXXXXX",
CRC = "XXXXXX",
SHA1 = "XXXXXX",
@@ -70,7 +70,7 @@ namespace SabreTools.Serialization.CrossModel.Test
var dataarea = new Data.Models.SoftwareList.DataArea
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
Width = "XXXXXX",
Endianness = Data.Models.Metadata.Endianness.Big,
Rom = [rom],
@@ -229,7 +229,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(dataarea);
Assert.Equal("name", dataarea.Name);
- Assert.Equal("XXXXXX", dataarea.Size);
+ Assert.Equal(12345L, dataarea.Size);
Assert.Equal("XXXXXX", dataarea.Width);
Assert.Equal(Data.Models.Metadata.Endianness.Big, dataarea.Endianness);
@@ -245,7 +245,7 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.Length);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
diff --git a/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Deserializer.cs b/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Deserializer.cs
index f194e1f0..fbf426f2 100644
--- a/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Deserializer.cs
@@ -48,7 +48,7 @@ namespace SabreTools.Serialization.CrossModel
Source = item.ReadString(Data.Models.Metadata.Rom.SourceKey),
BitTorrentMagnetHash = item.ReadString(Data.Models.Metadata.Rom.BitTorrentMagnetHashKey),
LastModifiedTime = item.ReadString(Data.Models.Metadata.Rom.LastModifiedTimeKey),
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size?.ToString(),
MD5 = item.ReadString(Data.Models.Metadata.Rom.MD5Key),
CRC32 = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
diff --git a/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Serializer.cs b/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Serializer.cs
index 21fdf3f4..7b76d5c0 100644
--- a/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/ArchiveDotOrg.Serializer.cs
@@ -1,5 +1,6 @@
using System;
using SabreTools.Data.Models.ArchiveDotOrg;
+using SabreTools.Text.Extensions;
namespace SabreTools.Serialization.CrossModel
{
@@ -65,7 +66,7 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Rom.SourceKey] = item.Source,
[Data.Models.Metadata.Rom.BitTorrentMagnetHashKey] = item.BitTorrentMagnetHash,
[Data.Models.Metadata.Rom.LastModifiedTimeKey] = item.LastModifiedTime,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = NumberHelper.ConvertToInt64(item.Size),
[Data.Models.Metadata.Rom.MD5Key] = item.MD5,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC32,
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
index abc250fb..a18265e7 100644
--- a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
@@ -279,7 +279,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Rom
{
Name = item.Name,
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
CRC16 = item.ReadString(Data.Models.Metadata.Rom.CRC16Key),
CRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
CRC64 = item.ReadString(Data.Models.Metadata.Rom.CRC64Key),
diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
index 99b281ce..f333c50f 100644
--- a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
@@ -292,7 +292,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Data.Models.Metadata.Rom
{
Name = item.Name,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.Rom.CRC16Key] = item.CRC16,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC,
[Data.Models.Metadata.Rom.CRC64Key] = item.CRC64,
diff --git a/SabreTools.Serialization.CrossModel/DosCenter.Deserializer.cs b/SabreTools.Serialization.CrossModel/DosCenter.Deserializer.cs
index 2192f6bf..abe0dcfc 100644
--- a/SabreTools.Serialization.CrossModel/DosCenter.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/DosCenter.Deserializer.cs
@@ -67,7 +67,7 @@ namespace SabreTools.Serialization.CrossModel
var file = new File
{
Name = item.Name,
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
CRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
Date = item.ReadString(Data.Models.Metadata.Rom.DateKey),
diff --git a/SabreTools.Serialization.CrossModel/DosCenter.Serializer.cs b/SabreTools.Serialization.CrossModel/DosCenter.Serializer.cs
index 2fa7c5d2..b4d2faee 100644
--- a/SabreTools.Serialization.CrossModel/DosCenter.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/DosCenter.Serializer.cs
@@ -70,7 +70,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Data.Models.Metadata.Rom
{
Name = item.Name,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC,
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
[Data.Models.Metadata.Rom.DateKey] = item.Date,
diff --git a/SabreTools.Serialization.CrossModel/EverdriveSMDB.Deserializer.cs b/SabreTools.Serialization.CrossModel/EverdriveSMDB.Deserializer.cs
index bbb8bf43..c0bc3ce2 100644
--- a/SabreTools.Serialization.CrossModel/EverdriveSMDB.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/EverdriveSMDB.Deserializer.cs
@@ -50,7 +50,7 @@ namespace SabreTools.Serialization.CrossModel
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
MD5 = item.ReadString(Data.Models.Metadata.Rom.MD5Key),
CRC32 = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
};
return row;
}
diff --git a/SabreTools.Serialization.CrossModel/EverdriveSMDB.Serializer.cs b/SabreTools.Serialization.CrossModel/EverdriveSMDB.Serializer.cs
index 89b6f060..66b6f9f6 100644
--- a/SabreTools.Serialization.CrossModel/EverdriveSMDB.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/EverdriveSMDB.Serializer.cs
@@ -61,7 +61,7 @@ namespace SabreTools.Serialization.CrossModel
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
[Data.Models.Metadata.Rom.MD5Key] = item.MD5,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC32,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
};
return rom;
}
diff --git a/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs b/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs
index 5e7d0428..e37f8aa3 100644
--- a/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listrom.Deserializer.cs
@@ -76,7 +76,7 @@ namespace SabreTools.Serialization.CrossModel
var row = new Row
{
Name = item.Name,
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
CRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
};
diff --git a/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs b/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs
index d696ad0a..94c44e35 100644
--- a/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listrom.Serializer.cs
@@ -100,7 +100,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Data.Models.Metadata.Rom
{
Name = item.Name,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC,
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
};
diff --git a/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs b/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs
index 15058bcd..40e0bc67 100644
--- a/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs
@@ -567,7 +567,7 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
Bios = item.ReadString(Data.Models.Metadata.Rom.BiosKey),
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
CRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
Merge = item.ReadString(Data.Models.Metadata.Rom.MergeKey),
diff --git a/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs b/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs
index c4687ff2..2d05c97e 100644
--- a/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs
@@ -606,7 +606,7 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.Name,
[Data.Models.Metadata.Rom.BiosKey] = item.Bios,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC,
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
[Data.Models.Metadata.Rom.MergeKey] = item.Merge,
diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
index 6c2ed3d7..aeeca2bc 100644
--- a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
@@ -301,7 +301,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Rom
{
Name = item.Name,
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
CRC16 = item.ReadString(Data.Models.Metadata.Rom.CRC16Key),
CRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
CRC64 = item.ReadString(Data.Models.Metadata.Rom.CRC64Key),
diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
index ef4a60ae..7ef34233 100644
--- a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
@@ -295,7 +295,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Data.Models.Metadata.Rom
{
Name = item.Name,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.Rom.CRC16Key] = item.CRC16,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC,
[Data.Models.Metadata.Rom.CRC64Key] = item.CRC64,
diff --git a/SabreTools.Serialization.CrossModel/OfflineList.Deserializer.cs b/SabreTools.Serialization.CrossModel/OfflineList.Deserializer.cs
index 554073a1..dec6856c 100644
--- a/SabreTools.Serialization.CrossModel/OfflineList.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/OfflineList.Deserializer.cs
@@ -99,8 +99,8 @@ namespace SabreTools.Serialization.CrossModel
var roms = item.Read(Data.Models.Metadata.Machine.RomKey);
if (roms is not null && roms.Length > 0)
{
- var romSizes = Array.ConvertAll(roms, r => r.ReadLong(Data.Models.Metadata.Rom.SizeKey) ?? -1);
- game.RomSize = Array.Find(romSizes, s => s > -1).ToString();
+ var romSizes = Array.ConvertAll(roms, r => r.Size ?? -1);
+ game.RomSize = Array.Find(romSizes, s => s > -1);
var romCRCs = Array.ConvertAll(roms, ConvertFromInternalModel);
game.Files = new Files { RomCRC = romCRCs };
diff --git a/SabreTools.Serialization.CrossModel/OfflineList.Serializer.cs b/SabreTools.Serialization.CrossModel/OfflineList.Serializer.cs
index 70436b2f..5a77b9d9 100644
--- a/SabreTools.Serialization.CrossModel/OfflineList.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/OfflineList.Serializer.cs
@@ -85,7 +85,7 @@ namespace SabreTools.Serialization.CrossModel
= Array.ConvertAll(item.Files.RomCRC, romCRC =>
{
var rom = ConvertToInternalModel(romCRC);
- rom[Data.Models.Metadata.Rom.SizeKey] = item.RomSize;
+ rom.Size = item.RomSize;
return rom;
});
}
diff --git a/SabreTools.Serialization.CrossModel/RomCenter.Deserializer.cs b/SabreTools.Serialization.CrossModel/RomCenter.Deserializer.cs
index b5ffef2d..5160815e 100644
--- a/SabreTools.Serialization.CrossModel/RomCenter.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/RomCenter.Deserializer.cs
@@ -104,7 +104,7 @@ namespace SabreTools.Serialization.CrossModel
GameDescription = parent.Description,
RomName = item.Name,
RomCRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
- RomSize = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ RomSize = item.Size,
RomOf = parent.ReadString(Data.Models.Metadata.Machine.RomOfKey),
MergeName = item.ReadString(Data.Models.Metadata.Rom.MergeKey),
};
diff --git a/SabreTools.Serialization.CrossModel/RomCenter.Serializer.cs b/SabreTools.Serialization.CrossModel/RomCenter.Serializer.cs
index d6eff885..029adf4d 100644
--- a/SabreTools.Serialization.CrossModel/RomCenter.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/RomCenter.Serializer.cs
@@ -90,7 +90,7 @@ namespace SabreTools.Serialization.CrossModel
{
Name = item.RomName,
[Data.Models.Metadata.Rom.CRCKey] = item.RomCRC,
- [Data.Models.Metadata.Rom.SizeKey] = item.RomSize,
+ Size = item.RomSize,
[Data.Models.Metadata.Rom.MergeKey] = item.MergeName,
};
return rom;
diff --git a/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs b/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs
index 5f6c3d09..2d9c5377 100644
--- a/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs
@@ -139,7 +139,7 @@ namespace SabreTools.Serialization.CrossModel
Type = "rom",
RomName = item.Name,
DiskName = null,
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
CRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
MD5 = item.ReadString(Data.Models.Metadata.Rom.MD5Key),
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
diff --git a/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs b/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs
index 6a9382e2..a3fb9f8e 100644
--- a/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs
@@ -105,7 +105,7 @@ namespace SabreTools.Serialization.CrossModel
"rom" => new Data.Models.Metadata.Rom
{
Name = item.RomName,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC,
[Data.Models.Metadata.Rom.MD5Key] = item.MD5,
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
diff --git a/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs b/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs
index 5d388721..72d4ac87 100644
--- a/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs
@@ -74,7 +74,7 @@ namespace SabreTools.Serialization.CrossModel
var dataArea = new DataArea
{
Name = item.Name,
- Size = item.ReadString(Data.Models.Metadata.DataArea.SizeKey),
+ Size = item.Size,
Width = item.ReadString(Data.Models.Metadata.DataArea.WidthKey),
Endianness = item.Endianness,
};
@@ -216,7 +216,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Rom
{
Name = item.Name,
- Size = item.ReadString(Data.Models.Metadata.Rom.SizeKey),
+ Size = item.Size,
Length = item.ReadString(Data.Models.Metadata.Rom.LengthKey),
CRC = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
diff --git a/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs b/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs
index 64403020..155b9125 100644
--- a/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs
@@ -32,7 +32,7 @@ namespace SabreTools.Serialization.CrossModel
{
var header = new Data.Models.Metadata.Header
{
- Name = item.Name,
+ Name = item.Name,
Description = item.Description,
Notes = item.Notes,
};
@@ -75,7 +75,7 @@ namespace SabreTools.Serialization.CrossModel
var dataArea = new Data.Models.Metadata.DataArea
{
Name = item.Name,
- [Data.Models.Metadata.DataArea.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.DataArea.WidthKey] = item.Width,
Endianness = item.Endianness,
};
@@ -210,7 +210,7 @@ namespace SabreTools.Serialization.CrossModel
var rom = new Data.Models.Metadata.Rom
{
Name = item.Name,
- [Data.Models.Metadata.Rom.SizeKey] = item.Size,
+ Size = item.Size,
[Data.Models.Metadata.Rom.LengthKey] = item.Length,
[Data.Models.Metadata.Rom.CRCKey] = item.CRC,
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
diff --git a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
index afe24853..d39a222c 100644
--- a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
+++ b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
@@ -214,7 +214,7 @@ namespace SabreTools.Serialization.Readers.Test
var rom = new Data.Models.ClrMamePro.Rom
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
CRC16 = "XXXXXX",
CRC = "XXXXXX",
CRC64 = "XXXXXX",
@@ -477,7 +477,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC16);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.CRC64);
diff --git a/SabreTools.Serialization.Readers.Test/DosCenterTests.cs b/SabreTools.Serialization.Readers.Test/DosCenterTests.cs
index 0332eee7..40e43160 100644
--- a/SabreTools.Serialization.Readers.Test/DosCenterTests.cs
+++ b/SabreTools.Serialization.Readers.Test/DosCenterTests.cs
@@ -113,7 +113,7 @@ namespace SabreTools.Serialization.Readers.Test
var file = new Data.Models.DosCenter.File
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Date = "XXXXXX XXXXXX",
@@ -167,7 +167,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX XXXXXX", rom.Date);
diff --git a/SabreTools.Serialization.Readers.Test/EverdriveSMDBTests.cs b/SabreTools.Serialization.Readers.Test/EverdriveSMDBTests.cs
index 63b2c334..d109d09b 100644
--- a/SabreTools.Serialization.Readers.Test/EverdriveSMDBTests.cs
+++ b/SabreTools.Serialization.Readers.Test/EverdriveSMDBTests.cs
@@ -105,7 +105,7 @@ namespace SabreTools.Serialization.Readers.Test
SHA1 = "XXXXXX",
MD5 = "XXXXXX",
CRC32 = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
};
return new Data.Models.EverdriveSMDB.MetadataFile
@@ -125,7 +125,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", row.SHA1);
Assert.Equal("XXXXXX", row.MD5);
Assert.Equal("XXXXXX", row.CRC32);
- Assert.Equal("XXXXXX", row.Size);
+ Assert.Equal(12345L, row.Size);
}
}
}
diff --git a/SabreTools.Serialization.Readers.Test/ListromTests.cs b/SabreTools.Serialization.Readers.Test/ListromTests.cs
index 6e5b9991..aefdefcc 100644
--- a/SabreTools.Serialization.Readers.Test/ListromTests.cs
+++ b/SabreTools.Serialization.Readers.Test/ListromTests.cs
@@ -103,7 +103,7 @@ namespace SabreTools.Serialization.Readers.Test
var romGood = new Data.Models.Listrom.Row
{
Name = "name",
- Size = "12345",
+ Size = 12345L,
Bad = false,
CRC = Hashing.HashType.CRC32.ZeroString,
SHA1 = Hashing.HashType.SHA1.ZeroString,
@@ -113,7 +113,7 @@ namespace SabreTools.Serialization.Readers.Test
var romBad = new Data.Models.Listrom.Row
{
Name = "name",
- Size = "12345",
+ Size = 12345L,
Bad = true,
CRC = Hashing.HashType.CRC32.ZeroString,
SHA1 = Hashing.HashType.SHA1.ZeroString,
@@ -203,7 +203,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(row);
Assert.Equal("name", row.Name);
- Assert.Equal("12345", row.Size);
+ Assert.Equal(12345L, row.Size);
Assert.False(row.Bad);
Assert.Equal(Hashing.HashType.CRC32.ZeroString, row.CRC);
Assert.Equal(Hashing.HashType.SHA1.ZeroString, row.SHA1);
@@ -217,7 +217,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(row);
Assert.Equal("name", row.Name);
- Assert.Equal("12345", row.Size);
+ Assert.Equal(12345L, row.Size);
Assert.True(row.Bad);
Assert.Equal(Hashing.HashType.CRC32.ZeroString, row.CRC);
Assert.Equal(Hashing.HashType.SHA1.ZeroString, row.SHA1);
diff --git a/SabreTools.Serialization.Readers.Test/ListxmlTests.cs b/SabreTools.Serialization.Readers.Test/ListxmlTests.cs
index de443527..a540749f 100644
--- a/SabreTools.Serialization.Readers.Test/ListxmlTests.cs
+++ b/SabreTools.Serialization.Readers.Test/ListxmlTests.cs
@@ -141,7 +141,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "name",
Bios = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Merge = "XXXXXX",
@@ -553,7 +553,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
Assert.Equal("XXXXXX", rom.Bios);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX", rom.Merge);
diff --git a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
index 88e48ebb..415951e5 100644
--- a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
+++ b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
@@ -213,7 +213,7 @@ namespace SabreTools.Serialization.Readers.Test
var rom = new Data.Models.Logiqx.Rom
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
CRC16 = "XXXXXX",
CRC = "XXXXXX",
CRC64 = "XXXXXX",
@@ -514,7 +514,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.MD2);
Assert.Equal("XXXXXX", rom.MD4);
diff --git a/SabreTools.Serialization.Readers.Test/M1Tests.cs b/SabreTools.Serialization.Readers.Test/M1Tests.cs
index 64c85fea..b4bc6e9c 100644
--- a/SabreTools.Serialization.Readers.Test/M1Tests.cs
+++ b/SabreTools.Serialization.Readers.Test/M1Tests.cs
@@ -137,7 +137,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "name",
Bios = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Merge = "XXXXXX",
@@ -547,7 +547,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
Assert.Equal("XXXXXX", rom.Bios);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX", rom.Merge);
diff --git a/SabreTools.Serialization.Readers.Test/MessTests.cs b/SabreTools.Serialization.Readers.Test/MessTests.cs
index 5570a6b8..1d3f4744 100644
--- a/SabreTools.Serialization.Readers.Test/MessTests.cs
+++ b/SabreTools.Serialization.Readers.Test/MessTests.cs
@@ -137,7 +137,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Name = "name",
Bios = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
SHA1 = "XXXXXX",
Merge = "XXXXXX",
@@ -547,7 +547,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
Assert.Equal("XXXXXX", rom.Bios);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
Assert.Equal("XXXXXX", rom.Merge);
diff --git a/SabreTools.Serialization.Readers.Test/OfflineListTests.cs b/SabreTools.Serialization.Readers.Test/OfflineListTests.cs
index ff8b557d..74edbda6 100644
--- a/SabreTools.Serialization.Readers.Test/OfflineListTests.cs
+++ b/SabreTools.Serialization.Readers.Test/OfflineListTests.cs
@@ -257,7 +257,7 @@ namespace SabreTools.Serialization.Readers.Test
ReleaseNumber = "XXXXXX",
Title = "XXXXXX",
SaveType = "XXXXXX",
- RomSize = "XXXXXX",
+ RomSize = 12345L,
Publisher = "XXXXXX",
Location = "XXXXXX",
SourceRom = "XXXXXX",
@@ -445,7 +445,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", game.ReleaseNumber);
Assert.Equal("XXXXXX", game.Title);
Assert.Equal("XXXXXX", game.SaveType);
- Assert.Equal("XXXXXX", game.RomSize);
+ Assert.Equal(12345L, game.RomSize);
Assert.Equal("XXXXXX", game.Publisher);
Assert.Equal("XXXXXX", game.Location);
Assert.Equal("XXXXXX", game.SourceRom);
diff --git a/SabreTools.Serialization.Readers.Test/RomCenterTests.cs b/SabreTools.Serialization.Readers.Test/RomCenterTests.cs
index 40ebaaee..0ee45882 100644
--- a/SabreTools.Serialization.Readers.Test/RomCenterTests.cs
+++ b/SabreTools.Serialization.Readers.Test/RomCenterTests.cs
@@ -132,7 +132,7 @@ namespace SabreTools.Serialization.Readers.Test
GameDescription = "description",
RomName = "XXXXXX",
RomCRC = "XXXXXX",
- RomSize = "XXXXXX",
+ RomSize = 12345L,
RomOf = "XXXXXX",
MergeName = "XXXXXX",
};
@@ -211,7 +211,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("description", rom.GameDescription);
Assert.Equal("XXXXXX", rom.RomName);
Assert.Equal("XXXXXX", rom.RomCRC);
- Assert.Equal("XXXXXX", rom.RomSize);
+ Assert.Equal(12345L, rom.RomSize);
Assert.Equal("XXXXXX", rom.RomOf);
Assert.Equal("XXXXXX", rom.MergeName);
}
diff --git a/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs b/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs
index c1319527..b671d7fd 100644
--- a/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs
+++ b/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs
@@ -171,7 +171,7 @@ namespace SabreTools.Serialization.Readers.Test
GameDescription = "description",
Type = "rom",
RomName = "XXXXXX",
- Size = "XXXXXX",
+ Size = 12345L,
CRC = "XXXXXX",
MD5 = "XXXXXX",
SHA1 = "XXXXXX",
@@ -215,7 +215,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("disk", row.Type);
Assert.NotNull(row.RomName); Assert.Empty(row.RomName);
Assert.Equal("XXXXXX", row.DiskName);
- Assert.NotNull(row.Size); Assert.Empty(row.Size);
+ Assert.Null(row.Size);
Assert.NotNull(row.CRC); Assert.Empty(row.CRC);
Assert.Equal("XXXXXX", row.MD5);
Assert.Equal("XXXXXX", row.SHA1);
@@ -250,7 +250,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("media", row.Type);
Assert.NotNull(row.RomName); Assert.Empty(row.RomName);
Assert.Equal("XXXXXX", row.DiskName);
- Assert.NotNull(row.Size); Assert.Empty(row.Size);
+ Assert.Null(row.Size);
Assert.NotNull(row.CRC); Assert.Empty(row.CRC);
Assert.Equal("XXXXXX", row.MD5);
Assert.Equal("XXXXXX", row.SHA1);
@@ -286,7 +286,7 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", row.RomName);
Assert.NotNull(row.DiskName);
Assert.Empty(row.DiskName);
- Assert.Equal("XXXXXX", row.Size);
+ Assert.Equal(12345L, row.Size);
Assert.Equal("XXXXXX", row.CRC);
Assert.Equal("XXXXXX", row.MD5);
Assert.Equal("XXXXXX", row.SHA1);
diff --git a/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs b/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs
index bcac0896..37f02e65 100644
--- a/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs
+++ b/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs
@@ -130,7 +130,7 @@ namespace SabreTools.Serialization.Readers.Test
var rom = new Data.Models.SoftwareList.Rom
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
Length = "XXXXXX",
CRC = "XXXXXX",
SHA1 = "XXXXXX",
@@ -143,7 +143,7 @@ namespace SabreTools.Serialization.Readers.Test
var dataarea = new Data.Models.SoftwareList.DataArea
{
Name = "name",
- Size = "XXXXXX",
+ Size = 12345L,
Width = "XXXXXX",
Endianness = Data.Models.Metadata.Endianness.Big,
Rom = [rom],
@@ -302,7 +302,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(dataarea);
Assert.Equal("name", dataarea.Name);
- Assert.Equal("XXXXXX", dataarea.Size);
+ Assert.Equal(12345L, dataarea.Size);
Assert.Equal("XXXXXX", dataarea.Width);
Assert.Equal(Data.Models.Metadata.Endianness.Big, dataarea.Endianness);
@@ -318,7 +318,7 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(rom);
Assert.Equal("name", rom.Name);
- Assert.Equal("XXXXXX", rom.Size);
+ Assert.Equal(12345L, rom.Size);
Assert.Equal("XXXXXX", rom.Length);
Assert.Equal("XXXXXX", rom.CRC);
Assert.Equal("XXXXXX", rom.SHA1);
diff --git a/SabreTools.Serialization.Readers/ClrMamePro.cs b/SabreTools.Serialization.Readers/ClrMamePro.cs
index 2761c576..68ebc68b 100644
--- a/SabreTools.Serialization.Readers/ClrMamePro.cs
+++ b/SabreTools.Serialization.Readers/ClrMamePro.cs
@@ -530,7 +530,7 @@ namespace SabreTools.Serialization.Readers
rom.Name = kvp.Value;
break;
case "size":
- rom.Size = kvp.Value;
+ rom.Size = NumberHelper.ConvertToInt64(kvp.Value);
break;
case "crc":
rom.CRC = kvp.Value;
diff --git a/SabreTools.Serialization.Readers/DosCenter.cs b/SabreTools.Serialization.Readers/DosCenter.cs
index 0480c926..e7d7ddeb 100644
--- a/SabreTools.Serialization.Readers/DosCenter.cs
+++ b/SabreTools.Serialization.Readers/DosCenter.cs
@@ -1,8 +1,10 @@
+using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using SabreTools.Data.Models.DosCenter;
using SabreTools.Text.ClrMamePro;
+using SabreTools.Text.Extensions;
namespace SabreTools.Serialization.Readers
{
@@ -176,7 +178,7 @@ namespace SabreTools.Serialization.Readers
///
/// ClrMameProReader representing the metadata file
/// File object created from the reader context
- private static Data.Models.DosCenter.File? CreateFile(Reader reader)
+ private Data.Models.DosCenter.File? CreateFile(Reader reader)
{
if (reader.Internal is null)
return null;
@@ -190,7 +192,7 @@ namespace SabreTools.Serialization.Readers
file.Name = kvp.Value;
break;
case "size":
- file.Size = kvp.Value;
+ file.Size = NumberHelper.ConvertToInt64(kvp.Value);
break;
case "crc":
file.CRC = kvp.Value;
@@ -202,7 +204,7 @@ namespace SabreTools.Serialization.Readers
file.Date = kvp.Value;
break;
default:
- // TODO: Log invalid values
+ if (Debug) Console.Error.WriteLine($"'{kvp.Key}' is an unrecognized field");
break;
}
}
diff --git a/SabreTools.Serialization.Readers/EverdriveSMDB.cs b/SabreTools.Serialization.Readers/EverdriveSMDB.cs
index 100579b2..5031b142 100644
--- a/SabreTools.Serialization.Readers/EverdriveSMDB.cs
+++ b/SabreTools.Serialization.Readers/EverdriveSMDB.cs
@@ -2,6 +2,7 @@ using System.Collections.Generic;
using System.IO;
using System.Text;
using SabreTools.Data.Models.EverdriveSMDB;
+using SabreTools.Text.Extensions;
using SabreTools.Text.SeparatedValue;
namespace SabreTools.Serialization.Readers
@@ -50,7 +51,7 @@ namespace SabreTools.Serialization.Readers
// If we have the size field
if (reader.Line.Count > 5)
- row.Size = reader.Line[5];
+ row.Size = NumberHelper.ConvertToInt64(reader.Line[5]);
rows.Add(row);
}
diff --git a/SabreTools.Serialization.Readers/Listrom.cs b/SabreTools.Serialization.Readers/Listrom.cs
index 205a9aec..1c219b5e 100644
--- a/SabreTools.Serialization.Readers/Listrom.cs
+++ b/SabreTools.Serialization.Readers/Listrom.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.IO;
using System.Text;
using SabreTools.Data.Models.Listrom;
+using SabreTools.Text.Extensions;
#pragma warning disable IDE0057 // Use range operator
namespace SabreTools.Serialization.Readers
@@ -146,7 +147,7 @@ namespace SabreTools.Serialization.Readers
// Normal ROM (Name, Size, CRC, MD5/SHA1)
case 3 when line.Contains("CRC"):
row.Name = name;
- row.Size = lineParts[0];
+ row.Size = NumberHelper.ConvertToInt64(lineParts[0]);
#if NETCOREAPP || NETSTANDARD2_1_OR_GREATER
row.CRC = lineParts[1]["CRC".Length..].Trim('(', ')');
#else
@@ -193,7 +194,7 @@ namespace SabreTools.Serialization.Readers
// Bad ROM (Name, Size, BAD, CRC, MD5/SHA1, BAD_DUMP)
case 5 when line.Contains("BAD_DUMP"):
row.Name = name;
- row.Size = lineParts[0];
+ row.Size = NumberHelper.ConvertToInt64(lineParts[0]);
row.Bad = true;
#if NETCOREAPP || NETSTANDARD2_1_OR_GREATER
row.CRC = lineParts[2]["CRC".Length..].Trim('(', ')');
@@ -217,7 +218,7 @@ namespace SabreTools.Serialization.Readers
// Nodump ROM (Name, Size, NO GOOD DUMP KNOWN)
case 5 when line.Contains("NO GOOD DUMP KNOWN"):
row.Name = name;
- row.Size = lineParts[0];
+ row.Size = NumberHelper.ConvertToInt64(lineParts[0]);
row.NoGoodDumpKnown = true;
break;
diff --git a/SabreTools.Serialization.Readers/Listxml.cs b/SabreTools.Serialization.Readers/Listxml.cs
index aaa70299..b2fa98bb 100644
--- a/SabreTools.Serialization.Readers/Listxml.cs
+++ b/SabreTools.Serialization.Readers/Listxml.cs
@@ -1047,7 +1047,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Bios = reader.GetAttribute("bios");
- obj.Size = reader.GetAttribute("size");
+ obj.Size = NumberHelper.ConvertToInt64(reader.GetAttribute("size"));
obj.CRC = reader.GetAttribute("crc");
obj.SHA1 = reader.GetAttribute("sha1");
obj.Merge = reader.GetAttribute("merge");
diff --git a/SabreTools.Serialization.Readers/Logiqx.cs b/SabreTools.Serialization.Readers/Logiqx.cs
index 37c05445..25c6e534 100644
--- a/SabreTools.Serialization.Readers/Logiqx.cs
+++ b/SabreTools.Serialization.Readers/Logiqx.cs
@@ -4,6 +4,7 @@ using System.IO;
using System.Xml;
using SabreTools.Data.Extensions;
using SabreTools.Data.Models.Logiqx;
+using SabreTools.Text.Extensions;
namespace SabreTools.Serialization.Readers
{
@@ -689,7 +690,7 @@ namespace SabreTools.Serialization.Readers
var obj = new Rom();
obj.Name = reader.GetAttribute("name");
- obj.Size = reader.GetAttribute("size");
+ obj.Size = NumberHelper.ConvertToInt64(reader.GetAttribute("size"));
obj.CRC16 = reader.GetAttribute("crc16");
obj.CRC = reader.GetAttribute("crc");
obj.CRC64 = reader.GetAttribute("crc64");
diff --git a/SabreTools.Serialization.Readers/M1.cs b/SabreTools.Serialization.Readers/M1.cs
index 5a2b94df..308a17b8 100644
--- a/SabreTools.Serialization.Readers/M1.cs
+++ b/SabreTools.Serialization.Readers/M1.cs
@@ -1045,7 +1045,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Bios = reader.GetAttribute("bios");
- obj.Size = reader.GetAttribute("size");
+ obj.Size = NumberHelper.ConvertToInt64(reader.GetAttribute("size"));
obj.CRC = reader.GetAttribute("crc");
obj.SHA1 = reader.GetAttribute("sha1");
obj.Merge = reader.GetAttribute("merge");
diff --git a/SabreTools.Serialization.Readers/Mess.cs b/SabreTools.Serialization.Readers/Mess.cs
index 534a9717..5b93bf45 100644
--- a/SabreTools.Serialization.Readers/Mess.cs
+++ b/SabreTools.Serialization.Readers/Mess.cs
@@ -1045,7 +1045,7 @@ namespace SabreTools.Serialization.Readers
obj.Name = reader.GetAttribute("name");
obj.Bios = reader.GetAttribute("bios");
- obj.Size = reader.GetAttribute("size");
+ obj.Size = NumberHelper.ConvertToInt64(reader.GetAttribute("size"));
obj.CRC = reader.GetAttribute("crc");
obj.SHA1 = reader.GetAttribute("sha1");
obj.Merge = reader.GetAttribute("merge");
diff --git a/SabreTools.Serialization.Readers/OfflineList.cs b/SabreTools.Serialization.Readers/OfflineList.cs
index 2a469d3e..58892a50 100644
--- a/SabreTools.Serialization.Readers/OfflineList.cs
+++ b/SabreTools.Serialization.Readers/OfflineList.cs
@@ -4,6 +4,7 @@ using System.IO;
using System.Xml;
using SabreTools.Data.Extensions;
using SabreTools.Data.Models.OfflineList;
+using SabreTools.Text.Extensions;
namespace SabreTools.Serialization.Readers
{
@@ -416,7 +417,7 @@ namespace SabreTools.Serialization.Readers
if (obj.RomSize is not null && Debug)
Console.WriteLine($"'{reader.Name}' element already found, overwriting");
- obj.RomSize = reader.ReadElementContentAsString();
+ obj.RomSize = NumberHelper.ConvertToInt64(reader.ReadElementContentAsString());
break;
case "publisher":
if (obj.Publisher is not null && Debug)
diff --git a/SabreTools.Serialization.Readers/RomCenter.cs b/SabreTools.Serialization.Readers/RomCenter.cs
index 22791773..020277e8 100644
--- a/SabreTools.Serialization.Readers/RomCenter.cs
+++ b/SabreTools.Serialization.Readers/RomCenter.cs
@@ -2,6 +2,7 @@ using System.Collections.Generic;
using System.IO;
using System.Text;
using SabreTools.Data.Models.RomCenter;
+using SabreTools.Text.Extensions;
using SabreTools.Text.INI;
#pragma warning disable CA1847 // Use char literal for a single character lookup
@@ -166,7 +167,7 @@ namespace SabreTools.Serialization.Readers
GameDescription = splitLine[4],
RomName = splitLine[5],
RomCRC = splitLine[6],
- RomSize = splitLine[7],
+ RomSize = NumberHelper.ConvertToInt64(splitLine[7]),
RomOf = splitLine[8],
MergeName = splitLine[9],
// EMPTY = splitLine[10]
diff --git a/SabreTools.Serialization.Readers/SeparatedValue.cs b/SabreTools.Serialization.Readers/SeparatedValue.cs
index a4b27ce8..9a9a0d40 100644
--- a/SabreTools.Serialization.Readers/SeparatedValue.cs
+++ b/SabreTools.Serialization.Readers/SeparatedValue.cs
@@ -3,6 +3,7 @@ using System.IO;
using System.Text;
using SabreTools.Data.Extensions;
using SabreTools.Data.Models.SeparatedValue;
+using SabreTools.Text.Extensions;
using SabreTools.Text.SeparatedValue;
#pragma warning disable CA1822 // Mark members as static
@@ -122,7 +123,7 @@ namespace SabreTools.Serialization.Readers
Type = reader.Line[5],
RomName = reader.Line[6],
DiskName = reader.Line[7],
- Size = reader.Line[8],
+ Size = NumberHelper.ConvertToInt64(reader.Line[8]),
CRC = reader.Line[9],
MD5 = reader.Line[10],
SHA1 = reader.Line[11],
@@ -142,7 +143,7 @@ namespace SabreTools.Serialization.Readers
Type = reader.Line[5],
RomName = reader.Line[6],
DiskName = reader.Line[7],
- Size = reader.Line[8],
+ Size = NumberHelper.ConvertToInt64(reader.Line[8]),
CRC = reader.Line[9],
MD5 = reader.Line[10],
SHA1 = reader.Line[11],
diff --git a/SabreTools.Serialization.Readers/SoftwareList.cs b/SabreTools.Serialization.Readers/SoftwareList.cs
index cf3db223..f79c12bb 100644
--- a/SabreTools.Serialization.Readers/SoftwareList.cs
+++ b/SabreTools.Serialization.Readers/SoftwareList.cs
@@ -4,6 +4,7 @@ using System.IO;
using System.Xml;
using SabreTools.Data.Extensions;
using SabreTools.Data.Models.SoftwareList;
+using SabreTools.Text.Extensions;
namespace SabreTools.Serialization.Readers
{
@@ -125,7 +126,7 @@ namespace SabreTools.Serialization.Readers
var obj = new DataArea();
obj.Name = reader.GetAttribute("name");
- obj.Size = reader.GetAttribute("size");
+ obj.Size = NumberHelper.ConvertToInt64(reader.GetAttribute("size"));
obj.Width = reader.GetAttribute("width");
obj.Endianness = reader.GetAttribute("endianness").AsEndianness();
@@ -413,7 +414,7 @@ namespace SabreTools.Serialization.Readers
var obj = new Rom();
obj.Name = reader.GetAttribute("name");
- obj.Size = reader.GetAttribute("size");
+ obj.Size = NumberHelper.ConvertToInt64(reader.GetAttribute("size"));
obj.Length = reader.GetAttribute("length");
obj.CRC = reader.GetAttribute("crc");
obj.SHA1 = reader.GetAttribute("sha1");
diff --git a/SabreTools.Serialization.Writers/ClrMamePro.cs b/SabreTools.Serialization.Writers/ClrMamePro.cs
index cd4f9df1..0a6ee433 100644
--- a/SabreTools.Serialization.Writers/ClrMamePro.cs
+++ b/SabreTools.Serialization.Writers/ClrMamePro.cs
@@ -261,7 +261,7 @@ namespace SabreTools.Serialization.Writers
{
writer.WriteStartElement("rom");
writer.WriteRequiredAttributeString("name", rom.Name, throwOnError: true);
- writer.WriteRequiredAttributeString("size", rom.Size, throwOnError: true);
+ writer.WriteRequiredAttributeString("size", rom.Size?.ToString(), throwOnError: true);
writer.WriteOptionalAttributeString("crc16", rom.CRC16);
writer.WriteOptionalAttributeString("crc", rom.CRC);
writer.WriteOptionalAttributeString("crc64", rom.CRC64);
diff --git a/SabreTools.Serialization.Writers/DosCenter.cs b/SabreTools.Serialization.Writers/DosCenter.cs
index 09b1dae8..000b6601 100644
--- a/SabreTools.Serialization.Writers/DosCenter.cs
+++ b/SabreTools.Serialization.Writers/DosCenter.cs
@@ -115,7 +115,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteStartElement("file");
writer.WriteRequiredAttributeString("name", file.Name, throwOnError: true);
- writer.WriteRequiredAttributeString("size", file.Size, throwOnError: true);
+ writer.WriteRequiredAttributeString("size", file.Size?.ToString(), throwOnError: true);
writer.WriteOptionalAttributeString("date", file.Date);
writer.WriteRequiredAttributeString("crc", file.CRC?.ToUpperInvariant(), throwOnError: true);
writer.WriteRequiredAttributeString("sha1", file.SHA1?.ToUpperInvariant());
diff --git a/SabreTools.Serialization.Writers/EverdriveSMDB.cs b/SabreTools.Serialization.Writers/EverdriveSMDB.cs
index c7f56504..87139c88 100644
--- a/SabreTools.Serialization.Writers/EverdriveSMDB.cs
+++ b/SabreTools.Serialization.Writers/EverdriveSMDB.cs
@@ -55,7 +55,7 @@ namespace SabreTools.Serialization.Writers
};
if (row.Size is not null)
- rowArray.Add(row.Size);
+ rowArray.Add(row.Size?.ToString());
writer.WriteValues([.. rowArray]);
writer.Flush();
diff --git a/SabreTools.Serialization.Writers/Listrom.cs b/SabreTools.Serialization.Writers/Listrom.cs
index 36bad621..f18e6bd4 100644
--- a/SabreTools.Serialization.Writers/Listrom.cs
+++ b/SabreTools.Serialization.Writers/Listrom.cs
@@ -116,7 +116,7 @@ namespace SabreTools.Serialization.Writers
var rowBuilder = new StringBuilder();
- int padding = 40 - (row.Size?.Length ?? 0);
+ int padding = 40 - (row.Size?.ToString()?.Length ?? 0);
if (padding < row.Name!.Length)
padding = row.Name.Length + 2;
diff --git a/SabreTools.Serialization.Writers/Listxml.cs b/SabreTools.Serialization.Writers/Listxml.cs
index edb20f88..d32b5bb2 100644
--- a/SabreTools.Serialization.Writers/Listxml.cs
+++ b/SabreTools.Serialization.Writers/Listxml.cs
@@ -731,7 +731,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("bios", obj.Bios);
- writer.WriteRequiredAttributeString("size", obj.Size);
+ writer.WriteRequiredAttributeString("size", obj.Size?.ToString());
writer.WriteOptionalAttributeString("crc", obj.CRC);
writer.WriteOptionalAttributeString("sha1", obj.SHA1);
writer.WriteOptionalAttributeString("merge", obj.Merge);
diff --git a/SabreTools.Serialization.Writers/Logiqx.cs b/SabreTools.Serialization.Writers/Logiqx.cs
index c02d18a5..7ecfd167 100644
--- a/SabreTools.Serialization.Writers/Logiqx.cs
+++ b/SabreTools.Serialization.Writers/Logiqx.cs
@@ -489,7 +489,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteStartElement("rom");
writer.WriteRequiredAttributeString("name", obj.Name);
- writer.WriteRequiredAttributeString("size", obj.Size);
+ writer.WriteRequiredAttributeString("size", obj.Size?.ToString());
writer.WriteOptionalAttributeString("crc16", obj.CRC16);
writer.WriteOptionalAttributeString("crc", obj.CRC);
writer.WriteOptionalAttributeString("crc64", obj.CRC64);
diff --git a/SabreTools.Serialization.Writers/M1.cs b/SabreTools.Serialization.Writers/M1.cs
index 59599972..fe698b6d 100644
--- a/SabreTools.Serialization.Writers/M1.cs
+++ b/SabreTools.Serialization.Writers/M1.cs
@@ -729,7 +729,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("bios", obj.Bios);
- writer.WriteRequiredAttributeString("size", obj.Size);
+ writer.WriteRequiredAttributeString("size", obj.Size?.ToString());
writer.WriteOptionalAttributeString("crc", obj.CRC);
writer.WriteOptionalAttributeString("sha1", obj.SHA1);
writer.WriteOptionalAttributeString("merge", obj.Merge);
diff --git a/SabreTools.Serialization.Writers/Mess.cs b/SabreTools.Serialization.Writers/Mess.cs
index c705d657..19f7d305 100644
--- a/SabreTools.Serialization.Writers/Mess.cs
+++ b/SabreTools.Serialization.Writers/Mess.cs
@@ -729,7 +729,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteRequiredAttributeString("name", obj.Name);
writer.WriteOptionalAttributeString("bios", obj.Bios);
- writer.WriteRequiredAttributeString("size", obj.Size);
+ writer.WriteRequiredAttributeString("size", obj.Size?.ToString());
writer.WriteOptionalAttributeString("crc", obj.CRC);
writer.WriteOptionalAttributeString("sha1", obj.SHA1);
writer.WriteOptionalAttributeString("merge", obj.Merge);
diff --git a/SabreTools.Serialization.Writers/OfflineList.cs b/SabreTools.Serialization.Writers/OfflineList.cs
index 0ff67661..7d0ed061 100644
--- a/SabreTools.Serialization.Writers/OfflineList.cs
+++ b/SabreTools.Serialization.Writers/OfflineList.cs
@@ -201,7 +201,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteOptionalElementString("releaseNumber", obj.ReleaseNumber);
writer.WriteOptionalElementString("title", obj.Title);
writer.WriteOptionalElementString("saveType", obj.SaveType);
- writer.WriteOptionalElementString("romSize", obj.RomSize);
+ writer.WriteOptionalElementString("romSize", obj.RomSize?.ToString());
writer.WriteOptionalElementString("publisher", obj.Publisher);
writer.WriteOptionalElementString("location", obj.Location);
writer.WriteOptionalElementString("sourceRom", obj.SourceRom);
diff --git a/SabreTools.Serialization.Writers/SeparatedValue.cs b/SabreTools.Serialization.Writers/SeparatedValue.cs
index 2f7a90b2..7ff3ee7d 100644
--- a/SabreTools.Serialization.Writers/SeparatedValue.cs
+++ b/SabreTools.Serialization.Writers/SeparatedValue.cs
@@ -170,7 +170,7 @@ namespace SabreTools.Serialization.Writers
row.Type,
row.RomName,
row.DiskName,
- row.Size,
+ row.Size?.ToString(),
row.CRC,
row.MD5,
row.SHA1,
@@ -193,7 +193,7 @@ namespace SabreTools.Serialization.Writers
row.Type,
row.RomName,
row.DiskName,
- row.Size,
+ row.Size?.ToString(),
row.CRC,
row.MD5,
row.SHA1,
diff --git a/SabreTools.Serialization.Writers/SoftwareList.cs b/SabreTools.Serialization.Writers/SoftwareList.cs
index 57ef70c0..7c4e3bc4 100644
--- a/SabreTools.Serialization.Writers/SoftwareList.cs
+++ b/SabreTools.Serialization.Writers/SoftwareList.cs
@@ -104,7 +104,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteStartElement("dataarea");
writer.WriteRequiredAttributeString("name", obj.Name);
- writer.WriteRequiredAttributeString("size", obj.Size);
+ writer.WriteRequiredAttributeString("size", obj.Size?.ToString());
writer.WriteOptionalAttributeString("width", obj.Width);
writer.WriteOptionalAttributeString("endianness", obj.Endianness?.AsStringValue());
@@ -286,7 +286,7 @@ namespace SabreTools.Serialization.Writers
writer.WriteStartElement("rom");
writer.WriteRequiredAttributeString("name", obj.Name);
- writer.WriteOptionalAttributeString("size", obj.Size);
+ writer.WriteOptionalAttributeString("size", obj.Size?.ToString());
writer.WriteOptionalAttributeString("length", obj.Length);
writer.WriteOptionalAttributeString("crc", obj.CRC);
writer.WriteOptionalAttributeString("sha1", obj.SHA1);