diff --git a/DiscImageChef.CommonTypes/Enums/DeviceType.cs b/DiscImageChef.CommonTypes/Enums/DeviceType.cs index 49efef201..368d32f4b 100644 --- a/DiscImageChef.CommonTypes/Enums/DeviceType.cs +++ b/DiscImageChef.CommonTypes/Enums/DeviceType.cs @@ -40,12 +40,12 @@ namespace DiscImageChef.CommonTypes.Enums { public enum DeviceType { - Unknown, - ATA, - ATAPI, - SCSI, - SecureDigital, - MMC, - NVMe + Unknown = -1, + ATA = 1, + ATAPI = 2, + SCSI = 3, + SecureDigital = 4, + MMC = 5, + NVMe = 6 } } \ No newline at end of file diff --git a/DiscImageChef.Devices/Remote/Enums.cs b/DiscImageChef.Devices/Remote/Enums.cs index 19cac556b..de729b1bb 100644 --- a/DiscImageChef.Devices/Remote/Enums.cs +++ b/DiscImageChef.Devices/Remote/Enums.cs @@ -16,7 +16,9 @@ namespace DiscImageChef.Devices.Remote CommandAtaLba48 = 11, ResponseAtaLba48 = 12, CommandSdhci = 13, - ResponseSdhci = 14 + ResponseSdhci = 14, + CommandGetType = 15, + ResponseGetType = 16 } public enum DicNopReason : byte diff --git a/DiscImageChef.Devices/Remote/Remote.cs b/DiscImageChef.Devices/Remote/Remote.cs index 523f61140..fae4590e8 100644 --- a/DiscImageChef.Devices/Remote/Remote.cs +++ b/DiscImageChef.Devices/Remote/Remote.cs @@ -5,6 +5,7 @@ using System.Linq; using System.Net; using System.Net.Sockets; using System.Runtime.InteropServices; +using DiscImageChef.CommonTypes.Enums; using DiscImageChef.CommonTypes.Interop; using DiscImageChef.Console; using DiscImageChef.Decoders.ATA; @@ -367,5 +368,10 @@ namespace DiscImageChef.Devices.Remote { throw new NotImplementedException("Remote SDHCI commands not yet implemented..."); } + + public DeviceType GetDeviceType() + { + throw new NotImplementedException("Getting remote device type not yet implemented..."); + } } } \ No newline at end of file diff --git a/DiscImageChef.Devices/Remote/Structs.cs b/DiscImageChef.Devices/Remote/Structs.cs index 34bee140a..748c71b21 100644 --- a/DiscImageChef.Devices/Remote/Structs.cs +++ b/DiscImageChef.Devices/Remote/Structs.cs @@ -1,4 +1,5 @@ using System.Runtime.InteropServices; +using DiscImageChef.CommonTypes.Enums; using DiscImageChef.Decoders.ATA; namespace DiscImageChef.Devices.Remote @@ -201,4 +202,17 @@ namespace DiscImageChef.Devices.Remote public uint sense; public uint errno; } + + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)] + public struct DicPacketCmdGetDeviceType + { + private readonly DicPacketHeader hdr; + } + + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)] + public struct DicPacketResGetDeviceType + { + private readonly DicPacketHeader hdr; + private readonly DeviceType device_type; + } } \ No newline at end of file