From 5f991abda16a76faa5caf13b286aa75218c0bbbf Mon Sep 17 00:00:00 2001 From: Aaron Giles Date: Sun, 2 Aug 2020 12:38:07 +0200 Subject: [PATCH] netlist: Macro-ized 74393 DIPs --- src/lib/netlist/devices/net_lib.cpp | 1 - src/lib/netlist/devices/nld_74393.cpp | 33 ------------------------ src/lib/netlist/devices/nld_74393.h | 12 +++------ src/lib/netlist/devices/nld_devinc.h | 8 +++--- src/lib/netlist/macro/nlm_ttl74xx.cpp | 37 +++++++++++++++++++++++++++ src/lib/netlist/macro/nlm_ttl74xx.h | 3 +++ 6 files changed, 47 insertions(+), 47 deletions(-) diff --git a/src/lib/netlist/devices/net_lib.cpp b/src/lib/netlist/devices/net_lib.cpp index 792be66b292..89670b4072e 100644 --- a/src/lib/netlist/devices/net_lib.cpp +++ b/src/lib/netlist/devices/net_lib.cpp @@ -110,7 +110,6 @@ namespace devices LIB_ENTRY(74365) LIB_ENTRY(74377_GATE) LIB_ENTRY(74393) - LIB_ENTRY(74393_dip) //ENTRY(74279, TTL_74279, "") // only dip available LIB_ENTRY(SN74LS629) LIB_ENTRY(82S16) diff --git a/src/lib/netlist/devices/nld_74393.cpp b/src/lib/netlist/devices/nld_74393.cpp index 10195cee0ae..377f7298ebe 100644 --- a/src/lib/netlist/devices/nld_74393.cpp +++ b/src/lib/netlist/devices/nld_74393.cpp @@ -72,40 +72,7 @@ namespace netlist nld_power_pins m_power_pins; }; - NETLIB_OBJECT(74393_dip) - { - NETLIB_CONSTRUCTOR(74393_dip) - , m_A(*this, "A") - , m_B(*this, "B") - { - register_subalias("1", "A.CP"); - register_subalias("2", "A.MR"); - register_subalias("3", "A.Q0"); - register_subalias("4", "A.Q1"); - register_subalias("5", "A.Q2"); - register_subalias("6", "A.Q3"); - register_subalias("7", "A.GND"); - - register_subalias("8", "B.Q3"); - register_subalias("9", "B.Q2"); - register_subalias("10", "B.Q1"); - register_subalias("11", "B.Q0"); - register_subalias("12", "B.MR"); - register_subalias("13", "B.CP"); - register_subalias("14", "A.VCC"); - - connect("A.GND", "B.GND"); - connect("A.VCC", "B.VCC"); - } - //NETLIB_RESETI() {} - - private: - NETLIB_SUB(74393) m_A; - NETLIB_SUB(74393) m_B; - }; - NETLIB_DEVICE_IMPL(74393, "TTL_74393", "+CP,+MR,@VCC,@GND") - NETLIB_DEVICE_IMPL(74393_dip, "TTL_74393_DIP", "") } //namespace devices } // namespace netlist diff --git a/src/lib/netlist/devices/nld_74393.h b/src/lib/netlist/devices/nld_74393.h index b17f63b016a..a49b78ab1b2 100644 --- a/src/lib/netlist/devices/nld_74393.h +++ b/src/lib/netlist/devices/nld_74393.h @@ -24,14 +24,8 @@ #include "netlist/nl_setup.h" -#define TTL_74393(name, cCP, cMR) \ - NET_REGISTER_DEV(TTL_74393, name) \ - NET_CONNECT(name, GND, GND) \ - NET_CONNECT(name, VCC, VCC) \ - NET_CONNECT(name, CP, cCP) \ - NET_CONNECT(name, MR, cMR) - -#define TTL_74393_DIP(name) \ - NET_REGISTER_DEV(TTL_74393_DIP, name) +// usage: TTL_74393(name, cCP, cMR) +#define TTL_74393(...) \ + NET_REGISTER_DEVEXT(TTL_74393, __VA_ARGS__) #endif /* NLD_74193_H_ */ diff --git a/src/lib/netlist/devices/nld_devinc.h b/src/lib/netlist/devices/nld_devinc.h index d94c1520dc2..677a74a7178 100644 --- a/src/lib/netlist/devices/nld_devinc.h +++ b/src/lib/netlist/devices/nld_devinc.h @@ -500,10 +500,6 @@ #define TTL_74393(...) \ NET_REGISTER_DEVEXT(TTL_74393, __VA_ARGS__) -// usage : TTL_74393_DIP(name) -#define TTL_74393_DIP(...) \ - NET_REGISTER_DEVEXT(TTL_74393_DIP, __VA_ARGS__) - // --------------------------------------------------------------------- // Source: src/lib/netlist/devices/nld_74ls629.cpp // --------------------------------------------------------------------- @@ -1208,6 +1204,10 @@ #define TTL_74379_DIP(...) \ NET_REGISTER_DEVEXT(TTL_74379_DIP, __VA_ARGS__) +// usage : TTL_74393_DIP(name) +#define TTL_74393_DIP(...) \ + NET_REGISTER_DEVEXT(TTL_74393_DIP, __VA_ARGS__) + // usage : SN74LS629_DIP(name, p1_CAP1, p2_CAP2) #define SN74LS629_DIP(...) \ NET_REGISTER_DEVEXT(SN74LS629_DIP, __VA_ARGS__) diff --git a/src/lib/netlist/macro/nlm_ttl74xx.cpp b/src/lib/netlist/macro/nlm_ttl74xx.cpp index f53e726bfd3..69edc551964 100644 --- a/src/lib/netlist/macro/nlm_ttl74xx.cpp +++ b/src/lib/netlist/macro/nlm_ttl74xx.cpp @@ -1946,6 +1946,42 @@ static NETLIST_START(TTL_74379_DIP) ) NETLIST_END() +/* + * DM74393: Dual 4-Stage Binary Counter + * + * +--------------+ + * /CP |1 ++ 14| VCC + * MR |2 13| /CP + * Q0 |3 12| MR + * Q1 |4 74393 11| Q0 + * Q2 |5 10| Q1 + * Q3 |6 9| Q2 + * GND |7 8| Q3 + * +--------------+ + * + * Naming conventions follow Motorola datasheet + */ + +static NETLIST_START(TTL_74393_DIP) + TTL_74393(A) + TTL_74393(B) + + NET_C(A.VCC, B.VCC) + NET_C(A.GND, B.GND) + + DIPPINS( /* +------------+ */ + A.CP, /* /CP |1 ++ 14| VCC */ A.VCC, + A.MR, /* MR |2 13| /CP */ B.CP, + A.Q0, /* Q0 |3 12| MR */ B.MR, + A.Q1, /* Q1 |4 74393 11| Q0 */ B.Q0, + A.Q2, /* Q2 |5 10| Q1 */ B.Q1, + A.Q3, /* Q3 |6 9| Q2 */ B.Q2, + A.GND, /* GND |7 8| Q3 */ B.Q3 + /* +------------+ */ + ) +NETLIST_END() + + /* * SN74LS629: VOLTAGE-CONTROLLED OSCILLATORS * @@ -2782,6 +2818,7 @@ NETLIST_START(TTL74XX_lib) LOCAL_LIB_ENTRY(TTL_74377_DIP) LOCAL_LIB_ENTRY(TTL_74378_DIP) LOCAL_LIB_ENTRY(TTL_74379_DIP) + LOCAL_LIB_ENTRY(TTL_74393_DIP) LOCAL_LIB_ENTRY(SN74LS629_DIP) LOCAL_LIB_ENTRY(DM9312_DIP) LOCAL_LIB_ENTRY(TTL_9310_DIP) diff --git a/src/lib/netlist/macro/nlm_ttl74xx.h b/src/lib/netlist/macro/nlm_ttl74xx.h index 38992909e7b..7329e81b2af 100644 --- a/src/lib/netlist/macro/nlm_ttl74xx.h +++ b/src/lib/netlist/macro/nlm_ttl74xx.h @@ -400,6 +400,9 @@ #define TTL_74379_DIP(name) \ NET_REGISTER_DEV(TTL_74379_DIP, name) +#define TTL_74393_DIP(name) \ + NET_REGISTER_DEV(TTL_74393_DIP, name) + #define DM9312(...) \ NET_REGISTER_DEVEXT(DM9312, __VA_ARGS__)