diff options
Diffstat (limited to 'src/devices/bus/hp9845_io/98032.h')
-rw-r--r-- | src/devices/bus/hp9845_io/98032.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/devices/bus/hp9845_io/98032.h b/src/devices/bus/hp9845_io/98032.h index 94013ca589f..4eaa33ec786 100644 --- a/src/devices/bus/hp9845_io/98032.h +++ b/src/devices/bus/hp9845_io/98032.h @@ -14,9 +14,11 @@ #pragma once #include "hp9845_io.h" + +class device_hp98032_gpio_interface; class hp98032_gpio_slot_device; -class hp98032_io_card_device : public hp9845_io_card_device +class hp98032_io_card_device : public device_t, public device_hp9845_io_interface { public: // construction/destruction @@ -61,7 +63,7 @@ private: // The GPIO interface of HP98032 cards class hp98032_gpio_slot_device : public device_t, - public device_slot_interface + public device_single_card_slot_interface<device_hp98032_gpio_interface> { public: // construction/destruction @@ -134,10 +136,11 @@ private: }; // A device connected to GPIO port of HP98032 -class hp98032_gpio_card_device : public device_t, - public device_slot_card_interface +class device_hp98032_gpio_interface : public device_interface { public: + virtual ~device_hp98032_gpio_interface(); + virtual uint16_t get_jumpers() const = 0; virtual uint16_t input_r() const = 0; virtual uint8_t ext_status_r() const = 0; @@ -148,9 +151,7 @@ public: virtual DECLARE_WRITE_LINE_MEMBER(preset_w) = 0; protected: - // construction/destruction - hp98032_gpio_card_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); - virtual ~hp98032_gpio_card_device(); + device_hp98032_gpio_interface(const machine_config &mconfig, device_t &device); DECLARE_WRITE_LINE_MEMBER(pflg_w); DECLARE_WRITE_LINE_MEMBER(psts_w); @@ -158,7 +159,7 @@ protected: }; // GPIO loopback connector for HP98032 -class hp98032_gpio_loopback_device : public hp98032_gpio_card_device +class hp98032_gpio_loopback_device : public device_t, public device_hp98032_gpio_interface { public: // construction/destruction @@ -178,6 +179,7 @@ protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + private: uint16_t m_output; uint8_t m_ext_control; |