summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist
diff options
context:
space:
mode:
author couriersud <couriersud@arcor.de>2016-05-08 15:04:54 +0200
committer couriersud <couriersud@arcor.de>2016-05-08 15:05:59 +0200
commit38ca93a5d767e4ea6f8fb8c05d26d57004ede84e (patch)
treee6491b2410b70cab0be2a1a219f8b13e955b2726 /src/lib/netlist
parentdf8280806bb942e51da75753733e1f3272196d60 (diff)
Simplify object model by removing default_logic_family().
Diffstat (limited to 'src/lib/netlist')
-rw-r--r--src/lib/netlist/devices/nld_4020.cpp1
-rw-r--r--src/lib/netlist/devices/nld_4020.h2
-rw-r--r--src/lib/netlist/devices/nld_4066.cpp1
-rw-r--r--src/lib/netlist/devices/nld_4066.h1
-rw-r--r--src/lib/netlist/devices/nld_74123.cpp6
-rw-r--r--src/lib/netlist/devices/nld_74123.h1
-rw-r--r--src/lib/netlist/macro/nlm_ttl74xx.h4
-rw-r--r--src/lib/netlist/nl_base.cpp2
-rw-r--r--src/lib/netlist/nl_base.h13
9 files changed, 10 insertions, 21 deletions
diff --git a/src/lib/netlist/devices/nld_4020.cpp b/src/lib/netlist/devices/nld_4020.cpp
index 226d8c44c48..b33aca6e30e 100644
--- a/src/lib/netlist/devices/nld_4020.cpp
+++ b/src/lib/netlist/devices/nld_4020.cpp
@@ -11,6 +11,7 @@ NETLIB_NAMESPACE_DEVICES_START()
NETLIB_START(CD4020)
{
+ set_logic_family(family_CD4XXX);
register_sub("sub", sub);
register_sub("supply", m_supply);
diff --git a/src/lib/netlist/devices/nld_4020.h b/src/lib/netlist/devices/nld_4020.h
index 759e7dc177f..00ce7158685 100644
--- a/src/lib/netlist/devices/nld_4020.h
+++ b/src/lib/netlist/devices/nld_4020.h
@@ -45,7 +45,6 @@ NETLIB_NAMESPACE_DEVICES_START()
NETLIB_SUBDEVICE(CD4020_sub,
- NETLIB_LOGIC_FAMILY(CD4XXX)
ATTR_HOT void update_outputs(const UINT16 cnt);
logic_input_t m_IP;
@@ -56,7 +55,6 @@ NETLIB_SUBDEVICE(CD4020_sub,
);
NETLIB_DEVICE(CD4020,
- NETLIB_LOGIC_FAMILY(CD4XXX)
NETLIB_SUB(CD4020_sub) sub;
NETLIB_SUB(vdd_vss) m_supply;
logic_input_t m_RESET;
diff --git a/src/lib/netlist/devices/nld_4066.cpp b/src/lib/netlist/devices/nld_4066.cpp
index 7dd471c0ae0..0a792d1ebc6 100644
--- a/src/lib/netlist/devices/nld_4066.cpp
+++ b/src/lib/netlist/devices/nld_4066.cpp
@@ -11,6 +11,7 @@ NETLIB_NAMESPACE_DEVICES_START()
NETLIB_START(CD4066_GATE)
{
+ set_logic_family(family_CD4XXX);
register_input("CTL", m_control);
register_sub("PS", m_supply);
register_sub("R", m_R);
diff --git a/src/lib/netlist/devices/nld_4066.h b/src/lib/netlist/devices/nld_4066.h
index 87378d6b6c1..e392a80f11a 100644
--- a/src/lib/netlist/devices/nld_4066.h
+++ b/src/lib/netlist/devices/nld_4066.h
@@ -33,7 +33,6 @@
NETLIB_NAMESPACE_DEVICES_START()
NETLIB_DEVICE(CD4066_GATE,
- NETLIB_LOGIC_FAMILY(CD4XXX)
public:
analog_input_t m_control;
diff --git a/src/lib/netlist/devices/nld_74123.cpp b/src/lib/netlist/devices/nld_74123.cpp
index 059ea406751..a745fdbd3f9 100644
--- a/src/lib/netlist/devices/nld_74123.cpp
+++ b/src/lib/netlist/devices/nld_74123.cpp
@@ -226,12 +226,14 @@ NETLIB_RESET(9602_dip)
NETLIB_START(4538_dip)
{
- m_1->m_dev_type = 4538;
- m_2->m_dev_type = 4538;
+ set_logic_family(family_CD4XXX);
register_sub("1", m_1);
register_sub("2", m_2);
+ m_1->m_dev_type = 4538;
+ m_2->m_dev_type = 4538;
+
register_subalias("1", m_1->m_RN->m_R->m_N); // C1
register_subalias("2", m_1->m_RN->m_R->m_P); // RC1
register_subalias("3", m_1->m_CLRQ);
diff --git a/src/lib/netlist/devices/nld_74123.h b/src/lib/netlist/devices/nld_74123.h
index 0379245aedd..fcf20af4793 100644
--- a/src/lib/netlist/devices/nld_74123.h
+++ b/src/lib/netlist/devices/nld_74123.h
@@ -116,7 +116,6 @@ NETLIB_DEVICE(9602_dip,
NET_REGISTER_DEV(CD4538_DIP, _name)
NETLIB_DEVICE(4538_dip,
- NETLIB_LOGIC_FAMILY(CD4XXX)
NETLIB_SUB(74123) m_1;
NETLIB_SUB(74123) m_2;
);
diff --git a/src/lib/netlist/macro/nlm_ttl74xx.h b/src/lib/netlist/macro/nlm_ttl74xx.h
index a71cd06b33a..541a9932fb5 100644
--- a/src/lib/netlist/macro/nlm_ttl74xx.h
+++ b/src/lib/netlist/macro/nlm_ttl74xx.h
@@ -49,8 +49,8 @@
#define TTL_7408_GATE(_name) \
NET_REGISTER_DEV(TTL_7408_GATE, _name)
-#define TTL_7408_NAND(_name, _A, _B) \
- NET_REGISTER_DEV(TTL_7408_NAND, _name) \
+#define TTL_7408_AND(_name, _A, _B) \
+ NET_REGISTER_DEV(TTL_7408_AND, _name) \
NET_CONNECT(_name, A, _A) \
NET_CONNECT(_name, B, _B)
diff --git a/src/lib/netlist/nl_base.cpp b/src/lib/netlist/nl_base.cpp
index 8daedc1ff7e..d79355b5de2 100644
--- a/src/lib/netlist/nl_base.cpp
+++ b/src/lib/netlist/nl_base.cpp
@@ -398,7 +398,7 @@ ATTR_COLD core_device_t::core_device_t(const family_t afamily, netlist_t &anetli
#endif
{
if (logic_family() == nullptr)
- set_logic_family(this->default_logic_family());
+ set_logic_family(family_TTL);
init_object(anetlist, name);
}
diff --git a/src/lib/netlist/nl_base.h b/src/lib/netlist/nl_base.h
index 783431ee881..46cfab1d953 100644
--- a/src/lib/netlist/nl_base.h
+++ b/src/lib/netlist/nl_base.h
@@ -251,13 +251,6 @@ using netlist_sig_t = std::uint32_t;
ATTR_HOT void update_param() override; \
, _priv)
-#define NETLIB_LOGIC_FAMILY(_fam) \
-virtual logic_family_desc_t *default_logic_family() override \
-{ \
- return family_ ## _fam; \
-}
-
-
//============================================================
// Asserts
//============================================================
@@ -1089,11 +1082,7 @@ namespace netlist
ATTR_HOT virtual void update() { }
virtual void start() { }
- virtual void stop() { } \
- virtual logic_family_desc_t *default_logic_family()
- {
- return family_TTL;
- }
+ virtual void stop() { }
private: