diff options
Diffstat (limited to 'src/devices/bus/archimedes/podule/acejoy.cpp')
-rw-r--r-- | src/devices/bus/archimedes/podule/acejoy.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/devices/bus/archimedes/podule/acejoy.cpp b/src/devices/bus/archimedes/podule/acejoy.cpp index 6cf6f2ef0e1..e1b33462af0 100644 --- a/src/devices/bus/archimedes/podule/acejoy.cpp +++ b/src/devices/bus/archimedes/podule/acejoy.cpp @@ -27,19 +27,20 @@ protected: virtual void device_start() override { } // optional information overrides - virtual const tiny_rom_entry *device_rom_region() const override; - virtual ioport_constructor device_input_ports() const override; + virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD; + virtual ioport_constructor device_input_ports() const override ATTR_COLD; // device_archimedes_podule_interface overrides virtual void ioc_map(address_map &map) override { map(0x0000, 0x1fff).lr8(NAME([this](offs_t offset) { return m_podule_rom->base()[offset]; })).umask32(0x000000ff); - map(0x2008, 0x200b).portr("JOY0"); - map(0x200c, 0x200f).portr("JOY1"); + map(0x2008, 0x200b).portr(m_joy[0]); + map(0x200c, 0x200f).portr(m_joy[1]); } private: required_memory_region m_podule_rom; + required_ioport_array<2> m_joy; }; @@ -107,6 +108,7 @@ arc_acejoy_device::arc_acejoy_device(const machine_config &mconfig, const char * : device_t(mconfig, ARC_ACEJOY, tag, owner, clock) , device_archimedes_podule_interface(mconfig, *this) , m_podule_rom(*this, "podule_rom") + , m_joy(*this, "JOY%u", 0U) { } |