diff options
Diffstat (limited to 'src/emu/diexec.h')
-rw-r--r-- | src/emu/diexec.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/emu/diexec.h b/src/emu/diexec.h index 51973ad19cc..1e8303287e8 100644 --- a/src/emu/diexec.h +++ b/src/emu/diexec.h @@ -109,7 +109,6 @@ public: u32 max_cycles() const { return execute_max_cycles(); } attotime cycles_to_attotime(u64 cycles) const { return device().clocks_to_attotime(cycles_to_clocks(cycles)); } u64 attotime_to_cycles(const attotime &duration) const { return clocks_to_cycles(device().attotime_to_clocks(duration)); } - u32 input_lines() const { return execute_input_lines(); } u32 default_irq_vector(int linenum) const { return execute_default_irq_vector(linenum); } bool input_edge_triggered(int linenum) const { return execute_input_edge_triggered(linenum); } @@ -164,7 +163,7 @@ public: void set_input_line(int linenum, int state) { assert(device().started()); m_input[linenum].set_state_synced(state); } void set_input_line_vector(int linenum, int vector) { assert(device().started()); m_input[linenum].set_vector(vector); } void set_input_line_and_vector(int linenum, int state, int vector) { assert(device().started()); m_input[linenum].set_state_synced(state, vector); } - int input_state(int linenum) const { assert(device().started()); return m_input[linenum].m_curstate; } + int input_line_state(int linenum) const { assert(device().started()); return m_input[linenum].m_curstate; } void pulse_input_line(int irqline, const attotime &duration); // suspend/resume @@ -189,8 +188,7 @@ public: // required operation overrides void run() { execute_run(); } - // deliberately ambiguous functions; if you have the execute interface - // just use it + // deliberately ambiguous functions; if you have the execute interface just use it device_execute_interface &execute() { return *this; } protected: @@ -201,13 +199,11 @@ protected: virtual u32 execute_max_cycles() const noexcept; // input line information getters - virtual u32 execute_input_lines() const noexcept; virtual u32 execute_default_irq_vector(int linenum) const noexcept; virtual bool execute_input_edge_triggered(int linenum) const noexcept; // optional operation overrides virtual void execute_run() = 0; - virtual void execute_burn(s32 cycles); virtual void execute_set_input(int linenum, int state); // interface-level overrides @@ -219,7 +215,6 @@ protected: virtual void interface_clock_changed(bool sync_on_new_clock_domain) override; // for use by devcpu for now... - int current_input_state(unsigned i) const { return m_input[i].m_curstate; } void set_icountptr(int &icount) { assert(!m_icountptr); m_icountptr = &icount; } int standard_irq_callback(int irqline, offs_t pc); @@ -242,6 +237,12 @@ protected: device().debug()->privilege_hook(); } + void debugger_wait_hook() + { + if (device().machine().debug_flags & DEBUG_FLAG_CALL_HOOK) + device().debug()->wait_hook(); + } + private: // internal information about the state of inputs class device_input |