diff --git a/SabreTools.DatFiles/Formats/ArchiveDotOrg.cs b/SabreTools.DatFiles/Formats/ArchiveDotOrg.cs
index 942470ed..6462f035 100644
--- a/SabreTools.DatFiles/Formats/ArchiveDotOrg.cs
+++ b/SabreTools.DatFiles/Formats/ArchiveDotOrg.cs
@@ -5,7 +5,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a Archive.org file list
///
- internal sealed class ArchiveDotOrg : SerializableDatFile
+ public sealed class ArchiveDotOrg : SerializableDatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/AttractMode.cs b/SabreTools.DatFiles/Formats/AttractMode.cs
index f2a45ea2..39a8a134 100644
--- a/SabreTools.DatFiles/Formats/AttractMode.cs
+++ b/SabreTools.DatFiles/Formats/AttractMode.cs
@@ -6,7 +6,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an AttractMode DAT
///
- internal sealed class AttractMode : SerializableDatFile
+ public sealed class AttractMode : SerializableDatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/ClrMamePro.cs b/SabreTools.DatFiles/Formats/ClrMamePro.cs
index 012abb0a..004ee237 100644
--- a/SabreTools.DatFiles/Formats/ClrMamePro.cs
+++ b/SabreTools.DatFiles/Formats/ClrMamePro.cs
@@ -9,7 +9,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a ClrMamePro DAT
///
- internal sealed class ClrMamePro : SerializableDatFile
+ public sealed class ClrMamePro : SerializableDatFile
{
#region Fields
diff --git a/SabreTools.DatFiles/Formats/DosCenter.cs b/SabreTools.DatFiles/Formats/DosCenter.cs
index f81515d8..57e47a2a 100644
--- a/SabreTools.DatFiles/Formats/DosCenter.cs
+++ b/SabreTools.DatFiles/Formats/DosCenter.cs
@@ -7,7 +7,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents parsing and writing of a DosCenter DAT
///
- internal sealed class DosCenter : SerializableDatFile
+ public sealed class DosCenter : SerializableDatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/EverdriveSmdb.cs b/SabreTools.DatFiles/Formats/EverdriveSmdb.cs
index 40437fe2..6e8ec37d 100644
--- a/SabreTools.DatFiles/Formats/EverdriveSmdb.cs
+++ b/SabreTools.DatFiles/Formats/EverdriveSmdb.cs
@@ -7,7 +7,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents parsing and writing of an Everdrive SMDB file
///
- internal sealed class EverdriveSMDB : SerializableDatFile
+ public sealed class EverdriveSMDB : SerializableDatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/Hashfile.cs b/SabreTools.DatFiles/Formats/Hashfile.cs
index a10a1371..00b7a370 100644
--- a/SabreTools.DatFiles/Formats/Hashfile.cs
+++ b/SabreTools.DatFiles/Formats/Hashfile.cs
@@ -9,7 +9,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a hashfile such as an SFV, MD5, or SHA-1 file
///
- internal abstract class Hashfile : SerializableDatFile
+ public abstract class Hashfile : SerializableDatFile
{
#region Fields
@@ -244,7 +244,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an SFV (CRC-32) hashfile
///
- internal sealed class SfvFile : Hashfile
+ public sealed class SfvFile : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -259,7 +259,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an MD2 hashfile
///
- internal sealed class Md2File : Hashfile
+ public sealed class Md2File : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -274,7 +274,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an MD4 hashfile
///
- internal sealed class Md4File : Hashfile
+ public sealed class Md4File : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -289,7 +289,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an MD5 hashfile
///
- internal sealed class Md5File : Hashfile
+ public sealed class Md5File : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -304,7 +304,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an SHA-1 hashfile
///
- internal sealed class Sha1File : Hashfile
+ public sealed class Sha1File : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -319,7 +319,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an SHA-256 hashfile
///
- internal sealed class Sha256File : Hashfile
+ public sealed class Sha256File : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -334,7 +334,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an SHA-384 hashfile
///
- internal sealed class Sha384File : Hashfile
+ public sealed class Sha384File : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -349,7 +349,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an SHA-512 hashfile
///
- internal sealed class Sha512File : Hashfile
+ public sealed class Sha512File : Hashfile
{
///
/// Constructor designed for casting a base DatFile
@@ -364,7 +364,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an SpamSum hashfile
///
- internal sealed class SpamSumFile : Hashfile
+ public sealed class SpamSumFile : Hashfile
{
///
/// Constructor designed for casting a base DatFile
diff --git a/SabreTools.DatFiles/Formats/Listrom.cs b/SabreTools.DatFiles/Formats/Listrom.cs
index 3c12fd7a..fc92b6e5 100644
--- a/SabreTools.DatFiles/Formats/Listrom.cs
+++ b/SabreTools.DatFiles/Formats/Listrom.cs
@@ -7,7 +7,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a MAME Listrom file
///
- internal sealed class Listrom : SerializableDatFile
+ public sealed class Listrom : SerializableDatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/Listxml.cs b/SabreTools.DatFiles/Formats/Listxml.cs
index bcf3be0b..179247e4 100644
--- a/SabreTools.DatFiles/Formats/Listxml.cs
+++ b/SabreTools.DatFiles/Formats/Listxml.cs
@@ -9,7 +9,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a MAME/M1 XML DAT
///
- internal sealed class Listxml : SerializableDatFile
+ public sealed class Listxml : SerializableDatFile
{
#region Constants
diff --git a/SabreTools.DatFiles/Formats/Logiqx.cs b/SabreTools.DatFiles/Formats/Logiqx.cs
index a6820f91..8c2e04b1 100644
--- a/SabreTools.DatFiles/Formats/Logiqx.cs
+++ b/SabreTools.DatFiles/Formats/Logiqx.cs
@@ -9,7 +9,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a Logiqx-derived DAT
///
- internal sealed class Logiqx : SerializableDatFile
+ public sealed class Logiqx : SerializableDatFile
{
#region Constants
diff --git a/SabreTools.DatFiles/Formats/Missfile.cs b/SabreTools.DatFiles/Formats/Missfile.cs
index dd3e5955..2c01e9c3 100644
--- a/SabreTools.DatFiles/Formats/Missfile.cs
+++ b/SabreTools.DatFiles/Formats/Missfile.cs
@@ -9,7 +9,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a Missfile
///
- internal sealed class Missfile : DatFile
+ public sealed class Missfile : DatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/OfflineList.cs b/SabreTools.DatFiles/Formats/OfflineList.cs
index 1b45f802..b6f9a5fc 100644
--- a/SabreTools.DatFiles/Formats/OfflineList.cs
+++ b/SabreTools.DatFiles/Formats/OfflineList.cs
@@ -7,7 +7,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an OfflineList XML DAT
///
- internal sealed class OfflineList : SerializableDatFile
+ public sealed class OfflineList : SerializableDatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/OpenMSX.cs b/SabreTools.DatFiles/Formats/OpenMSX.cs
index 15aca4d8..3e88cb8f 100644
--- a/SabreTools.DatFiles/Formats/OpenMSX.cs
+++ b/SabreTools.DatFiles/Formats/OpenMSX.cs
@@ -7,7 +7,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents an openMSX softawre list XML DAT
///
- internal sealed class OpenMSX : SerializableDatFile
+ public sealed class OpenMSX : SerializableDatFile
{
#region Constants
diff --git a/SabreTools.DatFiles/Formats/RomCenter.cs b/SabreTools.DatFiles/Formats/RomCenter.cs
index e43087d2..5f556caf 100644
--- a/SabreTools.DatFiles/Formats/RomCenter.cs
+++ b/SabreTools.DatFiles/Formats/RomCenter.cs
@@ -7,7 +7,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a RomCenter INI file
///
- internal sealed class RomCenter : SerializableDatFile
+ public sealed class RomCenter : SerializableDatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/SabreJSON.cs b/SabreTools.DatFiles/Formats/SabreJSON.cs
index 461a7d6b..58e28d43 100644
--- a/SabreTools.DatFiles/Formats/SabreJSON.cs
+++ b/SabreTools.DatFiles/Formats/SabreJSON.cs
@@ -15,7 +15,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents parsing and writing of a reference SabreDAT JSON
///
- internal class SabreJSON : DatFile
+ public sealed class SabreJSON : DatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/SabreXML.cs b/SabreTools.DatFiles/Formats/SabreXML.cs
index 1117e076..bb550502 100644
--- a/SabreTools.DatFiles/Formats/SabreXML.cs
+++ b/SabreTools.DatFiles/Formats/SabreXML.cs
@@ -12,7 +12,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents parsing and writing of a SabreDAT XML
///
- internal class SabreXML : DatFile
+ public sealed class SabreXML : DatFile
{
///
public override ItemType[] SupportedTypes
diff --git a/SabreTools.DatFiles/Formats/SeparatedValue.cs b/SabreTools.DatFiles/Formats/SeparatedValue.cs
index ce3876a8..63aa6aa9 100644
--- a/SabreTools.DatFiles/Formats/SeparatedValue.cs
+++ b/SabreTools.DatFiles/Formats/SeparatedValue.cs
@@ -8,7 +8,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a value-separated DAT
///
- internal abstract class SeparatedValue : SerializableDatFile
+ public abstract class SeparatedValue : SerializableDatFile
{
#region Fields
@@ -122,7 +122,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a comma-separated value file
///
- internal sealed class CommaSeparatedValue : SeparatedValue
+ public sealed class CommaSeparatedValue : SeparatedValue
{
///
/// Constructor designed for casting a base DatFile
@@ -137,7 +137,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a semicolon-separated value file
///
- internal sealed class SemicolonSeparatedValue : SeparatedValue
+ public sealed class SemicolonSeparatedValue : SeparatedValue
{
///
/// Constructor designed for casting a base DatFile
@@ -152,7 +152,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents a tab-separated value file
///
- internal sealed class TabSeparatedValue : SeparatedValue
+ public sealed class TabSeparatedValue : SeparatedValue
{
///
/// Constructor designed for casting a base DatFile
diff --git a/SabreTools.DatFiles/Formats/SoftwareList.cs b/SabreTools.DatFiles/Formats/SoftwareList.cs
index 17f2ae37..7e8a97e3 100644
--- a/SabreTools.DatFiles/Formats/SoftwareList.cs
+++ b/SabreTools.DatFiles/Formats/SoftwareList.cs
@@ -8,7 +8,7 @@ namespace SabreTools.DatFiles.Formats
///
/// Represents parsing and writing of a SoftwareList
///
- internal sealed class SoftwareList : SerializableDatFile
+ public sealed class SoftwareList : SerializableDatFile
{
#region Constants
diff --git a/SabreTools.DatFiles/SabreTools.DatFiles.csproj b/SabreTools.DatFiles/SabreTools.DatFiles.csproj
index 22ea67a8..f75b8af9 100644
--- a/SabreTools.DatFiles/SabreTools.DatFiles.csproj
+++ b/SabreTools.DatFiles/SabreTools.DatFiles.csproj
@@ -24,7 +24,6 @@
-