summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/by6803.cpp
diff options
context:
space:
mode:
author Robbbert <Robbbert@users.noreply.github.com>2018-04-03 20:32:32 +1000
committer Robbbert <Robbbert@users.noreply.github.com>2018-04-03 20:32:32 +1000
commit63026947dd4e1f581475a908469aa915f0b94746 (patch)
tree65561e4a4f65b2a076f570922b87c528f52e1c92 /src/mame/drivers/by6803.cpp
parentcb498414243a3cd977d9d3c69350ed88d696c5e8 (diff)
(nw) output finder for by6803,model1,st_mp200,videopkr
Diffstat (limited to 'src/mame/drivers/by6803.cpp')
-rw-r--r--src/mame/drivers/by6803.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mame/drivers/by6803.cpp b/src/mame/drivers/by6803.cpp
index 7143cd34801..a427761af69 100644
--- a/src/mame/drivers/by6803.cpp
+++ b/src/mame/drivers/by6803.cpp
@@ -44,6 +44,7 @@ public:
, m_io_x2(*this, "X2")
, m_io_x3(*this, "X3")
, m_io_x4(*this, "X4")
+ , m_digits(*this, "digit%u", 0U)
{ }
DECLARE_DRIVER_INIT(by6803);
@@ -78,6 +79,7 @@ private:
//uint8_t m_digit;
uint8_t m_segment;
virtual void machine_reset() override;
+ virtual void machine_start() override { m_digits.resolve(); }
required_device<m6803_cpu_device> m_maincpu;
required_device<pia6821_device> m_pia0;
required_device<pia6821_device> m_pia1;
@@ -87,6 +89,7 @@ private:
required_ioport m_io_x2;
required_ioport m_io_x3;
required_ioport m_io_x4;
+ output_finder<40> m_digits;
};
@@ -229,19 +232,19 @@ WRITE8_MEMBER( by6803_state::pia0_a_w )
switch (m_pia0_a)
{
case 0x10: // wrong
- output().set_digit_value(m_digit, m_segment);
+ m_digits[m_digit] = m_segment;
break;
case 0x1d:
- output().set_digit_value(8+m_digit, m_segment);
+ m_digits[8+m_digit] = m_segment;
break;
case 0x1b:
- output().set_digit_value(16+m_digit, m_segment);
+ m_digits[16+m_digit] = m_segment;
break;
case 0x07:
- output().set_digit_value(24+m_digit, m_segment);
+ m_digits[24+m_digit] = m_segment;
break;
case 0x0f:
- output().set_digit_value(32+m_digit, m_segment);
+ m_digits[32+m_digit] m_segment;
break;
default:
break;