Commit Graph

181 Commits

Author SHA1 Message Date
80094902aa Added info from SCSI-2 specification. 2015-10-17 03:10:56 +01:00
fda6bcb3d4 Added ATA/ATAPI IDENTIFY DEVICE decoder 2015-10-17 02:57:47 +01:00
55a30e509a Corrected typos that resulted in device reset :p 2015-10-17 02:43:03 +01:00
12842dccfc Implement ATA/ATAPI IDENTIFY decoder. 2015-10-17 01:26:17 +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
1afeb5e545 Move decoders to a separate library. 2015-10-05 20:27:44 +01:00
80a1e37009 Move filesystems to a separate library. 2015-10-05 20:04:05 +01:00
fda7fee90c Move partitions plugins to a separate library. 2015-10-05 19:58:42 +01:00
4a3583d13e Moved disc image plugins to a separate library. 2015-10-05 19:45:07 +01:00
9530cc1a7a * DiscImageChef/Checksums/MD5Context.cs:
* DiscImageChef.Checksums/MD5Context.cs:
	* DiscImageChef/Checksums/CDChecksums.cs:
	* DiscImageChef.Checksums/ReedSolomon.cs:
	* DiscImageChef.Checksums/SHA1Context.cs:
	* DiscImageChef/Checksums/ReedSolomon.cs:
	* DiscImageChef/Checksums/SHA1Context.cs:
	* DiscImageChef.Checksums/CDChecksums.cs:
	* DiscImageChef/Checksums/CRC64Context.cs:
	* DiscImageChef/Checksums/CRC32Context.cs:
	* DiscImageChef/Checksums/CRC16Context.cs:
	* DiscImageChef.Checksums/CRC64Context.cs:
	* DiscImageChef.Checksums/CRC32Context.cs:
	* DiscImageChef.Checksums/CRC16Context.cs:
	* DiscImageChef/Checksums/SHA256Context.cs:
	* DiscImageChef.Checksums/SHA512Context.cs:
	* DiscImageChef.Checksums/SHA384Context.cs:
	* DiscImageChef/Checksums/SHA384Context.cs:
	* DiscImageChef/Checksums/SHA512Context.cs:
	* DiscImageChef.Checksums/SHA256Context.cs:
	* DiscImageChef.Checksums/Adler32Context.cs:
	* DiscImageChef/Checksums/SpamSumContext.cs:
	* DiscImageChef/Checksums/Adler32Context.cs:
	* DiscImageChef.Checksums/SpamSumContext.cs:
	* DiscImageChef.Checksums/FletcherContext.cs:
	* DiscImageChef/Checksums/FletcherContext.cs:
	* DiscImageChef.Checksums/RIPEMD160Context.cs:
	* DiscImageChef/Checksums/RIPEMD160Context.cs:
	* DiscImageChef.Checksums/Properties/AssemblyInfo.cs:
	* DiscImageChef.Checksums/DiscImageChef.Checksums.csproj:
	  Move checksums to a separate library.

	* DiscImageChef/Swapping.cs:
	* DiscImageChef/PrintHex.cs:
	* DiscImageChef/ArrayFill.cs:
	* DiscImageChef/DateHandlers.cs:
	* DiscImageChef/StringHandlers.cs:
	* DiscImageChef.Helpers/Swapping.cs:
	* DiscImageChef.Helpers/PrintHex.cs:
	* DiscImageChef/DiscImageChef.csproj:
	* DiscImageChef.Helpers/ArrayFill.cs:
	* DiscImageChef.Helpers/DateHandlers.cs:
	* DiscImageChef/BigEndianBitConverter.cs:
	* DiscImageChef.Helpers/StringHandlers.cs:
	* DiscImageChef/EndianAwareBinaryReader.cs:
	* DiscImageChef.Helpers/BigEndianBitConverter.cs:
	* DiscImageChef.Helpers/EndianAwareBinaryReader.cs:
	* DiscImageChef.Helpers/Properties/AssemblyInfo.cs:
	* DiscImageChef.Helpers/DiscImageChef.Helpers.csproj:
	  Move helpers to a separate library.

	* DiscImageChef.sln:
	  Move helpers to a separate library.
	Move checksums to a separate library.
2015-10-05 18:58:13 +01:00
4001c1b21e Added floppy disk structures. 2015-08-25 06:06:13 +01:00
f9472ad5b9 Solved CDRWin plugin not working on .NET Framework and in Mono
4.0. Seems a bug in the framework implementation nonetheless,
	this workarounds satisfactorily.
2015-05-23 05:29:35 +01:00
4fc2e234b0 Implement "entropy" command. 2015-05-19 06:04:21 +01:00
eb33aad7ef Syntax cleaning. 2015-04-24 04:01:58 +01:00
5f06fbe855 Implemented support for Virtual PC differencing (undo) disk
images.
2015-04-24 03:43:44 +01:00
d2c51e62df Add support for dynamic disk images. 2015-04-24 01:52:26 +01:00
2614d0eb6b Casting typo 2015-04-22 19:42:27 +01:00
b767b34a10 Style changes 2015-04-22 19:32:51 +01:00
e41c061ac4 Implemented support for Virtual PC fixed size disk images. 2015-04-22 19:24:29 +01:00
b72f43eece Added support for bigendian UUID/Guid 2015-04-21 22:09:31 +01:00
83ff97a8da Style corrections. 2015-04-20 17:52:08 +01:00
0c28cedb1b Added support for NetBSD partition identifiers. 2015-04-20 17:51:21 +01:00
0f4eed8f9f Implemented support for Atari partitions. 2015-04-20 16:38:13 +01:00
72306989c3 Added support for AmigaDOS filesystems. 2015-04-20 06:26:33 +01:00
b80477b6be Typo submerged in infinite loop for non-RDB disks. 2015-04-20 05:10:18 +01:00
66980c0548 Give not only partition starting sector but also ending sector
to filesystems.
2015-04-20 05:09:46 +01:00
70a6eab8ac Implemented support for Amiga RDB. 2015-04-20 04:29:23 +01:00
e33354e573 Corrected datetime field handling in ProDOS filesystem. 2015-04-19 04:20:32 +01:00
a3c6853a4c Implement support for Apple 2IMG disk images. 2015-04-19 03:50:31 +01:00
72e5c9983c Implemented SpamSum fuzzy hashing. 2015-04-19 01:27:17 +01:00