summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/6850acia.cpp
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2018-06-17 17:46:18 -0400
committer AJR <ajrhacker@users.noreply.github.com>2018-06-24 09:08:33 -0400
commitb3afc83bde187412269b825d052116727aa3c1bd (patch)
tree98809c6cc5d861056842a4acfac24b11a14ecc8f /src/devices/machine/6850acia.cpp
parent297b99c0faa2e70ed3fb5cc4c9ed60e40cd9af5a (diff)
Allow passing std::unique_ptr<TYPE> directly to save_pointer and remove now-superfluous .get() in many drivers/devices (nw)
Diffstat (limited to 'src/devices/machine/6850acia.cpp')
-rw-r--r--src/devices/machine/6850acia.cpp25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/devices/machine/6850acia.cpp b/src/devices/machine/6850acia.cpp
index 0671dd04ecc..6527608bf0f 100644
--- a/src/devices/machine/6850acia.cpp
+++ b/src/devices/machine/6850acia.cpp
@@ -16,7 +16,7 @@
MACROS
***************************************************************************/
-//#define VERBOSE 1
+#define VERBOSE 1
//#define LOG_OUTPUT_STREAM std::cout
#include "logmacro.h"
@@ -582,15 +582,20 @@ void acia6850_device::output_irq(int irq)
{
m_irq = irq;
- if (irq)
- {
- m_status &= ~SR_IRQ;
- }
- else
- {
- m_status |= SR_IRQ;
- }
+ machine().scheduler().synchronize(timer_expired_delegate(FUNC(acia6850_device::delayed_output_irq), this), irq);
+ }
+}
- m_irq_handler(!m_irq);
+TIMER_CALLBACK_MEMBER(acia6850_device::delayed_output_irq)
+{
+ if (m_irq)
+ {
+ m_status &= ~SR_IRQ;
+ }
+ else
+ {
+ m_status |= SR_IRQ;
}
+
+ m_irq_handler(!m_irq);
}