45be793491
Add more optimized marshallers.
2019-02-27 08:49:42 +00:00
6b12cd1a8e
Update copyright year.
2018-12-29 17:34:38 +00:00
abfc476e01
Add "Author" field to plugins.
2018-08-29 22:15:43 +01:00
91569c4636
Move all interfaces, extents, interop and metadata to DiscImageChef.CommonTypes.
2018-06-25 19:08:26 +01:00
88da8fc019
Code cleanup.
2018-06-22 08:08:51 +01:00
94d8173b3a
🎨 REFACTOR: Plugins do not need to expose their methods as virtual.
2017-12-26 07:28:40 +00:00
f66a0bdd42
🎨 Converted all plugin types to interfaces.
2017-12-26 06:05:24 +00:00
a002253fa4
🎨 🎨 🎨 Removed methods in images that only returned what's already in the ImageInfo structure.
2017-12-26 02:51:10 +00:00
3f628cd3c9
REFACTOR: Final cleanup of DiscImageChef.Partitions.
2017-12-24 03:11:33 +00:00
4e6e8f340a
REFACTOR: Use string interpolation expression.
2017-12-21 17:58:51 +00:00
dcd053b20d
REFACTOR: Remove unneeded code.
2017-12-21 14:30:44 +00:00
4d886dae25
REFACTOR: Invert 'if' statement to reduce nesting.
2017-12-21 06:06:19 +00:00
bce69c9161
REFACTOR: Use preferred braces style.
2017-12-21 00:44:33 +00:00
b0936d51c5
REFACTOR: Remove redundant parentheses.
2017-12-20 17:26:28 +00:00
a4650c61aa
REFACTOR: Fixed MOST name inconsistencies.
2017-12-20 17:15:37 +00:00
ef49fdfd45
REFACTOR: Member or type can be made internal.
2017-12-20 02:08:37 +00:00
e6f6ace80b
REFACTOR: Reformat code.
2017-12-19 20:33:05 +00:00
1a39168f19
REFACTOR: Updated comments and copyright date.
2017-12-19 03:51:05 +00:00
6d4c3f302d
Moved switch block to string array.
2017-08-26 15:19:11 +01:00
1a843b0cce
Check for real presence of a GPT not just their partition
...
types.
2017-08-07 16:12:08 +01:00
08425e9ccc
Added disk geometry.
2017-08-02 23:01:11 +01:00
08aca746ef
Several copy/paste typos prevented MBR on optical discs to
...
work, corrected, also add partition at start of track in them
if it appears as one entry.
2017-07-25 15:03:14 +01:00
fed6ecad33
Corrected type and name of minix subpartitions.
2017-07-25 03:27:58 +01:00
f705645f40
Added support for minix subpartitions.
2017-07-25 02:47:42 +01:00
72dd8d9179
Use generic method to search for partitions, supporting
...
partitions inside partitions. At the same time SGI DVH is
disabled because it is not working correctly. Fixes #60
2017-07-24 23:35:33 +01:00
98d12076d5
Rewrote, solves infinite loop on extended partitions, supports
...
OnTrack and NEC extensions, supports optical discs, stops
doing disklabels here (should be moved independently).
2017-07-24 04:05:38 +01:00
4b9d012346
Add field to propagate partition scheme on each partition.
2017-07-23 22:54:36 +01:00
16434f2788
Refactor: Simplify field names.
2017-07-19 16:37:11 +01:00
d6e850b9a6
Partitions should be public.
2017-07-01 20:54:02 +01:00
869b49d711
Updated copyright string.
2017-05-19 20:28:49 +01:00
7d845a08cc
* DiscImageChef.Helpers/BigEndianStructure.cs:
...
* DiscImageChef.Helpers/DiscImageChef.Helpers.csproj:
Added code that directly marshals from a big-endian byte
array. But untested with nested structures.
* DiscImageChef.Partitions/Acorn.cs:
Added support for Acorn FileCore partition, closes #4 .
* DiscImageChef.Partitions/BSD.cs:
Moved BSD partitions from inside MBR code to separate code,
as they can (and do) appear on other architectures as the
only scheme.
* DiscImageChef.Partitions/DEC.cs:
Added support for DEC disklabels, closes #11 .
* DiscImageChef.Partitions/DragonFlyBSD.cs:
Added support for DragonFly BSD 64-bit disklabels.
* DiscImageChef.Partitions/PC98.cs:
Added support for NEC PC-9800 partitions.
* DiscImageChef.Partitions/RioKarma.cs:
Added support for Rio Karma partitions.
* DiscImageChef.Partitions/SGI.cs:
Added support for SGI DVHs, closes #9 .
* DiscImageChef.Partitions/UNIX.cs:
Moved UNIX partitions from inside MBR code to separate code,
as they can (and do) appear on other architectures as the
only scheme.
* TODO:
* README.md:
* DiscImageChef.Partitions/DiscImageChef.Partitions.csproj:
Added support for Acorn FileCore partition, closes #4 .
Added support for DEC disklabels, closes #11 .
Added support for SGI DVHs, closes #9 .
Moved BSD partitions from inside MBR code to separate code, as
they can (and do) appear on other architectures as the only
scheme.
Added support for DragonFly BSD 64-bit disklabels.
Added support for NEC PC-9800 partitions.
Added support for Rio Karma partitions.
Moved UNIX partitions from inside MBR code to separate code,
as they can (and do) appear on other architectures as the
only scheme.
* DiscImageChef.Partitions/GPT.cs:
Added new partition type UUIDs.
* DiscImageChef.Partitions/MBR.cs:
Moved BSD partitions from inside MBR code to separate code,
as they can (and do) appear on other architectures as the
only scheme.
Moved UNIX partitions from inside MBR code to separate code,
as they can (and do) appear on other architectures as the
only scheme.
* DiscImageChef.Partitions/Sun.cs:
Added new partition types.
Prepare structures for marshaling.
2016-08-21 08:27:43 +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
f8bc81d4f5
Reformatted.
2016-04-19 02:11:47 +01:00
fda7fee90c
Move partitions plugins to a separate library.
2015-10-05 19:58:42 +01:00