diff --git a/src/emu/diserial.c b/src/emu/diserial.c index 07748830eb5..95e8c43ebd8 100644 --- a/src/emu/diserial.c +++ b/src/emu/diserial.c @@ -1,3 +1,4 @@ + /*************************************************************************** Serial device interface @@ -78,7 +79,7 @@ void device_serial_interface::set_tra_rate(int baud) m_tra_clock->adjust(attotime::never); } -void device_serial_interface::tra_timer(void *ptr, int param) +void device_serial_interface::tra_clock() { tra_callback(); if(is_transmit_register_empty()) @@ -88,7 +89,12 @@ void device_serial_interface::tra_timer(void *ptr, int param) } } -void device_serial_interface::rcv_timer(void *ptr, int param) +void device_serial_interface::tra_timer(void *ptr, int param) +{ + tra_clock(); +} + +void device_serial_interface::rcv_clock() { rcv_callback(); if(is_receive_register_full()) @@ -98,6 +104,11 @@ void device_serial_interface::rcv_timer(void *ptr, int param) } } +void device_serial_interface::rcv_timer(void *ptr, int param) +{ + rcv_clock(); +} + void device_serial_interface::set_data_frame(int num_data_bits, int stop_bit_count, int parity_code) { m_df_word_length = num_data_bits; diff --git a/src/emu/diserial.h b/src/emu/diserial.h index 5c3d788431c..0f765d99602 100644 --- a/src/emu/diserial.h +++ b/src/emu/diserial.h @@ -93,6 +93,8 @@ public: void set_rcv_rate(int baud); void set_tra_rate(int baud); + void tra_clock(); + void rcv_clock(); void transmit_register_reset(); void transmit_register_add_bit(int bit);