diff --git a/SabreTools.DatFiles/Formats/Logiqx.cs b/SabreTools.DatFiles/Formats/Logiqx.cs
index b94c1bbe..98818de7 100644
--- a/SabreTools.DatFiles/Formats/Logiqx.cs
+++ b/SabreTools.DatFiles/Formats/Logiqx.cs
@@ -270,7 +270,7 @@ namespace SabreTools.DatFiles.Formats
case "category":
content = reader.ReadElementContentAsString();
- Header.Category ??= content;
+ Header.Category = (Header.Category == null ? content : $"{Header.Category};{content}");
break;
case "version":
@@ -879,7 +879,14 @@ namespace SabreTools.DatFiles.Formats
xtw.WriteRequiredElementString("name", Header.Name);
xtw.WriteRequiredElementString("description", Header.Description);
xtw.WriteOptionalElementString("rootdir", Header.RootDir);
- xtw.WriteOptionalElementString("category", Header.Category);
+ if (!string.IsNullOrWhiteSpace(Header.Category))
+ {
+ var categories = Header.Category.Split(';');
+ foreach (string category in categories)
+ {
+ xtw.WriteOptionalElementString("category", category);
+ }
+ }
xtw.WriteRequiredElementString("version", Header.Version);
xtw.WriteOptionalElementString("date", Header.Date);
xtw.WriteRequiredElementString("author", Header.Author);
diff --git a/SabreTools.Test/TestData/test-logiqx.xml b/SabreTools.Test/TestData/test-logiqx.xml
index 57d42740..5ab5cbcf 100644
--- a/SabreTools.Test/TestData/test-logiqx.xml
+++ b/SabreTools.Test/TestData/test-logiqx.xml
@@ -26,6 +26,7 @@
1980
Manufacturer
Publisher
+ Games
Arcade
0001