summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/6821pia.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/6821pia.h')
-rw-r--r--src/devices/machine/6821pia.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/devices/machine/6821pia.h b/src/devices/machine/6821pia.h
index 5682b43ecef..ad7d28f65d6 100644
--- a/src/devices/machine/6821pia.h
+++ b/src/devices/machine/6821pia.h
@@ -5,13 +5,10 @@
Motorola 6821 PIA interface and emulation
Notes:
- * get_port_b_z_mask() gives the caller the bitmask that shows
+ * port_b_z_mask() gives the caller the bitmask that shows
which bits are high-impedance when reading port B, and thus
- neither 0 or 1. get_output_cb2_z() returns the same info
+ neither 0 or 1. cb2_output_z() returns the same info
for the CB2 pin.
- * set_port_a_z_mask allows the input callback to indicate
- which port A bits are disconnected. For these bits, the
- read operation will return the output buffer's contents.
* The 'alt' interface functions are used when the A0 and A1
address bits are swapped.
* All 'int' data or return values are bool, and should be
@@ -61,13 +58,13 @@ public:
void write_alt(offs_t offset, uint8_t data) { write(((offset << 1) & 0x02) | ((offset >> 1) & 0x01), data); }
uint8_t port_b_z_mask() const { return ~m_ddr_b; } // see first note in .c
- void set_port_a_z_mask(uint8_t data) { m_port_a_z_mask = data; }// see second note in .c
DECLARE_WRITE8_MEMBER( porta_w ) { write_porta(data); }
void write_porta(uint8_t data);
void write_porta_line(int line, bool state);
- void set_a_input(uint8_t data, uint8_t z_mask);
+ void set_a_input(uint8_t data);
uint8_t a_output();
+ void set_port_a_input_overrides_output_mask(uint8_t mask) { m_a_input_overrides_output_mask = mask; }
DECLARE_WRITE_LINE_MEMBER( pa0_w ) { write_porta_line(0, state); }
DECLARE_WRITE_LINE_MEMBER( pa1_w ) { write_porta_line(1, state); }
@@ -176,8 +173,8 @@ private:
uint8_t m_in_ca1;
uint8_t m_in_ca2;
uint8_t m_out_a;
+ uint8_t m_a_input_overrides_output_mask;
uint8_t m_out_ca2;
- uint8_t m_port_a_z_mask;
uint8_t m_ddr_a;
uint8_t m_ctl_a;
uint8_t m_irq_a1;