mirror of
https://github.com/holub/mame
synced 2025-05-22 13:48:55 +03:00
Adjust MC6850 receive/transmit timer periods when clocks are changed. [Curt Coder]
This commit is contained in:
parent
d5ef27b951
commit
96b9776773
@ -728,6 +728,22 @@ void acia6850_device::rx_clock_in()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*-------------------------------------------------
|
||||||
|
set_rx_clock - set receiver clock
|
||||||
|
-------------------------------------------------*/
|
||||||
|
|
||||||
|
void acia6850_device::set_rx_clock(int clock)
|
||||||
|
{
|
||||||
|
m_rx_clock = clock;
|
||||||
|
|
||||||
|
if (m_rx_clock)
|
||||||
|
{
|
||||||
|
attotime rx_period = attotime_mul(ATTOTIME_IN_HZ(m_rx_clock), m_divide);
|
||||||
|
timer_adjust_periodic(m_rx_timer, rx_period, 0, rx_period);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*-------------------------------------------------
|
/*-------------------------------------------------
|
||||||
acia6850_set_rx_clock - Set clock frequencies
|
acia6850_set_rx_clock - Set clock frequencies
|
||||||
dynamically
|
dynamically
|
||||||
@ -739,6 +755,22 @@ void acia6850_set_rx_clock(running_device *device, int clock)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*-------------------------------------------------
|
||||||
|
set_tx_clock - set receiver clock
|
||||||
|
-------------------------------------------------*/
|
||||||
|
|
||||||
|
void acia6850_device::set_tx_clock(int clock)
|
||||||
|
{
|
||||||
|
m_tx_clock = clock;
|
||||||
|
|
||||||
|
if (m_tx_clock)
|
||||||
|
{
|
||||||
|
attotime tx_period = attotime_mul(ATTOTIME_IN_HZ(m_tx_clock), m_divide);
|
||||||
|
timer_adjust_periodic(m_tx_timer, tx_period, 0, tx_period);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*-------------------------------------------------
|
/*-------------------------------------------------
|
||||||
acia6850_set_tx_clock - Set clock frequencies
|
acia6850_set_tx_clock - Set clock frequencies
|
||||||
dynamically
|
dynamically
|
||||||
|
@ -113,8 +113,8 @@ public:
|
|||||||
void tx_clock_in();
|
void tx_clock_in();
|
||||||
void rx_clock_in();
|
void rx_clock_in();
|
||||||
|
|
||||||
void set_rx_clock(int clock) { m_rx_clock = clock; }
|
void set_rx_clock(int clock);
|
||||||
void set_tx_clock(int clock) { m_tx_clock = clock; }
|
void set_tx_clock(int clock);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// device-level overrides
|
// device-level overrides
|
||||||
|
Loading…
Reference in New Issue
Block a user