diff --git a/MediaType.cs b/MediaType.cs
index 0079d6452..020e2eaf5 100644
--- a/MediaType.cs
+++ b/MediaType.cs
@@ -787,6 +787,10 @@ namespace Aaru.CommonTypes
ISO_15286_1024 = 656,
/// 5,25", M.O., ??????? sectors, 512 bytes/sector, ISO 15286, 4.1Gb/cart
ISO_15286_512 = 657,
+ /// 5,25", M.O., 314569 sectors, 1024 bytes/sector, ISO 10089, 650Mb/cart
+ ISO_10089 = 658,
+ /// 5,25", M.O., ?????? sectors, 512 bytes/sector, ISO 10089, 594Mb/cart
+ ISO_10089_512 = 659,
#endregion Magneto-optical, types 630 to 659
#region Other floppy standards, types 660 to 689
diff --git a/MediaTypeFromDevice/FromOdc.cs b/MediaTypeFromDevice/FromOdc.cs
index 7ce4fec76..2414636cc 100644
--- a/MediaTypeFromDevice/FromOdc.cs
+++ b/MediaTypeFromDevice/FromOdc.cs
@@ -128,6 +128,12 @@ namespace Aaru.CommonTypes
{
switch(blocks)
{
+ case 314569:
+ AaruConsole.DebugWriteLine("Media detection",
+ "SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ISO 10089 conforming 5¼\" magneto-optical.",
+ mediumType, blocks, blockSize);
+
+ return MediaType.ISO_10089;
case 371371:
AaruConsole.DebugWriteLine("Media detection",
"SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-223 conforming 3½\" magneto-optical.",
diff --git a/MediaTypeFromDevice/FromSbc.cs b/MediaTypeFromDevice/FromSbc.cs
index e6b11d2ca..d268d4420 100644
--- a/MediaTypeFromDevice/FromSbc.cs
+++ b/MediaTypeFromDevice/FromSbc.cs
@@ -723,6 +723,12 @@ namespace Aaru.CommonTypes
mediumType, blocks, blockSize);
return MediaType.ACORN_35_DS_HD;
+ case 314569 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 ISO 10089 conforming 5¼\" magneto-optical.",
+ mediumType, blocks, blockSize);
+
+ return MediaType.ISO_10089;
case 371371 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-223 conforming 3½\" magneto-optical.",
diff --git a/Metadata/Dimensions.cs b/Metadata/Dimensions.cs
index 6d659e73a..51cba8f09 100644
--- a/Metadata/Dimensions.cs
+++ b/Metadata/Dimensions.cs
@@ -203,6 +203,8 @@ namespace Aaru.CommonTypes.Metadata
case CommonTypes.MediaType.ISO_15286:
case CommonTypes.MediaType.ISO_15286_1024:
case CommonTypes.MediaType.ISO_15286_512:
+ case CommonTypes.MediaType.ISO_10089:
+ case CommonTypes.MediaType.ISO_10089_512:
// According to ECMA-183 et al
dmns.Height = 153;
dmns.HeightSpecified = true;
diff --git a/Metadata/MediaType.cs b/Metadata/MediaType.cs
index b60be8eab..50ef0de6b 100644
--- a/Metadata/MediaType.cs
+++ b/Metadata/MediaType.cs
@@ -870,6 +870,12 @@ namespace Aaru.CommonTypes.Metadata
discType = "5.25\" magneto-optical";
discSubType = "ECMA-183";
+ break;
+ case CommonTypes.MediaType.ISO_10089:
+ case CommonTypes.MediaType.ISO_10089_512:
+ discType = "5.25\" magneto-optical";
+ discSubType = "ISO 10089";
+
break;
case CommonTypes.MediaType.ECMA_184_512:
case CommonTypes.MediaType.ECMA_184: