From d6623e0f22edd84d1b14e44ec42b42e188eb83e3 Mon Sep 17 00:00:00 2001 From: Eladash Date: Sun, 12 Jul 2020 13:40:47 +0300 Subject: [PATCH] RSX debugger: fix command count on non-method commands (#8578) * RSX debugger: fix command count on non-method commands * fixup * constants and variables --- rpcs3/rpcs3qt/rsx_debugger.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/rpcs3/rpcs3qt/rsx_debugger.cpp b/rpcs3/rpcs3qt/rsx_debugger.cpp index ca12772648..8bf96d44b8 100644 --- a/rpcs3/rpcs3qt/rsx_debugger.cpp +++ b/rpcs3/rpcs3qt/rsx_debugger.cpp @@ -611,16 +611,13 @@ void rsx_debugger::GetMemory() if (const u32 ea = rsx::get_current_renderer()->iomap_table.get_addr(addr); ea + 1) { - u32 cmd = *vm::get_super_ptr(ea); - u32 count = (cmd >> 18) & 0x7ff; + const u32 cmd = *vm::get_super_ptr(ea); + const u32 count = cmd & RSX_METHOD_NON_METHOD_CMD_MASK ? 0 : (cmd >> 18) & 0x7ff; + m_list_commands->setItem(i, 1, new QTableWidgetItem(qstr(fmt::format("%08x", cmd)))); m_list_commands->setItem(i, 2, new QTableWidgetItem(DisAsmCommand(cmd, count, addr))); m_list_commands->setItem(i, 3, new QTableWidgetItem(QString::number(count))); - - if(!(cmd & RSX_METHOD_NON_METHOD_CMD_MASK)) - { - addr += 4 * count; - } + addr += 4 * count; } else {