From 956ae178761eb216d0e27bd8dcd31a65abecda0c Mon Sep 17 00:00:00 2001 From: elad Date: Sun, 4 Feb 2018 13:47:49 +0200 Subject: [PATCH] spu: add a missing STOP code should fix #2456 for whatever reason, this call accepts only an empty ouput mailbox, otherwise break --- rpcs3/Emu/Cell/SPUThread.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/rpcs3/Emu/Cell/SPUThread.cpp b/rpcs3/Emu/Cell/SPUThread.cpp index eb98662899..ae16a1960e 100644 --- a/rpcs3/Emu/Cell/SPUThread.cpp +++ b/rpcs3/Emu/Cell/SPUThread.cpp @@ -1767,6 +1767,17 @@ bool SPUThread::stop_and_signal(u32 code) return true; } + case 0x100: + { + if (ch_out_mbox.get_count()) + { + fmt::throw_exception("STOP code 0x100: Out_MBox is not empty" HERE); + } + + _mm_mfence(); + return true; + } + case 0x101: { /* ===== sys_spu_thread_group_exit ===== */