Merge pull request #5204 from hackbar/pia-fix

pia6821: roll back port A read change.
This commit is contained in:
ajrhacker 2019-06-10 17:10:13 -04:00 committed by GitHub
commit d0319edeca
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -237,11 +237,12 @@ uint8_t pia6821_device::get_in_a_value()
}
}
// For port A, when the port is in output mode, other devices can drive the pins too.
// If they load the lines so the voltage changes from what the PIA is outputting, that
// value will be read back.
// TODO: Figure out if any boards do this, and compensate.
ret = (m_out_a & m_ddr_a) | (port_a_data & ~m_ddr_a);
// - connected pins are always read
// - disconnected pins read the output buffer in output mode
// - disconnected pins are HI in input mode
ret = (~m_port_a_z_mask & port_a_data) |
( m_port_a_z_mask & m_ddr_a & m_out_a) |
( m_port_a_z_mask & ~m_ddr_a);
return ret;
}