summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/diexec.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/diexec.h')
-rw-r--r--src/emu/diexec.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/emu/diexec.h b/src/emu/diexec.h
index 8e4c4ce9cc5..e07b2b3ad5f 100644
--- a/src/emu/diexec.h
+++ b/src/emu/diexec.h
@@ -162,6 +162,10 @@ public:
void set_input_line_vector(int linenum, int vector) { m_input[linenum].set_vector(vector); }
void set_input_line_and_vector(int linenum, int state, int vector) { m_input[linenum].set_state_synced(state, vector); }
int input_state(int linenum) const { return m_input[linenum].m_curstate; }
+ void pulse_input_line(int irqline, const attotime &duration);
+ void pulse_input_line_and_vector(int irqline, int vector, const attotime &duration);
+ void pulse_input_line(int irqline, int cycles) { pulse_input_line(irqline, cycles_to_attotime(cycles * min_cycles())); }
+ void pulse_input_line_and_vector(int irqline, int vector, int cycles) { pulse_input_line_and_vector(irqline, vector, cycles_to_attotime(cycles * min_cycles())); }
// suspend/resume
void suspend(u32 reason, bool eatcycles);
@@ -292,6 +296,7 @@ private:
void on_vblank(screen_device &screen, bool vblank_state);
TIMER_CALLBACK_MEMBER(trigger_periodic_interrupt);
+ TIMER_CALLBACK_MEMBER(irq_pulse_clear);
void suspend_resume_changed();
attoseconds_t minimum_quantum() const;