mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-13 02:08:49 +12:00
Some hack
This commit is contained in:
parent
9f0c5899d6
commit
cb58a773c9
7 changed files with 57 additions and 34 deletions
|
@ -324,11 +324,17 @@ void Emulator::Load()
|
|||
m_ppu_thr_exit = Memory.MainMem.AllocAlign(4 * 4);
|
||||
|
||||
mem32_ptr_t ppu_thr_exit_data(m_ppu_thr_exit);
|
||||
ppu_thr_exit_data += ADDI(3, 0, 0);
|
||||
//ppu_thr_exit_data += ADDI(3, 0, 0); // why it kills return value (GPR[3]) ?
|
||||
ppu_thr_exit_data += ADDI(11, 0, 41);
|
||||
ppu_thr_exit_data += SC(2);
|
||||
ppu_thr_exit_data += BCLR(0x10 | 0x04, 0, 0, 0);
|
||||
|
||||
m_ppu_thr_stop = Memory.MainMem.AllocAlign(2 * 4);
|
||||
|
||||
mem32_ptr_t ppu_thr_stop_data(m_ppu_thr_stop);
|
||||
ppu_thr_stop_data += SC(4);
|
||||
ppu_thr_exit_data += BCLR(0x10 | 0x04, 0, 0, 0);
|
||||
|
||||
Memory.Write64(Memory.PRXMem.AllocAlign(0x10000), 0xDEADBEEFABADCAFE);
|
||||
}
|
||||
break;
|
||||
|
@ -422,11 +428,6 @@ void Emulator::Stop()
|
|||
break;
|
||||
}
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(1));
|
||||
if (counter++ > 3000)
|
||||
{
|
||||
LOG_ERROR(HLE, "%d threads not stopped (timeout)", (u32)(g_thread_count - uncounted));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
m_rsx_callback = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue