psion_asic5.cpp: Extract serial data when received, and removed imperfect comms flags.

This commit is contained in:
Nigel Barnes 2024-09-05 18:15:02 +01:00
parent b45dd489cf
commit 67b8c40e25
3 changed files with 2 additions and 5 deletions

View File

@ -27,8 +27,6 @@ public:
// construction/destruction
psion_3link_serial_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
static constexpr feature_type imperfect_features() { return feature::COMMS; }
protected:
// device_t overrides
virtual void device_start() override;

View File

@ -133,6 +133,8 @@ void psion_asic5_device::rcv_callback()
void psion_asic5_device::rcv_complete()
{
receive_register_extract();
if (is_receive_framing_error() || is_receive_parity_error())
m_int_status |= 0x04;
@ -389,7 +391,6 @@ uint8_t psion_asic5_device::data_r()
break;
case 0x09: // UART Receive register
receive_register_extract();
data = get_received_char();
LOG("%s data_r: UART Receive register %02x\n", machine().describe_context(), data);
m_int_status &= ~0x01;

View File

@ -31,8 +31,6 @@ public:
psion_asic5_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
static constexpr feature_type imperfect_features() { return feature::COMMS; }
void set_mode(pc6_state mode) { m_mode = mode; }
auto readpa_handler() { return m_in_a_handler.bind(); }