mirror of
https://github.com/aaru-dps/Aaru.Server.git
synced 2025-12-16 19:24:27 +00:00
REFACTOR: Unnecessary whitespace removal.
This commit is contained in:
@@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
// Information about this assembly is defined by the following attributes.
|
// Information about this assembly is defined by the following attributes.
|
||||||
// Change them to the values specific to your project.
|
// Change them to the values specific to your project.
|
||||||
|
|
||||||
[assembly: AssemblyTitle("DiscImageChef.Core")]
|
[assembly: AssemblyTitle("DiscImageChef.Core")]
|
||||||
@@ -50,7 +50,7 @@ using System.Reflection;
|
|||||||
|
|
||||||
[assembly: AssemblyVersion("3.99.6.0")]
|
[assembly: AssemblyVersion("3.99.6.0")]
|
||||||
|
|
||||||
// The following attributes are used to specify the signing key for the assembly,
|
// The following attributes are used to specify the signing key for the assembly,
|
||||||
// if desired. See the Mono documentation for more information about signing.
|
// if desired. See the Mono documentation for more information about signing.
|
||||||
|
|
||||||
//[assembly: AssemblyDelaySign(false)]
|
//[assembly: AssemblyDelaySign(false)]
|
||||||
|
|||||||
@@ -825,7 +825,7 @@ namespace DiscImageChef.Decoders.ATA
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
UltraFastIDE = 0x0400,
|
UltraFastIDE = 0x0400,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Disk transfer rate is > 5 Mb/s but <= 10 Mb/s
|
/// Disk transfer rate is > 5 Mb/s but <= 10 Mb/s
|
||||||
/// Obsoleted in ATA-2
|
/// Obsoleted in ATA-2
|
||||||
/// </summary>
|
/// </summary>
|
||||||
FastIDE = 0x0200,
|
FastIDE = 0x0200,
|
||||||
|
|||||||
@@ -247,7 +247,7 @@ namespace DiscImageChef.Decoders.Bluray
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte SpareAreaFullFlags;
|
public byte SpareAreaFullFlags;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Byte 57
|
/// Byte 57
|
||||||
/// Reserved
|
/// Reserved
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public byte Reserved7;
|
public byte Reserved7;
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)] public byte[] label;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)] public byte[] label;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Checksum from <see cref="amiga"/> to <see cref="label"/>
|
/// Checksum from <see cref="amiga"/> to <see cref="label"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint headerChecksum;
|
public uint headerChecksum;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -126,7 +126,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] public byte[] prologue;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] public byte[] prologue;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Spare, usually <see cref="RawAddressField.sector"/>
|
/// Spare, usually <see cref="RawAddressField.sector"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public byte spare;
|
public byte spare;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -121,11 +121,11 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte sector;
|
public byte sector;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="IBMSectorSizeCode"/>
|
/// <see cref="IBMSectorSizeCode"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public IBMSectorSizeCode sectorSize;
|
public IBMSectorSizeCode sectorSize;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="aone"/> to end of <see cref="sectorSize"/>
|
/// CRC16 from <see cref="aone"/> to end of <see cref="sectorSize"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
@@ -152,7 +152,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte[] data;
|
public byte[] data;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="aone"/> to end of <see cref="data"/>
|
/// CRC16 from <see cref="aone"/> to end of <see cref="data"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] public byte[] ctwo;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] public byte[] ctwo;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Set to <see cref="IBMIdType.IndexMark"/>
|
/// Set to <see cref="IBMIdType.IndexMark"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public IBMIdType type;
|
public IBMIdType type;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -149,11 +149,11 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte sector;
|
public byte sector;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="IBMSectorSizeCode"/>
|
/// <see cref="IBMSectorSizeCode"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public IBMSectorSizeCode sectorSize;
|
public IBMSectorSizeCode sectorSize;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="aone"/> to end of <see cref="sectorSize"/>
|
/// CRC16 from <see cref="aone"/> to end of <see cref="sectorSize"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
@@ -180,7 +180,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte[] data;
|
public byte[] data;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="aone"/> to end of <see cref="data"/>
|
/// CRC16 from <see cref="aone"/> to end of <see cref="data"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] public byte[] ctwo;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] public byte[] ctwo;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Set to <see cref="IBMIdType.IndexMark"/>
|
/// Set to <see cref="IBMIdType.IndexMark"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public IBMIdType type;
|
public IBMIdType type;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -150,11 +150,11 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte sector;
|
public byte sector;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="IBMSectorSizeCode"/>
|
/// <see cref="IBMSectorSizeCode"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public IBMSectorSizeCode sectorSize;
|
public IBMSectorSizeCode sectorSize;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="aone"/> to end of <see cref="sectorSize"/>
|
/// CRC16 from <see cref="aone"/> to end of <see cref="sectorSize"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
@@ -181,7 +181,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte[] data;
|
public byte[] data;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="aone"/> to end of <see cref="data"/>
|
/// CRC16 from <see cref="aone"/> to end of <see cref="data"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)] public byte[] zero;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)] public byte[] zero;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Set to <see cref="IBMIdType.IndexMark"/>
|
/// Set to <see cref="IBMIdType.IndexMark"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public IBMIdType type;
|
public IBMIdType type;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -140,11 +140,11 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte sector;
|
public byte sector;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="IBMSectorSizeCode"/>
|
/// <see cref="IBMSectorSizeCode"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public IBMSectorSizeCode sectorSize;
|
public IBMSectorSizeCode sectorSize;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="type"/> to end of <see cref="sectorSize"/>
|
/// CRC16 from <see cref="type"/> to end of <see cref="sectorSize"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
@@ -167,7 +167,7 @@ namespace DiscImageChef.Decoders.Floppy
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte[] data;
|
public byte[] data;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// CRC16 from <see cref="type"/> to end of <see cref="data"/>
|
/// CRC16 from <see cref="type"/> to end of <see cref="data"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort crc;
|
public ushort crc;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ namespace DiscImageChef.Decoders.PCMCIA
|
|||||||
public class ChecksumTuple
|
public class ChecksumTuple
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="TupleCodes.CISTPL_CHECKSUM"/>
|
/// <see cref="TupleCodes.CISTPL_CHECKSUM"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TupleCodes Code;
|
public TupleCodes Code;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -75,7 +75,7 @@ namespace DiscImageChef.Decoders.PCMCIA
|
|||||||
public class IndirectTuple
|
public class IndirectTuple
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="TupleCodes.CISTPL_INDIRECT"/>
|
/// <see cref="TupleCodes.CISTPL_INDIRECT"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TupleCodes Code;
|
public TupleCodes Code;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -90,7 +90,7 @@ namespace DiscImageChef.Decoders.PCMCIA
|
|||||||
public class LinkTargetTuple
|
public class LinkTargetTuple
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="TupleCodes.CISTPL_LINKTARGET"/>
|
/// <see cref="TupleCodes.CISTPL_LINKTARGET"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TupleCodes Code;
|
public TupleCodes Code;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -140,7 +140,7 @@ namespace DiscImageChef.Decoders.PCMCIA
|
|||||||
public class MultipleFunctionLinkTuple
|
public class MultipleFunctionLinkTuple
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="TupleCodes.CISTPL_LONGLINK_MFC"/>
|
/// <see cref="TupleCodes.CISTPL_LONGLINK_MFC"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TupleCodes Code;
|
public TupleCodes Code;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -160,7 +160,7 @@ namespace DiscImageChef.Decoders.PCMCIA
|
|||||||
public class NoLinkTuple
|
public class NoLinkTuple
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="TupleCodes.CISTPL_NO_LINK"/>
|
/// <see cref="TupleCodes.CISTPL_NO_LINK"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TupleCodes Code;
|
public TupleCodes Code;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -172,7 +172,7 @@ namespace DiscImageChef.Decoders.PCMCIA
|
|||||||
public class AlternateStringTuple
|
public class AlternateStringTuple
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="TupleCodes.CISTPL_ALTSTR"/>
|
/// <see cref="TupleCodes.CISTPL_ALTSTR"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TupleCodes Code;
|
public TupleCodes Code;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ namespace DiscImageChef.Decoders.SCSI
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort DisconnectTimeLimit;
|
public ushort DisconnectTimeLimit;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Max. time in 100 µs increments allowed to use the bus before disconnecting, if granted the privilege and not restricted by <see cref="DTDC"/>
|
/// Max. time in 100 µs increments allowed to use the bus before disconnecting, if granted the privilege and not restricted by <see cref="DTDC"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort ConnectTimeLimit;
|
public ushort ConnectTimeLimit;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -49,11 +49,11 @@ namespace DiscImageChef.Decoders.SCSI
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public bool PS;
|
public bool PS;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Used in mode select to change partition to one specified in <see cref="ActivePartition"/>
|
/// Used in mode select to change partition to one specified in <see cref="ActivePartition"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool CAP;
|
public bool CAP;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Used in mode select to change format to one specified in <see cref="ActiveFormat"/>
|
/// Used in mode select to change format to one specified in <see cref="ActiveFormat"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool CAF;
|
public bool CAF;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -199,7 +199,7 @@ namespace DiscImageChef.Decoders.SCSI
|
|||||||
return sb.ToString();
|
return sb.ToString();
|
||||||
}
|
}
|
||||||
#endregion Mode Page 0x1C: Informational exceptions control page
|
#endregion Mode Page 0x1C: Informational exceptions control page
|
||||||
|
|
||||||
#region Mode Page 0x1C subpage 0x01: Background Control mode page
|
#region Mode Page 0x1C subpage 0x01: Background Control mode page
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Background Control mode page
|
/// Background Control mode page
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ namespace DiscImageChef.Decoders.SCSI
|
|||||||
{
|
{
|
||||||
return PrettifyModeHeader(DecodeModeHeader6(modeResponse, deviceType), deviceType);
|
return PrettifyModeHeader(DecodeModeHeader6(modeResponse, deviceType), deviceType);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DecodedMode? DecodeMode6(byte[] modeResponse, PeripheralDeviceTypes deviceType)
|
public static DecodedMode? DecodeMode6(byte[] modeResponse, PeripheralDeviceTypes deviceType)
|
||||||
{
|
{
|
||||||
ModeHeader? hdr = DecodeModeHeader6(modeResponse, deviceType);
|
ModeHeader? hdr = DecodeModeHeader6(modeResponse, deviceType);
|
||||||
|
|||||||
@@ -571,7 +571,7 @@ namespace DiscImageChef.Devices
|
|||||||
|
|
||||||
#region Commands defined on ATA/ATAPI-8 rev. 3f
|
#region Commands defined on ATA/ATAPI-8 rev. 3f
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sends a Non Volatile Cache subcommand. <see cref="AtaNonVolatileCacheSubCommands"/>
|
/// Sends a Non Volatile Cache subcommand. <see cref="AtaNonVolatileCacheSubCommands"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
NonVolatileCacheCommand = 0xB6,
|
NonVolatileCacheCommand = 0xB6,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -735,7 +735,7 @@ namespace DiscImageChef.Devices
|
|||||||
{
|
{
|
||||||
#region Commands defined on ATA/ATAPI-6 rev. 3b
|
#region Commands defined on ATA/ATAPI-6 rev. 3b
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Disables any change made by <see cref="Set"/>
|
/// Disables any change made by <see cref="Set"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
Restore = 0xC0,
|
Restore = 0xC0,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -778,7 +778,7 @@ namespace DiscImageChef.Devices
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
SetPassword = 0x01,
|
SetPassword = 0x01,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Disables <see cref="Lock"/>
|
/// Disables <see cref="Lock"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
UnLock = 0x03,
|
UnLock = 0x03,
|
||||||
#endregion Commands defined on ATA/ATAPI-6 rev. 3b
|
#endregion Commands defined on ATA/ATAPI-6 rev. 3b
|
||||||
@@ -814,7 +814,7 @@ namespace DiscImageChef.Devices
|
|||||||
RemoveLbaFromNvCache = 0x11,
|
RemoveLbaFromNvCache = 0x11,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Disables the Non Volatile Cache Power Mode
|
/// Disables the Non Volatile Cache Power Mode
|
||||||
/// <see cref="SetNvCachePowerMode"/>
|
/// <see cref="SetNvCachePowerMode"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
ReturnFromNvCachePowerMode = 0x01,
|
ReturnFromNvCachePowerMode = 0x01,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -1059,7 +1059,7 @@ namespace DiscImageChef.Devices
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
WriteDiagnosticOld = 0x1B,
|
WriteDiagnosticOld = 0x1B,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Requests the data after completion of a <see cref="WriteDiagnostic"/>
|
/// Requests the data after completion of a <see cref="WriteDiagnostic"/>
|
||||||
/// ANSI X3T9.3 No. 185 (SASI)
|
/// ANSI X3T9.3 No. 185 (SASI)
|
||||||
/// </summary>
|
/// </summary>
|
||||||
ReadDiagnostic = 0x1C,
|
ReadDiagnostic = 0x1C,
|
||||||
@@ -1464,12 +1464,12 @@ namespace DiscImageChef.Devices
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
ReadSerialNumber = 0xAB,
|
ReadSerialNumber = 0xAB,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Receives information about a previous or current <see cref="ExtendedCopy"/>
|
/// Receives information about a previous or current <see cref="ExtendedCopy"/>
|
||||||
/// SPC-2 rev. 20
|
/// SPC-2 rev. 20
|
||||||
/// </summary>
|
/// </summary>
|
||||||
ReceiveCopyResults = 0x84,
|
ReceiveCopyResults = 0x84,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Requests the data after completion of a <see cref="SendDiagnostic"/>
|
/// Requests the data after completion of a <see cref="SendDiagnostic"/>
|
||||||
/// ECMA-111 (SCSI-1)
|
/// ECMA-111 (SCSI-1)
|
||||||
/// </summary>
|
/// </summary>
|
||||||
ReceiveDiagnostic = SasiCommands.ReadDiagnostic,
|
ReceiveDiagnostic = SasiCommands.ReadDiagnostic,
|
||||||
@@ -1525,7 +1525,7 @@ namespace DiscImageChef.Devices
|
|||||||
ServiceActionIn = 0x9E,
|
ServiceActionIn = 0x9E,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Extended commands
|
/// Extended commands
|
||||||
/// SPC-4
|
/// SPC-4
|
||||||
/// </summary>
|
/// </summary>
|
||||||
ServiceActionOut = 0x9F,
|
ServiceActionOut = 0x9F,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -2276,7 +2276,7 @@ namespace DiscImageChef.Devices
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
ReportVolumeTypesSupported = 0x44,
|
ReportVolumeTypesSupported = 0x44,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the results of <see cref="SendVolumeTag"/>
|
/// Gets the results of <see cref="SendVolumeTag"/>
|
||||||
/// SCSI-2 X3T9.2/375R rev. 10l
|
/// SCSI-2 X3T9.2/375R rev. 10l
|
||||||
/// </summary>
|
/// </summary>
|
||||||
RequestVolumeElementAddress = 0xB5,
|
RequestVolumeElementAddress = 0xB5,
|
||||||
|
|||||||
@@ -187,7 +187,7 @@ namespace DiscImageChef.Devices.FreeBSD
|
|||||||
struct CcbScsiio
|
struct CcbScsiio
|
||||||
{
|
{
|
||||||
public CcbHdr ccb_h;
|
public CcbHdr ccb_h;
|
||||||
/// <summary>Ptr for next CCB for action</summary>
|
/// <summary>Ptr for next CCB for action</summary>
|
||||||
public IntPtr next_ccb;
|
public IntPtr next_ccb;
|
||||||
/// <summary>Ptr to mapping info</summary>
|
/// <summary>Ptr to mapping info</summary>
|
||||||
public IntPtr req_map;
|
public IntPtr req_map;
|
||||||
@@ -233,7 +233,7 @@ namespace DiscImageChef.Devices.FreeBSD
|
|||||||
struct CcbScsiio64
|
struct CcbScsiio64
|
||||||
{
|
{
|
||||||
public CcbHdr ccb_h;
|
public CcbHdr ccb_h;
|
||||||
/// <summary>Ptr for next CCB for action</summary>
|
/// <summary>Ptr for next CCB for action</summary>
|
||||||
public IntPtr next_ccb;
|
public IntPtr next_ccb;
|
||||||
/// <summary>Ptr to mapping info</summary>
|
/// <summary>Ptr to mapping info</summary>
|
||||||
public IntPtr req_map;
|
public IntPtr req_map;
|
||||||
@@ -280,7 +280,7 @@ namespace DiscImageChef.Devices.FreeBSD
|
|||||||
struct CcbAtaio
|
struct CcbAtaio
|
||||||
{
|
{
|
||||||
public CcbHdr ccb_h;
|
public CcbHdr ccb_h;
|
||||||
/// <summary>Ptr for next CCB for action</summary>
|
/// <summary>Ptr for next CCB for action</summary>
|
||||||
public IntPtr next_ccb;
|
public IntPtr next_ccb;
|
||||||
/// <summary>ATA command register set</summary>
|
/// <summary>ATA command register set</summary>
|
||||||
public AtaCmd cmd;
|
public AtaCmd cmd;
|
||||||
@@ -443,7 +443,7 @@ namespace DiscImageChef.Devices.FreeBSD
|
|||||||
struct CcbNvmeio
|
struct CcbNvmeio
|
||||||
{
|
{
|
||||||
public CcbHdr ccb_h;
|
public CcbHdr ccb_h;
|
||||||
/// <summary>Ptr for next CCB for action</summary>
|
/// <summary>Ptr for next CCB for action</summary>
|
||||||
public IntPtr next_ccb;
|
public IntPtr next_ccb;
|
||||||
/// <summary>NVME command, per NVME standard</summary>
|
/// <summary>NVME command, per NVME standard</summary>
|
||||||
public NvmeCommand cmd;
|
public NvmeCommand cmd;
|
||||||
@@ -578,12 +578,12 @@ namespace DiscImageChef.Devices.FreeBSD
|
|||||||
public uint io_ocr;
|
public uint io_ocr;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Card CID -- raw
|
/// Card CID -- raw
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)] public uint[] card_cid;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)] public uint[] card_cid;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Card CID -- parsed
|
/// Card CID -- parsed
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public MmcCid cid;
|
public MmcCid cid;
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -38,13 +38,13 @@ using System.Runtime.InteropServices;
|
|||||||
namespace DiscImageChef.Devices.Windows
|
namespace DiscImageChef.Devices.Windows
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// A place for "higher level" related functions
|
// A place for "higher level" related functions
|
||||||
// You might not want to keep these in the USB class... your choice
|
// You might not want to keep these in the USB class... your choice
|
||||||
//
|
//
|
||||||
partial class Usb
|
partial class Usb
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Get a list of all connected devices
|
// Get a list of all connected devices
|
||||||
//
|
//
|
||||||
static internal List<UsbDevice> GetConnectedDevices()
|
static internal List<UsbDevice> GetConnectedDevices()
|
||||||
{
|
{
|
||||||
@@ -55,7 +55,7 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
return devList;
|
return devList;
|
||||||
}
|
}
|
||||||
|
|
||||||
// private routine for enumerating a hub
|
// private routine for enumerating a hub
|
||||||
static void ListHub(UsbHub hub, List<UsbDevice> devList)
|
static void ListHub(UsbHub hub, List<UsbDevice> devList)
|
||||||
{
|
{
|
||||||
foreach(UsbPort port in hub.GetPorts())
|
foreach(UsbPort port in hub.GetPorts())
|
||||||
@@ -64,7 +64,7 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Find a device based upon it's DriverKeyName
|
// Find a device based upon it's DriverKeyName
|
||||||
//
|
//
|
||||||
static internal UsbDevice FindDeviceByDriverKeyName(string driverKeyName)
|
static internal UsbDevice FindDeviceByDriverKeyName(string driverKeyName)
|
||||||
{
|
{
|
||||||
@@ -79,7 +79,7 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
return foundDevice;
|
return foundDevice;
|
||||||
}
|
}
|
||||||
|
|
||||||
// private routine for enumerating a hub
|
// private routine for enumerating a hub
|
||||||
static void SearchHubDriverKeyName(UsbHub hub, ref UsbDevice foundDevice, string driverKeyName)
|
static void SearchHubDriverKeyName(UsbHub hub, ref UsbDevice foundDevice, string driverKeyName)
|
||||||
{
|
{
|
||||||
foreach(UsbPort port in hub.GetPorts())
|
foreach(UsbPort port in hub.GetPorts())
|
||||||
@@ -97,7 +97,7 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Find a device based upon it's Instance ID
|
// Find a device based upon it's Instance ID
|
||||||
//
|
//
|
||||||
static internal UsbDevice FindDeviceByInstanceId(string instanceId)
|
static internal UsbDevice FindDeviceByInstanceId(string instanceId)
|
||||||
{
|
{
|
||||||
@@ -112,7 +112,7 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
return foundDevice;
|
return foundDevice;
|
||||||
}
|
}
|
||||||
|
|
||||||
// private routine for enumerating a hub
|
// private routine for enumerating a hub
|
||||||
static void SearchHubInstanceId(UsbHub hub, ref UsbDevice foundDevice, string instanceId)
|
static void SearchHubInstanceId(UsbHub hub, ref UsbDevice foundDevice, string instanceId)
|
||||||
{
|
{
|
||||||
foreach(UsbPort port in hub.GetPorts())
|
foreach(UsbPort port in hub.GetPorts())
|
||||||
@@ -134,11 +134,11 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
internal const string GuidDevinterfaceCdrom = "53f56308-b6bf-11d0-94f2-00a0c91efb8b";
|
internal const string GuidDevinterfaceCdrom = "53f56308-b6bf-11d0-94f2-00a0c91efb8b";
|
||||||
internal const string GuidDevinterfaceFloppy = "53f56311-b6bf-11d0-94f2-00a0c91efb8b";
|
internal const string GuidDevinterfaceFloppy = "53f56311-b6bf-11d0-94f2-00a0c91efb8b";
|
||||||
|
|
||||||
//typedef struct _STORAGE_DEVICE_NUMBER {
|
//typedef struct _STORAGE_DEVICE_NUMBER {
|
||||||
// DEVICE_TYPE DeviceType;
|
// DEVICE_TYPE DeviceType;
|
||||||
// ULONG DeviceNumber;
|
// ULONG DeviceNumber;
|
||||||
// ULONG PartitionNumber;
|
// ULONG PartitionNumber;
|
||||||
//} STORAGE_DEVICE_NUMBER, *PSTORAGE_DEVICE_NUMBER;
|
//} STORAGE_DEVICE_NUMBER, *PSTORAGE_DEVICE_NUMBER;
|
||||||
[StructLayout(LayoutKind.Sequential)]
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
struct StorageDeviceNumber
|
struct StorageDeviceNumber
|
||||||
{
|
{
|
||||||
@@ -147,34 +147,34 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
internal int PartitionNumber;
|
internal int PartitionNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
//CMAPI CONFIGRET WINAPI CM_Get_Parent(
|
//CMAPI CONFIGRET WINAPI CM_Get_Parent(
|
||||||
// OUT PDEVINST pdnDevInst,
|
// OUT PDEVINST pdnDevInst,
|
||||||
// IN DEVINST dnDevInst,
|
// IN DEVINST dnDevInst,
|
||||||
// IN ULONG ulFlags
|
// IN ULONG ulFlags
|
||||||
//);
|
//);
|
||||||
[DllImport("setupapi.dll")]
|
[DllImport("setupapi.dll")]
|
||||||
static extern int CM_Get_Parent(out IntPtr pdnDevInst, IntPtr dnDevInst, int ulFlags);
|
static extern int CM_Get_Parent(out IntPtr pdnDevInst, IntPtr dnDevInst, int ulFlags);
|
||||||
|
|
||||||
//CMAPI CONFIGRET WINAPI CM_Get_Device_ID(
|
//CMAPI CONFIGRET WINAPI CM_Get_Device_ID(
|
||||||
// IN DEVINST dnDevInst,
|
// IN DEVINST dnDevInst,
|
||||||
// OUT PTCHAR Buffer,
|
// OUT PTCHAR Buffer,
|
||||||
// IN ULONG BufferLen,
|
// IN ULONG BufferLen,
|
||||||
// IN ULONG ulFlags
|
// IN ULONG ulFlags
|
||||||
//);
|
//);
|
||||||
[DllImport("setupapi.dll", CharSet = CharSet.Auto)]
|
[DllImport("setupapi.dll", CharSet = CharSet.Auto)]
|
||||||
static extern int CM_Get_Device_ID(IntPtr dnDevInst, IntPtr buffer, int bufferLen, int ulFlags);
|
static extern int CM_Get_Device_ID(IntPtr dnDevInst, IntPtr buffer, int bufferLen, int ulFlags);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Find a device based upon a Drive Letter
|
// Find a device based upon a Drive Letter
|
||||||
//
|
//
|
||||||
static internal UsbDevice FindDriveLetter(string driveLetter, string deviceGuid)
|
static internal UsbDevice FindDriveLetter(string driveLetter, string deviceGuid)
|
||||||
{
|
{
|
||||||
UsbDevice foundDevice = null;
|
UsbDevice foundDevice = null;
|
||||||
string instanceId = "";
|
string instanceId = "";
|
||||||
|
|
||||||
// We start by getting the unique DeviceNumber of the given
|
// We start by getting the unique DeviceNumber of the given
|
||||||
// DriveLetter. We'll use this later to find a matching
|
// DriveLetter. We'll use this later to find a matching
|
||||||
// DevicePath "symbolic name"
|
// DevicePath "symbolic name"
|
||||||
int devNum = GetDeviceNumber(@"\\.\" + driveLetter.TrimEnd('\\'));
|
int devNum = GetDeviceNumber(@"\\.\" + driveLetter.TrimEnd('\\'));
|
||||||
if(devNum < 0) return null;
|
if(devNum < 0) return null;
|
||||||
|
|
||||||
@@ -186,9 +186,9 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
UsbDevice foundDevice = null;
|
UsbDevice foundDevice = null;
|
||||||
string instanceId = "";
|
string instanceId = "";
|
||||||
|
|
||||||
// We start by getting the unique DeviceNumber of the given
|
// We start by getting the unique DeviceNumber of the given
|
||||||
// DriveLetter. We'll use this later to find a matching
|
// DriveLetter. We'll use this later to find a matching
|
||||||
// DevicePath "symbolic name"
|
// DevicePath "symbolic name"
|
||||||
int devNum = GetDeviceNumber(drivePath);
|
int devNum = GetDeviceNumber(drivePath);
|
||||||
if(devNum < 0) return null;
|
if(devNum < 0) return null;
|
||||||
|
|
||||||
@@ -196,7 +196,7 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Find a device based upon a Drive Letter
|
// Find a device based upon a Drive Letter
|
||||||
//
|
//
|
||||||
static internal UsbDevice FindDeviceNumber(int devNum, string deviceGuid)
|
static internal UsbDevice FindDeviceNumber(int devNum, string deviceGuid)
|
||||||
{
|
{
|
||||||
@@ -205,8 +205,8 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
|
|
||||||
Guid diskGuid = new Guid(deviceGuid);
|
Guid diskGuid = new Guid(deviceGuid);
|
||||||
|
|
||||||
// We start at the "root" of the device tree and look for all
|
// We start at the "root" of the device tree and look for all
|
||||||
// devices that match the interface GUID of a disk
|
// devices that match the interface GUID of a disk
|
||||||
IntPtr h = SetupDiGetClassDevs(ref diskGuid, 0, IntPtr.Zero, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
|
IntPtr h = SetupDiGetClassDevs(ref diskGuid, 0, IntPtr.Zero, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
|
||||||
if(h.ToInt32() != INVALID_HANDLE_VALUE)
|
if(h.ToInt32() != INVALID_HANDLE_VALUE)
|
||||||
{
|
{
|
||||||
@@ -214,34 +214,34 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
int i = 0;
|
int i = 0;
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
// create a Device Interface Data structure
|
// create a Device Interface Data structure
|
||||||
SpDeviceInterfaceData dia = new SpDeviceInterfaceData();
|
SpDeviceInterfaceData dia = new SpDeviceInterfaceData();
|
||||||
dia.cbSize = Marshal.SizeOf(dia);
|
dia.cbSize = Marshal.SizeOf(dia);
|
||||||
|
|
||||||
// start the enumeration
|
// start the enumeration
|
||||||
success = SetupDiEnumDeviceInterfaces(h, IntPtr.Zero, ref diskGuid, i, ref dia);
|
success = SetupDiEnumDeviceInterfaces(h, IntPtr.Zero, ref diskGuid, i, ref dia);
|
||||||
if(success)
|
if(success)
|
||||||
{
|
{
|
||||||
// build a DevInfo Data structure
|
// build a DevInfo Data structure
|
||||||
SpDevinfoData da = new SpDevinfoData();
|
SpDevinfoData da = new SpDevinfoData();
|
||||||
da.cbSize = Marshal.SizeOf(da);
|
da.cbSize = Marshal.SizeOf(da);
|
||||||
|
|
||||||
// build a Device Interface Detail Data structure
|
// build a Device Interface Detail Data structure
|
||||||
SpDeviceInterfaceDetailData didd = new SpDeviceInterfaceDetailData();
|
SpDeviceInterfaceDetailData didd = new SpDeviceInterfaceDetailData();
|
||||||
didd.cbSize = 4 + Marshal.SystemDefaultCharSize; // trust me :)
|
didd.cbSize = 4 + Marshal.SystemDefaultCharSize; // trust me :)
|
||||||
|
|
||||||
// now we can get some more detailed information
|
// now we can get some more detailed information
|
||||||
int nRequiredSize = 0;
|
int nRequiredSize = 0;
|
||||||
int nBytes = BUFFER_SIZE;
|
int nBytes = BUFFER_SIZE;
|
||||||
if(SetupDiGetDeviceInterfaceDetail(h, ref dia, ref didd, nBytes, ref nRequiredSize, ref da))
|
if(SetupDiGetDeviceInterfaceDetail(h, ref dia, ref didd, nBytes, ref nRequiredSize, ref da))
|
||||||
if(GetDeviceNumber(didd.DevicePath) == devNum)
|
if(GetDeviceNumber(didd.DevicePath) == devNum)
|
||||||
{
|
{
|
||||||
// current InstanceID is at the "USBSTOR" level, so we
|
// current InstanceID is at the "USBSTOR" level, so we
|
||||||
// need up "move up" one level to get to the "USB" level
|
// need up "move up" one level to get to the "USB" level
|
||||||
IntPtr ptrPrevious;
|
IntPtr ptrPrevious;
|
||||||
CM_Get_Parent(out ptrPrevious, da.DevInst, 0);
|
CM_Get_Parent(out ptrPrevious, da.DevInst, 0);
|
||||||
|
|
||||||
// Now we get the InstanceID of the USB level device
|
// Now we get the InstanceID of the USB level device
|
||||||
IntPtr ptrInstanceBuf = Marshal.AllocHGlobal(nBytes);
|
IntPtr ptrInstanceBuf = Marshal.AllocHGlobal(nBytes);
|
||||||
CM_Get_Device_ID(ptrPrevious, ptrInstanceBuf, nBytes, 0);
|
CM_Get_Device_ID(ptrPrevious, ptrInstanceBuf, nBytes, 0);
|
||||||
instanceId = Marshal.PtrToStringAuto(ptrInstanceBuf);
|
instanceId = Marshal.PtrToStringAuto(ptrInstanceBuf);
|
||||||
@@ -258,12 +258,12 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
SetupDiDestroyDeviceInfoList(h);
|
SetupDiDestroyDeviceInfoList(h);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Did we find an InterfaceID of a USB device?
|
// Did we find an InterfaceID of a USB device?
|
||||||
if(instanceId.StartsWith("USB\\")) foundDevice = FindDeviceByInstanceId(instanceId);
|
if(instanceId.StartsWith("USB\\")) foundDevice = FindDeviceByInstanceId(instanceId);
|
||||||
return foundDevice;
|
return foundDevice;
|
||||||
}
|
}
|
||||||
|
|
||||||
// return a unique device number for the given device path
|
// return a unique device number for the given device path
|
||||||
static int GetDeviceNumber(string devicePath)
|
static int GetDeviceNumber(string devicePath)
|
||||||
{
|
{
|
||||||
int ans = -1;
|
int ans = -1;
|
||||||
@@ -280,8 +280,8 @@ namespace DiscImageChef.Devices.Windows
|
|||||||
IntPtr.Zero))
|
IntPtr.Zero))
|
||||||
{
|
{
|
||||||
sdn = (StorageDeviceNumber)Marshal.PtrToStructure(ptrSdn, typeof(StorageDeviceNumber));
|
sdn = (StorageDeviceNumber)Marshal.PtrToStructure(ptrSdn, typeof(StorageDeviceNumber));
|
||||||
// just my way of combining the relevant parts of the
|
// just my way of combining the relevant parts of the
|
||||||
// STORAGE_DEVICE_NUMBER into a single number
|
// STORAGE_DEVICE_NUMBER into a single number
|
||||||
ans = (sdn.DeviceType << 8) + sdn.DeviceNumber;
|
ans = (sdn.DeviceType << 8) + sdn.DeviceNumber;
|
||||||
}
|
}
|
||||||
Marshal.FreeHGlobal(ptrSdn);
|
Marshal.FreeHGlobal(ptrSdn);
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public uint flags;
|
public uint flags;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Compression algorithm, <see cref="ChdCompression"/>
|
/// Compression algorithm, <see cref="ChdCompression"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint compression;
|
public uint compression;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -176,7 +176,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public uint flags;
|
public uint flags;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Compression algorithm, <see cref="ChdCompression"/>
|
/// Compression algorithm, <see cref="ChdCompression"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint compression;
|
public uint compression;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -233,7 +233,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public uint flags;
|
public uint flags;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Compression algorithm, <see cref="ChdCompression"/>
|
/// Compression algorithm, <see cref="ChdCompression"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint compression;
|
public uint compression;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -326,7 +326,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public uint flags;
|
public uint flags;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Compression algorithm, <see cref="ChdCompression"/>
|
/// Compression algorithm, <see cref="ChdCompression"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint compression;
|
public uint compression;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct ParallelsHeader
|
struct ParallelsHeader
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Magic, <see cref="Parallels.parallelsMagic"/> or <see cref="Parallels.parallelsExtMagic"/>
|
/// Magic, <see cref="Parallels.parallelsMagic"/> or <see cref="Parallels.parallelsExtMagic"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)] public byte[] magic;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)] public byte[] magic;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct QCowHeader
|
struct QCowHeader
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="Qcow.QCOW_MAGIC"/>
|
/// <see cref="Qcow.QCOW_MAGIC"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint magic;
|
public uint magic;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -77,7 +77,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public ulong backing_file_offset;
|
public ulong backing_file_offset;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Size of <see cref="backing_file_offset"/>
|
/// Size of <see cref="backing_file_offset"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint backing_file_size;
|
public uint backing_file_size;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct QCow2Header
|
struct QCow2Header
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="Qcow2.QCOW_MAGIC"/>
|
/// <see cref="Qcow2.QCOW_MAGIC"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint magic;
|
public uint magic;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -92,7 +92,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public ulong backing_file_offset;
|
public ulong backing_file_offset;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Size of <see cref="backing_file_offset"/>
|
/// Size of <see cref="backing_file_offset"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint backing_file_size;
|
public uint backing_file_size;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct QedHeader
|
struct QedHeader
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="Qed.QED_MAGIC"/>
|
/// <see cref="Qed.QED_MAGIC"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint magic;
|
public uint magic;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -117,7 +117,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public ulong backing_file_offset;
|
public ulong backing_file_offset;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Size of <see cref="backing_file_offset"/>
|
/// Size of <see cref="backing_file_offset"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint backing_file_size;
|
public uint backing_file_size;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct HardDiskFooter
|
struct HardDiskFooter
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Offset 0x00, File magic number, <see cref="Vhd.IMAGE_COOKIE"/>
|
/// Offset 0x00, File magic number, <see cref="Vhd.IMAGE_COOKIE"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ulong Cookie;
|
public ulong Cookie;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -150,7 +150,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct DynamicDiskHeader
|
struct DynamicDiskHeader
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Offset 0x00, Header magic, <see cref="Vhd.DYNAMIC_COOKIE"/>
|
/// Offset 0x00, Header magic, <see cref="Vhd.DYNAMIC_COOKIE"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ulong Cookie;
|
public ulong Cookie;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -196,7 +196,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string ParentName;
|
public string ParentName;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Offset 0x240, Parent disk image locator entry, <see cref="ParentLocatorEntry"/>
|
/// Offset 0x240, Parent disk image locator entry, <see cref="ParentLocatorEntry"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ParentLocatorEntry[] LocatorEntries;
|
public ParentLocatorEntry[] LocatorEntries;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct VhdxIdentifier
|
struct VhdxIdentifier
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Signature, <see cref="Vhdx.VHDX_SIGNATURE"/>
|
/// Signature, <see cref="Vhdx.VHDX_SIGNATURE"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ulong signature;
|
public ulong signature;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -61,7 +61,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct VhdxHeader
|
struct VhdxHeader
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Signature, <see cref="Vhdx.VHDX_HEADER_SIG"/>
|
/// Signature, <see cref="Vhdx.VHDX_HEADER_SIG"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint Signature;
|
public uint Signature;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -107,7 +107,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
struct VhdxRegionTableHeader
|
struct VhdxRegionTableHeader
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Signature, <see cref="Vhdx.VHDX_REGION_SIG"/>
|
/// Signature, <see cref="Vhdx.VHDX_REGION_SIG"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint signature;
|
public uint signature;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
byte[] labelUpdateDate;
|
byte[] labelUpdateDate;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Cached <see cref="FileSystemInfo"/>
|
/// Cached <see cref="FileSystemInfo"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
FileSystemInfo cpmStat;
|
FileSystemInfo cpmStat;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -98,7 +98,7 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
Dictionary<string, byte[]> fileCache;
|
Dictionary<string, byte[]> fileCache;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Cached file <see cref="FileEntryInfo"/>
|
/// Cached file <see cref="FileEntryInfo"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
Dictionary<string, FileEntryInfo> statCache;
|
Dictionary<string, FileEntryInfo> statCache;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
//
|
//
|
||||||
// --[ Description ] ----------------------------------------------------------
|
// --[ Description ] ----------------------------------------------------------
|
||||||
//
|
//
|
||||||
// Handles definitions of known CP/M disks.
|
// Handles definitions of known CP/M disks.
|
||||||
//
|
//
|
||||||
// --[ License ] --------------------------------------------------------------
|
// --[ License ] --------------------------------------------------------------
|
||||||
//
|
//
|
||||||
@@ -154,7 +154,7 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public int bsh;
|
public int bsh;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Block mask for <see cref="bsh"/>
|
/// Block mask for <see cref="bsh"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public int blm;
|
public int blm;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -202,43 +202,43 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public byte recordsPerSector;
|
public byte recordsPerSector;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.spt"/>
|
/// <see cref="DiscParameterBlock.spt"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort spt;
|
public ushort spt;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.bsh"/>
|
/// <see cref="DiscParameterBlock.bsh"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public byte bsh;
|
public byte bsh;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.blm"/>
|
/// <see cref="DiscParameterBlock.blm"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public byte blm;
|
public byte blm;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.exm"/>
|
/// <see cref="DiscParameterBlock.exm"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public byte exm;
|
public byte exm;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.dsm"/>
|
/// <see cref="DiscParameterBlock.dsm"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort dsm;
|
public ushort dsm;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.drm"/>
|
/// <see cref="DiscParameterBlock.drm"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort drm;
|
public ushort drm;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.al0"/>
|
/// <see cref="DiscParameterBlock.al0"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort al0;
|
public ushort al0;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.al1"/>
|
/// <see cref="DiscParameterBlock.al1"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort al1;
|
public ushort al1;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.cks"/>
|
/// <see cref="DiscParameterBlock.cks"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort cks;
|
public ushort cks;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// <see cref="DiscParameterBlock.off"/>
|
/// <see cref="DiscParameterBlock.off"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort off;
|
public ushort off;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -302,7 +302,7 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public ushort reserved;
|
public ushort reserved;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Password XOR'ed with <see cref="passwordDecoder"/>
|
/// Password XOR'ed with <see cref="passwordDecoder"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] public byte[] password;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] public byte[] password;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -395,7 +395,7 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
public byte passwordDecoder;
|
public byte passwordDecoder;
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] reserved;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] reserved;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Password XOR'ed with <see cref="passwordDecoder"/>
|
/// Password XOR'ed with <see cref="passwordDecoder"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] public byte[] password;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] public byte[] password;
|
||||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] public byte[] reserved2;
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] public byte[] reserved2;
|
||||||
@@ -451,7 +451,7 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Directory entry for <256 allocation blocks
|
/// Directory entry for <256 allocation blocks
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[StructLayout(LayoutKind.Sequential, Pack = 1)]
|
[StructLayout(LayoutKind.Sequential, Pack = 1)]
|
||||||
struct DirectoryEntry
|
struct DirectoryEntry
|
||||||
@@ -492,7 +492,7 @@ namespace DiscImageChef.Filesystems.CPM
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Directory entry for &bt;256 allocation blocks
|
/// Directory entry for &bt;256 allocation blocks
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[StructLayout(LayoutKind.Sequential, Pack = 1)]
|
[StructLayout(LayoutKind.Sequential, Pack = 1)]
|
||||||
struct DirectoryEntry16
|
struct DirectoryEntry16
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ namespace DiscImageChef.Filesystems
|
|||||||
public abstract Errno Mount(bool debug);
|
public abstract Errno Mount(bool debug);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Frees all internal structures created by <see cref="Mount()"/>
|
/// Frees all internal structures created by <see cref="Mount()"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract Errno Unmount();
|
public abstract Errno Unmount();
|
||||||
|
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ namespace DiscImageChef.Filesystems
|
|||||||
struct JFS_Extent
|
struct JFS_Extent
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Leftmost 24 bits are extent length, rest 8 bits are most significant for <see cref="addr2"/>
|
/// Leftmost 24 bits are extent length, rest 8 bits are most significant for <see cref="addr2"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public uint len_addr;
|
public uint len_addr;
|
||||||
public uint addr2;
|
public uint addr2;
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
// Information about this assembly is defined by the following attributes.
|
// Information about this assembly is defined by the following attributes.
|
||||||
// Change them to the values specific to your project.
|
// Change them to the values specific to your project.
|
||||||
|
|
||||||
[assembly: AssemblyTitle("DiscImageChef.Filters")]
|
[assembly: AssemblyTitle("DiscImageChef.Filters")]
|
||||||
@@ -50,7 +50,7 @@ using System.Reflection;
|
|||||||
|
|
||||||
[assembly: AssemblyVersion("1.0.*")]
|
[assembly: AssemblyVersion("1.0.*")]
|
||||||
|
|
||||||
// The following attributes are used to specify the signing key for the assembly,
|
// The following attributes are used to specify the signing key for the assembly,
|
||||||
// if desired. See the Mono documentation for more information about signing.
|
// if desired. See the Mono documentation for more information about signing.
|
||||||
|
|
||||||
//[assembly: AssemblyDelaySign(false)]
|
//[assembly: AssemblyDelaySign(false)]
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ namespace DiscImageChef.Filters
|
|||||||
void GuessSize()
|
void GuessSize()
|
||||||
{
|
{
|
||||||
decompressedSize = 0;
|
decompressedSize = 0;
|
||||||
// Seek to footer backwards size field
|
// Seek to footer backwards size field
|
||||||
dataStream.Seek(-8, SeekOrigin.End);
|
dataStream.Seek(-8, SeekOrigin.End);
|
||||||
byte[] tmp = new byte[4];
|
byte[] tmp = new byte[4];
|
||||||
dataStream.Read(tmp, 0, 4);
|
dataStream.Read(tmp, 0, 4);
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
// Information about this assembly is defined by the following attributes.
|
// Information about this assembly is defined by the following attributes.
|
||||||
// Change them to the values specific to your project.
|
// Change them to the values specific to your project.
|
||||||
|
|
||||||
[assembly: AssemblyTitle("DiscImageChef.Server")]
|
[assembly: AssemblyTitle("DiscImageChef.Server")]
|
||||||
@@ -50,7 +50,7 @@ using System.Reflection;
|
|||||||
|
|
||||||
[assembly: AssemblyVersion("3.99.6.0")]
|
[assembly: AssemblyVersion("3.99.6.0")]
|
||||||
|
|
||||||
// The following attributes are used to specify the signing key for the assembly,
|
// The following attributes are used to specify the signing key for the assembly,
|
||||||
// if desired. See the Mono documentation for more information about signing.
|
// if desired. See the Mono documentation for more information about signing.
|
||||||
|
|
||||||
//[assembly: AssemblyDelaySign(false)]
|
//[assembly: AssemblyDelaySign(false)]
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
// Information about this assembly is defined by the following attributes.
|
// Information about this assembly is defined by the following attributes.
|
||||||
// Change them to the values specific to your project.
|
// Change them to the values specific to your project.
|
||||||
|
|
||||||
[assembly: AssemblyTitle("DiscImageChef.Settings")]
|
[assembly: AssemblyTitle("DiscImageChef.Settings")]
|
||||||
@@ -50,7 +50,7 @@ using System.Reflection;
|
|||||||
|
|
||||||
[assembly: AssemblyVersion("3.99.6.0")]
|
[assembly: AssemblyVersion("3.99.6.0")]
|
||||||
|
|
||||||
// The following attributes are used to specify the signing key for the assembly,
|
// The following attributes are used to specify the signing key for the assembly,
|
||||||
// if desired. See the Mono documentation for more information about signing.
|
// if desired. See the Mono documentation for more information about signing.
|
||||||
|
|
||||||
//[assembly: AssemblyDelaySign(false)]
|
//[assembly: AssemblyDelaySign(false)]
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
// Information about this assembly is defined by the following attributes.
|
// Information about this assembly is defined by the following attributes.
|
||||||
// Change them to the values specific to your project.
|
// Change them to the values specific to your project.
|
||||||
|
|
||||||
[assembly: AssemblyTitle("DiscImageChef.Tests.Devices")]
|
[assembly: AssemblyTitle("DiscImageChef.Tests.Devices")]
|
||||||
@@ -46,7 +46,7 @@ using System.Reflection;
|
|||||||
|
|
||||||
[assembly: AssemblyVersion("1.0.*")]
|
[assembly: AssemblyVersion("1.0.*")]
|
||||||
|
|
||||||
// The following attributes are used to specify the signing key for the assembly,
|
// The following attributes are used to specify the signing key for the assembly,
|
||||||
// if desired. See the Mono documentation for more information about signing.
|
// if desired. See the Mono documentation for more information about signing.
|
||||||
|
|
||||||
//[assembly: AssemblyDelaySign(false)]
|
//[assembly: AssemblyDelaySign(false)]
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
// Information about this assembly is defined by the following attributes.
|
// Information about this assembly is defined by the following attributes.
|
||||||
// Change them to the values specific to your project.
|
// Change them to the values specific to your project.
|
||||||
|
|
||||||
[assembly: AssemblyTitle("The Disc Image Chef")]
|
[assembly: AssemblyTitle("The Disc Image Chef")]
|
||||||
@@ -50,7 +50,7 @@ using System.Reflection;
|
|||||||
|
|
||||||
[assembly: AssemblyVersion("3.99.6.0")]
|
[assembly: AssemblyVersion("3.99.6.0")]
|
||||||
|
|
||||||
// The following attributes are used to specify the signing key for the assembly,
|
// The following attributes are used to specify the signing key for the assembly,
|
||||||
// if desired. See the Mono documentation for more information about signing.
|
// if desired. See the Mono documentation for more information about signing.
|
||||||
|
|
||||||
//[assembly: AssemblyDelaySign(false)]
|
//[assembly: AssemblyDelaySign(false)]
|
||||||
|
|||||||
Reference in New Issue
Block a user