Remove DiscImageChef.CommonTypes dependence on DiscImageChef.Decoders.

This commit is contained in:
2020-01-11 20:55:54 +00:00
parent 53f92aa111
commit 6b1033317a
40 changed files with 1640 additions and 776 deletions

View File

@@ -30,6 +30,7 @@
// Copyright © 2011-2020 Natalia Portillo
// ****************************************************************************/
using DiscImageChef.CommonTypes.Structs.Devices.SCSI;
using DiscImageChef.Console;
using DiscImageChef.Decoders.SCSI;
@@ -41,22 +42,26 @@ namespace DiscImageChef.Core
{
DicConsole.WriteLine(Modes.PrettifyModeHeader(decMode.Header, devType));
if(decMode.Pages == null) return;
if(decMode.Pages == null)
return;
foreach(Modes.ModePage page in decMode.Pages)
//DicConsole.WriteLine("Page {0:X2}h subpage {1:X2}h is {2} bytes long", page.Page, page.Subpage, page.PageResponse.Length);
switch(page.Page)
{
case 0x00:
{
if(devType == PeripheralDeviceTypes.MultiMediaDevice && page.Subpage == 0)
if(devType == PeripheralDeviceTypes.MultiMediaDevice &&
page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_00_SFF(page.PageResponse));
else
{
if(page.Subpage != 0)
DicConsole.WriteLine("Found unknown vendor mode page {0:X2}h subpage {1:X2}h",
page.Page, page.Subpage);
else DicConsole.WriteLine("Found unknown vendor mode page {0:X2}h", page.Page);
else
DicConsole.WriteLine("Found unknown vendor mode page {0:X2}h", page.Page);
}
break;
@@ -67,42 +72,53 @@ namespace DiscImageChef.Core
DicConsole.WriteLine(devType == PeripheralDeviceTypes.MultiMediaDevice
? Modes.PrettifyModePage_01_MMC(page.PageResponse)
: Modes.PrettifyModePage_01(page.PageResponse));
else goto default;
else
goto default;
break;
}
case 0x02:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_02(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_02(page.PageResponse));
else
goto default;
break;
}
case 0x03:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_03(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_03(page.PageResponse));
else
goto default;
break;
}
case 0x04:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_04(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_04(page.PageResponse));
else
goto default;
break;
}
case 0x05:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_05(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_05(page.PageResponse));
else
goto default;
break;
}
case 0x06:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_06(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_06(page.PageResponse));
else
goto default;
break;
}
@@ -112,51 +128,64 @@ namespace DiscImageChef.Core
DicConsole.WriteLine(devType == PeripheralDeviceTypes.MultiMediaDevice
? Modes.PrettifyModePage_07_MMC(page.PageResponse)
: Modes.PrettifyModePage_07(page.PageResponse));
else goto default;
else
goto default;
break;
}
case 0x08:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_08(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_08(page.PageResponse));
else
goto default;
break;
}
case 0x0A:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_0A(page.PageResponse));
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_0A(page.PageResponse));
else if(page.Subpage == 1)
DicConsole.WriteLine(Modes.PrettifyModePage_0A_S01(page.PageResponse));
else goto default;
else
goto default;
break;
}
case 0x0B:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_0B(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_0B(page.PageResponse));
else
goto default;
break;
}
case 0x0D:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_0D(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_0D(page.PageResponse));
else
goto default;
break;
}
case 0x0E:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_0E(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_0E(page.PageResponse));
else
goto default;
break;
}
case 0x0F:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_0F(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_0F(page.PageResponse));
else
goto default;
break;
}
@@ -166,14 +195,17 @@ namespace DiscImageChef.Core
DicConsole.WriteLine(devType == PeripheralDeviceTypes.SequentialAccess
? Modes.PrettifyModePage_10_SSC(page.PageResponse)
: Modes.PrettifyModePage_10(page.PageResponse));
else goto default;
else
goto default;
break;
}
case 0x11:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_11(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_11(page.PageResponse));
else
goto default;
break;
}
@@ -181,24 +213,30 @@ namespace DiscImageChef.Core
case 0x13:
case 0x14:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_12_13_14(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_12_13_14(page.PageResponse));
else
goto default;
break;
}
case 0x1A:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_1A(page.PageResponse));
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_1A(page.PageResponse));
else if(page.Subpage == 1)
DicConsole.WriteLine(Modes.PrettifyModePage_1A_S01(page.PageResponse));
else goto default;
else
goto default;
break;
}
case 0x1B:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_1B(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_1B(page.PageResponse));
else
goto default;
break;
}
@@ -210,14 +248,17 @@ namespace DiscImageChef.Core
: Modes.PrettifyModePage_1C(page.PageResponse));
else if(page.Subpage == 1)
DicConsole.WriteLine(Modes.PrettifyModePage_1C_S01(page.PageResponse));
else goto default;
else
goto default;
break;
}
case 0x1D:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_1D(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_1D(page.PageResponse));
else
goto default;
break;
}
@@ -225,7 +266,8 @@ namespace DiscImageChef.Core
{
if(StringHandlers.CToString(vendorId).Trim() == "CERTANCE")
DicConsole.WriteLine(Modes.PrettifyCertanceModePage_21(page.PageResponse));
else goto default;
else
goto default;
break;
}
@@ -233,7 +275,8 @@ namespace DiscImageChef.Core
{
if(StringHandlers.CToString(vendorId).Trim() == "CERTANCE")
DicConsole.WriteLine(Modes.PrettifyCertanceModePage_22(page.PageResponse));
else goto default;
else
goto default;
break;
}
@@ -241,14 +284,17 @@ namespace DiscImageChef.Core
{
if(StringHandlers.CToString(vendorId).Trim() == "IBM")
DicConsole.WriteLine(Modes.PrettifyIBMModePage_24(page.PageResponse));
else goto default;
else
goto default;
break;
}
case 0x2A:
{
if(page.Subpage == 0) DicConsole.WriteLine(Modes.PrettifyModePage_2A(page.PageResponse));
else goto default;
if(page.Subpage == 0)
DicConsole.WriteLine(Modes.PrettifyModePage_2A(page.PageResponse));
else
goto default;
break;
}
@@ -256,7 +302,8 @@ namespace DiscImageChef.Core
{
if(StringHandlers.CToString(vendorId).Trim() == "IBM")
DicConsole.WriteLine(Modes.PrettifyIBMModePage_2F(page.PageResponse));
else goto default;
else
goto default;
break;
}
@@ -264,7 +311,8 @@ namespace DiscImageChef.Core
{
if(Modes.IsAppleModePage_30(page.PageResponse))
DicConsole.WriteLine("Drive identifies as Apple OEM drive");
else goto default;
else
goto default;
break;
}
@@ -272,7 +320,8 @@ namespace DiscImageChef.Core
{
if(StringHandlers.CToString(vendorId).Trim() == "HP")
DicConsole.WriteLine(Modes.PrettifyHPModePage_3B(page.PageResponse));
else goto default;
else
goto default;
break;
}
@@ -280,7 +329,8 @@ namespace DiscImageChef.Core
{
if(StringHandlers.CToString(vendorId).Trim() == "HP")
DicConsole.WriteLine(Modes.PrettifyHPModePage_3C(page.PageResponse));
else goto default;
else
goto default;
break;
}
@@ -290,7 +340,8 @@ namespace DiscImageChef.Core
DicConsole.WriteLine(Modes.PrettifyIBMModePage_3D(page.PageResponse));
else if(StringHandlers.CToString(vendorId).Trim() == "HP")
DicConsole.WriteLine(Modes.PrettifyHPModePage_3D(page.PageResponse));
else goto default;
else
goto default;
break;
}
@@ -300,7 +351,8 @@ namespace DiscImageChef.Core
DicConsole.WriteLine(Modes.PrettifyFujitsuModePage_3E(page.PageResponse));
else if(StringHandlers.CToString(vendorId).Trim() == "HP")
DicConsole.WriteLine(Modes.PrettifyHPModePage_3E(page.PageResponse));
else goto default;
else
goto default;
break;
}
@@ -309,7 +361,9 @@ namespace DiscImageChef.Core
if(page.Subpage != 0)
DicConsole.WriteLine("Found unknown mode page {0:X2}h subpage {1:X2}h", page.Page,
page.Subpage);
else DicConsole.WriteLine("Found unknown mode page {0:X2}h", page.Page);
else
DicConsole.WriteLine("Found unknown mode page {0:X2}h", page.Page);
break;
}
}