mirror of
https://github.com/holub/mame
synced 2025-07-01 00:09:18 +03:00
More cleanups. (nw)
This commit is contained in:
parent
9620634a72
commit
2c0b627f13
@ -97,6 +97,34 @@ NETLIB_UPDATE(twoterm)
|
|||||||
m_N.schedule_solve();
|
m_N.schedule_solve();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------------------
|
||||||
|
// nld_R_base
|
||||||
|
// ----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
NETLIB_RESET(R_base)
|
||||||
|
{
|
||||||
|
NETLIB_NAME(twoterm)::reset();
|
||||||
|
set_R(1.0 / netlist().gmin());
|
||||||
|
}
|
||||||
|
|
||||||
|
NETLIB_UPDATE(R_base)
|
||||||
|
{
|
||||||
|
NETLIB_NAME(twoterm)::update();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------------------
|
||||||
|
// nld_R
|
||||||
|
// ----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
NETLIB_UPDATE_PARAM(R)
|
||||||
|
{
|
||||||
|
update_dev();
|
||||||
|
if (m_R() > 1e-9)
|
||||||
|
set_R(m_R());
|
||||||
|
else
|
||||||
|
set_R(1e-9);
|
||||||
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------------------
|
||||||
// nld_POT
|
// nld_POT
|
||||||
// ----------------------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------------------
|
||||||
|
@ -173,17 +173,8 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
NETLIB_RESETI()
|
NETLIB_RESETI();
|
||||||
{
|
NETLIB_UPDATEI();
|
||||||
NETLIB_NAME(twoterm)::reset();
|
|
||||||
set_R(1.0 / netlist().gmin());
|
|
||||||
}
|
|
||||||
|
|
||||||
NETLIB_UPDATEI()
|
|
||||||
{
|
|
||||||
NETLIB_NAME(twoterm)::update();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -200,15 +191,7 @@ protected:
|
|||||||
|
|
||||||
//NETLIB_RESETI() { }
|
//NETLIB_RESETI() { }
|
||||||
//NETLIB_UPDATEI() { }
|
//NETLIB_UPDATEI() { }
|
||||||
NETLIB_UPDATE_PARAMI()
|
NETLIB_UPDATE_PARAMI();
|
||||||
{
|
|
||||||
update_dev();
|
|
||||||
if (m_R() > 1e-9)
|
|
||||||
set_R(m_R());
|
|
||||||
else
|
|
||||||
set_R(1e-9);
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
@ -120,6 +120,7 @@ NLOBJS := \
|
|||||||
$(NLOBJ)/macro/nlm_other.o \
|
$(NLOBJ)/macro/nlm_other.o \
|
||||||
$(NLOBJ)/macro/nlm_ttl74xx.o \
|
$(NLOBJ)/macro/nlm_ttl74xx.o \
|
||||||
$(NLOBJ)/solver/nld_solver.o \
|
$(NLOBJ)/solver/nld_solver.o \
|
||||||
|
$(NLOBJ)/solver/nld_matrix_solver.o \
|
||||||
$(NLOBJ)/tools/nl_convert.o \
|
$(NLOBJ)/tools/nl_convert.o \
|
||||||
|
|
||||||
ALL_OBJS = $(OBJS) $(NLOBJ)/prg/nltool.o $(NLOBJ)/prg/nlwav.o
|
ALL_OBJS = $(OBJS) $(NLOBJ)/prg/nltool.o $(NLOBJ)/prg/nlwav.o
|
||||||
@ -167,9 +168,10 @@ maketree: $(sort $(OBJDIRS))
|
|||||||
.PHONY: clang mingw doc
|
.PHONY: clang mingw doc
|
||||||
|
|
||||||
clang:
|
clang:
|
||||||
$(MAKE) CC=clang++ LD=clang++ CEXTRAFLAGS="-Weverything -Werror -Wno-padded -Wno-missing-variable-declarations -Wconversion -Wno-c++98-compat -Wno-float-equal -Wno-cast-align -Wno-global-constructors -Wno-c++98-compat-pedantic -Wno-exit-time-destructors -Wno-format-nonliteral -Wno-weak-template-vtables"
|
$(MAKE) CC=clang++ LD=clang++ CEXTRAFLAGS="-Weverything -Werror -Wno-padded -Wno-weak-vtables -Wno-missing-variable-declarations -Wconversion -Wno-c++98-compat -Wno-float-equal -Wno-global-constructors -Wno-c++98-compat-pedantic -Wno-format-nonliteral -Wno-weak-template-vtables -Wno-exit-time-destructors"
|
||||||
|
|
||||||
#-Wno-weak-vtables
|
#
|
||||||
|
# Mostly done: -Wno-weak-vtables -Wno-cast-align
|
||||||
# FIXME: -Wno-weak-vtables -Wno-missing-variable-declarations -Wno-conversion -Wno-exit-time-destructors
|
# FIXME: -Wno-weak-vtables -Wno-missing-variable-declarations -Wno-conversion -Wno-exit-time-destructors
|
||||||
#
|
#
|
||||||
|
|
||||||
|
@ -259,6 +259,17 @@ void truthtable_desc_t::setup(const plib::pstring_vector_t &truthtable, uint_lea
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
netlist_base_factory_truthtable_t::netlist_base_factory_truthtable_t(const pstring &name, const pstring &classname,
|
||||||
|
const pstring &def_param)
|
||||||
|
: factory::element_t(name, classname, def_param), m_family(family_TTL())
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
netlist_base_factory_truthtable_t::~netlist_base_factory_truthtable_t()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#define ENTRYY(n, m) case (n * 100 + m): \
|
#define ENTRYY(n, m) case (n * 100 + m): \
|
||||||
{ using xtype = netlist_factory_truthtable_t<n, m>; \
|
{ using xtype = netlist_factory_truthtable_t<n, m>; \
|
||||||
ret = new xtype(desc.name, desc.classname, desc.def_param); } break
|
ret = new xtype(desc.name, desc.classname, desc.def_param); } break
|
||||||
|
@ -371,13 +371,9 @@ namespace netlist
|
|||||||
P_PREVENT_COPYING(netlist_base_factory_truthtable_t)
|
P_PREVENT_COPYING(netlist_base_factory_truthtable_t)
|
||||||
public:
|
public:
|
||||||
netlist_base_factory_truthtable_t(const pstring &name, const pstring &classname,
|
netlist_base_factory_truthtable_t(const pstring &name, const pstring &classname,
|
||||||
const pstring &def_param)
|
const pstring &def_param);
|
||||||
: factory::element_t(name, classname, def_param), m_family(family_TTL())
|
|
||||||
{}
|
|
||||||
|
|
||||||
virtual ~netlist_base_factory_truthtable_t()
|
virtual ~netlist_base_factory_truthtable_t();
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
plib::pstring_vector_t m_desc;
|
plib::pstring_vector_t m_desc;
|
||||||
const logic_family_desc_t *m_family;
|
const logic_family_desc_t *m_family;
|
||||||
|
@ -81,15 +81,18 @@ public:
|
|||||||
m_R_low = 1.0;
|
m_R_low = 1.0;
|
||||||
m_R_high = 130.0;
|
m_R_high = 130.0;
|
||||||
}
|
}
|
||||||
virtual plib::owned_ptr<devices::nld_base_d_to_a_proxy> create_d_a_proxy(netlist_t &anetlist, const pstring &name, logic_output_t *proxied) const override
|
virtual plib::owned_ptr<devices::nld_base_d_to_a_proxy> create_d_a_proxy(netlist_t &anetlist, const pstring &name, logic_output_t *proxied) const override;
|
||||||
|
virtual plib::owned_ptr<devices::nld_base_a_to_d_proxy> create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const override;
|
||||||
|
};
|
||||||
|
|
||||||
|
plib::owned_ptr<devices::nld_base_d_to_a_proxy> logic_family_ttl_t::create_d_a_proxy(netlist_t &anetlist, const pstring &name, logic_output_t *proxied) const
|
||||||
{
|
{
|
||||||
return plib::owned_ptr<devices::nld_base_d_to_a_proxy>::Create<devices::nld_d_to_a_proxy>(anetlist, name, proxied);
|
return plib::owned_ptr<devices::nld_base_d_to_a_proxy>::Create<devices::nld_d_to_a_proxy>(anetlist, name, proxied);
|
||||||
}
|
}
|
||||||
virtual plib::owned_ptr<devices::nld_base_a_to_d_proxy> create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const override
|
plib::owned_ptr<devices::nld_base_a_to_d_proxy> logic_family_ttl_t::create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const
|
||||||
{
|
{
|
||||||
return plib::owned_ptr<devices::nld_base_a_to_d_proxy>::Create<devices::nld_a_to_d_proxy>(anetlist, name, proxied);
|
return plib::owned_ptr<devices::nld_base_a_to_d_proxy>::Create<devices::nld_a_to_d_proxy>(anetlist, name, proxied);
|
||||||
}
|
}
|
||||||
};
|
|
||||||
|
|
||||||
class logic_family_cd4xxx_t : public logic_family_desc_t
|
class logic_family_cd4xxx_t : public logic_family_desc_t
|
||||||
{
|
{
|
||||||
@ -105,15 +108,18 @@ public:
|
|||||||
m_R_low = 10.0;
|
m_R_low = 10.0;
|
||||||
m_R_high = 10.0;
|
m_R_high = 10.0;
|
||||||
}
|
}
|
||||||
virtual plib::owned_ptr<devices::nld_base_d_to_a_proxy> create_d_a_proxy(netlist_t &anetlist, const pstring &name, logic_output_t *proxied) const override
|
virtual plib::owned_ptr<devices::nld_base_d_to_a_proxy> create_d_a_proxy(netlist_t &anetlist, const pstring &name, logic_output_t *proxied) const override;
|
||||||
|
virtual plib::owned_ptr<devices::nld_base_a_to_d_proxy> create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const override;
|
||||||
|
};
|
||||||
|
|
||||||
|
plib::owned_ptr<devices::nld_base_d_to_a_proxy> logic_family_cd4xxx_t::create_d_a_proxy(netlist_t &anetlist, const pstring &name, logic_output_t *proxied) const
|
||||||
{
|
{
|
||||||
return plib::owned_ptr<devices::nld_base_d_to_a_proxy>::Create<devices::nld_d_to_a_proxy>(anetlist, name, proxied);
|
return plib::owned_ptr<devices::nld_base_d_to_a_proxy>::Create<devices::nld_d_to_a_proxy>(anetlist, name, proxied);
|
||||||
}
|
}
|
||||||
virtual plib::owned_ptr<devices::nld_base_a_to_d_proxy> create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const override
|
plib::owned_ptr<devices::nld_base_a_to_d_proxy> logic_family_cd4xxx_t::create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const
|
||||||
{
|
{
|
||||||
return plib::owned_ptr<devices::nld_base_a_to_d_proxy>::Create<devices::nld_a_to_d_proxy>(anetlist, name, proxied);
|
return plib::owned_ptr<devices::nld_base_a_to_d_proxy>::Create<devices::nld_a_to_d_proxy>(anetlist, name, proxied);
|
||||||
}
|
}
|
||||||
};
|
|
||||||
|
|
||||||
const logic_family_desc_t *family_TTL()
|
const logic_family_desc_t *family_TTL()
|
||||||
{
|
{
|
||||||
@ -850,6 +856,9 @@ terminal_t::terminal_t(core_device_t &dev, const pstring &aname)
|
|||||||
netlist().setup().register_term(*this);
|
netlist().setup().register_term(*this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
terminal_t::~terminal_t()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
void terminal_t::schedule_solve()
|
void terminal_t::schedule_solve()
|
||||||
{
|
{
|
||||||
@ -906,6 +915,10 @@ analog_input_t::analog_input_t(core_device_t &dev, const pstring &aname)
|
|||||||
netlist().setup().register_term(*this);
|
netlist().setup().register_term(*this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
analog_input_t::~analog_input_t()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------------------
|
||||||
// analog_output_t
|
// analog_output_t
|
||||||
// ----------------------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------------------
|
||||||
@ -979,6 +992,14 @@ param_str_t::param_str_t(device_t &device, const pstring name, const pstring val
|
|||||||
m_param = device.setup().get_initial_param_val(this->name(),val);
|
m_param = device.setup().get_initial_param_val(this->name(),val);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
param_str_t::~param_str_t()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void param_str_t::changed()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
param_double_t::param_double_t(device_t &device, const pstring name, const double val)
|
param_double_t::param_double_t(device_t &device, const pstring name, const double val)
|
||||||
: param_t(param_t::DOUBLE, device, name)
|
: param_t(param_t::DOUBLE, device, name)
|
||||||
{
|
{
|
||||||
@ -986,6 +1007,10 @@ param_double_t::param_double_t(device_t &device, const pstring name, const doubl
|
|||||||
netlist().save(*this, m_param, "m_param");
|
netlist().save(*this, m_param, "m_param");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
param_double_t::~param_double_t()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
param_int_t::param_int_t(device_t &device, const pstring name, const int val)
|
param_int_t::param_int_t(device_t &device, const pstring name, const int val)
|
||||||
: param_t(param_t::INTEGER, device, name)
|
: param_t(param_t::INTEGER, device, name)
|
||||||
{
|
{
|
||||||
@ -993,6 +1018,10 @@ param_int_t::param_int_t(device_t &device, const pstring name, const int val)
|
|||||||
netlist().save(*this, m_param, "m_param");
|
netlist().save(*this, m_param, "m_param");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
param_int_t::~param_int_t()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
param_logic_t::param_logic_t(device_t &device, const pstring name, const bool val)
|
param_logic_t::param_logic_t(device_t &device, const pstring name, const bool val)
|
||||||
: param_t(param_t::LOGIC, device, name)
|
: param_t(param_t::LOGIC, device, name)
|
||||||
{
|
{
|
||||||
@ -1000,6 +1029,10 @@ param_logic_t::param_logic_t(device_t &device, const pstring name, const bool va
|
|||||||
netlist().save(*this, m_param, "m_param");
|
netlist().save(*this, m_param, "m_param");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
param_logic_t::~param_logic_t()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
param_ptr_t::param_ptr_t(device_t &device, const pstring name, uint8_t * val)
|
param_ptr_t::param_ptr_t(device_t &device, const pstring name, uint8_t * val)
|
||||||
: param_t(param_t::POINTER, device, name)
|
: param_t(param_t::POINTER, device, name)
|
||||||
{
|
{
|
||||||
@ -1007,7 +1040,7 @@ param_ptr_t::param_ptr_t(device_t &device, const pstring name, uint8_t * val)
|
|||||||
//netlist().save(*this, m_param, "m_param");
|
//netlist().save(*this, m_param, "m_param");
|
||||||
}
|
}
|
||||||
|
|
||||||
void param_str_t::changed()
|
param_ptr_t::~param_ptr_t()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -548,6 +548,7 @@ namespace netlist
|
|||||||
public:
|
public:
|
||||||
|
|
||||||
terminal_t(core_device_t &dev, const pstring &aname);
|
terminal_t(core_device_t &dev, const pstring &aname);
|
||||||
|
virtual ~terminal_t();
|
||||||
|
|
||||||
nl_double operator ()() const;
|
nl_double operator ()() const;
|
||||||
|
|
||||||
@ -671,6 +672,9 @@ namespace netlist
|
|||||||
const pstring &aname /*!< name of terminal */
|
const pstring &aname /*!< name of terminal */
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/*! Destructor */
|
||||||
|
virtual ~analog_input_t();
|
||||||
|
|
||||||
/*! returns voltage at terminal.
|
/*! returns voltage at terminal.
|
||||||
* \returns voltage at terminal.
|
* \returns voltage at terminal.
|
||||||
*/
|
*/
|
||||||
@ -891,6 +895,7 @@ namespace netlist
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
param_ptr_t(device_t &device, const pstring name, std::uint8_t* val);
|
param_ptr_t(device_t &device, const pstring name, std::uint8_t* val);
|
||||||
|
virtual ~param_ptr_t();
|
||||||
std::uint8_t * operator()() const { return m_param; }
|
std::uint8_t * operator()() const { return m_param; }
|
||||||
void setTo(std::uint8_t *param) { set(m_param, param); }
|
void setTo(std::uint8_t *param) { set(m_param, param); }
|
||||||
private:
|
private:
|
||||||
@ -901,6 +906,7 @@ namespace netlist
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
param_logic_t(device_t &device, const pstring name, const bool val);
|
param_logic_t(device_t &device, const pstring name, const bool val);
|
||||||
|
virtual ~param_logic_t();
|
||||||
bool operator()() const { return m_param; }
|
bool operator()() const { return m_param; }
|
||||||
void setTo(const bool ¶m) { set(m_param, param); }
|
void setTo(const bool ¶m) { set(m_param, param); }
|
||||||
private:
|
private:
|
||||||
@ -911,6 +917,7 @@ namespace netlist
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
param_int_t(device_t &device, const pstring name, const int val);
|
param_int_t(device_t &device, const pstring name, const int val);
|
||||||
|
virtual ~param_int_t();
|
||||||
int operator()() const { return m_param; }
|
int operator()() const { return m_param; }
|
||||||
void setTo(const int ¶m) { set(m_param, param); }
|
void setTo(const int ¶m) { set(m_param, param); }
|
||||||
private:
|
private:
|
||||||
@ -921,6 +928,7 @@ namespace netlist
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
param_double_t(device_t &device, const pstring name, const double val);
|
param_double_t(device_t &device, const pstring name, const double val);
|
||||||
|
virtual ~param_double_t();
|
||||||
double operator()() const { return m_param; }
|
double operator()() const { return m_param; }
|
||||||
void setTo(const double ¶m) { set(m_param, param); }
|
void setTo(const double ¶m) { set(m_param, param); }
|
||||||
private:
|
private:
|
||||||
@ -931,6 +939,7 @@ namespace netlist
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
param_str_t(device_t &device, const pstring name, const pstring val);
|
param_str_t(device_t &device, const pstring name, const pstring val);
|
||||||
|
virtual ~param_str_t();
|
||||||
const pstring operator()() const { return Value(); }
|
const pstring operator()() const { return Value(); }
|
||||||
void setTo(const pstring ¶m)
|
void setTo(const pstring ¶m)
|
||||||
{
|
{
|
||||||
|
@ -864,15 +864,19 @@ class logic_family_std_proxy_t : public logic_family_desc_t
|
|||||||
public:
|
public:
|
||||||
logic_family_std_proxy_t() { }
|
logic_family_std_proxy_t() { }
|
||||||
virtual plib::owned_ptr<devices::nld_base_d_to_a_proxy> create_d_a_proxy(netlist_t &anetlist,
|
virtual plib::owned_ptr<devices::nld_base_d_to_a_proxy> create_d_a_proxy(netlist_t &anetlist,
|
||||||
const pstring &name, logic_output_t *proxied) const override
|
const pstring &name, logic_output_t *proxied) const override;
|
||||||
|
virtual plib::owned_ptr<devices::nld_base_a_to_d_proxy> create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const override;
|
||||||
|
};
|
||||||
|
|
||||||
|
plib::owned_ptr<devices::nld_base_d_to_a_proxy> logic_family_std_proxy_t::create_d_a_proxy(netlist_t &anetlist,
|
||||||
|
const pstring &name, logic_output_t *proxied) const
|
||||||
{
|
{
|
||||||
return plib::owned_ptr<devices::nld_base_d_to_a_proxy>::Create<devices::nld_d_to_a_proxy>(anetlist, name, proxied);
|
return plib::owned_ptr<devices::nld_base_d_to_a_proxy>::Create<devices::nld_d_to_a_proxy>(anetlist, name, proxied);
|
||||||
}
|
}
|
||||||
virtual plib::owned_ptr<devices::nld_base_a_to_d_proxy> create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const override
|
plib::owned_ptr<devices::nld_base_a_to_d_proxy> logic_family_std_proxy_t::create_a_d_proxy(netlist_t &anetlist, const pstring &name, logic_input_t *proxied) const
|
||||||
{
|
{
|
||||||
return plib::owned_ptr<devices::nld_base_a_to_d_proxy>::Create<devices::nld_a_to_d_proxy>(anetlist, name, proxied);
|
return plib::owned_ptr<devices::nld_base_a_to_d_proxy>::Create<devices::nld_a_to_d_proxy>(anetlist, name, proxied);
|
||||||
}
|
}
|
||||||
};
|
|
||||||
|
|
||||||
const logic_family_desc_t *setup_t::family_from_model(const pstring &model)
|
const logic_family_desc_t *setup_t::family_from_model(const pstring &model)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user