Previous 199869 Revisions Next

r26788 Friday 27th December, 2013 at 23:26:53 UTC by smf
don't transmit anything when driven by an external clock and nothing has been queued. [smf]
[src/emu]diserial.c

trunk/src/emu/diserial.c
r26787r26788
4444   m_tra_clock_state = false;
4545   m_tra_rate = attotime::never;
4646   m_rcv_rate = attotime::never;
47   m_tra_flags = 0;
47   m_tra_flags = TRANSMIT_REGISTER_EMPTY;
4848   m_rcv_register_data = 0x8000;
4949   m_rcv_bit_count = 0;
5050   m_connection_state = 0;
r26787r26788
8080
8181void device_serial_interface::tra_edge()
8282{
83   tra_callback();
84   if(is_transmit_register_empty())
83   if (!is_transmit_register_empty())
8584   {
85      tra_callback();
86      if (is_transmit_register_empty())
87         tra_complete();
88   }
89
90   if (is_transmit_register_empty() && !m_tra_rate.is_never())
91   {
8692      m_tra_clock->adjust(attotime::never);
87      tra_complete();
8893   }
8994}
9095

Previous 199869 Revisions Next


© 1997-2024 The MAME Team