diff options
Diffstat (limited to 'src/devices/bus/nes_ctrl/hori.h')
-rw-r--r-- | src/devices/bus/nes_ctrl/hori.h | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/devices/bus/nes_ctrl/hori.h b/src/devices/bus/nes_ctrl/hori.h index c5ba00ffbeb..6146aa90d52 100644 --- a/src/devices/bus/nes_ctrl/hori.h +++ b/src/devices/bus/nes_ctrl/hori.h @@ -2,7 +2,7 @@ // copyright-holders:Fabio Priuli /********************************************************************** - Nintendo Family Computer Hori Twin (and 4P?) adapters + Nintendo Family Computer Hori Twin and 4 Players adapters **********************************************************************/ @@ -25,21 +25,21 @@ class nes_horitwin_device : public device_t, { public: // construction/destruction - nes_horitwin_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + nes_horitwin_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + + virtual u8 read_exp(offs_t offset) override; + virtual void write(u8 data) override; protected: // device-level overrides virtual void device_start() override { } virtual void device_add_mconfig(machine_config &config) override; - virtual uint8_t read_exp(offs_t offset) override; - virtual void write(uint8_t data) override; - private: - required_device<nes_control_port_device> m_port1; - required_device<nes_control_port_device> m_port2; + required_device_array<nes_control_port_device, 2> m_subexp; }; + // ======================> nes_hori4p_device class nes_hori4p_device : public device_t, @@ -47,23 +47,24 @@ class nes_hori4p_device : public device_t, { public: // construction/destruction - nes_hori4p_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + nes_hori4p_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + + virtual u8 read_exp(offs_t offset) override; + virtual void write(u8 data) override; protected: // device-level overrides - virtual void device_start() override { } + virtual void device_start() override; virtual void device_add_mconfig(machine_config &config) override; virtual ioport_constructor device_input_ports() const override; - virtual uint8_t read_exp(offs_t offset) override; - virtual void write(uint8_t data) override; - private: - required_device<nes_control_port_device> m_port1; - required_device<nes_control_port_device> m_port2; - required_device<nes_control_port_device> m_port3; - required_device<nes_control_port_device> m_port4; + void reset_regs(); + + required_device_array<nes_control_port_device, 4> m_subexp; required_ioport m_cfg; + u8 m_count[2]; + u8 m_sig[2]; }; @@ -71,5 +72,4 @@ private: DECLARE_DEVICE_TYPE(NES_HORITWIN, nes_horitwin_device) DECLARE_DEVICE_TYPE(NES_HORI4P, nes_hori4p_device) - #endif // MAME_BUS_NES_CTRL_HORI_H |