From a9fe679d8aabe6738c21792e885343cc17a8bbcd Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Sat, 14 Jan 2017 00:34:02 +1100 Subject: [PATCH] usability (nw) --- src/mame/drivers/m68705prg.cpp | 19 ++++++++++++++----- src/mame/layout/m68705prg.lay | 26 +++++++++++++++++++++++++- 2 files changed, 39 insertions(+), 6 deletions(-) diff --git a/src/mame/drivers/m68705prg.cpp b/src/mame/drivers/m68705prg.cpp index d02d76849c5..8b643d1f5da 100644 --- a/src/mame/drivers/m68705prg.cpp +++ b/src/mame/drivers/m68705prg.cpp @@ -99,6 +99,7 @@ public: m_addr = (m_addr + 1) & 0x0fff; output().set_led_value(0, !BIT(data, 2)); output().set_led_value(1, !BIT(data, 1)); + output().set_led_value(3, !BIT(data, 0) && BIT(m_sw->read(), 1)); m_mcu->set_input_line(M68705_VPP_LINE, (!BIT(data, 0) && BIT(m_sw->read(), 1)) ? ASSERT_LINE : CLEAR_LINE); m_pb_val = data; @@ -129,9 +130,11 @@ public: DECLARE_MACHINE_RESET(m68705prg) { - // FIXME: how do we set toggling inputs to desired value on reset? This doesn't work. - m_sw->field(0x01)->set_value(0); - m_sw->field(0x02)->set_value(0); + m_sw->field(0x01)->live().value = 0; + m_sw->field(0x02)->live().value = 0; + + output().set_led_value(2, 1); + output().set_led_value(3, 0); m_mcu->set_input_line(M68705_IRQ_LINE, ASSERT_LINE); m_mcu->set_input_line(M68705_VPP_LINE, CLEAR_LINE); @@ -160,8 +163,14 @@ protected: TIMER_CALLBACK_MEMBER(input_poll_callback) { ioport_value const switches(m_sw->read()); - m_mcu->set_input_line(M68705_VPP_LINE, (BIT(switches, 1) && !BIT(m_pb_val, 0)) ? ASSERT_LINE : CLEAR_LINE); - m_mcu->set_input_line(INPUT_LINE_RESET, BIT(switches, 0) ? ASSERT_LINE : CLEAR_LINE); + bool const reset(!BIT(switches, 0)); + bool const vpp(BIT(switches, 1) && !BIT(m_pb_val, 0)); + + output().set_led_value(2, reset); + output().set_led_value(3, vpp); + + m_mcu->set_input_line(M68705_VPP_LINE, vpp ? ASSERT_LINE : CLEAR_LINE); + m_mcu->set_input_line(INPUT_LINE_RESET, reset ? ASSERT_LINE : CLEAR_LINE); } required_ioport m_sw; diff --git a/src/mame/layout/m68705prg.lay b/src/mame/layout/m68705prg.lay index 738bdd0c392..24e2f995f4a 100644 --- a/src/mame/layout/m68705prg.lay +++ b/src/mame/layout/m68705prg.lay @@ -44,6 +44,16 @@ MC68705 programmer layout + + + + + + + + + + @@ -54,7 +64,7 @@ MC68705 programmer layout - + @@ -83,5 +93,19 @@ MC68705 programmer layout + + + + + + + + + + + + + +