mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
Added READ DISC STRUCTURE.
This commit is contained in:
@@ -449,208 +449,252 @@ namespace DiscImageChef.Commands
|
||||
if (devType == DiscImageChef.Decoders.SCSI.PeripheralDeviceTypes.MultiMediaDevice)
|
||||
{
|
||||
|
||||
}
|
||||
byte[] confBuf;
|
||||
sense = dev.GetConfiguration(out confBuf, out senseBuf, dev.Timeout, out duration);
|
||||
|
||||
byte[] confBuf;
|
||||
sense = dev.GetConfiguration(out confBuf, out senseBuf, dev.Timeout, out duration);
|
||||
|
||||
if (!sense)
|
||||
{
|
||||
Decoders.SCSI.MMC.Features.SeparatedFeatures ftr = Decoders.SCSI.MMC.Features.Separate(confBuf);
|
||||
|
||||
DicConsole.DebugWriteLine("Device-Info command", "GET CONFIGURATION length is {0} bytes", ftr.DataLength);
|
||||
DicConsole.DebugWriteLine("Device-Info command", "GET CONFIGURATION current profile is {0:X4}h", ftr.CurrentProfile);
|
||||
if (ftr.Descriptors != null)
|
||||
if (!sense)
|
||||
{
|
||||
DicConsole.WriteLine("SCSI MMC GET CONFIGURATION Features:");
|
||||
foreach (Decoders.SCSI.MMC.Features.FeatureDescriptor desc in ftr.Descriptors)
|
||||
{
|
||||
DicConsole.DebugWriteLine("Device-Info command", "Feature {0:X4}h", desc.Code);
|
||||
Decoders.SCSI.MMC.Features.SeparatedFeatures ftr = Decoders.SCSI.MMC.Features.Separate(confBuf);
|
||||
|
||||
switch (desc.Code)
|
||||
DicConsole.DebugWriteLine("Device-Info command", "GET CONFIGURATION length is {0} bytes", ftr.DataLength);
|
||||
DicConsole.DebugWriteLine("Device-Info command", "GET CONFIGURATION current profile is {0:X4}h", ftr.CurrentProfile);
|
||||
if (ftr.Descriptors != null)
|
||||
{
|
||||
DicConsole.WriteLine("SCSI MMC GET CONFIGURATION Features:");
|
||||
foreach (Decoders.SCSI.MMC.Features.FeatureDescriptor desc in ftr.Descriptors)
|
||||
{
|
||||
case 0x0000:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0000(desc.Data));
|
||||
break;
|
||||
case 0x0001:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0001(desc.Data));
|
||||
break;
|
||||
case 0x0002:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0002(desc.Data));
|
||||
break;
|
||||
case 0x0003:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0003(desc.Data));
|
||||
break;
|
||||
case 0x0004:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0004(desc.Data));
|
||||
break;
|
||||
case 0x0010:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0010(desc.Data));
|
||||
break;
|
||||
case 0x001D:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_001D(desc.Data));
|
||||
break;
|
||||
case 0x001E:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_001E(desc.Data));
|
||||
break;
|
||||
case 0x001F:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_001F(desc.Data));
|
||||
break;
|
||||
case 0x0020:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0020(desc.Data));
|
||||
break;
|
||||
case 0x0021:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0021(desc.Data));
|
||||
break;
|
||||
case 0x0022:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0022(desc.Data));
|
||||
break;
|
||||
case 0x0023:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0023(desc.Data));
|
||||
break;
|
||||
case 0x0024:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0024(desc.Data));
|
||||
break;
|
||||
case 0x0025:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0025(desc.Data));
|
||||
break;
|
||||
case 0x0026:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0026(desc.Data));
|
||||
break;
|
||||
case 0x0027:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0027(desc.Data));
|
||||
break;
|
||||
case 0x0028:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0028(desc.Data));
|
||||
break;
|
||||
case 0x0029:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0029(desc.Data));
|
||||
break;
|
||||
case 0x002A:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002A(desc.Data));
|
||||
break;
|
||||
case 0x002B:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002B(desc.Data));
|
||||
break;
|
||||
case 0x002C:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002C(desc.Data));
|
||||
break;
|
||||
case 0x002D:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002D(desc.Data));
|
||||
break;
|
||||
case 0x002E:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002E(desc.Data));
|
||||
break;
|
||||
case 0x002F:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002F(desc.Data));
|
||||
break;
|
||||
case 0x0030:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0030(desc.Data));
|
||||
break;
|
||||
case 0x0031:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0031(desc.Data));
|
||||
break;
|
||||
case 0x0032:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0032(desc.Data));
|
||||
break;
|
||||
case 0x0033:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0033(desc.Data));
|
||||
break;
|
||||
case 0x0035:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0035(desc.Data));
|
||||
break;
|
||||
case 0x0037:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0037(desc.Data));
|
||||
break;
|
||||
case 0x0038:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0038(desc.Data));
|
||||
break;
|
||||
case 0x003A:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_003A(desc.Data));
|
||||
break;
|
||||
case 0x003B:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_003B(desc.Data));
|
||||
break;
|
||||
case 0x0040:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0040(desc.Data));
|
||||
break;
|
||||
case 0x0041:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0041(desc.Data));
|
||||
break;
|
||||
case 0x0042:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0042(desc.Data));
|
||||
break;
|
||||
case 0x0050:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0050(desc.Data));
|
||||
break;
|
||||
case 0x0051:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0051(desc.Data));
|
||||
break;
|
||||
case 0x0080:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0080(desc.Data));
|
||||
break;
|
||||
case 0x0100:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0100(desc.Data));
|
||||
break;
|
||||
case 0x0101:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0101(desc.Data));
|
||||
break;
|
||||
case 0x0102:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0102(desc.Data));
|
||||
break;
|
||||
case 0x0103:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0103(desc.Data));
|
||||
break;
|
||||
case 0x0104:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0104(desc.Data));
|
||||
break;
|
||||
case 0x0105:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0105(desc.Data));
|
||||
break;
|
||||
case 0x0106:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0106(desc.Data));
|
||||
break;
|
||||
case 0x0107:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0107(desc.Data));
|
||||
break;
|
||||
case 0x0108:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0108(desc.Data));
|
||||
break;
|
||||
case 0x0109:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0109(desc.Data));
|
||||
break;
|
||||
case 0x010A:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010A(desc.Data));
|
||||
break;
|
||||
case 0x010B:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010B(desc.Data));
|
||||
break;
|
||||
case 0x010C:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010C(desc.Data));
|
||||
break;
|
||||
case 0x010D:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010D(desc.Data));
|
||||
break;
|
||||
case 0x010E:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010E(desc.Data));
|
||||
break;
|
||||
case 0x0110:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0110(desc.Data));
|
||||
break;
|
||||
case 0x0113:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0113(desc.Data));
|
||||
break;
|
||||
case 0x0142:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0142(desc.Data));
|
||||
break;
|
||||
default:
|
||||
DicConsole.WriteLine("Found unknown feature code {0:X4}h", desc.Code);
|
||||
break;
|
||||
DicConsole.DebugWriteLine("Device-Info command", "Feature {0:X4}h", desc.Code);
|
||||
|
||||
switch (desc.Code)
|
||||
{
|
||||
case 0x0000:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0000(desc.Data));
|
||||
break;
|
||||
case 0x0001:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0001(desc.Data));
|
||||
break;
|
||||
case 0x0002:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0002(desc.Data));
|
||||
break;
|
||||
case 0x0003:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0003(desc.Data));
|
||||
break;
|
||||
case 0x0004:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0004(desc.Data));
|
||||
break;
|
||||
case 0x0010:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0010(desc.Data));
|
||||
break;
|
||||
case 0x001D:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_001D(desc.Data));
|
||||
break;
|
||||
case 0x001E:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_001E(desc.Data));
|
||||
break;
|
||||
case 0x001F:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_001F(desc.Data));
|
||||
break;
|
||||
case 0x0020:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0020(desc.Data));
|
||||
break;
|
||||
case 0x0021:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0021(desc.Data));
|
||||
break;
|
||||
case 0x0022:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0022(desc.Data));
|
||||
break;
|
||||
case 0x0023:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0023(desc.Data));
|
||||
break;
|
||||
case 0x0024:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0024(desc.Data));
|
||||
break;
|
||||
case 0x0025:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0025(desc.Data));
|
||||
break;
|
||||
case 0x0026:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0026(desc.Data));
|
||||
break;
|
||||
case 0x0027:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0027(desc.Data));
|
||||
break;
|
||||
case 0x0028:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0028(desc.Data));
|
||||
break;
|
||||
case 0x0029:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0029(desc.Data));
|
||||
break;
|
||||
case 0x002A:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002A(desc.Data));
|
||||
break;
|
||||
case 0x002B:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002B(desc.Data));
|
||||
break;
|
||||
case 0x002C:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002C(desc.Data));
|
||||
break;
|
||||
case 0x002D:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002D(desc.Data));
|
||||
break;
|
||||
case 0x002E:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002E(desc.Data));
|
||||
break;
|
||||
case 0x002F:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_002F(desc.Data));
|
||||
break;
|
||||
case 0x0030:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0030(desc.Data));
|
||||
break;
|
||||
case 0x0031:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0031(desc.Data));
|
||||
break;
|
||||
case 0x0032:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0032(desc.Data));
|
||||
break;
|
||||
case 0x0033:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0033(desc.Data));
|
||||
break;
|
||||
case 0x0035:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0035(desc.Data));
|
||||
break;
|
||||
case 0x0037:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0037(desc.Data));
|
||||
break;
|
||||
case 0x0038:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0038(desc.Data));
|
||||
break;
|
||||
case 0x003A:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_003A(desc.Data));
|
||||
break;
|
||||
case 0x003B:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_003B(desc.Data));
|
||||
break;
|
||||
case 0x0040:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0040(desc.Data));
|
||||
break;
|
||||
case 0x0041:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0041(desc.Data));
|
||||
break;
|
||||
case 0x0042:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0042(desc.Data));
|
||||
break;
|
||||
case 0x0050:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0050(desc.Data));
|
||||
break;
|
||||
case 0x0051:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0051(desc.Data));
|
||||
break;
|
||||
case 0x0080:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0080(desc.Data));
|
||||
break;
|
||||
case 0x0100:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0100(desc.Data));
|
||||
break;
|
||||
case 0x0101:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0101(desc.Data));
|
||||
break;
|
||||
case 0x0102:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0102(desc.Data));
|
||||
break;
|
||||
case 0x0103:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0103(desc.Data));
|
||||
break;
|
||||
case 0x0104:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0104(desc.Data));
|
||||
break;
|
||||
case 0x0105:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0105(desc.Data));
|
||||
break;
|
||||
case 0x0106:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0106(desc.Data));
|
||||
break;
|
||||
case 0x0107:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0107(desc.Data));
|
||||
break;
|
||||
case 0x0108:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0108(desc.Data));
|
||||
break;
|
||||
case 0x0109:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0109(desc.Data));
|
||||
break;
|
||||
case 0x010A:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010A(desc.Data));
|
||||
break;
|
||||
case 0x010B:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010B(desc.Data));
|
||||
break;
|
||||
case 0x010C:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010C(desc.Data));
|
||||
break;
|
||||
case 0x010D:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010D(desc.Data));
|
||||
break;
|
||||
case 0x010E:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_010E(desc.Data));
|
||||
break;
|
||||
case 0x0110:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0110(desc.Data));
|
||||
break;
|
||||
case 0x0113:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0113(desc.Data));
|
||||
break;
|
||||
case 0x0142:
|
||||
DicConsole.WriteLine(Decoders.SCSI.MMC.Features.Prettify_0142(desc.Data));
|
||||
break;
|
||||
default:
|
||||
DicConsole.WriteLine("Found unknown feature code {0:X4}h", desc.Code);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
DicConsole.DebugWriteLine("Device-Info command", "GET CONFIGURATION returned no feature descriptors");
|
||||
}
|
||||
|
||||
// TODO: DVD drives respond correctly to BD status.
|
||||
// While specification says if no medium is present
|
||||
// it should inform all possible capabilities,
|
||||
// testing drives show only supported media capabilities.
|
||||
/*
|
||||
byte[] strBuf;
|
||||
sense = dev.ReadDiscStructure(out strBuf, out senseBuf, MmcDiscStructureMediaType.DVD, 0, 0, MmcDiscStructureFormat.CapabilityList, 0, dev.Timeout, out duration);
|
||||
|
||||
if (!sense)
|
||||
{
|
||||
Decoders.SCSI.DiscStructureCapabilities.Capability[] caps = Decoders.SCSI.DiscStructureCapabilities.Decode(strBuf);
|
||||
if (caps != null)
|
||||
{
|
||||
foreach (Decoders.SCSI.DiscStructureCapabilities.Capability cap in caps)
|
||||
{
|
||||
if (cap.SDS && cap.RDS)
|
||||
DicConsole.WriteLine("Drive can READ/SEND DISC STRUCTURE format {0:X2}h", cap.FormatCode);
|
||||
else if (cap.SDS)
|
||||
DicConsole.WriteLine("Drive can SEND DISC STRUCTURE format {0:X2}h", cap.FormatCode);
|
||||
else if (cap.RDS)
|
||||
DicConsole.WriteLine("Drive can READ DISC STRUCTURE format {0:X2}h", cap.FormatCode);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
DicConsole.DebugWriteLine("Device-Info command", "GET CONFIGURATION returned no feature descriptors");
|
||||
|
||||
sense = dev.ReadDiscStructure(out strBuf, out senseBuf, MmcDiscStructureMediaType.BD, 0, 0, MmcDiscStructureFormat.CapabilityList, 0, dev.Timeout, out duration);
|
||||
|
||||
if (!sense)
|
||||
{
|
||||
Decoders.SCSI.DiscStructureCapabilities.Capability[] caps = Decoders.SCSI.DiscStructureCapabilities.Decode(strBuf);
|
||||
if (caps != null)
|
||||
{
|
||||
foreach (Decoders.SCSI.DiscStructureCapabilities.Capability cap in caps)
|
||||
{
|
||||
if (cap.SDS && cap.RDS)
|
||||
DicConsole.WriteLine("Drive can READ/SEND DISC STRUCTURE format {0:X2}h", cap.FormatCode);
|
||||
else if (cap.SDS)
|
||||
DicConsole.WriteLine("Drive can SEND DISC STRUCTURE format {0:X2}h", cap.FormatCode);
|
||||
else if (cap.RDS)
|
||||
DicConsole.WriteLine("Drive can READ DISC STRUCTURE format {0:X2}h", cap.FormatCode);
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user