summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2020-08-02 12:37:30 +0200
committer couriersud <couriersud@gmx.org>2020-08-02 12:41:26 +0200
commit90e4d6410a4e01c1952298a43cb45af7556f6444 (patch)
treee538aed4d4307705a0a40ece37dbf998c447ff4f
parentf40b7e48f1335c704723438d5999b251b9bed4ea (diff)
netlist: Macro-ized 74165 DIPs
-rw-r--r--src/lib/netlist/devices/net_lib.cpp1
-rw-r--r--src/lib/netlist/devices/nld_74165.cpp29
-rw-r--r--src/lib/netlist/devices/nld_74165.h22
-rw-r--r--src/lib/netlist/devices/nld_devinc.h8
-rw-r--r--src/lib/netlist/macro/nlm_ttl74xx.cpp32
-rw-r--r--src/lib/netlist/macro/nlm_ttl74xx.h3
6 files changed, 42 insertions, 53 deletions
diff --git a/src/lib/netlist/devices/net_lib.cpp b/src/lib/netlist/devices/net_lib.cpp
index aa1f40de6b4..df18a3ac7cf 100644
--- a/src/lib/netlist/devices/net_lib.cpp
+++ b/src/lib/netlist/devices/net_lib.cpp
@@ -101,7 +101,6 @@ namespace devices
LIB_ENTRY(74163)
LIB_ENTRY(74164)
LIB_ENTRY(74165)
- LIB_ENTRY(74165_dip)
LIB_ENTRY(74166)
LIB_ENTRY(74166_dip)
LIB_ENTRY(74174)
diff --git a/src/lib/netlist/devices/nld_74165.cpp b/src/lib/netlist/devices/nld_74165.cpp
index afa5f3de90d..d27c14953ea 100644
--- a/src/lib/netlist/devices/nld_74165.cpp
+++ b/src/lib/netlist/devices/nld_74165.cpp
@@ -81,37 +81,8 @@ namespace netlist
nld_power_pins m_power_pins;
};
- NETLIB_OBJECT(74165_dip)
- {
- NETLIB_CONSTRUCTOR(74165_dip)
- , A(*this, "A")
- {
- register_subalias("1", A.m_SH_LDQ);
- register_subalias("2", A.m_CLK);
- register_subalias("3", A.m_DATA[4]);
- register_subalias("4", A.m_DATA[5]);
- register_subalias("5", A.m_DATA[6]);
- register_subalias("6", A.m_DATA[7]);
- register_subalias("7", A.m_QHQ);
- register_subalias("8", "A.GND");
-
- register_subalias("9", A.m_QH);
- register_subalias("10", A.m_SER);
- register_subalias("11", A.m_DATA[0]);
- register_subalias("12", A.m_DATA[1]);
- register_subalias("13", A.m_DATA[2]);
- register_subalias("14", A.m_DATA[3]);
- register_subalias("15", A.m_CLKINH);
- register_subalias("16", "A.VCC");
- }
- //NETLIB_RESETI() {}
- private:
- NETLIB_SUB(74165) A;
- };
-
// FIXME: Timing
NETLIB_DEVICE_IMPL(74165, "TTL_74165", "+CLK,+CLKINH,+SH_LDQ,+SER,+A,+B,+C,+D,+E,+F,+G,+H,@VCC,@GND")
- NETLIB_DEVICE_IMPL(74165_dip, "TTL_74165_DIP", "")
} //namespace devices
} // namespace netlist
diff --git a/src/lib/netlist/devices/nld_74165.h b/src/lib/netlist/devices/nld_74165.h
index 51133157dbd..b4918276779 100644
--- a/src/lib/netlist/devices/nld_74165.h
+++ b/src/lib/netlist/devices/nld_74165.h
@@ -29,24 +29,8 @@
#include "netlist/nl_setup.h"
-#define TTL_74165(name, cCLK, cCLKINH, cSH_LDQ, cSER, cA, cB, cC, cD, cE, cF, cG, cH) \
- NET_REGISTER_DEV(TTL_74165, name) \
- NET_CONNECT(name, GND, GND) \
- NET_CONNECT(name, VCC, VCC) \
- NET_CONNECT(name, CLK, cCLK) \
- NET_CONNECT(name, CLKINH, cCLKINH) \
- NET_CONNECT(name, SH_LDQ, cSH_LDQ) \
- NET_CONNECT(name, SER, cSER) \
- NET_CONNECT(name, A, cA) \
- NET_CONNECT(name, B, cB) \
- NET_CONNECT(name, C, cC) \
- NET_CONNECT(name, D, cD) \
- NET_CONNECT(name, E, cE) \
- NET_CONNECT(name, F, cF) \
- NET_CONNECT(name, G, cG) \
- NET_CONNECT(name, H, cH)
-
-#define TTL_74165_DIP(name) \
- NET_REGISTER_DEV(TTL_74165_DIP, name)
+// usage: TTL_74165(name, cCLK, cCLKINH, cSH_LDQ, cSER, cA, cB, cC, cD, cE, cF, cG, cH)
+#define TTL_74165(...) \
+ NET_REGISTER_DEVEXT(TTL_74165, __VA_ARGS__)
#endif /* NLD_74165_H_ */
diff --git a/src/lib/netlist/devices/nld_devinc.h b/src/lib/netlist/devices/nld_devinc.h
index 5d05a8ea021..e9a6e51ccb5 100644
--- a/src/lib/netlist/devices/nld_devinc.h
+++ b/src/lib/netlist/devices/nld_devinc.h
@@ -429,10 +429,6 @@
#define TTL_74165(...) \
NET_REGISTER_DEVEXT(TTL_74165, __VA_ARGS__)
-// usage : TTL_74165_DIP(name)
-#define TTL_74165_DIP(...) \
- NET_REGISTER_DEVEXT(TTL_74165_DIP, __VA_ARGS__)
-
// ---------------------------------------------------------------------
// Source: src/lib/netlist/devices/nld_74166.cpp
// ---------------------------------------------------------------------
@@ -1035,6 +1031,10 @@
#define TTL_74164_DIP(...) \
NET_REGISTER_DEVEXT(TTL_74164_DIP, __VA_ARGS__)
+// usage : TTL_74165_DIP(name)
+#define TTL_74165_DIP(...) \
+ NET_REGISTER_DEVEXT(TTL_74165_DIP, __VA_ARGS__)
+
// usage : TTL_74260_GATE(name)
#define TTL_74260_GATE(...) \
NET_REGISTER_DEVEXT(TTL_74260_GATE, __VA_ARGS__)
diff --git a/src/lib/netlist/macro/nlm_ttl74xx.cpp b/src/lib/netlist/macro/nlm_ttl74xx.cpp
index 763e6676c3f..6525d5ddfb6 100644
--- a/src/lib/netlist/macro/nlm_ttl74xx.cpp
+++ b/src/lib/netlist/macro/nlm_ttl74xx.cpp
@@ -1702,6 +1702,37 @@ static NETLIST_START(TTL_74164_DIP)
NETLIST_END()
/*
+ * 74165: Parallel-Load 8-Bit Shift Register
+ *
+ * +--------------+
+ * SH/LDQ |1 ++ 16| VCC
+ * CLK |2 15| CLKINH
+ * E |3 14| D
+ * F |4 74165 13| C
+ * G |5 12| B
+ * H |6 11| A
+ * QHQ |7 10| SER
+ * GND |8 9| QH
+ * +--------------+
+ */
+
+static NETLIST_START(TTL_74165_DIP)
+ TTL_74165(A)
+
+ DIPPINS( /* +--------------+ */
+ A.SH_LDQ, /* SH/LDQ |1 ++ 16| VCC */ A.VCC,
+ A.CLK, /* CLK |2 15| CLKINH */ A.CLKINH,
+ A.E, /* E |3 14| D */ A.D,
+ A.F, /* F |4 74165 13| C */ A.C,
+ A.G, /* G |5 12| B */ A.B,
+ A.H, /* H |6 11| A */ A.A,
+ A.QHQ, /* QHQ |7 10| SER */ A.SER,
+ A.GND, /* GND |8 9| QH */ A.QH
+ /* +--------------+ */
+ )
+NETLIST_END()
+
+/*
* DM74260: Dual 5-Input NOR Gates
* _________
* Y = A+B+C+D+E
@@ -2713,6 +2744,7 @@ NETLIST_START(TTL74XX_lib)
LOCAL_LIB_ENTRY(TTL_74161_DIP)
LOCAL_LIB_ENTRY(TTL_74163_DIP)
LOCAL_LIB_ENTRY(TTL_74164_DIP)
+ LOCAL_LIB_ENTRY(TTL_74165_DIP)
LOCAL_LIB_ENTRY(TTL_74260_DIP)
LOCAL_LIB_ENTRY(TTL_74279_DIP)
LOCAL_LIB_ENTRY(TTL_74377_DIP)
diff --git a/src/lib/netlist/macro/nlm_ttl74xx.h b/src/lib/netlist/macro/nlm_ttl74xx.h
index d9eed7435df..082ec43d53f 100644
--- a/src/lib/netlist/macro/nlm_ttl74xx.h
+++ b/src/lib/netlist/macro/nlm_ttl74xx.h
@@ -366,6 +366,9 @@
#define TTL_74164_DIP(name) \
NET_REGISTER_DEV(TTL_74164_DIP, name)
+#define TTL_74165_DIP(name) \
+ NET_REGISTER_DEV(TTL_74165_DIP, name)
+
#define TTL_74260_GATE(name) \
NET_REGISTER_DEV(TTL_74260_GATE, name)