mirror of
https://github.com/SabreTools/psxt001z.git
synced 2026-02-04 05:35:55 +00:00
Add helper methods for hex string printing
This commit is contained in:
16
Common.cs
16
Common.cs
@@ -1,4 +1,6 @@
|
||||
namespace psxt001z
|
||||
using System;
|
||||
|
||||
namespace psxt001z
|
||||
{
|
||||
/// <see href="https://github.com/Dremora/psxt001z/blob/master/common.h"/>
|
||||
public partial class LibCrypt
|
||||
@@ -16,5 +18,17 @@
|
||||
/// Byte to BCD
|
||||
/// </summary>
|
||||
internal static byte IntegerToBinary(byte i) => (byte)(i / 10 * 16 + i % 10);
|
||||
|
||||
/// <summary>
|
||||
/// Get a santized hex string from an input byte array
|
||||
/// </summary>
|
||||
internal static string GetHexString(byte[] bytes) =>
|
||||
BitConverter.ToString(bytes).Replace("-", string.Empty);
|
||||
|
||||
/// <summary>
|
||||
/// Get a santized hex string from an input byte array
|
||||
/// </summary>
|
||||
internal static string GetHexString(byte[] bytes, int startIndex, int length) =>
|
||||
BitConverter.ToString(bytes, startIndex, length).Replace("-", string.Empty);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -170,7 +170,7 @@ namespace psxt001z
|
||||
//if (buffer[10] != sub[10] || buffer[11] != sub[11] || buffer[3] != sub[3] || buffer[7] != sub[7] || buffer[4] != sub[4] || buffer[8] != sub[8] || buffer[5] != sub[5] || buffer[9] != sub[9]) {
|
||||
if (!buffer.Take(6).SequenceEqual(sub.Take(6)) || !buffer.Skip(7).Take(5).SequenceEqual(sub.Skip(7).Take(5)))
|
||||
{
|
||||
Console.WriteLine($"MSF: {BitConverter.ToString(sub, 7, 3).Replace("-", string.Empty)} Q-Data: {BitConverter.ToString(buffer, 0, 3).Replace("-", string.Empty)} {BitConverter.ToString(buffer, 3, 3).Replace("-", string.Empty)} {BitConverter.ToString(buffer, 6, 1)} {BitConverter.ToString(buffer, 7, 1)}:{BitConverter.ToString(buffer, 8, 1)}:{BitConverter.ToString(buffer, 9, 1)} {BitConverter.ToString(buffer, 10, 2).Replace("-", string.Empty)} xor {crc ^ ((buffer[10] << 8) + buffer[11]):4x} {CRC16.Calculate(buffer, 0, 10) ^ ((buffer[10] << 8) + buffer[11]):4x}");
|
||||
Console.WriteLine($"MSF: {GetHexString(sub, 7, 3)} Q-Data: {GetHexString(buffer, 0, 3)} {GetHexString(buffer, 3, 3)} {GetHexString(buffer, 6, 1)} {GetHexString(buffer, 7, 1)}:{GetHexString(buffer, 8, 1)}:{GetHexString(buffer, 9, 1)} {GetHexString(buffer, 10, 2)} xor {crc ^ ((buffer[10] << 8) + buffer[11]):4x} {CRC16.Calculate(buffer, 0, 10) ^ ((buffer[10] << 8) + buffer[11]):4x}");
|
||||
//Console.WriteLine("\nMSF: %02x:%02x:%02x Q-Data: %02x%02x%02x %02x:%02x:%02x %02x %02x:%02x:%02x %02x%02x", sub[7], sub[8], sub[9], sub[0], sub[1], sub[2], sub[3], sub[4], sub[5], sub[6], sub[7], sub[8], sub[9], sub[10], sub[11]);
|
||||
|
||||
if (buffer[3] != sub[3] && buffer[7] != sub[7] && buffer[4] == sub[4] && buffer[8] == sub[8] && buffer[5] == sub[5] && buffer[9] == sub[9])
|
||||
@@ -223,9 +223,9 @@ namespace psxt001z
|
||||
sub[10] = (byte)(crc >> 8);
|
||||
sub[11] = (byte)(crc & 0xFF);
|
||||
|
||||
Console.WriteLine($"{lc_addresses[i]} {BitConverter.ToString(sub, 7, 3).Replace("-", string.Empty)}");
|
||||
Console.WriteLine($" {BitConverter.ToString(sub, 0, 10).Replace("-", string.Empty)} {BitConverter.ToString(sub, 10, 2).Replace("-", string.Empty)}");
|
||||
Console.WriteLine($" {BitConverter.ToString(lc1_sectors_contents, i * 12, 10).Replace("-", string.Empty)} {BitConverter.ToString(lc1_sectors_contents, i * 12 + 10, 2).Replace("-", string.Empty)}");
|
||||
Console.WriteLine($"{lc_addresses[i]} {GetHexString(sub, 7, 3)}");
|
||||
Console.WriteLine($" {GetHexString(sub, 0, 10)} {GetHexString(sub, 10, 2)}");
|
||||
Console.WriteLine($" {GetHexString(lc1_sectors_contents, i * 12, 10)} {GetHexString(lc1_sectors_contents, i * 12 + 10, 2)}");
|
||||
|
||||
d = 0;
|
||||
|
||||
|
||||
@@ -504,10 +504,9 @@ namespace psxt001z
|
||||
md5.TransformFinalBlock(digest, 0, digest.Length);
|
||||
sha1.TransformFinalBlock(Message_Digest, 0, Message_Digest.Length);
|
||||
|
||||
Console.Write($"\rCRC-32: {crc.Hash:8x} \n");
|
||||
Console.Write($"MD5: {BitConverter.ToString(md5.Hash!).Replace("-", string.Empty)}");
|
||||
Console.WriteLine($"MD5: {BitConverter.ToString(md5.Hash!).Replace("-", string.Empty)}");
|
||||
Console.WriteLine($"SHA-1: {BitConverter.ToString(sha1.Hash!).Replace("-", string.Empty)}");
|
||||
Console.WriteLine($"\rCRC-32: {crc.Hash:8x} \n");
|
||||
Console.WriteLine($"MD5: {GetHexString(md5.Hash!)}");
|
||||
Console.WriteLine($"SHA-1: {GetHexString(sha1.Hash!)}");
|
||||
Console.WriteLine();
|
||||
return 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user