summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/gp_1.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/gp_1.cpp')
-rw-r--r--src/mame/drivers/gp_1.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/mame/drivers/gp_1.cpp b/src/mame/drivers/gp_1.cpp
index cb5851f2cd7..7f5d3fe5658 100644
--- a/src/mame/drivers/gp_1.cpp
+++ b/src/mame/drivers/gp_1.cpp
@@ -49,6 +49,7 @@ public:
, m_io_x9(*this, "X9")
, m_io_xa(*this, "XA")
, m_io_xb(*this, "XB")
+ , m_digits(*this, "digit%u", 0U)
{ }
DECLARE_DRIVER_INIT(gp_1);
@@ -66,6 +67,7 @@ private:
uint8_t m_digit;
uint8_t m_segment[16];
virtual void machine_reset() override;
+ virtual void machine_start() override { m_digits.resolve(); }
required_device<cpu_device> m_maincpu;
required_device<z80ctc_device> m_ctc;
optional_device<sn76477_device> m_sn;
@@ -78,6 +80,7 @@ private:
required_ioport m_io_x9;
required_ioport m_io_xa;
required_ioport m_io_xb;
+ output_finder<40> m_digits;
};
@@ -360,10 +363,10 @@ WRITE8_MEMBER( gp_1_state::porta_w )
else
if (m_u14 == 8)
{
- output().set_digit_value(m_digit, patterns[m_segment[8]]);
- output().set_digit_value(m_digit+8, patterns[m_segment[9]]);
- output().set_digit_value(m_digit+16, patterns[m_segment[10]]);
- output().set_digit_value(m_digit+24, patterns[m_segment[11]]);
+ m_digits[m_digit] = patterns[m_segment[8]];
+ m_digits[m_digit+8] = patterns[m_segment[9]];
+ m_digits[m_digit+16] = patterns[m_segment[10]];
+ m_digits[m_digit+24] = patterns[m_segment[11]];
}
}