diff options
Diffstat (limited to 'src/devices/bus/scsi/scsihle.h')
-rw-r--r-- | src/devices/bus/scsi/scsihle.h | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/devices/bus/scsi/scsihle.h b/src/devices/bus/scsi/scsihle.h index e98e38122e7..95849f34332 100644 --- a/src/devices/bus/scsi/scsihle.h +++ b/src/devices/bus/scsi/scsihle.h @@ -23,17 +23,19 @@ class scsihle_device : public device_t, public: virtual int GetDeviceID(); // hack for legacy_scsi_host_adapter::get_device - virtual DECLARE_WRITE_LINE_MEMBER( input_sel ) override; - virtual DECLARE_WRITE_LINE_MEMBER( input_ack ) override; - virtual DECLARE_WRITE_LINE_MEMBER( input_rst ) override; - virtual DECLARE_WRITE_LINE_MEMBER( input_data0 ) override { if (state) m_input_data |= 0x01; else m_input_data &= ~0x01; } - virtual DECLARE_WRITE_LINE_MEMBER( input_data1 ) override { if (state) m_input_data |= 0x02; else m_input_data &= ~0x02; } - virtual DECLARE_WRITE_LINE_MEMBER( input_data2 ) override { if (state) m_input_data |= 0x04; else m_input_data &= ~0x04; } - virtual DECLARE_WRITE_LINE_MEMBER( input_data3 ) override { if (state) m_input_data |= 0x08; else m_input_data &= ~0x08; } - virtual DECLARE_WRITE_LINE_MEMBER( input_data4 ) override { if (state) m_input_data |= 0x10; else m_input_data &= ~0x10; } - virtual DECLARE_WRITE_LINE_MEMBER( input_data5 ) override { if (state) m_input_data |= 0x20; else m_input_data &= ~0x20; } - virtual DECLARE_WRITE_LINE_MEMBER( input_data6 ) override { if (state) m_input_data |= 0x40; else m_input_data &= ~0x40; } - virtual DECLARE_WRITE_LINE_MEMBER( input_data7 ) override { if (state) m_input_data |= 0x80; else m_input_data &= ~0x80; } + virtual void input_sel(int state) override; + virtual void input_ack(int state) override; + virtual void input_rst(int state) override; + virtual void input_data0(int state) override { if (state) m_input_data |= 0x01; else m_input_data &= ~0x01; } + virtual void input_data1(int state) override { if (state) m_input_data |= 0x02; else m_input_data &= ~0x02; } + virtual void input_data2(int state) override { if (state) m_input_data |= 0x04; else m_input_data &= ~0x04; } + virtual void input_data3(int state) override { if (state) m_input_data |= 0x08; else m_input_data &= ~0x08; } + virtual void input_data4(int state) override { if (state) m_input_data |= 0x10; else m_input_data &= ~0x10; } + virtual void input_data5(int state) override { if (state) m_input_data |= 0x20; else m_input_data &= ~0x20; } + virtual void input_data6(int state) override { if (state) m_input_data |= 0x40; else m_input_data &= ~0x40; } + virtual void input_data7(int state) override { if (state) m_input_data |= 0x80; else m_input_data &= ~0x80; } + + virtual bool exists() const = 0; protected: // construction/destruction @@ -43,7 +45,10 @@ protected: virtual ioport_constructor device_input_ports() const override; virtual void device_start() override; virtual void device_reset() override; - virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; + + TIMER_CALLBACK_MEMBER(req_tick); + TIMER_CALLBACK_MEMBER(sel_tick); + TIMER_CALLBACK_MEMBER(dataout_tick); private: required_ioport m_scsi_id; |