public static void _lvr_svr_q(CpuThreadState cpuThreadState, bool save, float *r0, float *r1, float *r2, float *r3, uint address) { //Console.Error.WriteLine("+RRRRRRRRRRRRR {0:X8}", Address); int k = (int)(4 - ((address >> 2) & 3)); //Address &= unchecked((uint)~0xF); var r = stackalloc float *[4]; r[0] = r0; r[1] = r1; r[2] = r2; r[3] = r3; fixed(float *vfpr = &cpuThreadState.Vfr0) { for (var j = 0; j < k; j++, address += 4) { var ptr = r[j]; var memoryAddress = address; var memory = (float *)cpuThreadState.GetMemoryPtr(memoryAddress); //Console.Error.WriteLine("_lvl_svr_q({0}): {1:X8}: Reg({2:X8}) {3} Mem({4:X8})", j, memory_address, *(int*)ptr, Save ? "->" : "<-", *(int*)memory); LanguageUtils.Transfer(ref *memory, ref *ptr, save); //Console.Error.WriteLine("_lvl_svr_q({0}): {1:X8}: Reg({2:X8}) {3} Mem({4:X8})", j, memory_address, *(int*)ptr, Save ? "->" : "<-", *(int*)memory); } } //Console.Error.WriteLine("--------------"); }