summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/debug/debugcpu.cpp
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2022-09-14 17:30:57 -0400
committer AJR <ajrhacker@users.noreply.github.com>2022-09-14 17:30:57 -0400
commit5f712ea70297112cd0a6a2b5257107fe201093c1 (patch)
tree11689850c080b6bb812950459fb6228447ede00d /src/emu/debug/debugcpu.cpp
parentc550481ffa7db8192311e126e3c812944afe0514 (diff)
Reallow debugger single-step command to break into subroutines during over/out stepping
Diffstat (limited to 'src/emu/debug/debugcpu.cpp')
-rw-r--r--src/emu/debug/debugcpu.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/emu/debug/debugcpu.cpp b/src/emu/debug/debugcpu.cpp
index aba79d74036..429f5766d68 100644
--- a/src/emu/debug/debugcpu.cpp
+++ b/src/emu/debug/debugcpu.cpp
@@ -976,6 +976,7 @@ void device_debug::single_step(int numsteps)
m_stepsleft = numsteps;
m_delay_steps = 0;
m_flags |= DEBUG_FLAG_STEPPING;
+ m_flags &= ~(DEBUG_FLAG_CALL_IN_PROGRESS | DEBUG_FLAG_TEST_IN_PROGRESS);
m_device.machine().debugger().cpu().set_execution_running();
}
@@ -993,6 +994,7 @@ void device_debug::single_step_over(int numsteps)
m_stepsleft = numsteps;
m_delay_steps = 0;
m_flags |= DEBUG_FLAG_STEPPING_OVER;
+ m_flags &= ~(DEBUG_FLAG_CALL_IN_PROGRESS | DEBUG_FLAG_TEST_IN_PROGRESS);
m_device.machine().debugger().cpu().set_execution_running();
}
@@ -1011,6 +1013,7 @@ void device_debug::single_step_out()
m_stepsleft = 100;
m_delay_steps = 0;
m_flags |= DEBUG_FLAG_STEPPING_OUT;
+ m_flags &= ~(DEBUG_FLAG_CALL_IN_PROGRESS | DEBUG_FLAG_TEST_IN_PROGRESS);
m_device.machine().debugger().cpu().set_execution_running();
}
@@ -1126,6 +1129,7 @@ void device_debug::go_branch(bool sense, const char *condition)
m_stepsleft = 100;
m_delay_steps = 0;
m_flags |= sense ? DEBUG_FLAG_STEPPING_BRANCH_TRUE : DEBUG_FLAG_STEPPING_BRANCH_FALSE;
+ m_flags &= ~(DEBUG_FLAG_CALL_IN_PROGRESS | DEBUG_FLAG_TEST_IN_PROGRESS);
m_device.machine().debugger().cpu().set_execution_running();
}