mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
netlist: Macro-ized 7493/7497 DIPs
This commit is contained in:
parent
b2d4b6d887
commit
daa62d6c32
@ -84,9 +84,7 @@ namespace devices
|
||||
LIB_ENTRY(7490)
|
||||
LIB_ENTRY(7492)
|
||||
LIB_ENTRY(7493)
|
||||
LIB_ENTRY(7493_dip)
|
||||
LIB_ENTRY(7497)
|
||||
LIB_ENTRY(7497_dip)
|
||||
#if (!NL_USE_TRUTHTABLE_74107)
|
||||
LIB_ENTRY(74107)
|
||||
LIB_ENTRY(74107_dip)
|
||||
|
@ -149,35 +149,7 @@ namespace netlist
|
||||
nld_power_pins m_power_pins;
|
||||
};
|
||||
|
||||
NETLIB_OBJECT(7493_dip)
|
||||
{
|
||||
NETLIB_CONSTRUCTOR(7493_dip)
|
||||
, A(*this, "A")
|
||||
{
|
||||
register_subalias("1", "A.CLKB");
|
||||
register_subalias("2", "A.R1");
|
||||
register_subalias("3", "A.R2");
|
||||
|
||||
// register_subalias("4", ); --> NC
|
||||
register_subalias("5", "A.VCC");
|
||||
// register_subalias("6", ); --> NC
|
||||
// register_subalias("7", ); --> NC
|
||||
|
||||
register_subalias("8", "A.QC");
|
||||
register_subalias("9", "A.QB");
|
||||
register_subalias("10", "A.GND");
|
||||
register_subalias("11", "A.QD");
|
||||
register_subalias("12", "A.QA");
|
||||
// register_subalias("13", ); -. NC
|
||||
register_subalias("14", "A.CLKA");
|
||||
}
|
||||
//NETLIB_RESETI() {}
|
||||
private:
|
||||
NETLIB_SUB(7493) A;
|
||||
};
|
||||
|
||||
NETLIB_DEVICE_IMPL(7493, "TTL_7493", "+CLKA,+CLKB,+R1,+R2,@VCC,@GND")
|
||||
NETLIB_DEVICE_IMPL(7493_dip, "TTL_7493_DIP", "")
|
||||
|
||||
} // namespace devices
|
||||
} // namespace netlist
|
||||
|
@ -59,16 +59,8 @@
|
||||
|
||||
#include "netlist/nl_setup.h"
|
||||
|
||||
#define TTL_7493(name, cCLKA, cCLKB, cR1, cR2) \
|
||||
NET_REGISTER_DEV(TTL_7493, name) \
|
||||
NET_CONNECT(name, GND, GND) \
|
||||
NET_CONNECT(name, VCC, VCC) \
|
||||
NET_CONNECT(name, CLKA, cCLKA) \
|
||||
NET_CONNECT(name, CLKB, cCLKB) \
|
||||
NET_CONNECT(name, R1, cR1) \
|
||||
NET_CONNECT(name, R2, cR2)
|
||||
|
||||
#define TTL_7493_DIP(name) \
|
||||
NET_REGISTER_DEV(TTL_7493_DIP, name)
|
||||
// usage: TTL_7493(name, cCLKA, cCLKB, cR1, cR2)
|
||||
#define TTL_7493(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7493, __VA_ARGS__)
|
||||
|
||||
#endif /* NLD_7493_H_ */
|
||||
|
@ -102,8 +102,6 @@ namespace netlist
|
||||
clk_strb();
|
||||
}
|
||||
|
||||
friend class NETLIB_NAME(7497_dip);
|
||||
|
||||
object_array_t<logic_input_t, 6> m_B;
|
||||
logic_input_t m_CLK;
|
||||
logic_input_t m_STRBQ;
|
||||
@ -141,37 +139,7 @@ namespace netlist
|
||||
}
|
||||
};
|
||||
|
||||
NETLIB_OBJECT(7497_dip)
|
||||
{
|
||||
NETLIB_CONSTRUCTOR(7497_dip)
|
||||
, A(*this, "A")
|
||||
{
|
||||
register_subalias("1", A.m_B[4]); // B0
|
||||
register_subalias("2", A.m_B[1]); // B4
|
||||
register_subalias("3", A.m_B[0]); // B5
|
||||
register_subalias("4", A.m_B[5]); // B0
|
||||
register_subalias("5", A.m_ZQ);
|
||||
register_subalias("6", A.m_Y);
|
||||
register_subalias("7", A.m_ENOUTQ);
|
||||
register_subalias("8", "A.GND");
|
||||
|
||||
register_subalias("9", A.m_CLK);
|
||||
register_subalias("10", A.m_STRBQ);
|
||||
register_subalias("11", A.m_UNITYQ);
|
||||
register_subalias("12", A.m_ENQ);
|
||||
register_subalias("13", A.m_CLR);
|
||||
register_subalias("14", A.m_B[3]); // B2
|
||||
register_subalias("15", A.m_B[2]); // B3
|
||||
register_subalias("16", "A.VCC");
|
||||
}
|
||||
//NETLIB_RESETI() {}
|
||||
private:
|
||||
NETLIB_SUB(7497) A;
|
||||
};
|
||||
|
||||
|
||||
NETLIB_DEVICE_IMPL(7497, "TTL_7497", "+CLK,+STRBQ,+ENQ,+UNITYQ,+CLR,+B0,+B1,+B2,+B3,+B4,+B5,@VCC,@GND")
|
||||
NETLIB_DEVICE_IMPL(7497_dip, "TTL_7497_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
} // namespace netlist
|
||||
|
@ -37,23 +37,8 @@
|
||||
|
||||
#include "netlist/nl_setup.h"
|
||||
|
||||
#define TTL_7497(name, cCLK, cSTRB, cEN, cUNITY, cCLR, cB0, cB1, cB2, cB3, cB4, cB5) \
|
||||
NET_REGISTER_DEV(TTL_7497, name) \
|
||||
NET_CONNECT(name, GND, GND) \
|
||||
NET_CONNECT(name, VCC, VCC) \
|
||||
NET_CONNECT(name, CLK, cCLK) \
|
||||
NET_CONNECT(name, STRBQ, cSTRB) \
|
||||
NET_CONNECT(name, ENQ, cEN) \
|
||||
NET_CONNECT(name, UNITYQ,cUNITY) \
|
||||
NET_CONNECT(name, CLR, cCLR) \
|
||||
NET_CONNECT(name, B0, cB0) \
|
||||
NET_CONNECT(name, B1, cB1) \
|
||||
NET_CONNECT(name, B2, cB2) \
|
||||
NET_CONNECT(name, B3, cB3) \
|
||||
NET_CONNECT(name, B4, cB4) \
|
||||
NET_CONNECT(name, B5, cB5)
|
||||
|
||||
#define TTL_7497_DIP(name) \
|
||||
NET_REGISTER_DEV(TTL_7497_DIP, name)
|
||||
// usage: TTL_7497(name, cCLK, cSTRB, cEN, cUNITY, cCLR, cB0, cB1, cB2, cB3, cB4, cB5)
|
||||
#define TTL_7497(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7497, __VA_ARGS__)
|
||||
|
||||
#endif /* NLD_7497_H_ */
|
||||
|
@ -328,10 +328,6 @@
|
||||
#define TTL_7493(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7493, __VA_ARGS__)
|
||||
|
||||
// usage : TTL_7493_DIP(name)
|
||||
#define TTL_7493_DIP(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7493_DIP, __VA_ARGS__)
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// Source: src/lib/netlist/devices/nld_7497.cpp
|
||||
// ---------------------------------------------------------------------
|
||||
@ -340,10 +336,6 @@
|
||||
#define TTL_7497(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7497, __VA_ARGS__)
|
||||
|
||||
// usage : TTL_7497_DIP(name)
|
||||
#define TTL_7497_DIP(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7497_DIP, __VA_ARGS__)
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// Source: src/lib/netlist/devices/nld_74107.cpp
|
||||
// ---------------------------------------------------------------------
|
||||
@ -1023,6 +1015,11 @@
|
||||
#define TTL_7486_GATE(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7486_GATE, __VA_ARGS__)
|
||||
|
||||
// usage : TTL_7486_XOR(name, pA, pB)
|
||||
// auto connect: VCC, GND
|
||||
#define TTL_7486_XOR(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7486_XOR, __VA_ARGS__)
|
||||
|
||||
// usage : TTL_7490_DIP(name)
|
||||
#define TTL_7490_DIP(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7490_DIP, __VA_ARGS__)
|
||||
@ -1031,10 +1028,13 @@
|
||||
#define TTL_7492_DIP(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7492_DIP, __VA_ARGS__)
|
||||
|
||||
// usage : TTL_7486_XOR(name, pA, pB)
|
||||
// auto connect: VCC, GND
|
||||
#define TTL_7486_XOR(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7486_XOR, __VA_ARGS__)
|
||||
// usage : TTL_7493_DIP(name)
|
||||
#define TTL_7493_DIP(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7493_DIP, __VA_ARGS__)
|
||||
|
||||
// usage : TTL_7497_DIP(name)
|
||||
#define TTL_7497_DIP(...) \
|
||||
NET_REGISTER_DEVEXT(TTL_7497_DIP, __VA_ARGS__)
|
||||
|
||||
// usage : TTL_74155A_GATE(name)
|
||||
#define TTL_74155A_GATE(...) \
|
||||
|
@ -1032,6 +1032,67 @@ NETLIST_END()
|
||||
)
|
||||
NETLIST_END()
|
||||
|
||||
/*
|
||||
* DM7493: Binary Counters
|
||||
*
|
||||
* +--------------+
|
||||
* CLKB |1 ++ 14| CLKA
|
||||
* R01 |2 13| NC
|
||||
* R02 |3 12| QA
|
||||
* NC |4 7493 11| QD
|
||||
* VCC |5 10| GND
|
||||
* NC |6 9| QB
|
||||
* NC |7 8| QC
|
||||
* +--------------+
|
||||
*/
|
||||
|
||||
static NETLIST_START(TTL_7493_DIP)
|
||||
TTL_7493(A)
|
||||
NC_PIN(NC)
|
||||
|
||||
DIPPINS( /* +--------------+ */
|
||||
A.CLKB, /* CLKB |1 ++ 14| CLKA */ A.CLKA,
|
||||
A.R1, /* R01 |2 13| NC */ NC.I,
|
||||
A.R2, /* R02 |3 12| QA */ A.QA,
|
||||
NC.I, /* NC |4 7493 11| QD */ A.QD,
|
||||
A.VCC, /* VCC |5 10| GND */ A.GND,
|
||||
NC.I, /* NC |6 9| QB */ A.QB,
|
||||
NC.I, /* NC |7 8| QC */ A.QC
|
||||
/* +--------------+ */
|
||||
)
|
||||
NETLIST_END()
|
||||
|
||||
/*
|
||||
* SN7497: Synchronous 6-Bit Binary Rate Multiplier
|
||||
*
|
||||
* +--------------+
|
||||
* B1 |1 16| VCC
|
||||
* B4 |2 15| B3
|
||||
* B5 |3 14| B2
|
||||
* B0 |4 7497 13| CLR
|
||||
* Z |5 12| UNITY/CAS
|
||||
* Y |6 11| ENin (EN)
|
||||
* ENout |7 10| STRB
|
||||
* GND |8 9| CLK
|
||||
* +--------------+
|
||||
*/
|
||||
|
||||
static NETLIST_START(TTL_7497_DIP)
|
||||
TTL_7497(A)
|
||||
|
||||
DIPPINS( /* +--------------+ */
|
||||
A.B1, /* B1 |1 16| VCC */ A.VCC,
|
||||
A.B4, /* B4 |2 15| B3 */ A.B3,
|
||||
A.B5, /* B5 |3 14| B2 */ A.B2,
|
||||
A.B0, /* B0 |4 7497 13| CLR */ A.CLR,
|
||||
A.ZQ, /* Z |5 12| UNITY/CAS */ A.UNITYQ,
|
||||
A.Y, /* Y |6 11| ENin (EN) */ A.ENQ,
|
||||
A.ENOUTQ, /* ENout |7 10| STRB */ A.STRBQ,
|
||||
A.GND, /* GND |8 9| CLK */ A.CLK
|
||||
/* +--------------+ */
|
||||
)
|
||||
NETLIST_END()
|
||||
|
||||
#if (NL_USE_TRUTHTABLE_74107)
|
||||
#ifndef __PLIB_PREPROCESSOR__
|
||||
#define TTL_74107_TT(name) \
|
||||
@ -2348,6 +2409,8 @@ NETLIST_START(TTL74XX_lib)
|
||||
LOCAL_LIB_ENTRY(TTL_7486_DIP)
|
||||
LOCAL_LIB_ENTRY(TTL_7490_DIP)
|
||||
LOCAL_LIB_ENTRY(TTL_7492_DIP)
|
||||
LOCAL_LIB_ENTRY(TTL_7493_DIP)
|
||||
LOCAL_LIB_ENTRY(TTL_7497_DIP)
|
||||
LOCAL_LIB_ENTRY(TTL_74121_DIP)
|
||||
LOCAL_LIB_ENTRY(TTL_74123_DIP)
|
||||
LOCAL_LIB_ENTRY(TTL_9602_DIP)
|
||||
|
@ -309,6 +309,12 @@
|
||||
#define TTL_7492_DIP(name) \
|
||||
NET_REGISTER_DEV(TTL_7492_DIP, name)
|
||||
|
||||
#define TTL_7493_DIP(name) \
|
||||
NET_REGISTER_DEV(TTL_7493_DIP, name)
|
||||
|
||||
#define TTL_7497_DIP(name) \
|
||||
NET_REGISTER_DEV(TTL_7497_DIP, name)
|
||||
|
||||
#if (NL_USE_TRUTHTABLE_74107)
|
||||
#define TTL_74107(name, cCLK, cJ, cK, cCLRQ) \
|
||||
NET_REGISTER_DEV(TTL_74107, name) \
|
||||
|
Loading…
Reference in New Issue
Block a user