diff options
Diffstat (limited to 'src/devices/machine/adc1038.cpp')
-rw-r--r-- | src/devices/machine/adc1038.cpp | 11 |
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; |