summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/74153.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/74153.cpp')
-rw-r--r--src/devices/machine/74153.cpp36
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;
+}