Merge pull request #1167 from FioraAeterna/fixdebugwindow
Debug: fix display of instructions in virtual memory in MMU games
This commit is contained in:
commit
63cee3328f
|
@ -25,25 +25,27 @@ std::string PPCDebugInterface::Disassemble(unsigned int address)
|
||||||
|
|
||||||
if (Core::GetState() != Core::CORE_UNINITIALIZED)
|
if (Core::GetState() != Core::CORE_UNINITIALIZED)
|
||||||
{
|
{
|
||||||
if (Memory::IsRAMAddress(address, true, true))
|
if (!Memory::IsRAMAddress(address, true, true))
|
||||||
{
|
{
|
||||||
u32 op = Memory::Read_Instruction(address);
|
if (!SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU || !((address & JIT_ICACHE_VMEM_BIT) &&
|
||||||
std::string disasm = GekkoDisassembler::Disassemble(op, address);
|
Memory::TranslateAddress(address, Memory::FLAG_OPCODE)))
|
||||||
|
|
||||||
UGeckoInstruction inst;
|
|
||||||
inst.hex = Memory::ReadUnchecked_U32(address);
|
|
||||||
|
|
||||||
if (inst.OPCD == 1)
|
|
||||||
{
|
{
|
||||||
disasm += " (hle)";
|
return "(No RAM here)";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return disasm;
|
u32 op = Memory::Read_Instruction(address);
|
||||||
}
|
std::string disasm = GekkoDisassembler::Disassemble(op, address);
|
||||||
else
|
|
||||||
|
UGeckoInstruction inst;
|
||||||
|
inst.hex = Memory::ReadUnchecked_U32(address);
|
||||||
|
|
||||||
|
if (inst.OPCD == 1)
|
||||||
{
|
{
|
||||||
return "(No RAM here)";
|
disasm += " (hle)";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return disasm;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue