From 29c864b9d141bc97e9787c1cbd8d1e6fcda95980 Mon Sep 17 00:00:00 2001 From: hap Date: Tue, 6 Jun 2023 14:32:14 +0200 Subject: missile: use ioport_array --- src/mame/atari/missile.cpp | 40 ++++++++++++++-------------------------- 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/src/mame/atari/missile.cpp b/src/mame/atari/missile.cpp index e1dde574aee..13ff2b3dccf 100644 --- a/src/mame/atari/missile.cpp +++ b/src/mame/atari/missile.cpp @@ -373,14 +373,8 @@ public: , m_videoram(*this, "videoram") , m_watchdog(*this, "watchdog") , m_pokey(*this, "pokey") - , m_in0(*this, "IN0") - , m_in1(*this, "IN1") - , m_r10(*this, "R10") - , m_r8(*this, "R8") - , m_track0_x(*this, "TRACK0_X") - , m_track0_y(*this, "TRACK0_Y") - , m_track1_x(*this, "TRACK1_X") - , m_track1_y(*this, "TRACK1_Y") + , m_inputs(*this, { "IN0", "IN1", "R10", "R8" }) + , m_track(*this, { "TRACK0_X", "TRACK0_Y", "TRACK1_X", "TRACK1_Y" }) , m_screen(*this, "screen") , m_palette(*this, "palette") , m_leds(*this, "led%u", 0U) @@ -426,14 +420,8 @@ private: required_shared_ptr m_videoram; required_device m_watchdog; optional_device m_pokey; - required_ioport m_in0; - required_ioport m_in1; - required_ioport m_r10; - required_ioport m_r8; - required_ioport m_track0_x; - required_ioport m_track0_y; - required_ioport m_track1_x; - required_ioport m_track1_y; + required_ioport_array<4> m_inputs; + required_ioport_array<4> m_track; required_device m_screen; required_device m_palette; output_finder<2> m_leds; @@ -823,21 +811,21 @@ uint8_t missile_state::missile_r(offs_t offset) if (m_ctrld) /* trackball */ { if (!m_flipscreen) - result = ((m_track0_y->read() << 4) & 0xf0) | (m_track0_x->read() & 0x0f); + result = ((m_track[1]->read() << 4) & 0xf0) | (m_track[0]->read() & 0x0f); else - result = ((m_track1_y->read() << 4) & 0xf0) | (m_track1_x->read() & 0x0f); + result = ((m_track[3]->read() << 4) & 0xf0) | (m_track[2]->read() & 0x0f); } else /* buttons */ - result = m_in0->read(); + result = m_inputs[0]->read(); } /* IN1 */ else if (offset < 0x4a00) - result = m_in1->read(); + result = m_inputs[1]->read(); /* IN2 */ else if (offset < 0x4b00) - result = m_r10->read(); + result = m_inputs[2]->read(); /* anything else */ else @@ -922,21 +910,21 @@ uint8_t missile_state::bootleg_r(offs_t offset) if (m_ctrld) /* trackball */ { if (!m_flipscreen) - result = ((m_track0_y->read() << 4) & 0xf0) | (m_track0_x->read() & 0x0f); + result = ((m_track[1]->read() << 4) & 0xf0) | (m_track[0]->read() & 0x0f); else - result = ((m_track1_y->read() << 4) & 0xf0) | (m_track1_x->read() & 0x0f); + result = ((m_track[3]->read() << 4) & 0xf0) | (m_track[2]->read() & 0x0f); } else /* buttons */ - result = m_in0->read(); + result = m_inputs[0]->read(); } /* IN1 */ else if (offset >= 0x4900 && offset < 0x4a00) // seems ok - result = m_in1->read(); + result = m_inputs[1]->read(); /* IN2 */ else if (offset >= 0x4b00 && offset < 0x4c00) // seems ok - result = m_r10->read(); + result = m_inputs[2]->read(); /* anything else */ else -- cgit v1.2.3