summaryrefslogtreecommitdiff
path: root/m68k_debugging.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'm68k_debugging.cpp')
-rw-r--r--m68k_debugging.cpp38
1 files changed, 24 insertions, 14 deletions
diff --git a/m68k_debugging.cpp b/m68k_debugging.cpp
index d02e463..7b7c84c 100644
--- a/m68k_debugging.cpp
+++ b/m68k_debugging.cpp
@@ -9,7 +9,7 @@
#include <cstdlib>
#include <cassert>
-static inline m68k_register_t ConvertRegisterId(M68KRegister register_id)
+static inline m68k_register_t ConvertRegisterId(const M68KRegister register_id)
{
switch (register_id) {
case M68KRegister::kD0:
@@ -60,7 +60,7 @@ static inline m68k_register_t ConvertRegisterId(M68KRegister register_id)
UNREACHABLE;
}
-uint32_t M68KDebuggingControl::GetRegister(M68KRegister register_id) const
+uint32_t M68KDebuggingControl::GetRegister(const M68KRegister register_id) const
{
return m68k_get_reg(nullptr, ConvertRegisterId(register_id));
}
@@ -92,7 +92,7 @@ M68KCPUState M68KDebuggingControl::GetCPUState() const
};
}
-void M68KDebuggingControl::SetRegister(M68KRegister register_id, uint32_t value)
+void M68KDebuggingControl::SetRegister(const M68KRegister register_id, const uint32_t value)
{
return m68k_set_reg(ConvertRegisterId(register_id), value);
}
@@ -114,38 +114,44 @@ void M68KDebuggingControl::Pause()
abort();
}
-uint8_t M68KDebuggingControl::Read8(uint32_t address) const
+#define MASK_24(X) ((X) & 0x00ffffff)
+
+uint8_t M68KDebuggingControl::Read8(const uint32_t address) const
{
- return static_cast<uint8_t>(m68k_read_memory_8(address & 0x00FFFFFF));
+ return static_cast<uint8_t>(m68k_read_memory_8(MASK_24(address)));
}
-uint16_t M68KDebuggingControl::Read16(uint32_t address) const
+uint16_t M68KDebuggingControl::Read16(const uint32_t address) const
{
- return static_cast<uint16_t>(m68k_read_memory_16(address & 0x00FFFFFF));
+ return static_cast<uint16_t>(m68k_read_memory_16(MASK_24(address)));
}
-uint32_t M68KDebuggingControl::Read32(uint32_t address) const
+uint32_t M68KDebuggingControl::Read32(const uint32_t address) const
{
- return static_cast<uint32_t>(m68k_read_memory_32(address & 0x00FFFFFF));
+ return static_cast<uint32_t>(m68k_read_memory_32(MASK_24(address)));
}
-void M68KDebuggingControl::Write8(uint32_t address, uint8_t value)
+void M68KDebuggingControl::Write8(const uint32_t address, const uint8_t value)
{
m68k_write_memory_8(address, value);
}
-void M68KDebuggingControl::Write16(uint32_t address, uint16_t value)
+void M68KDebuggingControl::Write16(const uint32_t address, const uint16_t value)
{
m68k_write_memory_16(address, value);
}
-void M68KDebuggingControl::Write32(uint32_t address, uint32_t value)
+void M68KDebuggingControl::Write32(const uint32_t address, const uint32_t value)
{
m68k_write_memory_32(address, value);
}
-void M68KDebuggingControl::SetBreakpoint(BreakpointType type, uint32_t address, uint32_t length)
+void M68KDebuggingControl::SetBreakpoint(
+ const BreakpointType type,
+ const uint32_t address_a,
+ const uint32_t length)
{
+ const uint32_t address = MASK_24(address_a);
switch (type) {
case BreakpointType::kSoftwareBreakpoint:
case BreakpointType::kHardwareBreakpoint: {
@@ -187,8 +193,12 @@ void M68KDebuggingControl::SetBreakpoint(BreakpointType type, uint32_t address,
}
}
-void M68KDebuggingControl::RemoveBreakpoint(BreakpointType type, uint32_t address, uint32_t length)
+void M68KDebuggingControl::RemoveBreakpoint(
+ const BreakpointType type,
+ const uint32_t address_a,
+ const uint32_t length)
{
+ const uint32_t address = MASK_24(address_a);
switch (type) {
case BreakpointType::kSoftwareBreakpoint:
case BreakpointType::kHardwareBreakpoint: {