Assorted debugger upgrades and fixes + changed DolphinWX project not to depend on its plugins

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@169 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
hrydgard
2008-08-10 18:21:16 +00:00
parent 4cec78a13b
commit f9019d0ad3
14 changed files with 115 additions and 36 deletions

View File

@ -20,6 +20,7 @@ public:
virtual void setPC(unsigned int /*address*/) {}
virtual void step() {}
virtual void runToBreakpoint() {}
virtual void insertBLR(unsigned int address) {}
virtual int getColor(unsigned int /*address*/){return 0xFFFFFFFF;}
virtual std::string getDescription(unsigned int /*address*/) = 0;
};

View File

@ -70,7 +70,12 @@ void PPCDebugInterface::clearAllBreakpoints() {}
void PPCDebugInterface::toggleBreakpoint(unsigned int address)
{
CBreakPoints::IsAddressBreakPoint(address)?CBreakPoints::RemoveBreakPoint(address):CBreakPoints::AddBreakPoint(address);
CBreakPoints::IsAddressBreakPoint(address) ? CBreakPoints::RemoveBreakPoint(address) : CBreakPoints::AddBreakPoint(address);
}
void PPCDebugInterface::insertBLR(unsigned int address)
{
Memory::Write_U32(0x4e800020, address);
}
int PPCDebugInterface::getColor(unsigned int address)

View File

@ -22,6 +22,7 @@ public:
virtual void setPC(unsigned int address);
virtual void step() {}
virtual void runToBreakpoint();
virtual void insertBLR(unsigned int address);
virtual int getColor(unsigned int address);
virtual std::string getDescription(unsigned int address);
};

View File

@ -884,11 +884,14 @@ bool IsRAMAddress(const u32 addr)
case 0x00:
case 0x80:
case 0xC0:
return true;
if ((addr & 0x1FFFFFFF) < RAM_SIZE)
return true;
else
return false;
case 0x10:
case 0x90:
case 0xD0:
if (Core::g_CoreStartupParameter.bWii)
if (Core::g_CoreStartupParameter.bWii && (addr & 0x1FFFFFFF) < EXRAM_SIZE)
return true;
else
return false;

View File

@ -623,10 +623,13 @@ void PPCAnalyst::FindFunctionsFromBranches(u32 startAddr, u32 endAddr)
{
if (instr.LK) //bl
{
u32 target = SignExt26(instr.LI<<2);
u32 target = SignExt26(instr.LI << 2);
if (!instr.AA)
target += addr;
PPCAnalyst::AddFunction(target);
if (Memory::IsRAMAddress(target))
{
PPCAnalyst::AddFunction(target);
}
}
}
break;

View File

@ -186,8 +186,8 @@ GekkoOPTemplate primarytable[] =
{54, CInterpreter::stfd, Jit64::stfd, {"stfd", OPTYPE_STOREFP, 0}},
{55, CInterpreter::stfdu, Jit64::Default, {"stfdu", OPTYPE_STOREFP, 0}},
{46, CInterpreter::lmw, Jit64::lmw, {"lmw", OPTYPE_SYSTEM, 0}},
{47, CInterpreter::stmw, Jit64::stmw, {"stmw", OPTYPE_SYSTEM, 0}},
{46, CInterpreter::lmw, Jit64::lmw, {"lmw", OPTYPE_SYSTEM, 0, 10}},
{47, CInterpreter::stmw, Jit64::stmw, {"stmw", OPTYPE_SYSTEM, 0, 10}},
{56, CInterpreter::psq_l, Jit64::psq_l, {"psq_l", OPTYPE_PS, 0}},
{57, CInterpreter::psq_lu, Jit64::psq_l, {"psq_lu", OPTYPE_PS, 0}},