diff options
Diffstat (limited to 'src/emu/machine/z80sti.h')
-rw-r--r-- | src/emu/machine/z80sti.h | 54 |
1 files changed, 14 insertions, 40 deletions
diff --git a/src/emu/machine/z80sti.h b/src/emu/machine/z80sti.h index 0a413a31cfc..e316949c038 100644 --- a/src/emu/machine/z80sti.h +++ b/src/emu/machine/z80sti.h @@ -61,54 +61,31 @@ struct z80sti_interface int m_tx_clock; // serial transmit clock // this gets called on each change of the _INT pin (pin 17) - devcb_write_line m_out_int_func; + devcb_write_line m_out_int_cb; // this is called on each read of the GPIO pins - devcb_read8 m_in_gpio_func; + devcb_read8 m_in_gpio_cb; // this is called on each write of the GPIO pins - devcb_write8 m_out_gpio_func; + devcb_write8 m_out_gpio_cb; // this gets called for each read of the SI pin (pin 38) - devcb_read_line m_in_si_func; + devcb_read_line m_in_si_cb; // this gets called for each change of the SO pin (pin 37) - devcb_write_line m_out_so_func; + devcb_write_line m_out_so_cb; // this gets called for each change of the TAO pin (pin 1) - devcb_write_line m_out_tao_func; + devcb_write_line m_out_tao_cb; // this gets called for each change of the TBO pin (pin 2) - devcb_write_line m_out_tbo_func; + devcb_write_line m_out_tbo_cb; // this gets called for each change of the TCO pin (pin 3) - devcb_write_line m_out_tco_func; + devcb_write_line m_out_tco_cb; // this gets called for each change of the TDO pin (pin 4) - devcb_write_line m_out_tdo_func; -}; - - - -// ======================> z80sti_device_config - -class z80sti_device_config : public device_config, - public device_config_z80daisy_interface, - public z80sti_interface -{ - friend class z80sti_device; - - // construction/destruction - z80sti_device_config(const machine_config &mconfig, const char *tag, const device_config *owner, UINT32 clock); - -public: - // allocators - static device_config *static_alloc_device_config(const machine_config &mconfig, const char *tag, const device_config *owner, UINT32 clock); - virtual device_t *alloc_device(running_machine &machine) const; - -protected: - // device_config overrides - virtual void device_config_complete(); + devcb_write_line m_out_tdo_cb; }; @@ -116,14 +93,13 @@ protected: // ======================> z80sti_device class z80sti_device : public device_t, - public device_z80daisy_interface + public device_z80daisy_interface, + public z80sti_interface { - friend class z80sti_device_config; - +public: // construction/destruction - z80sti_device(running_machine &_machine, const z80sti_device_config &config); + z80sti_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); -public: // I/O accessors UINT8 read(offs_t offset); void write(offs_t offset, UINT8 data); @@ -135,6 +111,7 @@ public: private: // device-level overrides + virtual void device_config_complete(); virtual void device_start(); virtual void device_reset(); @@ -154,9 +131,6 @@ private: static TIMER_CALLBACK( static_timer_count ) { reinterpret_cast<z80sti_device *>(ptr)->timer_count(param); } - // internal state - const z80sti_device_config &m_config; - // device callbacks devcb_resolved_read8 m_in_gpio_func; devcb_resolved_write8 m_out_gpio_func; |