2018-08-17 00:47:36 +01:00
|
|
|
|
namespace Ryujinx.HLE.Utilities
|
2018-03-12 01:05:39 +00:00
|
|
|
|
{
|
2018-12-01 20:38:15 +00:00
|
|
|
|
internal static class EndianSwap
|
2018-03-12 01:05:39 +00:00
|
|
|
|
{
|
2018-12-01 20:01:59 +00:00
|
|
|
|
public static ushort Swap16(ushort value) => (ushort)(((value >> 8) & 0xff) | (value << 8));
|
2018-08-17 00:47:36 +01:00
|
|
|
|
|
2018-12-01 20:01:59 +00:00
|
|
|
|
public static int Swap32(int value)
|
2018-06-18 03:28:11 +01:00
|
|
|
|
{
|
2018-12-01 20:01:59 +00:00
|
|
|
|
uint uintVal = (uint)value;
|
2018-06-18 03:28:11 +01:00
|
|
|
|
|
2018-12-01 20:01:59 +00:00
|
|
|
|
return (int)(((uintVal >> 24) & 0x000000ff) |
|
|
|
|
|
((uintVal >> 8) & 0x0000ff00) |
|
|
|
|
|
((uintVal << 8) & 0x00ff0000) |
|
|
|
|
|
((uintVal << 24) & 0xff000000));
|
2018-06-18 03:28:11 +01:00
|
|
|
|
}
|
2018-03-12 01:05:39 +00:00
|
|
|
|
}
|
|
|
|
|
}
|