private static float[] ReadSingle(UInt32 address, Int32 length) { byte[] memory = PS3.ReadBytes(address, length * 4); ReverseBytes(memory); float[] numArray = new float[length]; for (Int32 i = 0; i < length; i++) { numArray[i] = BitConverter.ToSingle(memory, ((length - 1) - i) * 4); } return(numArray); }
public static void Enable_RPC() { if (PS3.ReadBytes(function_address + 3, 1)[0] != 0x91) { PS3.API.SetMemory(function_address, new byte[] { 0x4E, 0x80, 0x00, 0x20 }); System.Threading.Thread.Sleep(20); byte[] func = new byte[] { 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x01, 0x00, 0x80, 0x3C, 0x60, 0x10, 0x05, 0x81, 0x83, 0x00, 0x4C, 0x2C, 0x0C, 0x00, 0x00, 0x41, 0x82, 0x00, 0x64, 0x80, 0x83, 0x00, 0x04, 0x80, 0xA3, 0x00, 0x08, 0x80, 0xC3, 0x00, 0x0C, 0x80, 0xE3, 0x00, 0x10, 0x81, 0x03, 0x00, 0x14, 0x81, 0x23, 0x00, 0x18, 0x81, 0x43, 0x00, 0x1C, 0x81, 0x63, 0x00, 0x20, 0xC0, 0x23, 0x00, 0x24, 0xC0, 0x43, 0x00, 0x28, 0xC0, 0x63, 0x00, 0x2C, 0xC0, 0x83, 0x00, 0x30, 0xC0, 0xA3, 0x00, 0x34, 0xC0, 0xC3, 0x00, 0x38, 0xC0, 0xE3, 0x00, 0x3C, 0xC1, 0x03, 0x00, 0x40, 0xC1, 0x23, 0x00, 0x48, 0x80, 0x63, 0x00, 0x00, 0x7D, 0x89, 0x03, 0xA6, 0x4E, 0x80, 0x04, 0x21, 0x3C, 0x80, 0x10, 0x05, 0x38, 0xA0, 0x00, 0x00, 0x90, 0xA4, 0x00, 0x4C, 0x90, 0x64, 0x00, 0x50, 0xE8, 0x01, 0x00, 0x80, 0x7C, 0x08, 0x03, 0xA6, 0x38, 0x21, 0x00, 0x70, 0x4E, 0x80, 0x00, 0x20 }; PS3.API.SetMemory(function_address + 0x4, func); PS3.API.SetMemory(0x10050000, new byte[0x2854]); PS3.API.SetMemory(function_address, new byte[] { 0xF8, 0x21, 0xFF, 0x91 }); } }