Commit Graph

243 Commits

Author SHA1 Message Date
ec5f9b6044 Added SCSI EVPD page 83h. 2016-10-13 04:55:00 +01:00
c5e94dd9e9 Implemented SCSI EVPD 82h 2016-10-13 04:01:39 +01:00
61c7d68f85 Added support for SCSI MODE PAGEs 11h, 12h, 13h and 14h
(medium partitions)
2016-10-13 03:15:56 +01:00
12daf68c1f * DiscImageChef.Decoders/SCSI/Modes.cs:
Added DDS-2.
	Corrected casting of density enumeration.

	* DiscImageChef.Decoders/SCSI/Types.cs:
	  Added DDS-2

	* DiscImageChef.Devices/Device/ScsiCommands/SPC.cs:
	  Corrected buffer size for MODE SENSE (6)

	* DiscImageChef/Commands/DeviceInfo.cs:
	  Removed some spurious brackets.
2016-10-10 23:58:35 +01:00
eeb313e42d * DiscImageChef.Filesystems/FAT.cs:
Add sanity check for BPB.

	* DiscImageChef.Filesystems/AppleHFS.cs:
	  Correct calling of Read2048SectorAs512()

	* DiscImageChef.Decoders/CD/Sector.cs:
	* DiscImageChef.Decoders/DiscImageChef.Decoders.csproj:
	  Added CD sector descrambling.
2016-10-08 04:29:04 +01:00
b27c25d74e * DiscImageChef.Decoders/Floppy/Apple2.cs:
Adds support for marshaling a whole disk, tracks and sectors
	  as well as decoding sectors in 5and3 and 6and2 GCRs.

	* DiscImageChef.Decoders/Floppy/AppleSony.cs:
	  Adds support for marshaling a whole disk, tracks and sectors
	  as well as decoding GCR sectors.

	* DiscImageChef.DiscImages/AppleNIB.cs:
	* DiscImageChef.DiscImages/DiscImageChef.DiscImages.csproj:
	  Adds support for Apple nibble disk images.
2016-10-07 00:43:12 +01:00
1e2d0fa70c * DiscImageChef.Partitions/Human68k.cs:
* DiscImageChef.Partitions/DiscImageChef.Partitions.csproj:
	  Added Human68k partition table.

	* DiscImageChef.Partitions/RioKarma.cs:
	  Corrected typo.

	* DiscImageChef.DiscImages/ZZZRawImage.cs:
	  Detect X68000 SASI hard disks that use 256 bytes/sector.
	Correct size of ECMA-154 magnetoptical.

	* DiscImageChef.Partitions/PC98.cs:
	  Correct handling of partition name, do not directly marshal
	  as it may crash.
	Prevent false positives checking for sanity and partition
	  type, so this limits it to FreeBSD right now.

	* DiscImageChef.Partitions/Acorn.cs:
	  Do not try to read past device.

	* DiscImageChef.Helpers/BigEndianMarshal.cs:
	* DiscImageChef.Helpers/BigEndianStructure.cs:
	* DiscImageChef.Helpers/DiscImageChef.Helpers.csproj:
	  Reworked big endian marshal. Does not traverse nested
	  structures.

	* DiscImageChef.Partitions/SGI.cs:
	  Corrected big endian marshaling, manually traversing nested
	  structures.

	* DiscImageChef.Decoders/LisaTag.cs:
	  Removed temporal variable.

	* DiscImageChef.Partitions/Sun.cs:
	  Sun insists all devices must be 512 bytes/sector. Really.
	  Even CDs. But this allows bigger ones.
2016-08-22 00:49:48 +01:00
8a50d402c5 Separate Lisa tag decoding from Lisa filesystem and added
Priam tags.
2016-08-21 19:23:58 +01:00
b3924779ba * DiscImageChef.Decoders/CD/ATIP.cs:
Make ATIP manufacturer resolver a public method.

	* DiscImageChef.Decoders/SCSI/MMC/Features.cs:
	  Added HDBurn profiles.

	* DiscImageChef.Decoders/SCSI/Modes.cs:
	  Corrected typo.

	* DiscImageChef.DiscImages/BLU.cs:
	* DiscImageChef.DiscImages/GDI.cs:
	* DiscImageChef.DiscImages/VHD.cs:
	* DiscImageChef.DiscImages/Nero.cs:
	* DiscImageChef/Commands/Compare.cs:
	* DiscImageChef.DiscImages/CopyQM.cs:
	* DiscImageChef.DiscImages/CDRWin.cs:
	* DiscImageChef.DiscImages/CDRDAO.cs:
	* DiscImageChef.DiscImages/Apple2MG.cs:
	* DiscImageChef.DiscImages/TeleDisk.cs:
	* DiscImageChef.DiscImages/ImageInfo.cs:
	* DiscImageChef.DiscImages/Alcohol120.cs:
	* DiscImageChef.DiscImages/DiskCopy42.cs:
	* DiscImageChef.DiscImages/ZZZRawImage.cs:
	  Added field for drive firmware revision.

	* DiscImageChef.DiscImages/BlindWrite4.cs:
	  Added field for drive firmware revision.
	Change subchannel informative exception.
	Change application name and version.

	* DiscImageChef.DiscImages/ImagePlugin.cs:
	  Added subchannel types for Q only.

	* DiscImageChef/Commands/CreateSidecar.cs:
	  If drive image contains information about the dumping drive,
	  use it.
	Added subchannel types for Q only.
2016-08-18 00:05:24 +01:00
1ec80391cc Bumped version to 3.2.99.2. 2016-08-09 15:34:26 +01:00
f5209500d8 Public beta release 3.2.99.1. 2016-08-07 04:38:07 +01:00
2113b4d3d6 Bumped to version 3.2.1. 2016-08-01 19:07:04 +01:00
bd61a4f060 Bump to version 3.2.0 2016-08-01 19:01:21 +01:00
39ac2b16cb Bump to version 3.1.0. 2016-07-29 02:25:29 +01:00
6129e52d41 Code re-styling. 2016-07-28 23:08:22 +01:00
a63ba13b6b Refactor and code cleanup. 2016-07-28 22:25:26 +01:00
b2ab03407f * LICENSE.MIT:
* LICENSE.LGPL:
	  Added LICENSE files for LGPL and MIT licenses.

	* DiscImageChef.Devices/Enums.cs:
	* DiscImageChef.Partitions/MBR.cs:
	* DiscImageChef.Partitions/RDB.cs:
	* DiscImageChef.DiscImages/GDI.cs:
	* DiscImageChef.Partitions/Sun.cs:
	* DiscImageChef.DiscImages/VHD.cs:
	* DiscImageChef.Partitions/GPT.cs:
	* DiscImageChef.Filesystems/FFS.cs:
	* DiscImageChef.Filesystems/FAT.cs:
	* DiscImageChef.Partitions/NeXT.cs:
	* DiscImageChef.Devices/Command.cs:
	* DiscImageChef.DiscImages/Nero.cs:
	* DiscImageChef.Decoders/CD/PMA.cs:
	* DiscImageChef.Decoders/CD/TOC.cs:
	* DiscImageChef.Filesystems/BFS.cs:
	* DiscImageChef.Filesystems/ODS.cs:
	* DiscImageChef.Helpers/PrintHex.cs:
	* DiscImageChef.Helpers/Swapping.cs:
	* DiscImageChef.Decoders/DVD/PRI.cs:
	* DiscImageChef.Decoders/DVD/DMI.cs:
	* DiscImageChef.Decoders/DVD/DDS.cs:
	* DiscImageChef.Decoders/DVD/RMD.cs:
	* DiscImageChef.Decoders/DVD/UDI.cs:
	* DiscImageChef.Partitions/Atari.cs:
	* DiscImageChef.Decoders/DVD/BCA.cs:
	* DiscImageChef.Filesystems/SysV.cs:
	* DiscImageChef.Filesystems/HPFS.cs:
	* DiscImageChef.Filesystems/NTFS.cs:
	* DiscImageChef.Filesystems/APFS.cs:
	* DiscImageChef.Decoders/DVD/PFI.cs:
	* DiscImageChef.Decoders/CD/ATIP.cs:
	* DiscImageChef.Filesystems/Acorn.cs:
	* DiscImageChef.DiscImages/CDRWin.cs:
	* DiscImageChef.DiscImages/CDRDAO.cs:
	* DiscImageChef.Filesystems/BTRFS.cs:
	* DiscImageChef.Decoders/Xbox/DMI.cs:
	* DiscImageChef.Helpers/ArrayFill.cs:
	* DiscImageChef.Settings/Settings.cs:
	* DiscImageChef.Filesystems/Opera.cs:
	* DiscImageChef.Filesystems/extFS.cs:
	* DiscImageChef.Decoders/DVD/CPRM.cs:
	* DiscImageChef.Decoders/DVD/ADIP.cs:
	* DiscImageChef.Decoders/CD/Enums.cs:
	* DiscImageChef.Decoders/DVD/AACS.cs:
	* DiscImageChef.Decoders/SCSI/EVPD.cs:
	* DiscImageChef.Filesystems/ProDOS.cs:
	* DiscImageChef.Metadata/MediaType.cs:
	* DiscImageChef.Console/DicConsole.cs:
	* DiscImageChef.Decoders/DVD/Spare.cs:
	* DiscImageChef.Filesystems/ext2FS.cs:
	* DiscImageChef.Decoders/DVD/Enums.cs:
	* DiscImageChef.Filesystems/Symbian.cs:
	* DiscImageChef.Decoders/SCSI/Types.cs:
	* DiscImageChef.Filesystems/UNIXBFS.cs:
	* DiscImageChef.DiscImages/TeleDisk.cs:
	* DiscImageChef.Decoders/SCSI/Sense.cs:
	* DiscImageChef.Decoders/CD/FullTOC.cs:
	* DiscImageChef.Decoders/Blu-ray/DI.cs:
	* DiscImageChef.Decoders/ATA/Errors.cs:
	* DiscImageChef.Filesystems/ISO9660.cs:
	* DiscImageChef.Filesystems/MinixFS.cs:
	* DiscImageChef.Devices/Linux/Enums.cs:
	* DiscImageChef.Filesystems/SolarFS.cs:
	* DiscImageChef.Filesystems/Structs.cs:
	* DiscImageChef.DiscImages/Apple2MG.cs:
	* DiscImageChef.Decoders/SCSI/Modes.cs:
	* DiscImageChef.Metadata/Dimensions.cs:
	* DiscImageChef.Partitions/AppleMap.cs:
	* DiscImageChef.Decoders/Floppy/ISO.cs:
	* DiscImageChef.Decoders/DVD/Layers.cs:
	* DiscImageChef.Decoders/CD/Session.cs:
	* DiscImageChef.Decoders/SCSI/Enums.cs:
	* DiscImageChef.Filesystems/Nintendo.cs:
	* DiscImageChef.Helpers/DateHandlers.cs:
	* DiscImageChef.Filesystems/AmigaDOS.cs:
	* DiscImageChef.DiscImages/ImageInfo.cs:
	* DiscImageChef.Checksums/MD5Context.cs:
	* DiscImageChef.Devices/Linux/Extern.cs:
	* DiscImageChef.Filesystems/AppleHFS.cs:
	* DiscImageChef.Filesystems/AppleMFS.cs:
	* DiscImageChef.Helpers/ArrayIsEmpty.cs:
	* DiscImageChef.Decoders/Blu-ray/BCA.cs:
	* DiscImageChef.Decoders/Blu-ray/DDS.cs:
	* DiscImageChef.Filesystems/PCEngine.cs:
	* DiscImageChef.Decoders/ATA/Identify.cs:
	* DiscImageChef.Devices/Linux/Command.cs:
	* DiscImageChef.Devices/FreeBSD/Enums.cs:
	* DiscImageChef.Decoders/SCSI/Inquiry.cs:
	* DiscImageChef.Metadata/DeviceReport.cs:
	* DiscImageChef.Decoders/Floppy/Amiga.cs:
	* DiscImageChef.Devices/Linux/Structs.cs:
	* DiscImageChef.Devices/Windows/Enums.cs:
	* DiscImageChef.Decoders/DVD/CSS&CPRM.cs:
	* DiscImageChef.Checksums/SHA1Context.cs:
	* DiscImageChef.DiscImages/DiskCopy42.cs:
	* DiscImageChef.Partitions/PartPlugin.cs:
	* DiscImageChef.CommonTypes/Partition.cs:
	* DiscImageChef.Decoders/Floppy/Enums.cs:
	* DiscImageChef.CommonTypes/MediaType.cs:
	* DiscImageChef.Decoders/Floppy/Apple2.cs:
	* DiscImageChef.Devices/Windows/Extern.cs:
	* DiscImageChef.Decoders/SCSI/MMC/CPRM.cs:
	* DiscImageChef.Helpers/StringHandlers.cs:
	* DiscImageChef.DiscImages/ImagePlugin.cs:
	* DiscImageChef.Checksums/CRC64Context.cs:
	* DiscImageChef.Checksums/CRC32Context.cs:
	* DiscImageChef.DiscImages/ZZZRawImage.cs:
	* DiscImageChef.Checksums/CRC16Context.cs:
	* DiscImageChef.Filesystems/LisaFS/Dir.cs:
	* DiscImageChef.Decoders/DVD/Cartridge.cs:
	* DiscImageChef.Decoders/Blu-ray/Spare.cs:
	* DiscImageChef.Filesystems/Filesystem.cs:
	* DiscImageChef.Decoders/SCSI/MMC/AACS.cs:
	* DiscImageChef.Devices/FreeBSD/Extern.cs:
	* DiscImageChef.Devices/Device/Commands.cs:
	* DiscImageChef.Checksums/SHA384Context.cs:
	* DiscImageChef.Devices/FreeBSD/Command.cs:
	* DiscImageChef.Checksums/SHA512Context.cs:
	* DiscImageChef.Decoders/SCSI/MMC/Enums.cs:
	* DiscImageChef.Devices/Windows/Command.cs:
	* DiscImageChef.Devices/FreeBSD/Structs.cs:
	* DiscImageChef.Devices/Windows/Structs.cs:
	* DiscImageChef.Filesystems/LisaFS/Info.cs:
	* DiscImageChef.Checksums/SHA256Context.cs:
	* DiscImageChef.Filesystems/LisaFS/File.cs:
	* DiscImageChef.Filesystems/AppleHFSPlus.cs:
	* DiscImageChef.Filesystems/LisaFS/Super.cs:
	* DiscImageChef.Filesystems/LisaFS/Xattr.cs:
	* DiscImageChef.Checksums/Adler32Context.cs:
	* DiscImageChef.Decoders/Floppy/System34.cs:
	* DiscImageChef.Checksums/SpamSumContext.cs:
	* DiscImageChef.Decoders/SCSI/MMC/Hybrid.cs:
	* DiscImageChef.Devices/Device/Variables.cs:
	* DiscImageChef.Filesystems/LisaFS/Consts.cs:
	* DiscImageChef.Filesystems/LisaFS/LisaFS.cs:
	* DiscImageChef.Decoders/Floppy/Commodore.cs:
	* DiscImageChef.Checksums/FletcherContext.cs:
	* DiscImageChef.Filesystems/LisaFS/Extent.cs:
	* DiscImageChef.Devices/Device/Destructor.cs:
	* DiscImageChef.Decoders/Floppy/AppleSony.cs:
	* DiscImageChef.Filesystems/LisaFS/Structs.cs:
	* DiscImageChef.Decoders/SCSI/VendorString.cs:
	* DiscImageChef.Decoders/SCSI/MMC/Features.cs:
	* DiscImageChef.Devices/Device/Constructor.cs:
	* DiscImageChef.Checksums/RIPEMD160Context.cs:
	* DiscImageChef.Decoders/CD/CDTextOnLeadIn.cs:
	* DiscImageChef.Decoders/Blu-ray/Cartridge.cs:
	* DiscImageChef.Decoders/Floppy/System3740.cs:
	* DiscImageChef.Filesystems/LisaFS/Encoding.cs:
	* DiscImageChef.Decoders/SCSI/ModesEncoders.cs:
	* DiscImageChef.CommonTypes/MediaTypeFromSCSI.cs:
	* DiscImageChef.Helpers/BigEndianBitConverter.cs:
	* DiscImageChef.Decoders/Floppy/Perpendicular.cs:
	* DiscImageChef.Decoders/SCSI/SSC/BlockLimits.cs:
	* DiscImageChef.Decoders/SCSI/MMC/WriteProtect.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/HP.cs:
	* DiscImageChef.Devices/Device/AtaCommands/Cfa.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/NEC.cs:
	* DiscImageChef.Helpers/EndianAwareBinaryReader.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/MMC.cs:
	* DiscImageChef.Devices/Device/AtaCommands/MCPT.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/SSC.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/SPC.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/SMC.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/SBC.cs:
	* DiscImageChef.Metadata/Properties/AssemblyInfo.cs:
	* DiscImageChef.Devices/Device/AtaCommands/Atapi.cs:
	* DiscImageChef.Devices/Device/AtaCommands/Ata28.cs:
	* DiscImageChef.Devices/Device/AtaCommands/Smart.cs:
	* DiscImageChef.Decoders/SCSI/SSC/DensitySupport.cs:
	* DiscImageChef.Devices/Device/AtaCommands/Ata48.cs:
	* DiscImageChef.Decoders/SCSI/MMC/DiscInformation.cs:
	* DiscImageChef.Devices/Device/AtaCommands/AtaCHS.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/SyQuest.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/Plextor.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/Plasmon.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/Pioneer.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/Adaptec.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/Fujitsu.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/HL-DT-ST.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/Certance.cs:
	* DiscImageChef.Decoders/SCSI/DiscStructureCapabilities.cs:
	* DiscImageChef.Devices/Device/ScsiCommands/ArchiveCorp.cs:
	  Relicensed as LGPL.
	Updated standard header.

	* DiscImageChef/Main.cs:
	* DiscImageChef/Plugins.cs:
	* DiscImageChef/Options.cs:
	* DiscImageChef/Commands/Ls.cs:
	* DiscImageChef/Core/IBGLog.cs:
	* DiscImageChef/Core/MHDDLog.cs:
	* DiscImageChef/AssemblyInfo.cs:
	* DiscImageChef/Core/Checksum.cs:
	* DiscImageChef/Commands/Decode.cs:
	* DiscImageChef/Core/Statistics.cs:
	* DiscImageChef/Commands/Verify.cs:
	* DiscImageChef/Commands/Formats.cs:
	* DiscImageChef/Commands/Entropy.cs:
	* DiscImageChef/Commands/Compare.cs:
	* DiscImageChef.Interop/DetectOS.cs:
	* DiscImageChef/Commands/Analyze.cs:
	* DiscImageChef/Commands/Commands.cs:
	* DiscImageChef/Commands/PrintHex.cs:
	* DiscImageChef/Commands/Checksum.cs:
	* DiscImageChef/DetectImageFormat.cs:
	* DiscImageChef/Commands/DumpMedia.cs:
	* DiscImageChef/Commands/Benchmark.cs:
	* DiscImageChef/Commands/Configure.cs:
	* DiscImageChef/Commands/MediaInfo.cs:
	* DiscImageChef.Interop/PlatformID.cs:
	* DiscImageChef/Commands/MediaScan.cs:
	* DiscImageChef/Commands/Statistics.cs:
	* DiscImageChef/Commands/DeviceInfo.cs:
	* DiscImageChef.Checksums/ReedSolomon.cs:
	* DiscImageChef/Commands/DeviceReport.cs:
	* DiscImageChef/Commands/ExtractFiles.cs:
	* DiscImageChef.Checksums/CDChecksums.cs:
	* DiscImageChef/Commands/CreateSidecar.cs:
	  Updated standard header.

	* DiscImageChef.Checksums/DiscImageChef.Checksums.csproj:
	  Relicensed project as LGPL.
	Updated standard header.
	Embed license as resource.

	* DiscImageChef.Console/DiscImageChef.Console.csproj:
	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	* DiscImageChef.Helpers/DiscImageChef.Helpers.csproj:
	* DiscImageChef.Settings/DiscImageChef.Settings.csproj:
	* DiscImageChef.Decoders/DiscImageChef.Decoders.csproj:
	* DiscImageChef.Metadata/DiscImageChef.Metadata.csproj:
	* DiscImageChef.Partitions/DiscImageChef.Partitions.csproj:
	* DiscImageChef.DiscImages/DiscImageChef.DiscImages.csproj:
	* DiscImageChef.Filesystems/DiscImageChef.Filesystems.csproj:
	* DiscImageChef.CommonTypes/DiscImageChef.CommonTypes.csproj:
	  Relicensed as LGPL.
	Updated standard header.
	Embed license as resource.

	* DiscImageChef/DiscImageChef.csproj:
	* DiscImageChef.Interop/DiscImageChef.Interop.csproj:
	  Updated standard header.
	Embed license as resource.
2016-07-28 18:13:49 +01:00
84b361f3f6 * README.md:
* DiscImageChef.sln:
	* DiscImageChef/AssemblyInfo.cs:
	* DiscImageChef/DiscImageChef.csproj:
	* DiscImageChef.Interop/DiscImageChef.Interop.csproj:
	* DiscImageChef.Helpers/DiscImageChef.Helpers.csproj:
	* DiscImageChef.Checksums/Properties/AssemblyInfo.cs:
	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	* DiscImageChef.Console/DiscImageChef.Console.csproj:
	* DiscImageChef.Decoders/DiscImageChef.Decoders.csproj:
	* DiscImageChef.Metadata/DiscImageChef.Metadata.csproj:
	* DiscImageChef.Settings/DiscImageChef.Settings.csproj:
	* DiscImageChef.Checksums/DiscImageChef.Checksums.csproj:
	* DiscImageChef.DiscImages/DiscImageChef.DiscImages.csproj:
	* DiscImageChef.Partitions/DiscImageChef.Partitions.csproj:
	* DiscImageChef.CommonTypes/DiscImageChef.CommonTypes.csproj:
	* DiscImageChef.Filesystems/DiscImageChef.Filesystems.csproj:

	* Packages.mdproj:
	  Bumped version to 3.0.0.0.
2016-07-19 22:29:08 +01:00
f8bc81d4f5 Reformatted. 2016-04-19 02:11:47 +01:00
2626c18d0c * commandline:
* DiscImageChef.Decoders/CD/PMA.cs:
	  Correct prettify of PMA.

	* DiscImageChef/Commands/DumpMedia.cs:
	  Correct exception on raw cd dumping not implemented.

	* DiscImageChef/Commands/MediaScan.cs:
	  Scan more blocks.
2016-04-06 17:07:14 +01:00
5bc9dd3c10 * TODO:
* README.md:
	* DiscImageChef.Partitions/GPT.cs:
	* DiscImageChef.Partitions/DiscImageChef.Partitions.csproj:
	  Added support for EFI GPT. Fixes #8.

	* commandline:

	* DiscImageChef.Decoders/SCSI/Sense.cs:
	  Corrected handling when sense contains multiple repeated
	  sense codes, in a not clean way (just ignoring repeats).

	* DiscImageChef.Filesystems/Acorn.cs:
	  Added exception catching and unsigned values to correct
	  Acorn DiscRecord structure. Fixes #34

	* DiscImageChef/Commands/DeviceReport.cs:
	  Check for 36 blocks in long block search in all cases.

	* DiscImageChef/Commands/DumpMedia.cs:
	  Only try the persistent pass one time. If it didn't correct
	  in the previous cycle it won't magically do now.
	Sort unreadalbe sectors before printing them.
2016-02-05 19:24:48 +00:00
bd80a6246a * DiscImageChef.Decoders/SCSI/Modes.cs:
* DiscImageChef.Decoders/SCSI/ModesEncoders.cs:
	* DiscImageChef.Decoders/DiscImageChef.Decoders.csproj:
	  Added encoders for Mode 6 and 10, Mode pages 0x01 and 0x01
	  for MultiMedia Devices.

	* commandline:

	* DiscImageChef.Devices/Device/ScsiCommands/SPC.cs:
	  Added MODE SELECT (6) and MODE SELECT (10) commands.

	* DiscImageChef.Filesystems/FFS.cs:
	  Corrected array initialization.

	* DiscImageChef/Commands/Decode.cs:
	* DiscImageChef/Commands/Verify.cs:
	* DiscImageChef/Commands/Analyze.cs:
	* DiscImageChef/Commands/Entropy.cs:
	* DiscImageChef/Commands/Checksum.cs:
	* DiscImageChef/Commands/PrintHex.cs:
	* DiscImageChef/Commands/CreateSidecar.cs:
	  Check if image file exists before proceeding.

	* DiscImageChef/Commands/MediaInfo.cs:
	* DiscImageChef/Commands/MediaScan.cs:
	* DiscImageChef/Commands/DeviceInfo.cs:
	* DiscImageChef/Commands/DeviceReport.cs:
	  Check if device exists before proceeding.

	* DiscImageChef/Commands/DumpMedia.cs:
	  Check if device exists before proceeding.
	Removed unused code.
	Added error handling procedures for non CDs.

	* DiscImageChef/Options.cs:
	  Remove unused options.
	Added options to control dump-media error handling.
2016-02-04 16:51:03 +00:00
d777061105 * commandline:
* DiscImageChef.Settings/Settings.cs:
	* DiscImageChef.Settings/docs/README.txt:
	* DiscImageChef.Settings/packages.config:
	* DiscImageChef.Settings/docs/LICENSE.txt:
	* DiscImageChef.Settings/docs/ChangeLog.txt:
	* DiscImageChef.Settings/docs/mono/index.xml:
	* DiscImageChef.Settings/docs/html/index.html:
	* DiscImageChef.Settings/Properties/AssemblyInfo.cs:
	* DiscImageChef.Settings/DiscImageChef.Settings.csproj:
	* DiscImageChef.Settings/docs/mono/ns-Claunia.PropertyList.xml:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/UID.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/UID.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSSet.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/index.html:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSSet.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSDate.xml:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSData.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSDate.html:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSData.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSArray.xml:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSNumber.xml:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSString.xml:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSObject.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSArray.html:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSNumber.html:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSString.html:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSObject.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/NSDictionary.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/NSDictionary.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/PropertyListParser.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/PropertyListParser.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/XmlPropertyListParser.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/XmlPropertyListParser.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/ASCIIPropertyListParser.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/ASCIIPropertyListParser.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/BinaryPropertyListParser.xml:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/BinaryPropertyListWriter.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/BinaryPropertyListWriter.html:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/BinaryPropertyListParser.html:
	* DiscImageChef.Settings/docs/mono/Claunia.PropertyList/PropertyListFormatException.xml:
	* DiscImageChef.Settings/docs/html/Claunia.PropertyList/PropertyListFormatException.html:
	  Added supports for settings

	* DiscImageChef/Commands/Configure.cs:
	  Added support for settings.

	* DiscImageChef/Core/Statistics.cs:
	* DiscImageChef/Commands/Verify.cs:
	* DiscImageChef/Commands/Entropy.cs:
	* DiscImageChef/Commands/Formats.cs:
	* DiscImageChef/Commands/PrintHex.cs:
	* DiscImageChef/Commands/MediaInfo.cs:
	* DiscImageChef/Commands/Statistics.cs:
	  Added statistics.

	* DiscImageChef.Decoders/SCSI/Inquiry.cs:
	  Corrected bug on inquiry decoding.

	* DiscImageChef.Decoders/SCSI/Modes.cs:
	  Corrected bug on decoding mode page 2Ah without write
	  performance descriptors.
	Corrected bug when there is a vendor page 0 in mode sense
	  decoding.

	* DiscImageChef.Devices/Device/Constructor.cs:
	  Corrected detecting USB or FireWire attached CD/DVD/BD and
	  tape drives.
	Try ATA identify on USB or FireWire that don't have SCSI
	  INQUIRY.

	* DiscImageChef.DiscImages/CDRWin.cs:
	  Corrected CD-ROM XA vs CD-ROM detection.

	* DiscImageChef.Partitions/AppleMap.cs:
	  Corrected big endian working.
	Added debug output.

	* DiscImageChef.sln:
	  Added supports for settings.

	* DiscImageChef/Commands/Decode.cs:
	* DiscImageChef/Commands/Analyze.cs:
	* DiscImageChef/Commands/Compare.cs:
	* DiscImageChef/Commands/Checksum.cs:
	* DiscImageChef/Commands/Benchmark.cs:
	* DiscImageChef/Commands/DeviceInfo.cs:
	* DiscImageChef/Commands/CreateSidecar.cs:
	  Added statistics.

	* DiscImageChef/Commands/DeviceReport.cs:
	  Added statistics.
	Correct handling empty inquiry string fields.
	Suppose it is not removable, til proved wrong.
	Corrected MODE SENSE (6/10) detection and calling order.
	If device is MMC type but reports neither mode page 2Ah
	  neither GET CONFIGURATION, try all CDs (old drives work like
	  that).
	Try reading Lead-In and Lead-Out in Audio CD using Audio READ
	  CD commands.
	Corrected READ LONG information handling, some drives return
	  2s-complement in 32 bit. Upper 16 bits are ignored.
	Added support for DVD raw block (37856 bytes).
	Check READ LONG up to 36 times the cooked block size. That
	  should be enough to detect huge blocked media (like DVD and
	  BD) without taking ages.
	If READ LONG size had to be bruteforced, and debug is
	  activated, save the result.

	* DiscImageChef/Commands/DumpMedia.cs:
	  Added statistics.
	Corrected READ LONG information handling, some drives return
	  2s-complement in 32 bit. Upper 16 bits are ignored.
	Start trying with 64 blocks at a time. Some drives report to
	  be able to read 255 at a time, but they really don't, they
	  take a lot longer to read.

	* DiscImageChef/Commands/MediaScan.cs:
	  Added statistics.
	Start trying with 64 blocks at a time. Some drives report to
	  be able to read 255 at a time, but they really don't, they
	  take a lot longer to read.

	* DiscImageChef/DiscImageChef.csproj:
	  Added support for settings.
	Added statistics.

	* DiscImageChef/Main.cs:
	* DiscImageChef/Options.cs:
	  Added support for settings.
	Added statistics.
2016-02-03 18:58:11 +00:00
bb69a1b8d9 * DiscImageChef.CommonTypes/MediaTypeFromSCSI.cs:
* DiscImageChef.CommonTypes/DiscImageChef.CommonTypes.csproj:
	  Added method to calculate MediaType from SCSI parameters
	  (mode, density, medium type, device type, etc).

	* DiscImageChef.Metadata/DeviceReport.cs:
	  Added command to guess drive and media parameters and output
	  an XML report of them.

	* DiscImageChef/Commands/DeviceReport.cs:
	* DiscImageChef.Metadata/DiscImageChef.Metadata.csproj:
	  Added command to guess drive and media parameters and output
	  an XML report of them.

	* DiscImageChef/Commands/DumpMedia.cs:
	  Added preliminary command to dump media. Only SCSI for now.
	  CDs and tapes are not supported. Errors are blalanty
	  ignored. Options are incomplete. Not yet usable.

	* DiscImageChef/Core/Checksum.cs:
	* DiscImageChef/Commands/CreateSidecar.cs:
	  Moved checksum generation to a separate class.

	* CICMMetadata:
	  Added support for ADIP.

	* DiscImageChef.CommonTypes/MediaType.cs:
	  Added parameters of UDO media.
	Moved DataPlay outside of Iomega, as it's not from that
	  manufacturer.
	Added missing Exatape media and corrected 160m XL one.
	Added SyJet media.
	Added all ECMA defined magneto-optical (sectors calculated
	  from specifications, unchecked).
	Added PD media.
	Added Imation 320Gb RDX.
	Added generic USB flash drives.

	* DiscImageChef.Decoders/SCSI/Enums.cs:
	  Make enumerations public.

	* DiscImageChef.Decoders/SCSI/Inquiry.cs:
	* DiscImageChef.Devices/Device/Constructor.cs:
	  Trim space padded strings on SCSI INQUIRY.

	* DiscImageChef.Devices/Device/ScsiCommands/MMC.cs:
	  Added PREVENT ALLOW MEDIUM REMOVAL.
	Added START STOP UNIT.

	* DiscImageChef.Devices/Device/ScsiCommands/NEC.cs:
	  Rename NEC methods.

	* DiscImageChef.Devices/Device/ScsiCommands/Pioneer.cs:
	  Corrected Pioneer transfer length calculation.

	* DiscImageChef.Devices/Device/ScsiCommands/Plextor.cs:
	  Renamed Plextor methods.

	* DiscImageChef.Devices/Device/ScsiCommands/SPC.cs:
	  Renamed SSC PREVENT ALLOW MEDIUM REMOVAL to uncollide with
	  MMC same name but different command.

	* DiscImageChef.Devices/DiscImageChef.Devices.csproj:
	  Set platform target to x86 (does it really matter?).

	* DiscImageChef.Devices/Linux/Command.cs:
	  Reduced allocation for readlink() to current kernel
	  MAX_PATH.

	* DiscImageChef.Devices/Linux/Enums.cs:
	  Modified Linux ioctl to 32-bit. Works on 64-bit also. Solves
	  commands not working on 32-bit environments.

	* DiscImageChef.DiscImages/ZZZRawImage.cs:
	  Changed ECMA-184 and ECMA-183 enums.

	* DiscImageChef.Metadata/Dimensions.cs:
	  Added all ECMA defined magneto-opticals.
	Added PD media.
	Added 320Gb RDX.
	Corrected Exatape 160m XL.
	Added Exatape 22m and 28m.

	* DiscImageChef.Metadata/MediaType.cs:
	  Added 356mm magneto-optical media.
	Changed ECMA-184 and ECMA-183 enums.
	Added USB generic flash drive.

	* DiscImageChef/Commands/DeviceInfo.cs:
	  Corrected SCSI INQUIRY naming.
	Corrected SCSI MODE SENSE (6) parameters.
	Reduced SCSI MODE SENSE timeout, some devices just get stuck
	  with unsupported MODE SENSE commanda and must be left to
	  timeout.
	Changed FUJITSU vendor string comparison.

	* DiscImageChef/Commands/MediaInfo.cs:
	  Added method to calculate MediaType from SCSI parameters
	  (mode, density, medium type, device type, etc).
	Changed some error WriteLine() to debug ones. Too much
	  verbosity.
	Added DVD media type decoding from PFI.
	Found a drive that dumps ADIP, enabling it again (not
	  decoded).

	* DiscImageChef/Commands/MediaScan.cs:
	  Added option to generate ImgBurn compatible log to
	  media-scan command.

	* DiscImageChef/DiscImageChef.csproj:
	  Moved checksum generation to a separate class.
	Added command to guess drive and media parameters and output
	  an XML report of them.
	Added preliminary command to dump media. Only SCSI for now.
	  CDs and tapes are not supported. Errors are blalanty
	  ignored. Options are incomplete. Not yet usable.

	* DiscImageChef/Main.cs:
	  Added command to guess drive and media parameters and output
	  an XML report of them.
	Added preliminary command to dump media. Only SCSI for now.
	  CDs and tapes are not supported. Errors are blalanty
	  ignored. Options are incomplete. Not yet usable.

	* DiscImageChef/Options.cs:
	  Added command to guess drive and media parameters and output
	  an XML report of them.
	Added preliminary command to dump media. Only SCSI for now.
	  CDs and tapes are not supported. Errors are blalanty
	  ignored. Options are incomplete. Not yet usable.
	Added option to generate ImgBurn compatible log to media-scan
	  command.
2016-01-31 08:05:56 +00:00
8088f6f249 Implement decoding Fujitsu Verify Control Page. 2016-01-15 22:42:33 +00:00
57c885201e Added all known vendor density and medium type codes. 2016-01-15 21:14:36 +00:00
5f5a9d30da Moved density and medium type codes to a separate file. 2016-01-15 07:13:11 +00:00
2a8b5d3cc5 * DiscImageChef/Commands/MediaInfo.cs:
* DiscImageChef/Commands/DeviceInfo.cs:
	  Added support for SCSI sequential devices.

	* DiscImageChef.Decoders/SCSI/SSC/BlockLimits.cs:
	* DiscImageChef.Decoders/SCSI/SSC/DensitySupport.cs:
	* DiscImageChef.Decoders/DiscImageChef.Decoders.csproj:
	  Added decoders for SCSI SSC READ BLOCK LIMITS and REPORT
	  DENSITY SUPPORT.

	* DiscImageChef.Devices/Device/ScsiCommands/SSC.cs:
	  Corrected ReportDensitySupport.

	* DiscImageChef.Decoders/SCSI/Modes.cs:
	  Corrected mode size.
2016-01-15 07:00:43 +00:00
da29ec63eb * DiscImageChef/Main.cs:
* DiscImageChef/Options.cs:
	* DiscImageChef/DiscImageChef.csproj:
	* DiscImageChef/Commands/MediaScan.cs:
	  Added media-scan command.

	* DiscImageChef.Decoders/SCSI/Inquiry.cs:
	  Fixes decoding for devices that follow old 5-byte SCSI
	  INQUIRY format.

	* DiscImageChef.Decoders/SCSI/Sense.cs:
	  Fixes printing of sense block missing a newline.

	* DiscImageChef.Devices/Device/Variables.cs:
	* DiscImageChef.Devices/Device/Constructor.cs:
	  Added an IsRemovable field.

	* DiscImageChef.Devices/Device/ScsiCommands.cs:
	  Fixed SCSI READ CAPACITY CDB size.
	Fixed READ CD-DA MSF method name.
	Implemented SCSI SEEK (6) and SEEK (10) commands.

	* DiscImageChef.Devices/Linux/Command.cs:
	* DiscImageChef.Devices/Windows/Command.cs:
	  Fixed memory leaking on unmanaged heap.

	* DiscImageChef.Helpers/StringHandlers.cs:
	  Fixed string conversion when input byte array is null.

	* DiscImageChef/Commands/MediaInfo.cs:
	  Check for inserted medium only on removable media devices.
2015-12-30 11:45:27 +00:00
eef78b50f2 Checked more information, GCK is Grupo Condor S.L. from Spain. 2015-12-14 09:25:52 +00:00
3ee16d149d * DiscImageChef.Decoders/CD/ATIP.cs:
Added manufacturer code for a GCK disc I just came upon.

	* DiscImageChef.Metadata/DiskType.cs:
	  Corrected miswriting of CDXA, CDRW and CDROM.

	* DiscImageChef/Commands/MediaInfo.cs:
	  Check ATIP even if no TOC, as blank discs do always have
	  ATIP (but no TOC or PMA).
2015-12-13 07:43:14 +00:00
8e0d254ed2 * DiscImageChef.Decoders/SCSI/Sense.cs:
Additional length may be bigger than provided buffer.

	* DiscImageChef/Commands/MediaInfo.cs:
	  Implement detection of medium not present and waiting for
	  drive to become ready.
2015-12-04 08:12:20 +00:00
96d256c6e8 * DiscImageChef.Decoders/DVD/PFI.cs:
* DiscImageChef.Decoders/DVD/Enums.cs:
	  Added HD DVD types.

	* DiscImageChef.Decoders/SCSI/Sense.cs:
	  Solved SCSI sense decoding.
2015-12-04 07:52:06 +00:00
49bd03cecb * DiscImageChef.Decoders/CD/ATIP.cs:
Added disc type and manufacturer lookup from ATIP.

	* DiscImageChef.Decoders/CD/PMA.cs:
	  Implement full PMA decoding.

	* DiscImageChef.Decoders/CD/FullTOC.cs:
	  Implement decoding disc ID.

	* DiscImageChef.Decoders/SCSI/MMC/DiscInformation.cs:
	  Disc ID is 24-bit.

	* DiscImageChef.Decoders/CD/CDTextOnLeadIn.cs:
	  CD-TEXT can be empty without being null, do not decode an
	  empty one.
2015-12-04 07:26:03 +00:00
b21a807ae1 Finally CD-Text on lead-in is getting decoded correctly... 2015-12-04 03:34:44 +00:00
70d8743683 * DiscImageChef.Decoders/CD/FullTOC.cs:
Enhanced prettify to be more verbose.

	* DiscImageChef.Decoders/CD/TOC.cs:
	  Corrected typo.
2015-12-04 01:57:56 +00:00
b3ec79b7ae * DiscImageChef.Decoders/CD/Enums.cs:
* DiscImageChef/Commands/MediaInfo.cs:
	* DiscImageChef.CommonTypes/DiskType.cs:
	  Added support for CD-V.

	* DiscImageChef.Decoders/CD/TOC.cs:
	* DiscImageChef.Decoders/CD/FullTOC.cs:
	  Added support for CD-V.
	Added support for CD-DA.
2015-12-03 09:31:06 +00:00
3c79845b90 Added support for Nintendo GOD and WOD. 2015-12-03 08:11:46 +00:00
565cc9c133 Added decoding of XGD2 and XGD3 DMI. 2015-12-03 08:02:12 +00:00
2b0eeb383c Use global enums for DVD structure decoding. 2015-12-02 07:10:52 +00:00
b6eb17c9f0 Implemented decoding DVD-RAM Spare Area Information. 2015-12-02 06:49:36 +00:00
ba50144dca Implemented decoding DVD-RAM medium status. 2015-12-02 06:34:12 +00:00
8955b078b3 Added DDS decoding. 2015-12-02 05:56:50 +00:00
94f14feeb7 * DiscImageChef/Commands/MediaInfo.cs:
DCB was incorrectly being asked to HD DVD instead of DVD+.

	* DiscImageChef.Decoders/DVD/CSS&CPRM.cs:
	  Must return value.
2015-12-01 04:25:01 +00:00
06f00c93f9 Added decoding Lead-In CMI for DVD. 2015-12-01 04:23:08 +00:00
5bfcc5acbe Separated blu-ray structure decoders. 2015-12-01 03:23:31 +00:00
3a6392a02f Added PFI decoding. 2015-12-01 02:51:52 +00:00
0485b57642 Solved repeated field names. 2015-11-27 10:32:54 +00:00
e63f7cad1e Added PFI information from all ECMA standards. 2015-11-27 10:17:26 +00:00
c693a4191d Reorganized media-info command so only applicable information
is requested based on what we are being informed about media
	type.
2015-11-24 03:24:14 +00:00