summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/adc1038.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/adc1038.cpp')
-rw-r--r--src/devices/machine/adc1038.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/devices/machine/adc1038.cpp b/src/devices/machine/adc1038.cpp
index afdf9a2185d..33de2805f96 100644
--- a/src/devices/machine/adc1038.cpp
+++ b/src/devices/machine/adc1038.cpp
@@ -25,6 +25,7 @@ adc1038_device::adc1038_device(const machine_config &mconfig, const char *tag, d
, m_adc_data(0)
, m_sars(0)
, m_gticlub_hack(false)
+ , m_input_cb(*this)
{
}
@@ -34,7 +35,7 @@ adc1038_device::adc1038_device(const machine_config &mconfig, const char *tag, d
void adc1038_device::device_start()
{
- m_input_cb.bind_relative_to(*owner());
+ m_input_cb.resolve();
save_item(NAME(m_cycle));
save_item(NAME(m_clk));
@@ -64,7 +65,7 @@ void adc1038_device::device_reset()
DEVICE HANDLERS
*****************************************************************************/
-READ_LINE_MEMBER( adc1038_device::do_read )
+int adc1038_device::do_read()
{
m_data_out = (m_adc_data & 0x200) ? 1 : 0;
m_adc_data <<= 1;
@@ -73,12 +74,12 @@ READ_LINE_MEMBER( adc1038_device::do_read )
return m_data_out;
}
-WRITE_LINE_MEMBER( adc1038_device::di_write )
+void adc1038_device::di_write(int state)
{
m_data_in = state;
}
-WRITE_LINE_MEMBER( adc1038_device::clk_write )
+void adc1038_device::clk_write(int state)
{
// GTI Club doesn't sync on SARS
if (m_gticlub_hack)
@@ -116,7 +117,7 @@ WRITE_LINE_MEMBER( adc1038_device::clk_write )
m_clk = state;
}
-READ_LINE_MEMBER( adc1038_device::sars_read )
+int adc1038_device::sars_read()
{
m_cycle = 0;