thank you lexi for your wonderful improvement
This commit is contained in:
parent
31bedffa29
commit
6f53e6dab4
1 changed files with 8 additions and 20 deletions
|
@ -238,27 +238,15 @@ namespace PC2Player
|
||||||
List<string> tmpOut = new List<string>();
|
List<string> tmpOut = new List<string>();
|
||||||
foreach (string frame in stringyBits)
|
foreach (string frame in stringyBits)
|
||||||
{
|
{
|
||||||
int b = int.Parse(frame, NumberStyles.HexNumber);
|
uint b = uint.Parse(frame, NumberStyles.HexNumber);
|
||||||
char[] bytesOut = { (char)64 };
|
char[] bytesOut = new char[8];
|
||||||
if (ShowtapeBits == "8")
|
int bytes = int.Parse(ShowtapeBits)/4;
|
||||||
|
for (int i = 0; i < bytes; i++)
|
||||||
{
|
{
|
||||||
bytesOut = new char[]{
|
uint offset = 4 * i;
|
||||||
(char)(64 | ((b & 8) | (b & 4) | (b & 2) | (b & 1))),
|
uint mask = 0b1111 << offset;
|
||||||
(char)(64 | (((b & 128) | (b & 64) | (b & 32) | (b & 16)) >> 4))
|
uint masked_value = (b & mask) >> offset;
|
||||||
};
|
bytesOut[i] = (char)(64 | masked_value);
|
||||||
}
|
|
||||||
else if (ShowtapeBits == "32")
|
|
||||||
{
|
|
||||||
bytesOut = new char[]{
|
|
||||||
(char)(64 | ((b & 8) | (b & 4) | (b & 2) | (b & 1))),
|
|
||||||
(char)(64 | (((b & 128) | (b & 64) | (b & 32) | (b & 16)) >> 4)),
|
|
||||||
(char)(64 | (((b & 2048) | (b & 1024) | (b & 512) | (b & 256)) >> 8)),
|
|
||||||
(char)(64 | (((b & 32768) | (b & 16384) | (b & 8192) | (b & 4096)) >> 12)),
|
|
||||||
(char)(64 | (((b & 524288) | (b & 262144) | (b & 131072) | (b & 65536)) >> 16)),
|
|
||||||
(char)(64 | (((b & 8388608) | (b & 4194304) | (b & 2097152) | (b & 1048576)) >> 20)),
|
|
||||||
(char)(64 | (((b & 134217728) | (b & 67108864) | (b & 33554432) | (b & 16777216)) >> 24)),
|
|
||||||
(char)(64 | (((b & 2147483648) | (b & 1073741824) | (b & 536870912) | (b & 268435456)) >> 28))
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
tmpOut.Add(new string(bytesOut));
|
tmpOut.Add(new string(bytesOut));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue