From 104a5e283be31cc63ba8dda31436b8b96e8bda43 Mon Sep 17 00:00:00 2001 From: Couriersud Date: Thu, 23 Jan 2014 21:16:24 +0000 Subject: [PATCH] Added pin-outs to a number of devices --- .gitattributes | 5 ++++ src/emu/netlist/devices/net_lib.c | 6 +++++ src/emu/netlist/devices/nld_7402.c | 43 ++++++++++++++++++++++++++++++ src/emu/netlist/devices/nld_7402.h | 14 +++++++++- src/emu/netlist/devices/nld_7404.c | 42 +++++++++++++++++++++++++++++ src/emu/netlist/devices/nld_7404.h | 17 ++++++++++-- src/emu/netlist/devices/nld_7410.c | 40 +++++++++++++++++++++++++++ src/emu/netlist/devices/nld_7410.h | 10 +++++++ src/emu/netlist/devices/nld_7420.c | 38 ++++++++++++++++++++++++++ src/emu/netlist/devices/nld_7420.h | 11 +++++++- src/emu/netlist/devices/nld_7425.c | 42 +++++++++++++++++++++++++++++ src/emu/netlist/devices/nld_7425.h | 10 ++++++- src/emu/netlist/devices/nld_7427.c | 40 +++++++++++++++++++++++++++ src/emu/netlist/devices/nld_7427.h | 9 +++++++ src/emu/netlist/netlist.mak | 5 ++++ 15 files changed, 327 insertions(+), 5 deletions(-) create mode 100644 src/emu/netlist/devices/nld_7402.c create mode 100644 src/emu/netlist/devices/nld_7410.c create mode 100644 src/emu/netlist/devices/nld_7420.c create mode 100644 src/emu/netlist/devices/nld_7425.c create mode 100644 src/emu/netlist/devices/nld_7427.c diff --git a/.gitattributes b/.gitattributes index 40e34a75adf..e7ff0b5dff3 100644 --- a/.gitattributes +++ b/.gitattributes @@ -2160,16 +2160,21 @@ src/emu/netlist/devices/net_lib.c svneol=native#text/plain src/emu/netlist/devices/net_lib.h svneol=native#text/plain src/emu/netlist/devices/nld_7400.c svneol=native#text/plain src/emu/netlist/devices/nld_7400.h svneol=native#text/plain +src/emu/netlist/devices/nld_7402.c svneol=native#text/plain src/emu/netlist/devices/nld_7402.h svneol=native#text/plain src/emu/netlist/devices/nld_7404.c svneol=native#text/plain src/emu/netlist/devices/nld_7404.h svneol=native#text/plain +src/emu/netlist/devices/nld_7410.c svneol=native#text/plain src/emu/netlist/devices/nld_7410.h svneol=native#text/plain src/emu/netlist/devices/nld_74107.c svneol=native#text/plain src/emu/netlist/devices/nld_74107.h svneol=native#text/plain src/emu/netlist/devices/nld_74153.c svneol=native#text/plain src/emu/netlist/devices/nld_74153.h svneol=native#text/plain +src/emu/netlist/devices/nld_7420.c svneol=native#text/plain src/emu/netlist/devices/nld_7420.h svneol=native#text/plain +src/emu/netlist/devices/nld_7425.c svneol=native#text/plain src/emu/netlist/devices/nld_7425.h svneol=native#text/plain +src/emu/netlist/devices/nld_7427.c svneol=native#text/plain src/emu/netlist/devices/nld_7427.h svneol=native#text/plain src/emu/netlist/devices/nld_7430.h svneol=native#text/plain src/emu/netlist/devices/nld_7474.c svneol=native#text/plain diff --git a/src/emu/netlist/devices/net_lib.c b/src/emu/netlist/devices/net_lib.c index fe47693864b..fa294a7731a 100644 --- a/src/emu/netlist/devices/net_lib.c +++ b/src/emu/netlist/devices/net_lib.c @@ -286,6 +286,12 @@ void netlist_factory_t::initialize() ENTRY(9316, TTL_9316, "+CLK,ENP,ENT,CLRQ,LOADQ,A,B,C,D") ENTRY(NE555, NE555, "-") ENTRY(7400_dip, TTL_7400_DIP, "-") + ENTRY(7402_dip, TTL_7402_DIP, "-") + ENTRY(7404_dip, TTL_7404_DIP, "-") + ENTRY(7410_dip, TTL_7410_DIP, "-") + ENTRY(7420_dip, TTL_7420_DIP, "-") + ENTRY(7425_dip, TTL_7425_DIP, "-") + ENTRY(7427_dip, TTL_7427_DIP, "-") ENTRY(7474_dip, TTL_7474_DIP, "-") ENTRY(7493_dip, TTL_7493_DIP, "-") ENTRY(74107_dip, TTL_74107_DIP, "-") diff --git a/src/emu/netlist/devices/nld_7402.c b/src/emu/netlist/devices/nld_7402.c new file mode 100644 index 00000000000..32fb32c1fab --- /dev/null +++ b/src/emu/netlist/devices/nld_7402.c @@ -0,0 +1,43 @@ +/* + * nld_7402.c + * + */ + +#include "nld_7402.h" + +NETLIB_START(7402_dip) +{ + register_sub(m_1, "1"); + register_sub(m_2, "2"); + register_sub(m_3, "3"); + register_sub(m_4, "4"); + + register_subalias("1", m_1.m_Q); + register_subalias("2", m_1.m_i[0]); + register_subalias("3", m_1.m_i[1]); + + register_subalias("4", m_2.m_Q); + register_subalias("5", m_2.m_i[0]); + register_subalias("6", m_2.m_i[1]); + + register_subalias("8", m_3.m_i[0]); + register_subalias("9", m_3.m_i[1]); + register_subalias("10", m_3.m_Q); + + register_subalias("11", m_4.m_i[0]); + register_subalias("12", m_4.m_i[1]); + register_subalias("13", m_4.m_Q); +} + +NETLIB_UPDATE(7402_dip) +{ +} + +NETLIB_RESET(7402_dip) +{ + m_1.do_reset(); + m_2.do_reset(); + m_3.do_reset(); + m_4.do_reset(); +} + diff --git a/src/emu/netlist/devices/nld_7402.h b/src/emu/netlist/devices/nld_7402.h index 63a91d25ce8..4f050514633 100644 --- a/src/emu/netlist/devices/nld_7402.h +++ b/src/emu/netlist/devices/nld_7402.h @@ -9,7 +9,7 @@ * Y1 |1 ++ 14| VCC * A1 |2 13| Y4 * B1 |3 12| B4 - * Y2 |4 7400 11| A4 + * Y2 |4 7402 11| A4 * A2 |5 10| Y3 * B2 |6 9| B3 * GND |7 8| A3 @@ -39,6 +39,18 @@ NET_CONNECT(_name, A, _I1) \ NET_CONNECT(_name, B, _I2) +#define TTL_7402_DIP(_name) \ + NET_REGISTER_DEV(7402_dip, _name) + + NETLIB_SIGNAL(7402, 2, 1, 0); +NETLIB_DEVICE(7402_dip, + + NETLIB_NAME(7402) m_1; + NETLIB_NAME(7402) m_2; + NETLIB_NAME(7402) m_3; + NETLIB_NAME(7402) m_4; +); + #endif /* NLD_7402_H_ */ diff --git a/src/emu/netlist/devices/nld_7404.c b/src/emu/netlist/devices/nld_7404.c index 4f1e6e21dcf..ac0628206f8 100644 --- a/src/emu/netlist/devices/nld_7404.c +++ b/src/emu/netlist/devices/nld_7404.c @@ -22,3 +22,45 @@ NETLIB_UPDATE(7404) UINT8 t = (INPLOGIC(m_I)) ^ 1; OUTLOGIC(m_Q, t, delay[t]); } + +NETLIB_START(7404_dip) +{ + register_sub(m_1, "1"); + register_sub(m_2, "2"); + register_sub(m_3, "3"); + register_sub(m_4, "4"); + register_sub(m_5, "5"); + register_sub(m_6, "6"); + + register_subalias("1", m_1.m_I); + register_subalias("2", m_1.m_Q); + + register_subalias("3", m_2.m_I); + register_subalias("4", m_2.m_Q); + + register_subalias("5", m_3.m_I); + register_subalias("6", m_3.m_Q); + + register_subalias("8", m_4.m_Q); + register_subalias("9", m_4.m_I); + + register_subalias("10", m_5.m_Q); + register_subalias("11", m_5.m_I); + + register_subalias("12", m_6.m_Q); + register_subalias("13", m_6.m_I); +} + +NETLIB_UPDATE(7404_dip) +{ +} + +NETLIB_RESET(7404_dip) +{ + m_1.do_reset(); + m_2.do_reset(); + m_3.do_reset(); + m_4.do_reset(); + m_5.do_reset(); + m_6.do_reset(); +} diff --git a/src/emu/netlist/devices/nld_7404.h b/src/emu/netlist/devices/nld_7404.h index c4d775a55c2..88151503f8a 100644 --- a/src/emu/netlist/devices/nld_7404.h +++ b/src/emu/netlist/devices/nld_7404.h @@ -14,8 +14,8 @@ * Y3 |6 9| A4 * GND |7 8| Y4 * +--------------+ - * - * Y = A+B + * _ + * Y = A * +---++---+ * | A || Y | * +===++===+ @@ -33,6 +33,7 @@ #include "nld_signal.h" NETLIB_DEVICE(7404, +public: netlist_ttl_input_t m_I; netlist_ttl_output_t m_Q; ); @@ -41,4 +42,16 @@ NETLIB_DEVICE(7404, NET_REGISTER_DEV(7404, _name) \ NET_CONNECT(_name, A, _A) +#define TTL_7404_DIP(_name) \ + NET_REGISTER_DEV(7402_dip, _name) + +NETLIB_DEVICE(7404_dip, + + NETLIB_NAME(7404) m_1; + NETLIB_NAME(7404) m_2; + NETLIB_NAME(7404) m_3; + NETLIB_NAME(7404) m_4; + NETLIB_NAME(7404) m_5; + NETLIB_NAME(7404) m_6; +); #endif /* NLD_7404_H_ */ diff --git a/src/emu/netlist/devices/nld_7410.c b/src/emu/netlist/devices/nld_7410.c new file mode 100644 index 00000000000..56d545b9997 --- /dev/null +++ b/src/emu/netlist/devices/nld_7410.c @@ -0,0 +1,40 @@ +/* + * nld_7410.c + * + */ + +#include "nld_7410.h" + +NETLIB_START(7410_dip) +{ + register_sub(m_1, "1"); + register_sub(m_2, "2"); + register_sub(m_3, "3"); + + register_subalias("1", m_1.m_i[0]); + register_subalias("2", m_1.m_i[1]); + register_subalias("3", m_2.m_i[0]); + register_subalias("4", m_2.m_i[1]); + register_subalias("5", m_2.m_i[2]); + register_subalias("6", m_2.m_Q); + + register_subalias("8", m_3.m_Q); + register_subalias("9", m_3.m_i[0]); + register_subalias("10", m_3.m_i[1]); + register_subalias("11", m_3.m_i[2]); + + register_subalias("12", m_1.m_Q); + register_subalias("13", m_1.m_i[2]); +} + +NETLIB_UPDATE(7410_dip) +{ +} + +NETLIB_RESET(7410_dip) +{ + m_1.do_reset(); + m_2.do_reset(); + m_3.do_reset(); +} + diff --git a/src/emu/netlist/devices/nld_7410.h b/src/emu/netlist/devices/nld_7410.h index b8a1c55aee6..098ca903fff 100644 --- a/src/emu/netlist/devices/nld_7410.h +++ b/src/emu/netlist/devices/nld_7410.h @@ -42,4 +42,14 @@ NETLIB_SIGNAL(7410, 3, 0, 0); +#define TTL_7410_DIP(_name) \ + NET_REGISTER_DEV(7410_dip, _name) + +NETLIB_DEVICE(7410_dip, + + NETLIB_NAME(7410) m_1; + NETLIB_NAME(7410) m_2; + NETLIB_NAME(7410) m_3; +); + #endif /* NLD_7410_H_ */ diff --git a/src/emu/netlist/devices/nld_7420.c b/src/emu/netlist/devices/nld_7420.c new file mode 100644 index 00000000000..f163bdaa872 --- /dev/null +++ b/src/emu/netlist/devices/nld_7420.c @@ -0,0 +1,38 @@ +/* + * nld_7420.c + * + */ + +#include "nld_7420.h" + +NETLIB_START(7420_dip) +{ + register_sub(m_1, "1"); + register_sub(m_2, "2"); + + register_subalias("1", m_1.m_i[0]); + register_subalias("2", m_1.m_i[1]); + + register_subalias("4", m_1.m_i[2]); + register_subalias("5", m_1.m_i[3]); + register_subalias("6", m_1.m_Q); + + register_subalias("8", m_2.m_Q); + register_subalias("9", m_2.m_i[0]); + register_subalias("10", m_2.m_i[1]); + + register_subalias("12", m_2.m_i[2]); + register_subalias("13", m_2.m_i[3]); + +} + +NETLIB_UPDATE(7420_dip) +{ +} + +NETLIB_RESET(7420_dip) +{ + m_1.do_reset(); + m_2.do_reset(); +} + diff --git a/src/emu/netlist/devices/nld_7420.h b/src/emu/netlist/devices/nld_7420.h index 6ac7c477743..3b359fb91d1 100644 --- a/src/emu/netlist/devices/nld_7420.h +++ b/src/emu/netlist/devices/nld_7420.h @@ -11,7 +11,7 @@ * NC |3 12| C2 * C1 |4 7420 11| NC * D1 |5 10| B2 - * Y! |6 9| A2 + * Y1 |6 9| A2 * GND |7 8| Y2 * +--------------+ * ____ @@ -45,4 +45,13 @@ NETLIB_SIGNAL(7420, 4, 0, 0); +#define TTL_7420_DIP(_name) \ + NET_REGISTER_DEV(7420_dip, _name) + +NETLIB_DEVICE(7420_dip, + + NETLIB_NAME(7420) m_1; + NETLIB_NAME(7420) m_2; +); + #endif /* NLD_7420_H_ */ diff --git a/src/emu/netlist/devices/nld_7425.c b/src/emu/netlist/devices/nld_7425.c new file mode 100644 index 00000000000..c2c83f25204 --- /dev/null +++ b/src/emu/netlist/devices/nld_7425.c @@ -0,0 +1,42 @@ +/* + * nld_7425.c + * + */ + +#include "nld_7425.h" + +NETLIB_START(7425_dip) +{ + register_sub(m_1, "1"); + register_sub(m_2, "2"); + + register_subalias("1", m_1.m_i[0]); + register_subalias("2", m_1.m_i[1]); + + //register_subalias("3", ); X1 ==> NC + + register_subalias("4", m_1.m_i[2]); + register_subalias("5", m_1.m_i[3]); + register_subalias("6", m_1.m_Q); + + register_subalias("8", m_2.m_Q); + register_subalias("9", m_2.m_i[0]); + register_subalias("10", m_2.m_i[1]); + + //register_subalias("11", ); X2 ==> NC + + register_subalias("12", m_2.m_i[2]); + register_subalias("13", m_2.m_i[3]); + +} + +NETLIB_UPDATE(7425_dip) +{ +} + +NETLIB_RESET(7425_dip) +{ + m_1.do_reset(); + m_2.do_reset(); +} + diff --git a/src/emu/netlist/devices/nld_7425.h b/src/emu/netlist/devices/nld_7425.h index 26ae9b8476c..271e59ee49b 100644 --- a/src/emu/netlist/devices/nld_7425.h +++ b/src/emu/netlist/devices/nld_7425.h @@ -11,7 +11,7 @@ * X1 |3 12| C2 * C1 |4 7425 11| X2 * D1 |5 10| B2 - * Y! |6 9| A2 + * Y1 |6 9| A2 * GND |7 8| Y2 * +--------------+ * _______ @@ -48,4 +48,12 @@ NETLIB_SIGNAL(7425, 4, 1, 0); +#define TTL_7425_DIP(_name) \ + NET_REGISTER_DEV(7425_dip, _name) + +NETLIB_DEVICE(7425_dip, + + NETLIB_NAME(7425) m_1; + NETLIB_NAME(7425) m_2; +); #endif /* NLD_7425_H_ */ diff --git a/src/emu/netlist/devices/nld_7427.c b/src/emu/netlist/devices/nld_7427.c new file mode 100644 index 00000000000..0fbf1e02f0f --- /dev/null +++ b/src/emu/netlist/devices/nld_7427.c @@ -0,0 +1,40 @@ +/* + * nld_7427.c + * + */ + +#include "nld_7427.h" + +NETLIB_START(7427_dip) +{ + register_sub(m_1, "1"); + register_sub(m_2, "2"); + register_sub(m_3, "3"); + + register_subalias("1", m_1.m_i[0]); + register_subalias("2", m_1.m_i[1]); + register_subalias("3", m_2.m_i[0]); + register_subalias("4", m_2.m_i[1]); + register_subalias("5", m_2.m_i[2]); + register_subalias("6", m_2.m_Q); + + register_subalias("8", m_3.m_Q); + register_subalias("9", m_3.m_i[0]); + register_subalias("10", m_3.m_i[1]); + register_subalias("11", m_3.m_i[2]); + + register_subalias("12", m_1.m_Q); + register_subalias("13", m_1.m_i[2]); +} + +NETLIB_UPDATE(7427_dip) +{ +} + +NETLIB_RESET(7427_dip) +{ + m_1.do_reset(); + m_2.do_reset(); + m_3.do_reset(); +} + diff --git a/src/emu/netlist/devices/nld_7427.h b/src/emu/netlist/devices/nld_7427.h index 9863acc9f5d..ae5f7e65a75 100644 --- a/src/emu/netlist/devices/nld_7427.h +++ b/src/emu/netlist/devices/nld_7427.h @@ -42,4 +42,13 @@ NETLIB_SIGNAL(7427, 3, 1, 0); +#define TTL_7427_DIP(_name) \ + NET_REGISTER_DEV(7427_dip, _name) + +NETLIB_DEVICE(7427_dip, + + NETLIB_NAME(7427) m_1; + NETLIB_NAME(7427) m_2; + NETLIB_NAME(7427) m_3; +); #endif /* NLD_7427_H_ */ diff --git a/src/emu/netlist/netlist.mak b/src/emu/netlist/netlist.mak index 7a044539a0a..4b9b2a04732 100644 --- a/src/emu/netlist/netlist.mak +++ b/src/emu/netlist/netlist.mak @@ -34,7 +34,12 @@ NETLISTOBJS+= \ $(NETLISTOBJ)/analog/nld_switches.o \ $(NETLISTOBJ)/analog/nld_twoterm.o \ $(NETLISTOBJ)/devices/nld_7400.o \ + $(NETLISTOBJ)/devices/nld_7402.o \ $(NETLISTOBJ)/devices/nld_7404.o \ + $(NETLISTOBJ)/devices/nld_7410.o \ + $(NETLISTOBJ)/devices/nld_7420.o \ + $(NETLISTOBJ)/devices/nld_7425.o \ + $(NETLISTOBJ)/devices/nld_7427.o \ $(NETLISTOBJ)/devices/nld_7474.o \ $(NETLISTOBJ)/devices/nld_7483.o \ $(NETLISTOBJ)/devices/nld_7486.o \