summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/diserial.cpp
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2025-09-01 15:45:15 +0200
committer hap <happppp@users.noreply.github.com>2025-09-01 15:45:15 +0200
commitfae71cc826142af5fbb83712fd4407e8347f7e53 (patch)
tree0b05b2868ad0defc72b52138a53f6b58b874aa39 /src/emu/diserial.cpp
parenta5ada7bfe2dccf8e61fd4589d399a335d65a9e35 (diff)
diserial: don't use bitwise OR on bool, small cleanup to spacing
Diffstat (limited to 'src/emu/diserial.cpp')
-rw-r--r--src/emu/diserial.cpp57
1 files changed, 27 insertions, 30 deletions
diff --git a/src/emu/diserial.cpp b/src/emu/diserial.cpp
index eb50741eb5a..88fb34c7f75 100644
--- a/src/emu/diserial.cpp
+++ b/src/emu/diserial.cpp
@@ -1,6 +1,5 @@
// license:BSD-3-Clause
// copyright-holders:Carl, Miodrag Milanovic
-
/***************************************************************************
Serial device interface
@@ -57,6 +56,7 @@ void device_serial_interface::interface_pre_start()
m_rcv_clock = device().machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(device_serial_interface::rcv_clock), this));
if (!m_tra_clock)
m_tra_clock = device().machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(device_serial_interface::tra_clock), this));
+
m_rcv_clock_state = false;
m_tra_clock_state = false;
}
@@ -88,14 +88,14 @@ void device_serial_interface::interface_post_start()
void device_serial_interface::set_rcv_rate(const attotime &rate)
{
- m_rcv_rate = rate/2;
+ m_rcv_rate = rate / 2;
receive_register_reset();
m_rcv_clock->adjust(attotime::never);
}
void device_serial_interface::set_tra_rate(const attotime &rate)
{
- m_tra_rate = rate/2;
+ m_tra_rate = rate / 2;
transmit_register_reset();
m_tra_clock->adjust(attotime::never);
}
@@ -118,7 +118,7 @@ void device_serial_interface::tra_edge()
void device_serial_interface::rcv_edge()
{
rcv_callback();
- if(is_receive_register_full())
+ if (is_receive_register_full())
{
m_rcv_clock->adjust(attotime::never);
rcv_complete();
@@ -127,18 +127,20 @@ void device_serial_interface::rcv_edge()
void device_serial_interface::tx_clock_w(int state)
{
- if(state != m_tra_clock_state) {
+ if (state != m_tra_clock_state)
+ {
m_tra_clock_state = state;
- if(m_tra_clock_state)
+ if (m_tra_clock_state)
tra_edge();
}
}
void device_serial_interface::rx_clock_w(int state)
{
- if(state != m_rcv_clock_state) {
+ if (state != m_rcv_clock_state)
+ {
m_rcv_clock_state = state;
- if(!m_rcv_clock_state)
+ if (!m_rcv_clock_state)
rcv_edge();
}
}
@@ -184,12 +186,11 @@ void device_serial_interface::set_data_frame(int start_bit_count, int data_bit_c
break;
}
- df_changed |= (m_df_stop_bit_count != orig_stop_bit_count) || (m_df_min_rx_stop_bit_count != orig_min_rx_stop_bit_count);
+ df_changed = df_changed || (m_df_stop_bit_count != orig_stop_bit_count) || (m_df_min_rx_stop_bit_count != orig_min_rx_stop_bit_count);
if (!df_changed)
{
LOGMASKED(LOG_SETUP, "No change to data frame, skipping\n");
-
return;
}
@@ -210,15 +211,15 @@ void device_serial_interface::set_data_frame(int start_bit_count, int data_bit_c
void device_serial_interface::receive_register_reset()
{
m_rcv_bit_count_received = 0;
- m_rcv_flags &=~RECEIVE_REGISTER_FULL;
+ m_rcv_flags &= ~RECEIVE_REGISTER_FULL;
if (m_df_start_bit_count == 0)
{
m_rcv_flags |= RECEIVE_REGISTER_SYNCHRONISED;
- m_rcv_flags &=~RECEIVE_REGISTER_WAITING_FOR_START_BIT;
+ m_rcv_flags &= ~RECEIVE_REGISTER_WAITING_FOR_START_BIT;
}
else
{
- m_rcv_flags &=~RECEIVE_REGISTER_SYNCHRONISED;
+ m_rcv_flags &= ~RECEIVE_REGISTER_SYNCHRONISED;
m_rcv_flags |= RECEIVE_REGISTER_WAITING_FOR_START_BIT;
}
}
@@ -235,7 +236,7 @@ void device_serial_interface::rx_w(int state)
if (m_rcv_clock && !(m_rcv_rate.is_never()))
{
// make start delay half a cycle longer to make sure we are called after the sender
- m_rcv_clock->adjust(m_rcv_rate*2, 0, m_rcv_rate);
+ m_rcv_clock->adjust(m_rcv_rate * 2, 0, m_rcv_rate);
}
else if (m_start_bit_hack_for_external_clocks)
m_rcv_bit_count_received--;
@@ -250,14 +251,12 @@ void device_serial_interface::rx_w(int state)
/* receive a bit */
void device_serial_interface::receive_register_update_bit(int bit)
{
- int previous_bit;
-
- previous_bit = (m_rcv_register_data & 0x8000) ? 1 : 0;
+ int previous_bit = BIT(m_rcv_register_data, 15);
/* shift previous bit 7 out */
- m_rcv_register_data = m_rcv_register_data>>1;
+ m_rcv_register_data = m_rcv_register_data >> 1;
/* shift new bit in */
- m_rcv_register_data = (m_rcv_register_data & 0x7fff) | (bit<<15);
+ m_rcv_register_data = (m_rcv_register_data & 0x7fff) | (bit << 15);
/* update bit count received */
/* asynchronous mode */
@@ -265,17 +264,17 @@ void device_serial_interface::receive_register_update_bit(int bit)
{
/* the previous bit is stored in uart.receive char bit 0 */
/* has the bit state changed? */
- if (((previous_bit ^ bit) & 0x01)!=0)
+ if ((previous_bit ^ bit) & 0x01)
{
/* yes */
- if (bit==0)
+ if (bit == 0)
{
LOGMASKED(LOG_RX, "Receiver saw start bit (%s)\n", device().machine().time().to_string());
/* seen start bit! */
/* not waiting for start bit now! */
- m_rcv_flags &=~RECEIVE_REGISTER_WAITING_FOR_START_BIT;
- m_rcv_flags |=RECEIVE_REGISTER_SYNCHRONISED;
+ m_rcv_flags &= ~RECEIVE_REGISTER_WAITING_FOR_START_BIT;
+ m_rcv_flags |= RECEIVE_REGISTER_SYNCHRONISED;
/* reset bit count received */
m_rcv_bit_count_received = 0;
m_rcv_framing_error = false;
@@ -299,10 +298,10 @@ void device_serial_interface::receive_register_update_bit(int bit)
}
/* received all bits? */
- if (m_rcv_bit_count_received==m_rcv_bit_count)
+ if (m_rcv_bit_count_received == m_rcv_bit_count)
{
m_rcv_bit_count_received = 0;
- m_rcv_flags &=~RECEIVE_REGISTER_SYNCHRONISED;
+ m_rcv_flags &= ~RECEIVE_REGISTER_SYNCHRONISED;
m_rcv_flags |= RECEIVE_REGISTER_WAITING_FOR_START_BIT;
LOGMASKED(LOG_RX, "Receive register full\n");
m_rcv_flags |= RECEIVE_REGISTER_FULL;
@@ -326,7 +325,7 @@ void device_serial_interface::receive_register_extract()
m_rcv_byte_received = data;
LOGMASKED(LOG_RX, "Receive data 0x%02x\n", m_rcv_byte_received);
- if(m_df_parity == PARITY_NONE)
+ if (m_df_parity == PARITY_NONE)
return;
/* get state of parity bit received */
@@ -385,7 +384,7 @@ void device_serial_interface::transmit_register_setup(u8 data_byte)
m_tra_bit_count_transmitted = 0;
m_tra_bit_count = 0;
- m_tra_flags &=~TRANSMIT_REGISTER_EMPTY;
+ m_tra_flags &= ~TRANSMIT_REGISTER_EMPTY;
/* start bit */
for (int i = 0; i < m_df_start_bit_count; i++)
@@ -437,9 +436,7 @@ void device_serial_interface::transmit_register_setup(u8 data_byte)
/* get a bit from the transmit register */
u8 device_serial_interface::transmit_register_get_data_bit()
{
- int bit;
-
- bit = (m_tra_register_data>>(m_tra_bit_count-1-m_tra_bit_count_transmitted))&1;
+ int bit = (m_tra_register_data >> (m_tra_bit_count - 1 - m_tra_bit_count_transmitted)) & 1;
if (m_tra_bit_count_transmitted < m_df_start_bit_count)
LOGMASKED(LOG_TX, "Transmitting start bit %d as %d (%s)\n", m_tra_bit_count_transmitted, bit, device().machine().time().to_string());