diff options
-rw-r--r-- | src/devices/machine/am9513.cpp | 12 | ||||
-rw-r--r-- | src/mame/drivers/ft68m.cpp | 7 |
2 files changed, 15 insertions, 4 deletions
diff --git a/src/devices/machine/am9513.cpp b/src/devices/machine/am9513.cpp index 2ce1241e086..60f76e691c8 100644 --- a/src/devices/machine/am9513.cpp +++ b/src/devices/machine/am9513.cpp @@ -100,13 +100,17 @@ void am9513_device::device_start() std::fill(std::begin(m_counter_armed), std::end(m_counter_armed), false); std::fill(std::begin(m_counter_running), std::end(m_counter_running), false); std::fill(std::begin(m_alternate_count), std::end(m_alternate_count), false); - std::fill(std::begin(m_src), std::end(m_src), true); - std::fill(std::begin(m_gate), std::end(m_gate), true); - std::fill(std::begin(m_gate_alt), std::end(m_gate_alt), true); - std::fill(std::begin(m_gate_active), std::end(m_gate_active), true); std::fill(std::begin(m_tc), std::end(m_tc), false); std::fill(std::begin(m_toggle), std::end(m_toggle), false); + // Unused SRC and GATE inputs are typically grounded + std::fill(std::begin(m_src), std::end(m_src), false); + std::fill(std::begin(m_gate), std::end(m_gate), false); + std::fill(std::begin(m_gate_active), std::end(m_gate_active), false); + + // Alternate gate inputs should be tied high if not used + std::fill(std::begin(m_gate_alt), std::end(m_gate_alt), true); + // Set up frequency timers for (int f = 0; f < 5; f++) { diff --git a/src/mame/drivers/ft68m.cpp b/src/mame/drivers/ft68m.cpp index 9ca0f9fad49..c52e7f32865 100644 --- a/src/mame/drivers/ft68m.cpp +++ b/src/mame/drivers/ft68m.cpp @@ -32,6 +32,7 @@ public: DECLARE_READ16_MEMBER(switches_r); private: + virtual void machine_start() override; virtual void machine_reset() override; required_shared_ptr<uint16_t> m_p_base; @@ -64,6 +65,12 @@ static INPUT_PORTS_START( ft68m ) INPUT_PORTS_END +void ft68m_state::machine_start() +{ + // GATE 1 is tied to Vcc; other GATE and SRC pins are all grounded + subdevice<am9513_device>("stc")->gate1_w(1); +} + void ft68m_state::machine_reset() { uint8_t* ROM = memregion("roms")->base(); |