mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-09-29 15:31:14 +00:00
SPU: Remove STOP 0x0 hack (#8873)
This commit is contained in:
parent
3e1b76258e
commit
1e4655aef6
@ -3058,44 +3058,6 @@ bool spu_thread::stop_and_signal(u32 code)
|
|||||||
|
|
||||||
switch (code)
|
switch (code)
|
||||||
{
|
{
|
||||||
case 0x000:
|
|
||||||
{
|
|
||||||
spu_log.warning("STOP 0x0");
|
|
||||||
|
|
||||||
// HACK: find an ILA instruction
|
|
||||||
for (u32 addr = pc; addr < SPU_LS_SIZE; addr += 4)
|
|
||||||
{
|
|
||||||
const u32 instr = _ref<u32>(addr);
|
|
||||||
|
|
||||||
if (instr >> 25 == 0x21)
|
|
||||||
{
|
|
||||||
pc = addr;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (instr > 0x1fffff)
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// HACK: wait for executable code
|
|
||||||
while (!_ref<u32>(pc))
|
|
||||||
{
|
|
||||||
state += cpu_flag::wait;
|
|
||||||
|
|
||||||
if (is_stopped())
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
thread_ctrl::wait_for(1000);
|
|
||||||
}
|
|
||||||
|
|
||||||
check_state();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
case 0x001:
|
case 0x001:
|
||||||
{
|
{
|
||||||
state += cpu_flag::wait;
|
state += cpu_flag::wait;
|
||||||
|
Loading…
Reference in New Issue
Block a user