diff options
Diffstat (limited to 'src/devices/machine/74153.cpp')
-rw-r--r-- | src/devices/machine/74153.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/devices/machine/74153.cpp b/src/devices/machine/74153.cpp index 427432fc9cc..7e27af93cc0 100644 --- a/src/devices/machine/74153.cpp +++ b/src/devices/machine/74153.cpp @@ -126,6 +126,14 @@ WRITE_LINE_MEMBER( ttl153_device::s1_w ) update_b(); } +WRITE8_MEMBER( ttl153_device::s_w ) +{ + m_s[0] = bool(BIT(data, 0)); + m_s[1] = bool(BIT(data, 1)); + update_a(); + update_b(); +} + WRITE_LINE_MEMBER( ttl153_device::i0a_w ) { m_ia[0] = bool(state); @@ -150,6 +158,15 @@ WRITE_LINE_MEMBER( ttl153_device::i3a_w ) update_a(); } +WRITE8_MEMBER( ttl153_device::ia_w ) +{ + m_ia[0] = bool(BIT(data, 0)); + m_ia[1] = bool(BIT(data, 1)); + m_ia[2] = bool(BIT(data, 2)); + m_ia[3] = bool(BIT(data, 3)); + update_a(); +} + WRITE_LINE_MEMBER( ttl153_device::i0b_w ) { m_ib[0] = bool(state); @@ -173,3 +190,22 @@ WRITE_LINE_MEMBER( ttl153_device::i3b_w ) m_ib[3] = bool(state); update_b(); } + +WRITE8_MEMBER( ttl153_device::ib_w ) +{ + m_ib[0] = bool(BIT(data, 0)); + m_ib[1] = bool(BIT(data, 1)); + m_ib[2] = bool(BIT(data, 2)); + m_ib[3] = bool(BIT(data, 3)); + update_b(); +} + +READ_LINE_MEMBER( ttl153_device::za_r ) +{ + return m_z[0] ? 1 : 0; +} + +READ_LINE_MEMBER( ttl153_device::zb_r ) +{ + return m_z[1] ? 1 : 0; +} |