Commit Graph

229 Commits

Author SHA1 Message Date
e873377777 Device type, manufacturer, model, revision and serial number
are now obtained in device constructor.
2015-10-19 05:11:28 +01:00
c8fb4e0123 Upgrade .NET version to 4.0. 2015-10-19 04:48:17 +01:00
4cf5e18059 Added some device static values to variables. 2015-10-19 04:46:09 +01:00
efcc294202 Moved devices enums and structs out of classes. 2015-10-19 04:39:39 +01:00
ac491f6f5c Implemented SCSI VPDs 0x00 to 0x80. 2015-10-19 04:32:16 +01:00
4f407e3d15 Added specific console handling for standard, verbose, debug
and error outputs.
2015-10-18 22:04:03 +01:00
dfcd7301c5 Added information from T10/536 rev. 4a (ZBC) 2015-10-17 17:22:30 +01:00
55a30e509a Corrected typos that resulted in device reset :p 2015-10-17 02:43:03 +01:00
6e7ed8e743 * DiscImageChef.Decoders/ATA.cs:
* DiscImageChef.Decoders/DiscImageChef.Decoders.csproj:
	  Added structure for ATA/ATAPI IDENTIFY [PACKET] DEVICE
	  response

	* DiscImageChef.Devices/Enums.cs:
	  Added command clash in XML documentation
2015-10-16 01:55:55 +01:00
846be0d756 * DiscImageChef.Devices/Device/AtaCommands.cs:
* DiscImageChef.Devices/Device/ScsiCommands.cs:
	* DiscImageChef.Devices/Device/AtapiCommands.cs:
	  Added duration debug printfs.

	* DiscImageChef.Devices/Enums.cs:
	  Corrected device<->host direction.

	* DiscImageChef.Devices/Linux/Command.cs:
	  Corrected device<->host direction.
	Changed to workaround how ATA Pass-Through is really
	  implemented in Linux.

	* DiscImageChef/Commands/DeviceInfo.cs:
	  Added ATA and ATAPI identify commands.
2015-10-15 01:46:31 +01:00
921d27375e Added XML documentation. 2015-10-14 03:24:25 +01:00
d901e3b8e0 * DiscImageChef.Devices/Device/AtaCommands.cs:
Added ATA IDENTIFY DEVICE command.

	* DiscImageChef.Devices/Device/AtapiCommands.cs:
	  Added ATAPI IDENTIFY PACKET DEVICE command.

	* DiscImageChef.Devices/Structs.cs:
	* DiscImageChef.Devices/Device/ScsiCommands.cs:
	  Added header description.

	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	  Added ATA IDENTIFY DEVICE command.
	Added ATAPI IDENTIFY PACKET DEVICE command.
2015-10-14 03:17:39 +01:00
8d121d22b7 * DiscImageChef.Devices/Structs.cs:
* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	  Added structs with ATA registers.

	* DiscImageChef.Devices/Command.cs:
	* DiscImageChef.Devices/Device/Commands.cs:
	  Added ATA commands.

	* DiscImageChef.Devices/Enums.cs:
	  Added SCSI's ATA Command Pass-Through enumerations.

	* DiscImageChef.Devices/Linux/Command.cs:
	  Added ATA commands using libATA's SATL.
2015-10-14 02:53:46 +01:00
d7546d4e88 * DiscImageChef.Devices/Linux/Enums.cs:
* DiscImageChef.Devices/Linux/Extern.cs:
	* DiscImageChef.Devices/Linux/Structs.cs:
	  Since libata, ATA/ATAPI commands should be sent using
	  libata's SCSI/ATA Translation Layer, so remove HDIO ioctls.

	* DiscImageChef.Interop/DetectOS.cs:
	  Add code to detect if running under 32 or 64 bits.
2015-10-14 01:07:45 +01:00
9f0d09b789 * DiscImageChef/Main.cs:
* DiscImageChef/Options.cs:
	* DiscImageChef/DiscImageChef.csproj:
	* DiscImageChef/Commands/DeviceInfo.cs:
	  Added "device-info" command.

	* DiscImageChef.Decoders/SCSI.cs:
	  Correct size miscalculation.
	Do not print "Device claims no standard", generates too much
	  noise.

	* DiscImageChef.Devices/Device/Constructor.cs:
	  Add OS error detection and handling.
	On Linux move to opening O_RDONLY and O_NONBLOCK to allow
	  opening read-only media and removable drives without media.

	* DiscImageChef.Devices/Device/Variables.cs:
	* DiscImageChef.Devices/Device/ScsiCommands.cs:
	  Add OS error detection and handling.

	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	* DiscImageChef.Interop/DiscImageChef.Interop.csproj:
	  Downgraded .NET version.
2015-10-13 01:45:07 +01:00
9f545eb8ab Added XML documentation. 2015-10-12 20:08:56 +01:00
20cde7a217 * DiscImageChef.Devices/Enums.cs:
* DiscImageChef.Devices/Command.cs:
	* DiscImageChef.Devices/Device/Commands.cs:
	* DiscImageChef.Devices/Device/Variables.cs:
	* DiscImageChef.Devices/Device/Destructor.cs:
	* DiscImageChef.Devices/Device/Constructor.cs:
	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	  Added device class.

	* DiscImageChef.Devices/Device/ScsiCommands.cs:
	  Added device class.
	Added SCSI INQUIRY.
2015-10-12 19:55:00 +01:00
ed09ecbda4 Added standard header. 2015-10-12 06:39:31 +01:00
8b8b838577 * DiscImageChef.Devices/Linux/Command.cs:
* DiscImageChef.Devices/Windows/Command.cs:
	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	  Added per-platform send SCSI method.

	* DiscImageChef.sln:
	* DiscImageChef.Interop/DetectOS.cs:
	* DiscImageChef.Interop/PlatformID.cs:
	* DiscImageChef.Interop/DiscImageChef.Interop.csproj:
	  Added code to detect OS.

	* DiscImageChef.Devices/Linux/Extern.cs:
	* DiscImageChef.Devices/Windows/Extern.cs:
	  Enhanced externs.

	* DiscImageChef.Devices/Linux/Structs.cs:
	  Typo.
2015-10-12 06:26:33 +01:00
115bf5030f * DiscImageChef.Devices/Command.cs:
Add skeleton for send SCSI command method.

	* DiscImageChef.Devices/Linux/Command.cs:
	* DiscImageChef.Devices/Windows/Command.cs:
	  Added per-platform send SCSI command method.

	* DiscImageChef.sln:
	* DiscImageChef.Interop/DetectOS.cs:
	* DiscImageChef.Interop/PlatformID.cs:
	* DiscImageChef.Interop/Properties/AssemblyInfo.cs:
	* DiscImageChef.Interop/DiscImageChef.Interop.csproj:
	  Added code to detect OS.

	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	  Added per-platform send SCSI command method.
	Add skeleton for send SCSI command method.

	* DiscImageChef.Devices/Linux/Extern.cs:
	* DiscImageChef.Devices/Windows/Extern.cs:
	  Enhanced externs.

	* DiscImageChef.Devices/Linux/Structs.cs:
	  Typo.
2015-10-12 06:25:49 +01:00
7fa4c3fbeb Added ATA IOCTLs. 2015-10-07 02:15:31 +01:00
97c8d54b72 * DiscImageChef.Devices/Linux/Enums.cs:
* DiscImageChef.Devices/Linux/Extern.cs:
	* DiscImageChef.Devices/Linux/Structs.cs:
	  Filled Linux enums.

	* DiscImageChef.Devices/Windows/Enums.cs:
	  Typo
2015-10-06 21:18:02 +01:00
c083f45ece Struct de-class 2015-10-06 18:29:15 +01:00
4aef27f3d3 Typo 2015-10-06 18:28:06 +01:00
fa64ba56c6 Completed Windows enumerations. 2015-10-06 18:27:38 +01:00
87fa088e84 Added ATA/ATAPI commands. 2015-10-06 17:55:22 +01:00
ff3d9361d5 Added SCSI commands. 2015-10-06 06:26:16 +01:00
60fccde0de Added SASI commands. 2015-10-05 23:40:00 +01:00
99d115b8dc Added IOCTL skeletons. 2015-10-05 21:20:25 +01:00