mc14411: Fix potential crashes caused by calling rate select handlers before device timers are instantiated

This commit is contained in:
AJR 2021-02-09 11:04:39 -05:00
parent 173a80fe8e
commit 8d25f46228

View File

@ -251,7 +251,8 @@ void mc14411_device::rate_select_w(uint8_t data)
if (m_divider != (data & 3))
{
m_divider = data & 3;
notify_clock_changed();
if (started())
notify_clock_changed();
}
}
@ -267,7 +268,8 @@ void mc14411_device::rsa_w(int state)
if ((m_divider & RSA) != (state == ASSERT_LINE ? RSA : 0))
{
m_divider = (m_divider & ~RSA) | (state == ASSERT_LINE ? RSA : 0);
notify_clock_changed();
if (started())
notify_clock_changed();
}
}
@ -283,7 +285,8 @@ void mc14411_device::rsb_w(int state)
if ((m_divider & RSB) != (state == ASSERT_LINE ? RSB : 0))
{
m_divider = (m_divider & ~RSB) | (state == ASSERT_LINE ? RSB : 0);
notify_clock_changed();
if (started())
notify_clock_changed();
}
}