summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/ay31015.cpp
diff options
context:
space:
mode:
author therealmogminer@gmail.com <therealmogminer@gmail.com>2016-10-25 23:51:50 +0200
committer therealmogminer@gmail.com <therealmogminer@gmail.com>2016-10-25 23:51:50 +0200
commitff651989d9b2208f3ea1a077db93e3b70b459d3c (patch)
treee701bc67d2acd83a8ffc50af16aaab0ed7c61486 /src/devices/machine/ay31015.cpp
parent7486202939573f0e986464d2fd62abf6a8245259 (diff)
New machines marked NOT_WORKING
------------------------------- Hazeltine 1500 [Al Kossow, Ryan Holtz]
Diffstat (limited to 'src/devices/machine/ay31015.cpp')
-rw-r--r--src/devices/machine/ay31015.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/src/devices/machine/ay31015.cpp b/src/devices/machine/ay31015.cpp
index 0e17222c0e6..47b6568bd47 100644
--- a/src/devices/machine/ay31015.cpp
+++ b/src/devices/machine/ay31015.cpp
@@ -168,10 +168,12 @@ void ay31015_device::device_start()
m_write_so_cb.resolve();
m_status_changed_cb.resolve();
- m_rx_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(ay31015_device::rx_process),this));
- m_tx_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(ay31015_device::tx_process),this));
-
+ m_rx_timer = timer_alloc(TIMER_RX);
+ m_rx_timer->adjust(attotime::never);
update_rx_timer();
+
+ m_tx_timer = timer_alloc(TIMER_TX);
+ m_tx_timer->adjust(attotime::never);
update_tx_timer();
save_item(NAME(m_pins));
@@ -265,6 +267,13 @@ void ay31015_device::update_status_pins()
}
}
+void ay31015_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
+{
+ if (id == TIMER_RX)
+ rx_process();
+ else if(id == TIMER_TX)
+ tx_process();
+}
/*************************************************** RECEIVE CONTROLS *************************************************/
@@ -273,7 +282,7 @@ void ay31015_device::update_status_pins()
ay31015_rx_process - convert serial to parallel
-------------------------------------------------*/
-TIMER_CALLBACK_MEMBER( ay31015_device::rx_process )
+void ay31015_device::rx_process()
{
switch (m_rx_state)
{
@@ -426,7 +435,7 @@ TIMER_CALLBACK_MEMBER( ay31015_device::rx_process )
ay31015_tx_process - convert parallel to serial
-------------------------------------------------*/
-TIMER_CALLBACK_MEMBER( ay31015_device::tx_process )
+void ay31015_device::tx_process()
{
uint8_t t1;
switch (m_tx_state)