diff --git a/MediaType.cs b/MediaType.cs
index 020e2eaf5..0dccf8db7 100644
--- a/MediaType.cs
+++ b/MediaType.cs
@@ -773,9 +773,9 @@ namespace Aaru.CommonTypes
ECMA_280 = 649,
/// 300mm, M.O., 7355716 sectors, 2048 bytes/sector, ECMA-317, ISO 20162
ECMA_317 = 650,
- /// 5,25", M.O., 1095840 sectors, 4096 bytes/sector, ECMA-322, ISO 22092
+ /// 5,25", M.O., 1095840 sectors, 4096 bytes/sector, ECMA-322, ISO 22092, 9.1Gb/cart
ECMA_322 = 651,
- /// 5,25", M.O., 2043664 sectors, 2048 bytes/sector, ECMA-322, ISO 22092
+ /// 5,25", M.O., 2043664 sectors, 2048 bytes/sector, ECMA-322, ISO 22092, 8.6Gb/cart
ECMA_322_2k = 652,
/// 3,5", M.O., 605846 sectors, 2048 bytes/sector, Cherry Book, GigaMo, ECMA-351, ISO 17346
GigaMo = 653,
@@ -1011,7 +1011,14 @@ namespace Aaru.CommonTypes
/// Optical Disc archive, 4th gen., write once, 3300Gb
ODC3300R = 785,
/// Optical Disc archive, 5th gen., write once, 5500Gb
- ODC5500R = 786
+ ODC5500R = 786,
#endregion Sony and Panasonic Blu-ray derived, types 770 to 799
+
+ #region Magneto-optical, types 800 to 819
+ /// 5,25", M.O., 4383356 sectors, 1024 bytes/sector, ECMA-322, ISO 22092, 9.1Gb/cart
+ ECMA_322_1k = 800,
+ /// 5,25", M.O., ??????? sectors, 512 bytes/sector, ECMA-322, ISO 22092, 9.1Gb/cart
+ ECMA_322_512 = 801,
+ #endregion Magneto-optical, types 800 to 819
}
}
\ No newline at end of file
diff --git a/MediaTypeFromDevice/FromOdc.cs b/MediaTypeFromDevice/FromOdc.cs
index 2414636cc..642bfbb1c 100644
--- a/MediaTypeFromDevice/FromOdc.cs
+++ b/MediaTypeFromDevice/FromOdc.cs
@@ -172,6 +172,12 @@ namespace Aaru.CommonTypes
mediumType, blocks, blockSize);
return MediaType.ISO_15286_1024;
+ case 4383356:
+ AaruConsole.DebugWriteLine("Media detection",
+ "SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-322 / ISO 22092 conforming 5¼\" magneto-optical.",
+ mediumType, blocks, blockSize);
+
+ return MediaType.ECMA_322_1k;
case 14476734:
AaruConsole.DebugWriteLine("Media detection",
"SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-260 / ISO 15898 conforming 356mm magneto-optical.",
diff --git a/MediaTypeFromDevice/FromSbc.cs b/MediaTypeFromDevice/FromSbc.cs
index d268d4420..5b6beaecd 100644
--- a/MediaTypeFromDevice/FromSbc.cs
+++ b/MediaTypeFromDevice/FromSbc.cs
@@ -767,6 +767,12 @@ namespace Aaru.CommonTypes
mediumType, blocks, blockSize);
return MediaType.ISO_15286_1024;
+ case 4383356 when mediumType == 0x01 || mediumType == 0x02:
+ AaruConsole.DebugWriteLine("Media detection",
+ "SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-322 / ISO 22092 conforming 5¼\" magneto-optical.",
+ mediumType, blocks, blockSize);
+
+ return MediaType.ECMA_322_1k;
case 14476734 when mediumType == 0x01 || mediumType == 0x02:
AaruConsole.DebugWriteLine("Media detection",
"SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-260 / ISO 15898 conforming 356mm magneto-optical.",
diff --git a/Metadata/Dimensions.cs b/Metadata/Dimensions.cs
index 51cba8f09..fbc7bf558 100644
--- a/Metadata/Dimensions.cs
+++ b/Metadata/Dimensions.cs
@@ -205,6 +205,8 @@ namespace Aaru.CommonTypes.Metadata
case CommonTypes.MediaType.ISO_15286_512:
case CommonTypes.MediaType.ISO_10089:
case CommonTypes.MediaType.ISO_10089_512:
+ case CommonTypes.MediaType.ECMA_322_1k:
+ case CommonTypes.MediaType.ECMA_322_512:
// According to ECMA-183 et al
dmns.Height = 153;
dmns.HeightSpecified = true;
diff --git a/Metadata/MediaType.cs b/Metadata/MediaType.cs
index 50ef0de6b..1a2edef28 100644
--- a/Metadata/MediaType.cs
+++ b/Metadata/MediaType.cs
@@ -1860,9 +1860,11 @@ namespace Aaru.CommonTypes.Metadata
break;
case CommonTypes.MediaType.ECMA_322:
+ case CommonTypes.MediaType.ECMA_322_512:
+ case CommonTypes.MediaType.ECMA_322_1k:
case CommonTypes.MediaType.ECMA_322_2k:
discType = "5.25\" magneto-optical";
- discSubType = "ECMA-322";
+ discSubType = "ECMA-322 / ISO 22092";
break;
case CommonTypes.MediaType.ISO_15286: