diff options
Diffstat (limited to 'src/lib/netlist/devices/nld_7448.cpp')
-rw-r--r-- | src/lib/netlist/devices/nld_7448.cpp | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/lib/netlist/devices/nld_7448.cpp b/src/lib/netlist/devices/nld_7448.cpp index cc2e60f23b7..4500229a1c5 100644 --- a/src/lib/netlist/devices/nld_7448.cpp +++ b/src/lib/netlist/devices/nld_7448.cpp @@ -5,8 +5,10 @@ * */ -#include "nlid_truthtable.h" #include "nld_7448.h" +#include "nlid_truthtable.h" + +#include <array> namespace netlist { @@ -133,9 +135,9 @@ namespace netlist #else -#define BITS7(b6,b5,b4,b3,b2,b1,b0) (b6<<6) | (b5<<5) | (b4<<4) | (b3<<3) | (b2<<2) | (b1<<1) | (b0<<0) +#define BITS7(b6,b5,b4,b3,b2,b1,b0) ((b6)<<6) | ((b5)<<5) | ((b4)<<4) | ((b3)<<3) | ((b2)<<2) | ((b1)<<1) | ((b0)<<0) - static constexpr uint8_t tab7448[16] = + static constexpr const std::array<uint8_t, 16> tab7448 = { BITS7( 1, 1, 1, 1, 1, 1, 0 ), /* 00 - not blanked ! */ BITS7( 0, 1, 1, 0, 0, 0, 0 ), /* 01 */ @@ -188,11 +190,13 @@ namespace netlist NETLIB_RESET(7448) { m_state = 0; - m_A.inactivate(); - m_B.inactivate(); - m_C.inactivate(); - m_D.inactivate(); - m_RBIQ.inactivate(); +#if 0 + m_A.set_state(logic_t::STATE_INP_PASSIVE); + m_B.set_state(logic_t::STATE_INP_PASSIVE); + m_C.set_state(logic_t::STATE_INP_PASSIVE); + m_D.set_state(logic_t::STATE_INP_PASSIVE); + m_RBIQ.set_state(logic_t::STATE_INP_PASSIVE); +#endif } NETLIB_FUNC_VOID(7448, update_outputs, (unsigned v)) @@ -211,8 +215,8 @@ namespace netlist #endif - NETLIB_DEVICE_IMPL(7448) - NETLIB_DEVICE_IMPL(7448_dip) + NETLIB_DEVICE_IMPL(7448, "TTL_7448", "+A,+B,+C,+D,+LTQ,+BIQ,+RBIQ") + NETLIB_DEVICE_IMPL(7448_dip, "TTL_7448_DIP", "") } //namespace devices |