diff options
Diffstat (limited to 'src/devices/bus/astrocde/ram.h')
-rw-r--r-- | src/devices/bus/astrocde/ram.h | 58 |
1 files changed, 32 insertions, 26 deletions
diff --git a/src/devices/bus/astrocde/ram.h b/src/devices/bus/astrocde/ram.h index d714c14e3b3..83f9483d2e8 100644 --- a/src/devices/bus/astrocde/ram.h +++ b/src/devices/bus/astrocde/ram.h @@ -1,24 +1,22 @@ // license:BSD-3-Clause // copyright-holders:Fabio Priuli -#ifndef __ASTROCADE_RAM_H -#define __ASTROCADE_RAM_H +#ifndef MAME_BUS_ASTROCADE_RAM_H +#define MAME_BUS_ASTROCADE_RAM_H + +#pragma once #include "exp.h" // ======================> astrocade_blueram_4k_device -class astrocade_blueram_4k_device : public device_t, - public device_astrocade_card_interface +class astrocade_blueram_4k_device : public device_t, public device_astrocade_card_interface { public: // construction/destruction - astrocade_blueram_4k_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source); astrocade_blueram_4k_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override { m_ram.resize(0x1000); save_item(NAME(m_ram)); } - virtual void device_reset() override {} virtual ioport_constructor device_input_ports() const override; // reading and writing @@ -26,6 +24,11 @@ public: virtual DECLARE_WRITE8_MEMBER(write) override; protected: + astrocade_blueram_4k_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + + virtual void device_start() override { m_ram.resize(0x1000); save_item(NAME(m_ram)); } + virtual void device_reset() override { } + std::vector<uint8_t> m_ram; required_ioport m_write_prot; }; @@ -54,22 +57,23 @@ public: // ======================> astrocade_viper_sys1_device -class astrocade_viper_sys1_device : public device_t, - public device_astrocade_card_interface +class astrocade_viper_sys1_device : public device_t, public device_astrocade_card_interface { public: // construction/destruction astrocade_viper_sys1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override { m_ram.resize(0x4000); save_item(NAME(m_ram)); } - virtual void device_reset() override {} virtual ioport_constructor device_input_ports() const override; // reading and writing virtual DECLARE_READ8_MEMBER(read) override; virtual DECLARE_WRITE8_MEMBER(write) override; +protected: + virtual void device_start() override { m_ram.resize(0x4000); save_item(NAME(m_ram)); } + virtual void device_reset() override { } + private: std::vector<uint8_t> m_ram; required_ioport m_write_prot; @@ -77,22 +81,23 @@ private: // ======================> astrocade_whiteram_device -class astrocade_whiteram_device : public device_t, - public device_astrocade_card_interface +class astrocade_whiteram_device : public device_t, public device_astrocade_card_interface { public: // construction/destruction astrocade_whiteram_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override { m_ram.resize(0x8000); save_item(NAME(m_ram)); } - virtual void device_reset() override {} virtual ioport_constructor device_input_ports() const override; // reading and writing virtual DECLARE_READ8_MEMBER(read) override; virtual DECLARE_WRITE8_MEMBER(write) override; +protected: + virtual void device_start() override { m_ram.resize(0x8000); save_item(NAME(m_ram)); } + virtual void device_reset() override { } + private: std::vector<uint8_t> m_ram; required_ioport m_write_prot; @@ -100,22 +105,23 @@ private: // ======================> astrocade_rl64ram_device -class astrocade_rl64ram_device : public device_t, - public device_astrocade_card_interface +class astrocade_rl64ram_device : public device_t, public device_astrocade_card_interface { public: // construction/destruction astrocade_rl64ram_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override { m_ram.resize(0xb000); save_item(NAME(m_ram)); } - virtual void device_reset() override {} virtual ioport_constructor device_input_ports() const override; // reading and writing virtual DECLARE_READ8_MEMBER(read) override; virtual DECLARE_WRITE8_MEMBER(write) override; +protected: + virtual void device_start() override { m_ram.resize(0xb000); save_item(NAME(m_ram)); } + virtual void device_reset() override { } + private: std::vector<uint8_t> m_ram; required_ioport m_write_prot; @@ -124,12 +130,12 @@ private: // device type definition -extern const device_type ASTROCADE_BLUERAM_4K; -extern const device_type ASTROCADE_BLUERAM_16K; -extern const device_type ASTROCADE_BLUERAM_32K; -extern const device_type ASTROCADE_VIPER_SYS1; -extern const device_type ASTROCADE_WHITERAM; -extern const device_type ASTROCADE_RL64RAM; +DECLARE_DEVICE_TYPE(ASTROCADE_BLUERAM_4K, astrocade_blueram_4k_device) +DECLARE_DEVICE_TYPE(ASTROCADE_BLUERAM_16K, astrocade_blueram_16k_device) +DECLARE_DEVICE_TYPE(ASTROCADE_BLUERAM_32K, astrocade_blueram_32k_device) +DECLARE_DEVICE_TYPE(ASTROCADE_VIPER_SYS1, astrocade_viper_sys1_device) +DECLARE_DEVICE_TYPE(ASTROCADE_WHITERAM, astrocade_whiteram_device) +DECLARE_DEVICE_TYPE(ASTROCADE_RL64RAM, astrocade_rl64ram_device) -#endif +#endif // MAME_BUS_ASTROCADE_RAM_H |