diff options
Diffstat (limited to 'src/mame/drivers/st_mp200.cpp')
-rw-r--r-- | src/mame/drivers/st_mp200.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mame/drivers/st_mp200.cpp b/src/mame/drivers/st_mp200.cpp index cc74fb852e7..3ce08a92113 100644 --- a/src/mame/drivers/st_mp200.cpp +++ b/src/mame/drivers/st_mp200.cpp @@ -48,6 +48,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(st_mp200); @@ -101,6 +102,7 @@ private: required_ioport m_io_x2; required_ioport m_io_x3; required_ioport m_io_x4; + output_finder<47> m_digits; }; @@ -465,11 +467,11 @@ WRITE8_MEMBER( st_mp200_state::u11_a_w ) if (BIT(data, 0) && (m_counter > 8)) { static const uint8_t patterns[16] = { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0,0,0,0,0,0 }; // MC14543 - output().set_digit_value(m_digit, patterns[m_segment[0]]); - output().set_digit_value(10+m_digit, patterns[m_segment[1]]); - output().set_digit_value(20+m_digit, patterns[m_segment[2]]); - output().set_digit_value(30+m_digit, patterns[m_segment[3]]); - output().set_digit_value(40+m_digit, patterns[m_segment[4]]); + m_digits[m_digit] = patterns[m_segment[0]]; + m_digits[10+m_digit] = patterns[m_segment[1]]; + m_digits[20+m_digit] = patterns[m_segment[2]]; + m_digits[30+m_digit] = patterns[m_segment[3]]; + m_digits[40+m_digit] = patterns[m_segment[4]]; } } } @@ -531,6 +533,7 @@ WRITE8_MEMBER( st_mp200_state::u11_b_w ) void st_mp200_state::machine_start() { + m_digits.resolve(); } void st_mp200_state::machine_reset() |