* 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.
This commit is contained in:
2015-10-05 18:58:13 +01:00
parent 4001c1b21e
commit 9530cc1a7a
31 changed files with 284 additions and 58 deletions

6
ChangeLog Normal file
View File

@@ -0,0 +1,6 @@
2015-10-05 Natalia Portillo <claunia@claunia.com>
* DiscImageChef.sln:
Move helpers to a separate library.
Move checksums to a separate library.

View File

@@ -163,18 +163,18 @@ namespace DiscImageChef.Checksums
channel[0x00A] == 0xFF && channel[0x00A] == 0xFF &&
channel[0x00B] == 0x00) channel[0x00B] == 0x00)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Data sector, address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Data sector, address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
if (channel[0x00F] == 0x00) // mode (1 byte) if (channel[0x00F] == 0x00) // mode (1 byte)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 0 sector at address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 0 sector at address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
for (int i = 0x010; i < 0x930; i++) for (int i = 0x010; i < 0x930; i++)
{ {
if (channel[i] != 0x00) if (channel[i] != 0x00)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 0 sector with error at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 0 sector with error at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
return false; return false;
} }
@@ -183,7 +183,7 @@ namespace DiscImageChef.Checksums
} }
else if (channel[0x00F] == 0x01) // mode (1 byte) else if (channel[0x00F] == 0x01) // mode (1 byte)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
if (channel[0x814] != 0x00 || // reserved (8 bytes) if (channel[0x814] != 0x00 || // reserved (8 bytes)
@@ -195,7 +195,7 @@ namespace DiscImageChef.Checksums
channel[0x81A] != 0x00 || channel[0x81A] != 0x00 ||
channel[0x81B] != 0x00) channel[0x81B] != 0x00)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector with data in reserved bytes at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector with data in reserved bytes at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
return false; return false;
} }
@@ -216,10 +216,10 @@ namespace DiscImageChef.Checksums
bool FailedECC_Q = CheckECC(address, data2, 52, 43, 86, 88, ecc_q); bool FailedECC_Q = CheckECC(address, data2, 52, 43, 86, 88, ecc_q);
if (FailedECC_P) if (FailedECC_P)
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC P check", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC P check", channel[0x00C], channel[0x00D], channel[0x00E]);
if (FailedECC_Q) if (FailedECC_Q)
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC Q check", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC Q check", channel[0x00C], channel[0x00D], channel[0x00E]);
if (FailedECC_P || FailedECC_Q) if (FailedECC_P || FailedECC_Q)
@@ -234,7 +234,7 @@ namespace DiscImageChef.Checksums
if (CalculatedEDC != StoredEDC) if (CalculatedEDC != StoredEDC)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address: {0:X2}:{1:X2}:{2:X2}, got CRC 0x{3:X8} expected 0x{4:X8}", channel[0x00C], channel[0x00D], channel[0x00E], CalculatedEDC, StoredEDC); Console.WriteLine("DEBUG (CDChecksums): Mode 1 sector at address: {0:X2}:{1:X2}:{2:X2}, got CRC 0x{3:X8} expected 0x{4:X8}", channel[0x00C], channel[0x00D], channel[0x00E], CalculatedEDC, StoredEDC);
return false; return false;
} }
@@ -243,14 +243,14 @@ namespace DiscImageChef.Checksums
} }
else if (channel[0x00F] == 0x02) // mode (1 byte) else if (channel[0x00F] == 0x02) // mode (1 byte)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 2 sector at address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 2 sector at address {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
if ((channel[0x012] & 0x20) == 0x20) // mode 2 form 2 if ((channel[0x012] & 0x20) == 0x20) // mode 2 form 2
{ {
if (channel[0x010] != channel[0x014] || channel[0x011] != channel[0x015] || channel[0x012] != channel[0x016] || channel[0x013] != channel[0x017]) if (channel[0x010] != channel[0x014] || channel[0x011] != channel[0x015] || channel[0x012] != channel[0x016] || channel[0x013] != channel[0x017])
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Subheader copies differ in mode 2 form 2 sector at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Subheader copies differ in mode 2 form 2 sector at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
} }
@@ -263,7 +263,7 @@ namespace DiscImageChef.Checksums
if (CalculatedEDC != StoredEDC && StoredEDC != 0x00000000) if (CalculatedEDC != StoredEDC && StoredEDC != 0x00000000)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 2 sector at address: {0:X2}:{1:X2}:{2:X2}, got CRC 0x{3:X8} expected 0x{4:X8}", channel[0x00C], channel[0x00D], channel[0x00E], CalculatedEDC, StoredEDC); Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 2 sector at address: {0:X2}:{1:X2}:{2:X2}, got CRC 0x{3:X8} expected 0x{4:X8}", channel[0x00C], channel[0x00D], channel[0x00E], CalculatedEDC, StoredEDC);
return false; return false;
} }
@@ -272,7 +272,7 @@ namespace DiscImageChef.Checksums
{ {
if (channel[0x010] != channel[0x014] || channel[0x011] != channel[0x015] || channel[0x012] != channel[0x016] || channel[0x013] != channel[0x017]) if (channel[0x010] != channel[0x014] || channel[0x011] != channel[0x015] || channel[0x012] != channel[0x016] || channel[0x013] != channel[0x017])
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Subheader copies differ in mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Subheader copies differ in mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}", channel[0x00C], channel[0x00D], channel[0x00E]);
} }
@@ -295,10 +295,10 @@ namespace DiscImageChef.Checksums
bool FailedECC_Q = CheckECC(address, data2, 52, 43, 86, 88, ecc_q); bool FailedECC_Q = CheckECC(address, data2, 52, 43, 86, 88, ecc_q);
if (FailedECC_P) if (FailedECC_P)
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC P check", channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC P check", channel[0x00C], channel[0x00D], channel[0x00E]);
if (FailedECC_Q) if (FailedECC_Q)
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC Q check", channel[0x00F], channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}, fails ECC Q check", channel[0x00F], channel[0x00C], channel[0x00D], channel[0x00E]);
if (FailedECC_P || FailedECC_Q) if (FailedECC_P || FailedECC_Q)
@@ -313,7 +313,7 @@ namespace DiscImageChef.Checksums
if (CalculatedEDC != StoredEDC) if (CalculatedEDC != StoredEDC)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}, got CRC 0x{3:X8} expected 0x{4:X8}", channel[0x00C], channel[0x00D], channel[0x00E], CalculatedEDC, StoredEDC); Console.WriteLine("DEBUG (CDChecksums): Mode 2 form 1 sector at address: {0:X2}:{1:X2}:{2:X2}, got CRC 0x{3:X8} expected 0x{4:X8}", channel[0x00C], channel[0x00D], channel[0x00E], CalculatedEDC, StoredEDC);
return false; return false;
} }
@@ -323,7 +323,7 @@ namespace DiscImageChef.Checksums
} }
else else
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Unknown mode {0} sector at address: {1:X2}:{2:X2}:{3:X2}", channel[0x00F], channel[0x00C], channel[0x00D], channel[0x00E]); Console.WriteLine("DEBUG (CDChecksums): Unknown mode {0} sector at address: {1:X2}:{2:X2}:{3:X2}", channel[0x00F], channel[0x00C], channel[0x00D], channel[0x00E]);
return null; return null;
} }
@@ -454,8 +454,8 @@ namespace DiscImageChef.Checksums
CDSubRWPack4[j] = (byte)(subchannel[i++] & 0x3F); CDSubRWPack4[j] = (byte)(subchannel[i++] & 0x3F);
} }
if(MainClass.isDebug) //if(MainClass.isDebug)
{ //{
switch(CDSubRWPack1[0]) switch(CDSubRWPack1[0])
{ {
case 0x00: case 0x00:
@@ -483,7 +483,7 @@ namespace DiscImageChef.Checksums
Console.WriteLine("Detected unknown Pack type in subchannel: mode {0}, item {1}", Convert.ToString(CDSubRWPack1[0] & 0x38, 2), Convert.ToString(CDSubRWPack1[0] & 0x07, 2)); Console.WriteLine("Detected unknown Pack type in subchannel: mode {0}, item {1}", Convert.ToString(CDSubRWPack1[0] & 0x38, 2), Convert.ToString(CDSubRWPack1[0] & 0x07, 2));
break; break;
} }
} //}
BigEndianBitConverter.IsLittleEndian = true; BigEndianBitConverter.IsLittleEndian = true;
@@ -494,7 +494,7 @@ namespace DiscImageChef.Checksums
if (QSubChannelCRC != CalculatedQCRC) if (QSubChannelCRC != CalculatedQCRC)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): Q subchannel CRC 0x{0:X4}, expected 0x{1:X4}", CalculatedQCRC, QSubChannelCRC); Console.WriteLine("DEBUG (CDChecksums): Q subchannel CRC 0x{0:X4}, expected 0x{1:X4}", CalculatedQCRC, QSubChannelCRC);
status = false; status = false;
} }
@@ -508,7 +508,7 @@ namespace DiscImageChef.Checksums
if (CDTextPack1CRC != CalculatedCDTP1CRC && CDTextPack1CRC != 0) if (CDTextPack1CRC != CalculatedCDTP1CRC && CDTextPack1CRC != 0)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 1 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack1CRC, CalculatedCDTP1CRC); Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 1 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack1CRC, CalculatedCDTP1CRC);
status = false; status = false;
} }
@@ -524,7 +524,7 @@ namespace DiscImageChef.Checksums
if (CDTextPack2CRC != CalculatedCDTP2CRC && CDTextPack2CRC != 0) if (CDTextPack2CRC != CalculatedCDTP2CRC && CDTextPack2CRC != 0)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 2 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack2CRC, CalculatedCDTP2CRC); Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 2 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack2CRC, CalculatedCDTP2CRC);
status = false; status = false;
} }
@@ -540,7 +540,7 @@ namespace DiscImageChef.Checksums
if (CDTextPack3CRC != CalculatedCDTP3CRC && CDTextPack3CRC != 0) if (CDTextPack3CRC != CalculatedCDTP3CRC && CDTextPack3CRC != 0)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 3 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack3CRC, CalculatedCDTP3CRC); Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 3 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack3CRC, CalculatedCDTP3CRC);
status = false; status = false;
} }
@@ -556,7 +556,7 @@ namespace DiscImageChef.Checksums
if (CDTextPack4CRC != CalculatedCDTP4CRC && CDTextPack4CRC != 0) if (CDTextPack4CRC != CalculatedCDTP4CRC && CDTextPack4CRC != 0)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 4 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack4CRC, CalculatedCDTP4CRC); Console.WriteLine("DEBUG (CDChecksums): CD-Text Pack 4 CRC 0x{0:X4}, expected 0x{1:X4}", CDTextPack4CRC, CalculatedCDTP4CRC);
status = false; status = false;
} }

View File

@@ -0,0 +1,20 @@
2015-10-05 Natalia Portillo <claunia@claunia.com>
* MD5Context.cs:
* SHA1Context.cs:
* ReedSolomon.cs:
* CDChecksums.cs:
* CRC64Context.cs:
* CRC16Context.cs:
* CRC32Context.cs:
* SHA256Context.cs:
* SHA512Context.cs:
* SHA384Context.cs:
* SpamSumContext.cs:
* Adler32Context.cs:
* FletcherContext.cs:
* RIPEMD160Context.cs:
* Properties/AssemblyInfo.cs:
* DiscImageChef.Checksums.csproj:
Move checksums to a separate library.

View File

@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{CC48B324-A532-4A45-87A6-6F91F7141E8D}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>DiscImageChef.Checksums</RootNamespace>
<AssemblyName>DiscImageChef.Checksums</AssemblyName>
<ReleaseVersion>2.2</ReleaseVersion>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>full</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SpamSumContext.cs" />
<Compile Include="Adler32Context.cs" />
<Compile Include="CDChecksums.cs" />
<Compile Include="CRC16Context.cs" />
<Compile Include="CRC32Context.cs" />
<Compile Include="CRC64Context.cs" />
<Compile Include="FletcherContext.cs" />
<Compile Include="MD5Context.cs" />
<Compile Include="ReedSolomon.cs" />
<Compile Include="RIPEMD160Context.cs" />
<Compile Include="SHA1Context.cs" />
<Compile Include="SHA256Context.cs" />
<Compile Include="SHA384Context.cs" />
<Compile Include="SHA512Context.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>
<ProjectReference Include="..\DiscImageChef.Helpers\DiscImageChef.Helpers.csproj">
<Project>{F8BDF57B-1571-4CD0-84B3-B422088D359A}</Project>
<Name>DiscImageChef.Helpers</Name>
</ProjectReference>
</ItemGroup>
</Project>

View File

@@ -0,0 +1,27 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("DiscImageChef.Checksums")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Claunia.com")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("© Claunia.com")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

View File

@@ -443,7 +443,7 @@ namespace DiscImageChef.Checksums
lambda[j] ^= Alpha_to[modnn(u + tmp)]; lambda[j] ^= Alpha_to[modnn(u + tmp)];
} }
} }
if (MainClass.isDebug) //if (MainClass.isDebug)
{ {
/* find roots of the erasure location polynomial */ /* find roots of the erasure location polynomial */
for (i = 1; i <= no_eras; i++) for (i = 1; i <= no_eras; i++)
@@ -572,7 +572,7 @@ namespace DiscImageChef.Checksums
} }
} }
if (MainClass.isDebug) //if (MainClass.isDebug)
{ {
Console.WriteLine("\n Final error positions:\t"); Console.WriteLine("\n Final error positions:\t");
for (i = 0; i < count; i++) for (i = 0; i < count; i++)
@@ -630,7 +630,7 @@ namespace DiscImageChef.Checksums
} }
if (den == 0) if (den == 0)
{ {
if (MainClass.isDebug) //if (MainClass.isDebug)
{ {
Console.WriteLine("\n ERROR: denominator = 0\n"); Console.WriteLine("\n ERROR: denominator = 0\n");
} }

View File

@@ -0,0 +1,13 @@
2015-10-05 Natalia Portillo <claunia@claunia.com>
* PrintHex.cs:
* Swapping.cs:
* ArrayFill.cs:
* DateHandlers.cs:
* StringHandlers.cs:
* BigEndianBitConverter.cs:
* EndianAwareBinaryReader.cs:
* Properties/AssemblyInfo.cs:
* DiscImageChef.Helpers.csproj:
Move helpers to a separate library.

View File

@@ -79,7 +79,7 @@ namespace DiscImageChef
fourcharvalue[1] = VDDateTime[1]; fourcharvalue[1] = VDDateTime[1];
fourcharvalue[2] = VDDateTime[2]; fourcharvalue[2] = VDDateTime[2];
fourcharvalue[3] = VDDateTime[3]; fourcharvalue[3] = VDDateTime[3];
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): year = \"{0}\"", StringHandlers.CToString(fourcharvalue)); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): year = \"{0}\"", StringHandlers.CToString(fourcharvalue));
if (!Int32.TryParse(StringHandlers.CToString(fourcharvalue), out year)) if (!Int32.TryParse(StringHandlers.CToString(fourcharvalue), out year))
year = 0; year = 0;
@@ -87,7 +87,7 @@ namespace DiscImageChef
twocharvalue[0] = VDDateTime[4]; twocharvalue[0] = VDDateTime[4];
twocharvalue[1] = VDDateTime[5]; twocharvalue[1] = VDDateTime[5];
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): month = \"{0}\"", StringHandlers.CToString(twocharvalue)); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): month = \"{0}\"", StringHandlers.CToString(twocharvalue));
if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out month)) if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out month))
month = 0; month = 0;
@@ -95,7 +95,7 @@ namespace DiscImageChef
twocharvalue[0] = VDDateTime[6]; twocharvalue[0] = VDDateTime[6];
twocharvalue[1] = VDDateTime[7]; twocharvalue[1] = VDDateTime[7];
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): day = \"{0}\"", StringHandlers.CToString(twocharvalue)); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): day = \"{0}\"", StringHandlers.CToString(twocharvalue));
if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out day)) if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out day))
day = 0; day = 0;
@@ -103,7 +103,7 @@ namespace DiscImageChef
twocharvalue[0] = VDDateTime[8]; twocharvalue[0] = VDDateTime[8];
twocharvalue[1] = VDDateTime[9]; twocharvalue[1] = VDDateTime[9];
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): hour = \"{0}\"", StringHandlers.CToString(twocharvalue)); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): hour = \"{0}\"", StringHandlers.CToString(twocharvalue));
if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out hour)) if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out hour))
hour = 0; hour = 0;
@@ -111,7 +111,7 @@ namespace DiscImageChef
twocharvalue[0] = VDDateTime[10]; twocharvalue[0] = VDDateTime[10];
twocharvalue[1] = VDDateTime[11]; twocharvalue[1] = VDDateTime[11];
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): minute = \"{0}\"", StringHandlers.CToString(twocharvalue)); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): minute = \"{0}\"", StringHandlers.CToString(twocharvalue));
if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out minute)) if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out minute))
minute = 0; minute = 0;
@@ -119,7 +119,7 @@ namespace DiscImageChef
twocharvalue[0] = VDDateTime[12]; twocharvalue[0] = VDDateTime[12];
twocharvalue[1] = VDDateTime[13]; twocharvalue[1] = VDDateTime[13];
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): second = \"{0}\"", StringHandlers.CToString(twocharvalue)); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): second = \"{0}\"", StringHandlers.CToString(twocharvalue));
if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out second)) if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out second))
second = 0; second = 0;
@@ -127,13 +127,13 @@ namespace DiscImageChef
twocharvalue[0] = VDDateTime[14]; twocharvalue[0] = VDDateTime[14];
twocharvalue[1] = VDDateTime[15]; twocharvalue[1] = VDDateTime[15];
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): hundredths = \"{0}\"", StringHandlers.CToString(twocharvalue)); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): hundredths = \"{0}\"", StringHandlers.CToString(twocharvalue));
if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out hundredths)) if (!Int32.TryParse(StringHandlers.CToString(twocharvalue), out hundredths))
hundredths = 0; hundredths = 0;
// hundredths = Convert.ToInt32(StringHandlers.CToString(twocharvalue)); // hundredths = Convert.ToInt32(StringHandlers.CToString(twocharvalue));
if (MainClass.isDebug) //if (MainClass.isDebug)
Console.WriteLine("DEBUG (ISO9600ToDateTime handler): decodedDT = new DateTime({0}, {1}, {2}, {3}, {4}, {5}, {6}, DateTimeKind.Unspecified);", year, month, day, hour, minute, second, hundredths * 10); Console.WriteLine("DEBUG (ISO9600ToDateTime handler): decodedDT = new DateTime({0}, {1}, {2}, {3}, {4}, {5}, {6}, DateTimeKind.Unspecified);", year, month, day, hour, minute, second, hundredths * 10);
DateTime decodedDT = new DateTime(year, month, day, hour, minute, second, hundredths * 10, DateTimeKind.Unspecified); DateTime decodedDT = new DateTime(year, month, day, hour, minute, second, hundredths * 10, DateTimeKind.Unspecified);

View File

@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{F8BDF57B-1571-4CD0-84B3-B422088D359A}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>DiscImageChef.Helpers</RootNamespace>
<AssemblyName>DiscImageChef.Helpers</AssemblyName>
<ReleaseVersion>2.2</ReleaseVersion>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>full</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ArrayFill.cs" />
<Compile Include="BigEndianBitConverter.cs" />
<Compile Include="DateHandlers.cs" />
<Compile Include="EndianAwareBinaryReader.cs" />
<Compile Include="PrintHex.cs" />
<Compile Include="StringHandlers.cs" />
<Compile Include="Swapping.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -0,0 +1,27 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("DiscImageChef.Helpers")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Claunia.com")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("© Claunia.com")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

View File

@@ -40,7 +40,7 @@ using System;
namespace DiscImageChef namespace DiscImageChef
{ {
static class Swapping public static class Swapping
{ {
public static byte[] SwapTenBytes(byte[] source) public static byte[] SwapTenBytes(byte[] source)
{ {

View File

@@ -7,6 +7,10 @@ Project("{9344BDBB-3E7F-41FC-A0DD-8665D75EE146}") = "Packages", "Packages.mdproj
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CommandLine35", "commandline\src\libcmdline\CommandLine35.csproj", "{5DEA2811-2FFA-4959-830B-CAD3ACACABEB}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CommandLine35", "commandline\src\libcmdline\CommandLine35.csproj", "{5DEA2811-2FFA-4959-830B-CAD3ACACABEB}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DiscImageChef.Checksums", "DiscImageChef.Checksums\DiscImageChef.Checksums.csproj", "{CC48B324-A532-4A45-87A6-6F91F7141E8D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DiscImageChef.Helpers", "DiscImageChef.Helpers\DiscImageChef.Helpers.csproj", "{F8BDF57B-1571-4CD0-84B3-B422088D359A}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86 Debug|x86 = Debug|x86
@@ -23,9 +27,16 @@ Global
{7A4B05BE-73C9-4F34-87FE-E80CCF1F732D}.Release|x86.Build.0 = Release|x86 {7A4B05BE-73C9-4F34-87FE-E80CCF1F732D}.Release|x86.Build.0 = Release|x86
{8996EF59-09B9-4920-A3DE-2F8EA2EBBCFF}.Debug|x86.ActiveCfg = Debug|Any CPU {8996EF59-09B9-4920-A3DE-2F8EA2EBBCFF}.Debug|x86.ActiveCfg = Debug|Any CPU
{8996EF59-09B9-4920-A3DE-2F8EA2EBBCFF}.Release|x86.ActiveCfg = Release|Any CPU {8996EF59-09B9-4920-A3DE-2F8EA2EBBCFF}.Release|x86.ActiveCfg = Release|Any CPU
{CC48B324-A532-4A45-87A6-6F91F7141E8D}.Debug|x86.ActiveCfg = Debug|Any CPU
{CC48B324-A532-4A45-87A6-6F91F7141E8D}.Debug|x86.Build.0 = Debug|Any CPU
{CC48B324-A532-4A45-87A6-6F91F7141E8D}.Release|x86.ActiveCfg = Release|Any CPU
{CC48B324-A532-4A45-87A6-6F91F7141E8D}.Release|x86.Build.0 = Release|Any CPU
{F8BDF57B-1571-4CD0-84B3-B422088D359A}.Debug|x86.ActiveCfg = Debug|Any CPU
{F8BDF57B-1571-4CD0-84B3-B422088D359A}.Debug|x86.Build.0 = Debug|Any CPU
{F8BDF57B-1571-4CD0-84B3-B422088D359A}.Release|x86.ActiveCfg = Release|Any CPU
{F8BDF57B-1571-4CD0-84B3-B422088D359A}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(MonoDevelopProperties) = preSolution GlobalSection(MonoDevelopProperties) = preSolution
StartupItem = DiscImageChef\DiscImageChef.csproj
description = The Disc Image Chef. description = The Disc Image Chef.
version = 2.2 version = 2.2
EndGlobalSection EndGlobalSection

View File

@@ -1,3 +1,31 @@
2015-10-05 Natalia Portillo <claunia@claunia.com>
* Swapping.cs:
* PrintHex.cs:
* ArrayFill.cs:
* DateHandlers.cs:
* StringHandlers.cs:
* DiscImageChef.csproj:
* BigEndianBitConverter.cs:
* EndianAwareBinaryReader.cs:
Move helpers to a separate library.
* Checksums/MD5Context.cs:
* Checksums/ReedSolomon.cs:
* Checksums/SHA1Context.cs:
* Checksums/CDChecksums.cs:
* Checksums/CRC32Context.cs:
* Checksums/CRC16Context.cs:
* Checksums/CRC64Context.cs:
* Checksums/SHA512Context.cs:
* Checksums/SHA384Context.cs:
* Checksums/SHA256Context.cs:
* Checksums/Adler32Context.cs:
* Checksums/SpamSumContext.cs:
* Checksums/FletcherContext.cs:
* Checksums/RIPEMD160Context.cs:
Move checksums to a separate library.
2015-08-25 Natalia Portillo <claunia@claunia.com> 2015-08-25 Natalia Portillo <claunia@claunia.com>
* Decoders/Floppy.cs: * Decoders/Floppy.cs:

View File

@@ -40,7 +40,6 @@
<Compile Include="Main.cs" /> <Compile Include="Main.cs" />
<Compile Include="AssemblyInfo.cs" /> <Compile Include="AssemblyInfo.cs" />
<Compile Include="Plugins\AppleMFS.cs" /> <Compile Include="Plugins\AppleMFS.cs" />
<Compile Include="Swapping.cs" />
<Compile Include="Plugins\Plugin.cs" /> <Compile Include="Plugins\Plugin.cs" />
<Compile Include="Plugins.cs" /> <Compile Include="Plugins.cs" />
<Compile Include="Plugins\ISO9660.cs" /> <Compile Include="Plugins\ISO9660.cs" />
@@ -61,21 +60,15 @@
<Compile Include="Plugins\Symbian.cs" /> <Compile Include="Plugins\Symbian.cs" />
<Compile Include="Plugins\extFS.cs" /> <Compile Include="Plugins\extFS.cs" />
<Compile Include="Plugins\ext2FS.cs" /> <Compile Include="Plugins\ext2FS.cs" />
<Compile Include="DateHandlers.cs" />
<Compile Include="EndianAwareBinaryReader.cs" />
<Compile Include="StringHandlers.cs" />
<Compile Include="Plugins\MinixFS.cs" /> <Compile Include="Plugins\MinixFS.cs" />
<Compile Include="Plugins\SolarFS.cs" /> <Compile Include="Plugins\SolarFS.cs" />
<Compile Include="Plugins\UNIXBFS.cs" /> <Compile Include="Plugins\UNIXBFS.cs" />
<Compile Include="Plugins\SysV.cs" /> <Compile Include="Plugins\SysV.cs" />
<Compile Include="ImagePlugins\ImagePlugin.cs" /> <Compile Include="ImagePlugins\ImagePlugin.cs" />
<Compile Include="ImagePlugins\CDRWin.cs" /> <Compile Include="ImagePlugins\CDRWin.cs" />
<Compile Include="BigEndianBitConverter.cs" />
<Compile Include="ImagePlugins\DiskCopy42.cs" /> <Compile Include="ImagePlugins\DiskCopy42.cs" />
<Compile Include="Plugins\LisaFS.cs" /> <Compile Include="Plugins\LisaFS.cs" />
<Compile Include="ImagePlugins\TeleDisk.cs" /> <Compile Include="ImagePlugins\TeleDisk.cs" />
<Compile Include="ArrayFill.cs" />
<Compile Include="PrintHex.cs" />
<Compile Include="ImagePlugins\ZZZRawImage.cs" /> <Compile Include="ImagePlugins\ZZZRawImage.cs" />
<Compile Include="Options.cs" /> <Compile Include="Options.cs" />
<Compile Include="Commands\Formats.cs" /> <Compile Include="Commands\Formats.cs" />
@@ -86,18 +79,7 @@
<Compile Include="Commands\Commands.cs" /> <Compile Include="Commands\Commands.cs" />
<Compile Include="ImagePlugins\DetectImageFormat.cs" /> <Compile Include="ImagePlugins\DetectImageFormat.cs" />
<Compile Include="ImagePlugins\ImageInfo.cs" /> <Compile Include="ImagePlugins\ImageInfo.cs" />
<Compile Include="Checksums\MD5Context.cs" />
<Compile Include="Checksums\RIPEMD160Context.cs" />
<Compile Include="Checksums\SHA1Context.cs" />
<Compile Include="Checksums\SHA256Context.cs" />
<Compile Include="Checksums\SHA384Context.cs" />
<Compile Include="Checksums\SHA512Context.cs" />
<Compile Include="Checksums\CRC32Context.cs" />
<Compile Include="Checksums\CRC64Context.cs" />
<Compile Include="ImagePlugins\Nero.cs" /> <Compile Include="ImagePlugins\Nero.cs" />
<Compile Include="Checksums\CRC16Context.cs" />
<Compile Include="Checksums\CDChecksums.cs" />
<Compile Include="Checksums\ReedSolomon.cs" />
<Compile Include="Commands\PrintHex.cs" /> <Compile Include="Commands\PrintHex.cs" />
<Compile Include="Commands\Decode.cs" /> <Compile Include="Commands\Decode.cs" />
<Compile Include="Decoders\SCSI.cs" /> <Compile Include="Decoders\SCSI.cs" />
@@ -106,9 +88,6 @@
<Compile Include="Decoders\BD.cs" /> <Compile Include="Decoders\BD.cs" />
<Compile Include="Decoders\DVD.cs" /> <Compile Include="Decoders\DVD.cs" />
<Compile Include="Plugins\ProDOS.cs" /> <Compile Include="Plugins\ProDOS.cs" />
<Compile Include="Checksums\Adler32Context.cs" />
<Compile Include="Checksums\FletcherContext.cs" />
<Compile Include="Checksums\SpamSumContext.cs" />
<Compile Include="ImagePlugins\Apple2MG.cs" /> <Compile Include="ImagePlugins\Apple2MG.cs" />
<Compile Include="PartPlugins\RDB.cs" /> <Compile Include="PartPlugins\RDB.cs" />
<Compile Include="Plugins\AmigaDOS.cs" /> <Compile Include="Plugins\AmigaDOS.cs" />
@@ -213,5 +192,13 @@
<Project>{5DEA2811-2FFA-4959-830B-CAD3ACACABEB}</Project> <Project>{5DEA2811-2FFA-4959-830B-CAD3ACACABEB}</Project>
<Name>CommandLine35</Name> <Name>CommandLine35</Name>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\DiscImageChef.Checksums\DiscImageChef.Checksums.csproj">
<Project>{CC48B324-A532-4A45-87A6-6F91F7141E8D}</Project>
<Name>DiscImageChef.Checksums</Name>
</ProjectReference>
<ProjectReference Include="..\DiscImageChef.Helpers\DiscImageChef.Helpers.csproj">
<Project>{F8BDF57B-1571-4CD0-84B3-B422088D359A}</Project>
<Name>DiscImageChef.Helpers</Name>
</ProjectReference>
</ItemGroup> </ItemGroup>
</Project> </Project>