Change how standard floppy media is guessed from scsi type. Prevalence to older standardization.

This commit is contained in:
2018-01-19 01:19:57 +00:00
parent d35f9fa829
commit de52db7da0

View File

@@ -34,7 +34,7 @@ using System;
namespace DiscImageChef.CommonTypes namespace DiscImageChef.CommonTypes
{ {
#pragma warning disable RECS0063 // Warns when a culture-aware 'StartsWith' call is used by default. #pragma warning disable RECS0063 // Warns when a culture-aware 'StartsWith' call is used by default.
public static class MediaTypeFromScsi public static class MediaTypeFromScsi
{ {
/// <summary> /// <summary>
@@ -81,7 +81,8 @@ namespace DiscImageChef.CommonTypes
if(vendor.ToLowerInvariant().StartsWith("iomega", StringComparison.Ordinal) && if(vendor.ToLowerInvariant().StartsWith("iomega", StringComparison.Ordinal) &&
(model.ToLowerInvariant().StartsWith("clik", StringComparison.Ordinal) || (model.ToLowerInvariant().StartsWith("clik", StringComparison.Ordinal) ||
model.ToLowerInvariant().StartsWith("pocketzip", StringComparison.Ordinal)) && model.ToLowerInvariant().StartsWith("pocketzip", StringComparison.Ordinal)) &&
blockSize == 512 && blocks == 78882) return MediaType.PocketZip; blockSize == 512 &&
blocks == 78882) return MediaType.PocketZip;
if(model.ToLowerInvariant().StartsWith("zip", StringComparison.Ordinal)) if(model.ToLowerInvariant().StartsWith("zip", StringComparison.Ordinal))
{ {
@@ -111,7 +112,9 @@ namespace DiscImageChef.CommonTypes
if(blocks == 2880) return MediaType.DOS_35_HD; if(blocks == 2880) return MediaType.DOS_35_HD;
if(blocks == 1440) return MediaType.DOS_35_DS_DD_9; if(blocks == 1440) return MediaType.DOS_35_DS_DD_9;
} }
else if(blockSize == 1024) if(blocks == 1232) return MediaType.NEC_35_HD_8; else if(blockSize == 1024)
if(blocks == 1232)
return MediaType.NEC_35_HD_8;
return MediaType.Unknown; return MediaType.Unknown;
} }
@@ -270,18 +273,18 @@ namespace DiscImageChef.CommonTypes
case 640: return MediaType.DOS_525_DS_DD_8; case 640: return MediaType.DOS_525_DS_DD_8;
case 720: return MediaType.DOS_525_DS_DD_9; case 720: return MediaType.DOS_525_DS_DD_9;
case 1280: return MediaType.DOS_35_DS_DD_8; case 1280: return MediaType.DOS_35_DS_DD_8;
case 1440: return MediaType.ECMA_100; case 1440: return MediaType.DOS_35_DS_DD_9;
case 1640: return MediaType.FDFORMAT_35_DD; case 1640: return MediaType.FDFORMAT_35_DD;
case 1760: return MediaType.CBM_AMIGA_35_DD; case 1760: return MediaType.CBM_AMIGA_35_DD;
case 2242: return MediaType.IBM53FD_512; case 2242: return MediaType.IBM53FD_512;
case 2332: return MediaType.ECMA_99_15; case 2332: return MediaType.ECMA_99_15;
case 2400: return MediaType.DOS_525_HD; case 2400: return MediaType.DOS_525_HD;
case 2788: return MediaType.FDFORMAT_525_HD; case 2788: return MediaType.FDFORMAT_525_HD;
case 2880: return MediaType.ECMA_125; case 2880: return MediaType.DOS_35_HD;
case 3360: return MediaType.DMF; case 3360: return MediaType.DMF;
case 3444: return MediaType.FDFORMAT_35_HD; case 3444: return MediaType.FDFORMAT_35_HD;
case 3520: return MediaType.CBM_AMIGA_35_HD; case 3520: return MediaType.CBM_AMIGA_35_HD;
case 5760: return MediaType.ECMA_147; case 5760: return MediaType.DOS_35_ED;
case 249850: return MediaType.ECMA_154; case 249850: return MediaType.ECMA_154;
case 429975: return MediaType.ECMA_201_ROM; case 429975: return MediaType.ECMA_201_ROM;
case 446325: return MediaType.ECMA_201; case 446325: return MediaType.ECMA_201;
@@ -387,9 +390,9 @@ namespace DiscImageChef.CommonTypes
} }
return MediaType.Unknown; return MediaType.Unknown;
case 0x1E: return MediaType.ECMA_100; case 0x1E: return MediaType.DOS_35_DS_DD_9;
case 0x93: return MediaType.NEC_35_HD_15; case 0x93: return MediaType.NEC_35_HD_15;
case 0x94: return MediaType.ECMA_125; case 0x94: return MediaType.DOS_35_HD;
} }
switch(blockSize) switch(blockSize)
@@ -449,7 +452,7 @@ namespace DiscImageChef.CommonTypes
case 720: return MediaType.DOS_525_DS_DD_9; case 720: return MediaType.DOS_525_DS_DD_9;
case 800: return MediaType.AppleSonySS; case 800: return MediaType.AppleSonySS;
case 1280: return MediaType.DOS_35_DS_DD_8; case 1280: return MediaType.DOS_35_DS_DD_8;
case 1440: return MediaType.ECMA_100; case 1440: return MediaType.DOS_35_DS_DD_9;
case 1600: return MediaType.ACORN_35_DS_DD; case 1600: return MediaType.ACORN_35_DS_DD;
case 1640: return MediaType.FDFORMAT_35_DD; case 1640: return MediaType.FDFORMAT_35_DD;
case 1760: return MediaType.CBM_AMIGA_35_DD; case 1760: return MediaType.CBM_AMIGA_35_DD;
@@ -457,11 +460,11 @@ namespace DiscImageChef.CommonTypes
case 2332: return MediaType.ECMA_99_15; case 2332: return MediaType.ECMA_99_15;
case 2400: return MediaType.DOS_525_HD; case 2400: return MediaType.DOS_525_HD;
case 2788: return MediaType.FDFORMAT_525_HD; case 2788: return MediaType.FDFORMAT_525_HD;
case 2880: return MediaType.ECMA_125; case 2880: return MediaType.DOS_35_HD;
case 3360: return MediaType.DMF; case 3360: return MediaType.DMF;
case 3444: return MediaType.FDFORMAT_35_HD; case 3444: return MediaType.FDFORMAT_35_HD;
case 3520: return MediaType.CBM_AMIGA_35_HD; case 3520: return MediaType.CBM_AMIGA_35_HD;
case 5760: return MediaType.ECMA_147; case 5760: return MediaType.DOS_35_ED;
} }
} }
@@ -1509,14 +1512,11 @@ namespace DiscImageChef.CommonTypes
break; break;
// Host managed zoned block device // Host managed zoned block device
case 0x14: case 0x14: { return MediaType.Zone_HDD; }
{
return MediaType.Zone_HDD;
}
} }
return MediaType.Unknown; return MediaType.Unknown;
} }
} }
#pragma warning restore RECS0063 // Warns when a culture-aware 'StartsWith' call is used by default. #pragma warning restore RECS0063 // Warns when a culture-aware 'StartsWith' call is used by default.
} }