rpcsx/rpcs3/rpcs3qt/breakpoint_handler.cpp
Eladash f39a0a5fbe Debugger: Add some error pop-ups for invalid operations
* Show error window when setting breakpoints on these conditions:
- SPU/RSX are selected. (not supported)
- When using non-interpreters decoders.
- Non-executable memory is specified.
* Do not allow instruction stepping for non-interpreters decoders.
* Clear breakpoints when the game is stopped.
* Fix setting breakpoints on HLE functions.
2021-07-31 15:27:30 +02:00

31 lines
514 B
C++

#include "breakpoint_handler.h"
extern bool ppu_breakpoint(u32 loc, bool is_adding);
bool breakpoint_handler::HasBreakpoint(u32 loc) const
{
return m_breakpoints.contains(loc);
}
bool breakpoint_handler::AddBreakpoint(u32 loc)
{
if (!ppu_breakpoint(loc, true))
{
return false;
}
ensure(m_breakpoints.insert(loc).second);
return true;
}
bool breakpoint_handler::RemoveBreakpoint(u32 loc)
{
if (m_breakpoints.erase(loc) == 0)
{
return false;
}
ensure(ppu_breakpoint(loc, false));
return true;
}