diff options
author | 2020-09-06 23:24:21 +0200 | |
---|---|---|
committer | 2020-09-12 23:20:16 +0200 | |
commit | ca31c844cde7f54a285e3b9da358989e42258f5b (patch) | |
tree | f9e4a963b999e1352a4611a43a7c10c2d80957e7 /src | |
parent | cda35c94020dbcb8dad8309aba11374c356c501e (diff) |
netlist: move to generated header and link support files files.
* Removed device and macro header files.
* All of those can be generated automatically so going forward there is
no need for these any longer.
* Introduced the modules concept. Modules are netlists for which
automatic lib entries are generated.
* Going forward you just store them in macro/modules and they will be
automatically registered as device elements.
* You need to do a "make generated" is src/lib/netlist/build
* Some_device.cpp still needs to be added to netlist.lua
* Added documentation on how to add devices to netlist.
* Please refer to adding_devices.md for more information.
Diffstat (limited to 'src')
137 files changed, 273 insertions, 2278 deletions
diff --git a/src/lib/netlist/adding_devices.md b/src/lib/netlist/adding_devices.md new file mode 100644 index 00000000000..808ce9a2568 --- /dev/null +++ b/src/lib/netlist/adding_devices.md @@ -0,0 +1,82 @@ +# Adding devices to netlist + +There are basically two kind of devices you can add to netlist: + +- coded devices. These can be found in the devices and analog folder. Typically +these are logic or elementary (i.e. resistor, capacitor) devices. +- netlist language devices. These are found in the macro folder structure. +Typically these are dip layouts or devices consisting of elementary devices. A good +example are operational amplifier models or VCOs. + +In prior netlist releases (<=0.13.0) it was cumbersome to add devices. You had to make +sure to add references and code in a number of different locations. + +All necessary header files are now created automatically. + +## Stand alone compilation + +### Coded devices + +Just add your device code (e.g. nld_device.cpp) into the devices folder. + +Switch to the `build` directory + +`cd build` + +and type + +`make generated` + +to create all the infrastructure code. + +### Macro devices + +Place the device code (e.g. nlmod_device.cpp) into macro/modules. + +Switch to the `build` directory + +`cd build` + +and type + +`make generated` + +to create all the infrastructure code. + +## Visual Studio build + +You need to add the files manually to the Visual Studio solution. + +## MAME integration + +In addition to the the steps above you have to add your code additions to the +`scripts/src/netlist.lua` file. + +Make sure to + +```sh +cd src/lib/netlist/build +make generated +``` + +to (re)create the necessary files in the `generated` directory. + +## Background + +### What does `make generated` do? + +`make generated` calls three python scripts: + +- `create_devinc.py` +- `create_lib_entries.py` +- `create_modules.py` + +which create the following files in the `generated` directory: + +- `nld_devinc.h` +- `lib_entries.hxx` +- `nlm_modules_lib.cpp` + +The information contained in these files in the past had to be included in various places +and files previously. Since the information can be extracted programmatically the +manual process now was replaced. diff --git a/src/lib/netlist/analog/nld_bjt.h b/src/lib/netlist/analog/nld_bjt.h deleted file mode 100644 index 2dd12ea82d8..00000000000 --- a/src/lib/netlist/analog/nld_bjt.h +++ /dev/null @@ -1,25 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_BJT_H_ -#define NLD_BJT_H_ - -/// -/// \file nld_bjt.h -/// - -#include "../nl_setup.h" - -// ----------------------------------------------------------------------------- -// Macros -// ----------------------------------------------------------------------------- - -#define QBJT_SW(name, model) \ - NET_REGISTER_DEV(QBJT_SW, name) \ - NETDEV_PARAMI(name, MODEL, model) - -#define QBJT_EB(name, model) \ - NET_REGISTER_DEV(QBJT_EB, name) \ - NETDEV_PARAMI(name, MODEL, model) - -#endif // NLD_BJT_H_ diff --git a/src/lib/netlist/analog/nld_fourterm.h b/src/lib/netlist/analog/nld_fourterm.h deleted file mode 100644 index 12fb0035d29..00000000000 --- a/src/lib/netlist/analog/nld_fourterm.h +++ /dev/null @@ -1,32 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_FOURTERM_H_ -#define NLD_FOURTERM_H_ - -/// -/// \file nld_fourterm.h -/// - -#include "../nl_setup.h" - -// ---------------------------------------------------------------------------------------- -// Macros -// ---------------------------------------------------------------------------------------- - -#define VCCS(name, G) \ - NET_REGISTER_DEVEXT(VCCS, name, G) - -#define CCCS(name, G) \ - NET_REGISTER_DEVEXT(CCCS, name, G) - -#define VCVS(name, G) \ - NET_REGISTER_DEVEXT(VCVS, name, G) - -#define CCVS(name, G) \ - NET_REGISTER_DEVEXT(CCVS, name, G) - -#define LVCCS(name) \ - NET_REGISTER_DEV(LVCCS, name) - -#endif // NLD_FOURTERM_H_ diff --git a/src/lib/netlist/analog/nld_mosfet.h b/src/lib/netlist/analog/nld_mosfet.h deleted file mode 100644 index 38e7a91c339..00000000000 --- a/src/lib/netlist/analog/nld_mosfet.h +++ /dev/null @@ -1,21 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_MOSFET_H_ -#define NLD_MOSFET_H_ - -#include "../nl_setup.h" - -/// -/// \file nld_mosfet.h -/// - -// ----------------------------------------------------------------------------- -// Macros -// ----------------------------------------------------------------------------- - -#define MOSFET(name, model) \ - NET_REGISTER_DEV(MOSFET, name) \ - NETDEV_PARAMI(name, MODEL, model) - -#endif // NLD_MOSFET_H_ diff --git a/src/lib/netlist/analog/nld_opamps.cpp b/src/lib/netlist/analog/nld_opamps.cpp index b3d9b868a48..433f6d46297 100644 --- a/src/lib/netlist/analog/nld_opamps.cpp +++ b/src/lib/netlist/analog/nld_opamps.cpp @@ -1,7 +1,6 @@ // license:GPL-2.0+ // copyright-holders:Couriersud -#include "nld_opamps.h" #include "nl_base.h" #include "nl_errstr.h" #include "nlid_fourterm.h" diff --git a/src/lib/netlist/analog/nld_opamps.h b/src/lib/netlist/analog/nld_opamps.h deleted file mode 100644 index dcef1f84f03..00000000000 --- a/src/lib/netlist/analog/nld_opamps.h +++ /dev/null @@ -1,22 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_OPAMPS_H_ -#define NLD_OPAMPS_H_ - -/// -/// \file nld_opamps.h -/// - -#include "../nl_setup.h" - -// ---------------------------------------------------------------------------------------- -// Macros -// ---------------------------------------------------------------------------------------- - -#define OPAMP(name, model) \ - NET_REGISTER_DEV(OPAMP, name) \ - NETDEV_PARAMI(name, MODEL, model) - - -#endif // NLD_OPAMPS_H_ diff --git a/src/lib/netlist/analog/nld_switches.h b/src/lib/netlist/analog/nld_switches.h deleted file mode 100644 index cab638402f1..00000000000 --- a/src/lib/netlist/analog/nld_switches.h +++ /dev/null @@ -1,23 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_SWITCHES_H_ -#define NLD_SWITCHES_H_ - -/// -/// \file nld_switches.h -/// - -#include "../nl_setup.h" - -// ---------------------------------------------------------------------------------------- -// Macros -// ---------------------------------------------------------------------------------------- - -#define SWITCH(name) \ - NET_REGISTER_DEV(SWITCH, name) - -#define SWITCH2(name) \ - NET_REGISTER_DEV(SWITCH2, name) - -#endif // NLD_SWITCHES_H_ diff --git a/src/lib/netlist/analog/nld_twoterm.h b/src/lib/netlist/analog/nld_twoterm.h deleted file mode 100644 index f4a18898818..00000000000 --- a/src/lib/netlist/analog/nld_twoterm.h +++ /dev/null @@ -1,47 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_TWOTERM_H_ -#define NLD_TWOTERM_H_ - -/// -/// \file nld_twoterm.h -/// - -#include "../nl_setup.h" - -// ----------------------------------------------------------------------------- -// Macros -// ----------------------------------------------------------------------------- - -#define RES(name, p_R) \ - NET_REGISTER_DEVEXT(RES, name, p_R) - -#define POT(name, p_R) \ - NET_REGISTER_DEVEXT(POT, name, p_R) - -// Does not have pin 3 connected -#define POT2(name, p_R) \ - NET_REGISTER_DEVEXT(POT2, name, p_R) - -#define CAP(name, p_C) \ - NET_REGISTER_DEVEXT(CAP, name, p_C) - -#define IND(name, p_L) \ - NET_REGISTER_DEVEXT(IND, name, p_L) - -// Generic Diode -#define DIODE(name, model) \ - NET_REGISTER_DEVEXT(DIODE, name, model) - -// Generic Zener Diode -#define ZDIODE(name, model) \ - NET_REGISTER_DEVEXT(ZDIODE, name, model) - -#define VS(name, pV) \ - NET_REGISTER_DEVEXT(VS, name, pV) - -#define CS(name, pI) \ - NET_REGISTER_DEVEXT(CS, name, pI) - -#endif // NLD_TWOTERM_H_ diff --git a/src/lib/netlist/build/create_modules.py b/src/lib/netlist/build/create_modules.py new file mode 100644 index 00000000000..c3c9e7c19aa --- /dev/null +++ b/src/lib/netlist/build/create_modules.py @@ -0,0 +1,83 @@ +#!/usr/bin/python +## +## license:BSD-3-Clause +## copyright-holders:Couriersud + +import os +import os.path +import re +import sys +import xml.sax +import xml.sax.saxutils +import zlib +import datetime + + +# workaround for version incompatibility +if sys.version_info > (3, ): + long = int + +# globals + +last_src = "" + +def process_entry(srcfile, name, params): + global last_src + if (last_src != srcfile): + last_src = srcfile + print("// ---------------------------------------------------------------------") + print("// Source: {}".format(srcfile)) + print("// ---------------------------------------------------------------------") + print("") + p = re.sub("\+","",params) + ps = p.split(",") + pusage = "" + pauto = "" + for x in ps: + if x[0:1] == "@": + pauto = pauto + ", " + x[1:] + else: + pusage = pusage + ", " + x + print("// usage : {}(name{})".format(name, pusage)) + if len(pauto) > 0: + print("// auto connect: {}".format(pauto[2:])) + print("#define {}(...) \\".format(name)) + print("\tNET_REGISTER_DEVEXT({}, __VA_ARGS__)".format(name)) + print("") + + +def process_file(srcfile): + src = open(srcfile,'r') + lines = src.readlines() + for line in lines: + ls = re.sub("\s+","",line.strip()) + ls = re.sub("^\s*//.*","",ls) + ls = re.sub("\"","",ls) + m = re.match(r"NETLIST_START\((\w+)\)", ls) + if m != None: + print("\tEXTERNAL_LIB_ENTRY("+ m.group(1) + ")") + src.close() + +if __name__ == '__main__': + if (len(sys.argv) == 0): + print('Usage:') + print(' create_devinc files ...') + sys.exit(0) + files_sorted = []; + for argno in range(1, len(sys.argv)): + files_sorted.append(sys.argv[argno]) + files_sorted.sort(); + print("// license:CC0") + print("// copyright-holders:Couriersud") + print("") + now = datetime.datetime.now() + print("// File programmatically created " + now.strftime("%c")) + print("") + print("#include \"devices/net_lib.h\"") + print("") + print("NETLIST_START(modules_lib)") + print("") + for entry in files_sorted: + process_file(entry) + print("") + print("NETLIST_END()") diff --git a/src/lib/netlist/build/makefile b/src/lib/netlist/build/makefile index 543097df807..a324acb463b 100644 --- a/src/lib/netlist/build/makefile +++ b/src/lib/netlist/build/makefile @@ -116,7 +116,7 @@ DEPENDCC=$(CC) ifndef FAST -FAST=0 +FAST=1 endif ifeq ($(FAST),1) @@ -138,15 +138,18 @@ OBJDIRS = $(OBJ) \ $(OBJ)/plib \ $(OBJ)/devices \ $(OBJ)/macro \ + $(OBJ)/macro/modules \ $(OBJ)/tests \ $(OBJ)/tools \ $(OBJ)/prg \ $(OBJ)/generated \ +MODULESOURCES += $(wildcard $(SRC)/macro/modules/*.cpp) DEVSOURCES = $(SRC)/solver/nld_solver.cpp DEVSOURCES += $(wildcard $(SRC)/devices/*.cpp) DEVSOURCES += $(wildcard $(SRC)/analog/*.cpp) DEVSOURCES += $(wildcard $(SRC)/macro/*.cpp) +DEVSOURCES += $(MODULESOURCES) TESTSOURCES = $(wildcard $(SRC)/tests/*.cpp) @@ -158,6 +161,7 @@ CORESOURCES := \ $(SRC)/nl_factory.cpp \ $(SRC)/tools/nl_convert.cpp \ $(SRC)/generated/static_solvers.cpp \ + $(SRC)/generated/nlm_modules_lib.cpp \ MAINSOURCES = $(SRC)/prg/nltool.cpp $(SRC)/prg/nlwav.cpp @@ -287,7 +291,8 @@ clang-libc: -Wmissing-variable-declarations -Wno-float-equal -Wconversion \ -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wformat-nonliteral \ -Wno-exit-time-destructors -Winconsistent-missing-destructor-override \ - -Wno-return-std-move-in-c++11 -Wno-unreachable-code" \ + -Wno-return-std-move-in-c++11 -Wno-unreachable-code \ + -Wno-missing-prototypes" \ LDEXTRAFLAGS=-stdlib=libc++ clang-5: @@ -360,8 +365,12 @@ $(SRC)/generated/nld_devinc.h: $(DEVSOURCES) @echo creating $@ $(PYTHON) create_devinc.py $^ > $@ +$(SRC)/generated/nlm_modules_lib.cpp: $(MODULESOURCES) + @echo creating $@ + $(PYTHON) create_modules.py $^ > $@ + .PHONY: generated -generated: ../generated/lib_entries.hxx ../generated/nld_devinc.h +generated: $(SRC)/generated/lib_entries.hxx $(SRC)/generated/nld_devinc.h $(SRC)/generated/nlm_modules_lib.cpp #------------------------------------------------- # clang tidy diff --git a/src/lib/netlist/buildVS/netlistlib.vcxproj b/src/lib/netlist/buildVS/netlistlib.vcxproj index 2d7dcb7bd38..543d7680f29 100755 --- a/src/lib/netlist/buildVS/netlistlib.vcxproj +++ b/src/lib/netlist/buildVS/netlistlib.vcxproj @@ -174,7 +174,9 @@ <ClCompile Include="..\devices\nld_tristate.cpp" /> <ClCompile Include="..\devices\nlid_proxy.cpp" /> <ClCompile Include="..\devices\nlid_truthtable.cpp" /> + <ClCompile Include="..\generated\nlm_modules_lib.cpp" /> <ClCompile Include="..\generated\static_solvers.cpp" /> + <ClCompile Include="..\macro\modules\nlmod_RTEST.cpp" /> <ClCompile Include="..\macro\nlm_base_lib.cpp" /> <ClCompile Include="..\macro\nlm_cd4xxx_lib.cpp" /> <ClCompile Include="..\macro\nlm_opamp_lib.cpp" /> @@ -210,55 +212,8 @@ <ClInclude Include="..\analog\nlid_fourterm.h" /> <ClInclude Include="..\analog\nlid_twoterm.h" /> <ClInclude Include="..\devices\net_lib.h" /> - <ClInclude Include="..\devices\nld_2102A.h" /> - <ClInclude Include="..\devices\nld_2716.h" /> - <ClInclude Include="..\devices\nld_74393.h" /> - <ClInclude Include="..\devices\nld_7442.h" /> <ClInclude Include="..\devices\nld_schmitt.h" /> - <ClInclude Include="..\devices\nld_tms4800.h" /> - <ClInclude Include="..\devices\nld_4020.h" /> - <ClInclude Include="..\devices\nld_4066.h" /> - <ClInclude Include="..\devices\nld_4316.h" /> - <ClInclude Include="..\devices\nld_74107.h" /> - <ClInclude Include="..\devices\nld_74113.h" /> - <ClInclude Include="..\devices\nld_74123.h" /> - <ClInclude Include="..\devices\nld_74153.h" /> - <ClInclude Include="..\devices\nld_74161.h" /> - <ClInclude Include="..\devices\nld_74164.h" /> - <ClInclude Include="..\devices\nld_74165.h" /> - <ClInclude Include="..\devices\nld_74166.h" /> - <ClInclude Include="..\devices\nld_74174.h" /> - <ClInclude Include="..\devices\nld_74175.h" /> - <ClInclude Include="..\devices\nld_74192.h" /> - <ClInclude Include="..\devices\nld_74193.h" /> - <ClInclude Include="..\devices\nld_74194.h" /> - <ClInclude Include="..\devices\nld_74365.h" /> - <ClInclude Include="..\devices\nld_7448.h" /> - <ClInclude Include="..\devices\nld_7450.h" /> - <ClInclude Include="..\devices\nld_7473.h" /> - <ClInclude Include="..\devices\nld_7474.h" /> - <ClInclude Include="..\devices\nld_7475.h" /> - <ClInclude Include="..\devices\nld_7483.h" /> - <ClInclude Include="..\devices\nld_7485.h" /> - <ClInclude Include="..\devices\nld_7490.h" /> - <ClInclude Include="..\devices\nld_7493.h" /> - <ClInclude Include="..\devices\nld_74ls629.h" /> - <ClInclude Include="..\devices\nld_82S115.h" /> - <ClInclude Include="..\devices\nld_82S123.h" /> - <ClInclude Include="..\devices\nld_82S126.h" /> - <ClInclude Include="..\devices\nld_82S16.h" /> - <ClInclude Include="..\devices\nld_9310.h" /> - <ClInclude Include="..\devices\nld_9316.h" /> - <ClInclude Include="..\devices\nld_9322.h" /> - <ClInclude Include="..\devices\nld_am2847.h" /> <ClInclude Include="..\devices\nld_devinc.h" /> - <ClInclude Include="..\devices\nld_dm9314.h" /> - <ClInclude Include="..\devices\nld_dm9334.h" /> - <ClInclude Include="..\devices\nld_legacy.h" /> - <ClInclude Include="..\devices\nld_log.h" /> - <ClInclude Include="..\devices\nld_mm5837.h" /> - <ClInclude Include="..\devices\nld_ne555.h" /> - <ClInclude Include="..\devices\nld_r2r_dac.h" /> <ClInclude Include="..\devices\nld_system.h" /> <ClInclude Include="..\devices\nld_tristate.h" /> <ClInclude Include="..\devices\nlid_cmos.h" /> @@ -267,11 +222,6 @@ <ClInclude Include="..\devices\nlid_truthtable.h" /> <ClInclude Include="..\documentation\primer_1.dox.h" /> <ClInclude Include="..\documentation\structure.dox.h" /> - <ClInclude Include="..\macro\nlm_base.h" /> - <ClInclude Include="..\macro\nlm_cd4xxx.h" /> - <ClInclude Include="..\macro\nlm_opamp.h" /> - <ClInclude Include="..\macro\nlm_other.h" /> - <ClInclude Include="..\macro\nlm_ttl74xx.h" /> <ClInclude Include="..\nl_base.h" /> <ClInclude Include="..\nl_config.h" /> <ClInclude Include="..\nl_dice_compat.h" /> diff --git a/src/lib/netlist/buildVS/netlistlib.vcxproj.filters b/src/lib/netlist/buildVS/netlistlib.vcxproj.filters index 1d0477e7802..f858a2b9932 100755 --- a/src/lib/netlist/buildVS/netlistlib.vcxproj.filters +++ b/src/lib/netlist/buildVS/netlistlib.vcxproj.filters @@ -288,6 +288,12 @@ <ClCompile Include="..\devices\nld_9321.cpp"> <Filter>Source Files</Filter> </ClCompile> + <ClCompile Include="..\generated\nlm_modules_lib.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="..\macro\modules\nlmod_RTEST.cpp"> + <Filter>Source Files</Filter> + </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="..\nl_errstr.h"> @@ -428,186 +434,36 @@ <ClInclude Include="..\tools\nl_convert.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\macro\nlm_ttl74xx.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\macro\nlm_opamp.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\macro\nlm_other.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\macro\nlm_base.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\macro\nlm_cd4xxx.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\documentation\structure.dox.h"> <Filter>Header Files</Filter> </ClInclude> <ClInclude Include="..\documentation\primer_1.dox.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_2102A.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\nlid_system.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_r2r_dac.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74193.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\nlid_proxy.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_log.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_2716.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_tms4800.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_am2847.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74174.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_7448.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74192.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_9310.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_4066.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\nlid_cmos.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_4020.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_7474.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74194.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_dm9314.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_dm9334.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\nld_tristate.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_7450.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\net_lib.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_7473.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74113.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74161.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_82S115.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\nlid_truthtable.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_9316.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_7485.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74166.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\nld_devinc.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_74165.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_82S126.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\devices\nld_system.h"> <Filter>Header Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_74ls629.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74365.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_7475.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_7483.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74123.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_mm5837.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_4316.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_82S123.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74153.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_7493.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_legacy.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74107.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_ne555.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_9322.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_7490.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_82S16.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74175.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74164.h"> - <Filter>Header Files</Filter> - </ClInclude> <ClInclude Include="..\plib\gmres.h"> <Filter>Header Files</Filter> </ClInclude> @@ -656,11 +512,5 @@ <ClInclude Include="..\analog\nld_mosfet.h"> <Filter>Source Files</Filter> </ClInclude> - <ClInclude Include="..\devices\nld_7442.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="..\devices\nld_74393.h"> - <Filter>Header Files</Filter> - </ClInclude> </ItemGroup> </Project>
\ No newline at end of file diff --git a/src/lib/netlist/devices/net_lib.cpp b/src/lib/netlist/devices/net_lib.cpp index 4475ee32c9b..3fc11f177cf 100644 --- a/src/lib/netlist/devices/net_lib.cpp +++ b/src/lib/netlist/devices/net_lib.cpp @@ -27,126 +27,9 @@ namespace devices // the entries. // FIXME: the list should be either included or the whole // initialize factory code should be created programmatically. -#if (NL_AUTO_DEVICES) + #include "../generated/lib_entries.hxx" -#else - LIB_ENTRY(R) - LIB_ENTRY(POT) - LIB_ENTRY(POT2) - LIB_ENTRY(C) - LIB_ENTRY(L) - LIB_ENTRY(D) - LIB_ENTRY(Z) - LIB_ENTRY(VS) - LIB_ENTRY(CS) - LIB_ENTRY(VCVS) - LIB_ENTRY(VCCS) - LIB_ENTRY(CCCS) - LIB_ENTRY(CCVS) - LIB_ENTRY(LVCCS) - LIB_ENTRY(opamp) - LIB_ENTRY(nc_pin) - LIB_ENTRY(frontier) // not intended to be used directly - LIB_ENTRY(function) // only for macro devices - NO FEEDBACK loops - LIB_ENTRY(QBJT_EB) - LIB_ENTRY(QBJT_switch) - LIB_ENTRY(MOSFET) - LIB_ENTRY(logic_input_ttl) - LIB_ENTRY(logic_input) - LIB_ENTRY(logic_input8) - LIB_ENTRY(analog_input) - LIB_ENTRY(log) - LIB_ENTRY(logD) - LIB_ENTRY(clock) - LIB_ENTRY(varclock) - LIB_ENTRY(extclock) - LIB_ENTRY(mainclock) - LIB_ENTRY(gnd) - LIB_ENTRY(netlistparams) - LIB_ENTRY(solver) - LIB_ENTRY(sys_dsw1) - LIB_ENTRY(sys_dsw2) - LIB_ENTRY(sys_compd) - LIB_ENTRY(sys_noise_mt_u) - LIB_ENTRY(sys_noise_mt_n) - LIB_ENTRY(switch1) - LIB_ENTRY(switch2) - LIB_ENTRY(nicRSFF) - LIB_ENTRY(nicDelay) - LIB_ENTRY(2102A) - LIB_ENTRY(2716) - LIB_ENTRY(7448) - LIB_ENTRY(MK28000) - LIB_ENTRY(7450) - LIB_ENTRY(7473) - LIB_ENTRY(7473A) - LIB_ENTRY(7474) - LIB_ENTRY(7475_GATE) - LIB_ENTRY(7477_GATE) - LIB_ENTRY(7483) - LIB_ENTRY(7485) - LIB_ENTRY(7490) - LIB_ENTRY(7492) - LIB_ENTRY(7493) - LIB_ENTRY(7497) - LIB_ENTRY(74107) - LIB_ENTRY(74107A) - LIB_ENTRY(74113) - LIB_ENTRY(74113A) - LIB_ENTRY(74121) - LIB_ENTRY(74123) - LIB_ENTRY(74125) - LIB_ENTRY(74126) - LIB_ENTRY(74153) - LIB_ENTRY(74161) - LIB_ENTRY(74161_fixme) - LIB_ENTRY(74163) - LIB_ENTRY(74164) - LIB_ENTRY(74165) - LIB_ENTRY(74166) - LIB_ENTRY(74174) - LIB_ENTRY(74175) - LIB_ENTRY(74192) - LIB_ENTRY(74193) - LIB_ENTRY(74194) - LIB_ENTRY(74365) - LIB_ENTRY(74377_GATE) - LIB_ENTRY(74393) - //ENTRY(74279, TTL_74279, "") // only dip available - LIB_ENTRY(SN74LS629) - LIB_ENTRY(82S16) - LIB_ENTRY(82S115) - LIB_ENTRY(82S123) - LIB_ENTRY(82S126) - LIB_ENTRY(74S287) - LIB_ENTRY(8277) - LIB_ENTRY(9310) - LIB_ENTRY(9314) - LIB_ENTRY(9316) - LIB_ENTRY(9321) - LIB_ENTRY(9322) - LIB_ENTRY(9334) - LIB_ENTRY(AM2847) - LIB_ENTRY(CD4006) - LIB_ENTRY(CD4013) - LIB_ENTRY(CD4017) - LIB_ENTRY(CD4022) - LIB_ENTRY(CD4020) - LIB_ENTRY(CD4024) - LIB_ENTRY(CD4053_GATE) - LIB_ENTRY(CD4066_GATE) - LIB_ENTRY(CD4316_GATE) - LIB_ENTRY(4538) - LIB_ENTRY(schmitt_trigger) - LIB_ENTRY(NE555) - LIB_ENTRY(MC1455P) - LIB_ENTRY(TMS4800) - LIB_ENTRY(r2r_dac) - LIB_ENTRY(tristate) - LIB_ENTRY(tristate3) - LIB_ENTRY(9602) - LIB_ENTRY(MM5837) -#endif + } } //namespace devices diff --git a/src/lib/netlist/devices/net_lib.h b/src/lib/netlist/devices/net_lib.h index 9326a616647..db3f9c1519d 100644 --- a/src/lib/netlist/devices/net_lib.h +++ b/src/lib/netlist/devices/net_lib.h @@ -7,7 +7,7 @@ /// /// \file net_lib.h /// -/// Discrete netlist implementation. +/// This file is included by all netlist implementations. /// #include "../nl_setup.h" @@ -30,92 +30,7 @@ NETLIST_EXTERNAL(base_lib) -#if NL_AUTO_DEVICES +#include "../generated/nld_devinc.h" - #include "../generated/nld_devinc.h" -#else - -#define SOLVER(name, freq) \ - NET_REGISTER_DEVEXT(SOLVER, name, freq) - -#include "nld_system.h" - -#include "nld_2102A.h" -#include "nld_4006.h" -#include "nld_4013.h" -#include "nld_4017.h" -#include "nld_4020.h" -#include "nld_4053.h" -#include "nld_4066.h" -#include "nld_4316.h" -#include "nld_74107.h" -#include "nld_74113.h" -#include "nld_74123.h" -#include "nld_74125.h" -#include "nld_74153.h" -#include "nld_74164.h" -#include "nld_74165.h" -#include "nld_74166.h" -#include "nld_74174.h" -#include "nld_74175.h" -#include "nld_74192.h" -#include "nld_74193.h" -#include "nld_74194.h" -#include "nld_74365.h" -#include "nld_74377.h" -#include "nld_74393.h" -#include "nld_7448.h" -#include "nld_7450.h" -#include "nld_7473.h" -#include "nld_7474.h" -#include "nld_7475.h" -#include "nld_7483.h" -#include "nld_7485.h" -#include "nld_7490.h" -#include "nld_7492.h" -#include "nld_7493.h" -#include "nld_7497.h" -#include "nld_74ls629.h" -#include "nld_82S115.h" -#include "nld_82S16.h" -#include "nld_9316.h" -#include "nld_9321.h" -#include "nld_9322.h" -#include "nld_tms4800.h" - -#include "nld_8277.h" -#include "nld_am2847.h" -#include "nld_dm9314.h" -#include "nld_dm9334.h" - -#include "nld_mm5837.h" -#include "nld_ne555.h" - -#include "nld_r2r_dac.h" - -#include "nld_roms.h" - -#include "nld_schmitt.h" - -#include "nld_tristate.h" - -#include "nld_log.h" - -#include "../macro/nlm_cd4xxx_lib.h" -#include "../macro/nlm_opamp_lib.h" -#include "../macro/nlm_otheric_lib.h" -#include "../macro/nlm_roms_lib.h" -#include "../macro/nlm_ttl74xx_lib.h" - -#include "../analog/nld_bjt.h" -#include "../analog/nld_fourterm.h" -#include "../analog/nld_mosfet.h" -#include "../analog/nld_opamps.h" -#include "../analog/nld_switches.h" -#include "../analog/nld_twoterm.h" - -#include "nld_legacy.h" -#endif - -#endif +#endif // NET_LIB_H diff --git a/src/lib/netlist/devices/nld_2102A.cpp b/src/lib/netlist/devices/nld_2102A.cpp index 0fddde0bd2d..91c7c6b7ee0 100644 --- a/src/lib/netlist/devices/nld_2102A.cpp +++ b/src/lib/netlist/devices/nld_2102A.cpp @@ -21,7 +21,6 @@ * */ -#include "nld_2102A.h" #include "nl_base.h" #define ADDR2BYTE(a) ((a) >> 3) diff --git a/src/lib/netlist/devices/nld_2102A.h b/src/lib/netlist/devices/nld_2102A.h deleted file mode 100644 index fb0693e1012..00000000000 --- a/src/lib/netlist/devices/nld_2102A.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_2102A_H_ -#define NLD_2102A_H_ - -#include "../nl_setup.h" - -// expects: RAM_2102A(name, cCEQ, cA0, cA1, cA2, cA3, cA4, cA5, cA6, cA7, cA8, cA9, cRWQ, cDI) -#define RAM_2102A(...) \ - NET_REGISTER_DEVEXT(RAM_2102A, __VA_ARGS__) - -#endif /* NLD_2102A_H_ */ diff --git a/src/lib/netlist/devices/nld_4006.cpp b/src/lib/netlist/devices/nld_4006.cpp index 7d0deef61ec..cd0e441c6b5 100644 --- a/src/lib/netlist/devices/nld_4006.cpp +++ b/src/lib/netlist/devices/nld_4006.cpp @@ -39,7 +39,6 @@ * */ -#include "nld_4006.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_4006.h b/src/lib/netlist/devices/nld_4006.h deleted file mode 100644 index c86d7ad86ee..00000000000 --- a/src/lib/netlist/devices/nld_4006.h +++ /dev/null @@ -1,12 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_4006_H_ -#define NLD_4006_H_ - -#include "../nl_setup.h" - -#define CD4006(name) \ - NET_REGISTER_DEV(CD4006, name) - -#endif /* NLD_4006_H_ */ diff --git a/src/lib/netlist/devices/nld_4013.h b/src/lib/netlist/devices/nld_4013.h deleted file mode 100644 index 1569358357b..00000000000 --- a/src/lib/netlist/devices/nld_4013.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_4013_H_ -#define NLD_4013_H_ - -#include "../nl_setup.h" - -// usage: CD4013(name, cCLOCK, cDATA, cRESET, cSET) -#define CD4013(...) \ - NET_REGISTER_DEVEXT(CD4013, __VA_ARGS__) - -#endif /* NLD_4013_H_ */ diff --git a/src/lib/netlist/devices/nld_4017.cpp b/src/lib/netlist/devices/nld_4017.cpp index e721d4502f1..249fa8c3b59 100644 --- a/src/lib/netlist/devices/nld_4017.cpp +++ b/src/lib/netlist/devices/nld_4017.cpp @@ -37,7 +37,6 @@ * */ -#include "nld_4017.h" #include "nl_base.h" #include "nl_factory.h" diff --git a/src/lib/netlist/devices/nld_4017.h b/src/lib/netlist/devices/nld_4017.h deleted file mode 100644 index 7f89c4b9cfe..00000000000 --- a/src/lib/netlist/devices/nld_4017.h +++ /dev/null @@ -1,15 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_4017_H_ -#define NLD_4017_H_ - -#include "../nl_setup.h" - -#define CD4017(name) \ - NET_REGISTER_DEV(CD4017, name) - -#define CD4022(name) \ - NET_REGISTER_DEV(CD4022, name) - -#endif /* NLD_4017_H_ */ diff --git a/src/lib/netlist/devices/nld_4020.cpp b/src/lib/netlist/devices/nld_4020.cpp index dad41bd0626..6ceecd6846e 100644 --- a/src/lib/netlist/devices/nld_4020.cpp +++ b/src/lib/netlist/devices/nld_4020.cpp @@ -37,7 +37,6 @@ * */ -#include "nld_4020.h" #include "nl_base.h" #include "nl_factory.h" diff --git a/src/lib/netlist/devices/nld_4020.h b/src/lib/netlist/devices/nld_4020.h deleted file mode 100644 index e80156045df..00000000000 --- a/src/lib/netlist/devices/nld_4020.h +++ /dev/null @@ -1,17 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_4020_H_ -#define NLD_4020_H_ - -#include "../nl_setup.h" - -// usage : CD4020(name) -#define CD4020(...) \ - NET_REGISTER_DEVEXT(CD4020, __VA_ARGS__) - -// usage : CD4024(name) -#define CD4024(...) \ - NET_REGISTER_DEVEXT(CD4024, __VA_ARGS__) - -#endif /* NLD_4020_H_ */ diff --git a/src/lib/netlist/devices/nld_4053.cpp b/src/lib/netlist/devices/nld_4053.cpp index 7a000d98a84..29634e9fdeb 100644 --- a/src/lib/netlist/devices/nld_4053.cpp +++ b/src/lib/netlist/devices/nld_4053.cpp @@ -23,8 +23,6 @@ */ -#include "nld_4053.h" - #include "analog/nlid_twoterm.h" #include "solver/nld_solver.h" diff --git a/src/lib/netlist/devices/nld_4053.h b/src/lib/netlist/devices/nld_4053.h deleted file mode 100644 index 6c6334b349f..00000000000 --- a/src/lib/netlist/devices/nld_4053.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud -#ifndef NLD_4053_H_ -#define NLD_4053_H_ - -#include "../nl_setup.h" - -// FIXME: Implement pure CMOS version - -#define CD4053_GATE(name) \ - NET_REGISTER_DEV(CD4053_GATE, name) - -#endif /* NLD_4053_H_ */ diff --git a/src/lib/netlist/devices/nld_4066.cpp b/src/lib/netlist/devices/nld_4066.cpp index 8cfa07f3b71..9e7d7e7c7fe 100644 --- a/src/lib/netlist/devices/nld_4066.cpp +++ b/src/lib/netlist/devices/nld_4066.cpp @@ -21,8 +21,6 @@ * */ -#include "nld_4066.h" - #include "analog/nlid_twoterm.h" #include "solver/nld_solver.h" diff --git a/src/lib/netlist/devices/nld_4066.h b/src/lib/netlist/devices/nld_4066.h deleted file mode 100644 index 7815466aa08..00000000000 --- a/src/lib/netlist/devices/nld_4066.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_4066_H_ -#define NLD_4066_H_ - -#include "../nl_setup.h" - -// FIXME: Implement pure CMOS version - -#define CD4066_GATE(name) \ - NET_REGISTER_DEV(CD4066_GATE, name) - -#endif /* NLD_4066_H_ */ diff --git a/src/lib/netlist/devices/nld_4316.cpp b/src/lib/netlist/devices/nld_4316.cpp index 1eed4fa9ba6..d7668c7822a 100644 --- a/src/lib/netlist/devices/nld_4316.cpp +++ b/src/lib/netlist/devices/nld_4316.cpp @@ -22,7 +22,6 @@ * */ -#include "nld_4316.h" #include "analog/nlid_twoterm.h" #include "solver/nld_solver.h" diff --git a/src/lib/netlist/devices/nld_4316.h b/src/lib/netlist/devices/nld_4316.h deleted file mode 100644 index 599430f4576..00000000000 --- a/src/lib/netlist/devices/nld_4316.h +++ /dev/null @@ -1,12 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Vas Crabb - -#ifndef NLD_4316_H_ -#define NLD_4316_H_ - -#include "../nl_setup.h" - -#define CD4316_GATE(name) \ - NET_REGISTER_DEV(CD4316_GATE, name) - -#endif /* NLD_4316_H_ */ diff --git a/src/lib/netlist/devices/nld_74107.cpp b/src/lib/netlist/devices/nld_74107.cpp index 1e52368b417..f49ed439d1e 100644 --- a/src/lib/netlist/devices/nld_74107.cpp +++ b/src/lib/netlist/devices/nld_74107.cpp @@ -61,7 +61,6 @@ * */ -#include "nld_74107.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74107.h b/src/lib/netlist/devices/nld_74107.h deleted file mode 100644 index c3d65523a9f..00000000000 --- a/src/lib/netlist/devices/nld_74107.h +++ /dev/null @@ -1,16 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74107_H_ -#define NLD_74107_H_ - -#include "../nl_setup.h" - -#define TTL_74107(...) \ - NET_REGISTER_DEVEXT(TTL_74107, __VA_ARGS__) - -// usage: TTL_74107A(name, cCLK, cJ, cK, cCLRQ) -#define TTL_74107A(...) \ - NET_REGISTER_DEVEXT(TTL_74107A, __VA_ARGS__) - -#endif /* NLD_74107_H_ */ diff --git a/src/lib/netlist/devices/nld_74113.cpp b/src/lib/netlist/devices/nld_74113.cpp index 98a8de63e01..d4fc729b2bc 100644 --- a/src/lib/netlist/devices/nld_74113.cpp +++ b/src/lib/netlist/devices/nld_74113.cpp @@ -57,7 +57,6 @@ * */ -#include "nld_74113.h" #include "nl_base.h" // FIXME: this can probably be merged with nld_7473.cpp diff --git a/src/lib/netlist/devices/nld_74113.h b/src/lib/netlist/devices/nld_74113.h deleted file mode 100644 index e0b531daadc..00000000000 --- a/src/lib/netlist/devices/nld_74113.h +++ /dev/null @@ -1,17 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74113_H_ -#define NLD_74113_H_ - -#include "../nl_setup.h" - -// usage: TTL_74113(name, cCLK, cJ, cK, cCLRQ) -#define TTL_74113(...) \ - NET_REGISTER_DEVEXT(TTL_74113, __VA_ARGS__) - -// usage: TTL_74113A(name, cCLK, cJ, cK, cCLRQ) -#define TTL_74113A(...) \ - NET_REGISTER_DEVEXT(TTL_74113, __VA_ARGS__) - -#endif /* NLD_74113_H_ */ diff --git a/src/lib/netlist/devices/nld_74123.h b/src/lib/netlist/devices/nld_74123.h deleted file mode 100644 index 3c780fb83a6..00000000000 --- a/src/lib/netlist/devices/nld_74123.h +++ /dev/null @@ -1,21 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74123_H_ -#define NLD_74123_H_ - -#include "../nl_setup.h" - -#define TTL_74123(name) \ - NET_REGISTER_DEV(TTL_74123, name) - -#define TTL_74121(name) \ - NET_REGISTER_DEV(TTL_74121, name) - -#define TTL_9602(name) \ - NET_REGISTER_DEV(TTL_9602, name) - -#define CD4538(name) \ - NET_REGISTER_DEV(CD4538, name) - -#endif /* NLD_74123_H_ */ diff --git a/src/lib/netlist/devices/nld_74125.cpp b/src/lib/netlist/devices/nld_74125.cpp index f60d5b37c5c..1240619e1d6 100644 --- a/src/lib/netlist/devices/nld_74125.cpp +++ b/src/lib/netlist/devices/nld_74125.cpp @@ -5,7 +5,6 @@ * */ -#include "nld_74125.h" #include "nl_base.h" #include <type_traits> diff --git a/src/lib/netlist/devices/nld_74125.h b/src/lib/netlist/devices/nld_74125.h deleted file mode 100644 index 07d749e0c02..00000000000 --- a/src/lib/netlist/devices/nld_74125.h +++ /dev/null @@ -1,19 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud -/* - * nld_74125.h - * - */ - -#ifndef NLD_74125_H_ -#define NLD_74125_H_ - -#include "../nl_setup.h" - -#define TTL_74125_GATE(...) \ - NET_REGISTER_DEV(TTL_74125_GATE, __VA_ARGS__) - -#define TTL_74126_GATE(...) \ - NET_REGISTER_DEV(TTL_74126_GATE, __VA_ARGS__) - -#endif /* NLD_74125_H_ */ diff --git a/src/lib/netlist/devices/nld_74153.cpp b/src/lib/netlist/devices/nld_74153.cpp index 9e5a68149c5..bc2b54bcb98 100644 --- a/src/lib/netlist/devices/nld_74153.cpp +++ b/src/lib/netlist/devices/nld_74153.cpp @@ -42,7 +42,6 @@ * */ -#include "nld_74153.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74153.h b/src/lib/netlist/devices/nld_74153.h deleted file mode 100644 index 11bfe0e2bb4..00000000000 --- a/src/lib/netlist/devices/nld_74153.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74153_H_ -#define NLD_74153_H_ - -#include "../nl_setup.h" - -// usage: TTL_74153(name, cC0, cC1, cC2, cC3, cA, cB, cG) -#define TTL_74153(...) \ - NET_REGISTER_DEVEXT(TTL_74153, __VA_ARGS__) - -#endif /* NLD_74153_H_ */ diff --git a/src/lib/netlist/devices/nld_74164.cpp b/src/lib/netlist/devices/nld_74164.cpp index 25331e8f3ae..74096cf4147 100644 --- a/src/lib/netlist/devices/nld_74164.cpp +++ b/src/lib/netlist/devices/nld_74164.cpp @@ -46,7 +46,6 @@ **********************************************************************/ -#include "nld_74164.h" #include "nl_base.h" // FIXME: clk input to be separated - only falling edge relevant diff --git a/src/lib/netlist/devices/nld_74164.h b/src/lib/netlist/devices/nld_74164.h deleted file mode 100644 index 9ec3b98c10c..00000000000 --- a/src/lib/netlist/devices/nld_74164.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Joakim Larsson Edstrom - -#ifndef NLD_74164_H_ -#define NLD_74164_H_ - -#include "../nl_setup.h" - -// usage: TTL_74164(name, cA, cB, cCLRQ, cCLK) -#define TTL_74164(...) \ - NET_REGISTER_DEVEXT(TTL_74164, __VA_ARGS__) - -#endif /* NLD_74164_H_ */ diff --git a/src/lib/netlist/devices/nld_74165.cpp b/src/lib/netlist/devices/nld_74165.cpp index 15647afb6d7..19eb2267e02 100644 --- a/src/lib/netlist/devices/nld_74165.cpp +++ b/src/lib/netlist/devices/nld_74165.cpp @@ -24,7 +24,6 @@ * */ -#include "nld_74165.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74165.h b/src/lib/netlist/devices/nld_74165.h deleted file mode 100644 index 5b0b2820135..00000000000 --- a/src/lib/netlist/devices/nld_74165.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_74165_H_ -#define NLD_74165_H_ - -#include "../nl_setup.h" - -// usage: TTL_74165(name, cCLK, cCLKINH, cSH_LDQ, cSER, cA, cB, cC, cD, cE, cF, cG, cH) -#define TTL_74165(...) \ - NET_REGISTER_DEVEXT(TTL_74165, __VA_ARGS__) - -#endif /* NLD_74165_H_ */ diff --git a/src/lib/netlist/devices/nld_74166.cpp b/src/lib/netlist/devices/nld_74166.cpp index 243281ca527..69082d89363 100644 --- a/src/lib/netlist/devices/nld_74166.cpp +++ b/src/lib/netlist/devices/nld_74166.cpp @@ -24,7 +24,6 @@ * */ -#include "nld_74166.h" #include "nl_base.h" // FIXME: separate handlers for inputs diff --git a/src/lib/netlist/devices/nld_74166.h b/src/lib/netlist/devices/nld_74166.h deleted file mode 100644 index 00434994d80..00000000000 --- a/src/lib/netlist/devices/nld_74166.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_74166_H_ -#define NLD_74166_H_ - -#include "../nl_setup.h" - -// usage: TTL_74166(name, cCLK, cCLKINH, cSH_LDQ, cSER, cA, cB, cC, cD, cE, cF, cG, cH, cCLRQ) -#define TTL_74166(...) \ - NET_REGISTER_DEVEXT(TTL_74166, __VA_ARGS__) - -#endif /* NLD_74166_H_ */ diff --git a/src/lib/netlist/devices/nld_74174.cpp b/src/lib/netlist/devices/nld_74174.cpp index 1414ddd3145..32bc0f5d1a0 100644 --- a/src/lib/netlist/devices/nld_74174.cpp +++ b/src/lib/netlist/devices/nld_74174.cpp @@ -33,7 +33,6 @@ * */ -#include "nld_74174.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74174.h b/src/lib/netlist/devices/nld_74174.h deleted file mode 100644 index 91cef8fdd74..00000000000 --- a/src/lib/netlist/devices/nld_74174.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74174_H_ -#define NLD_74174_H_ - -#include "../nl_setup.h" - -// usage: TTL_74174(name, cCLK, cD1, cD2, cD3, cD4, cD5, cD6, cCLRQ) -#define TTL_74174(...) \ - NET_REGISTER_DEVEXT(TTL_74174, __VA_ARGS__) - -#endif /* NLD_74174_H_ */ diff --git a/src/lib/netlist/devices/nld_74175.cpp b/src/lib/netlist/devices/nld_74175.cpp index 0b2f125d1b1..3329ff18893 100644 --- a/src/lib/netlist/devices/nld_74175.cpp +++ b/src/lib/netlist/devices/nld_74175.cpp @@ -33,7 +33,6 @@ * */ -#include "nld_74175.h" #include "nl_base.h" // FIXME: optimize diff --git a/src/lib/netlist/devices/nld_74175.h b/src/lib/netlist/devices/nld_74175.h deleted file mode 100644 index 377320b14f0..00000000000 --- a/src/lib/netlist/devices/nld_74175.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74175_H_ -#define NLD_74175_H_ - -#include "../nl_setup.h" - -// usage : TTL_74175(name, pCLK, pD1, pD2, pD3, pD4, pCLRQ) -// auto connect: VCC, GND -#define TTL_74175(...) \ - NET_REGISTER_DEVEXT(TTL_74175, __VA_ARGS__) - -#endif /* NLD_74175_H_ */ diff --git a/src/lib/netlist/devices/nld_74192.cpp b/src/lib/netlist/devices/nld_74192.cpp index 0c1864f4394..5f56f67dc93 100644 --- a/src/lib/netlist/devices/nld_74192.cpp +++ b/src/lib/netlist/devices/nld_74192.cpp @@ -26,7 +26,7 @@ * */ -#include "nld_74192.h" + #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74192.h b/src/lib/netlist/devices/nld_74192.h deleted file mode 100644 index 1248a07961c..00000000000 --- a/src/lib/netlist/devices/nld_74192.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74192_H_ -#define NLD_74192_H_ - -#include "../nl_setup.h" - -// usage : TTL_74192(name, pA, pB, pC, pD, pCLEAR, pLOADQ, pCU, pCD) -// auto connect: VCC, GND -#define TTL_74192(...) \ - NET_REGISTER_DEVEXT(TTL_74192, __VA_ARGS__) - -#endif /* NLD_74192_H_ */ diff --git a/src/lib/netlist/devices/nld_74193.cpp b/src/lib/netlist/devices/nld_74193.cpp index 5754cd2eea1..e4dec831f68 100644 --- a/src/lib/netlist/devices/nld_74193.cpp +++ b/src/lib/netlist/devices/nld_74193.cpp @@ -23,7 +23,6 @@ * */ -#include "nld_74193.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74193.h b/src/lib/netlist/devices/nld_74193.h deleted file mode 100644 index 42c790107a2..00000000000 --- a/src/lib/netlist/devices/nld_74193.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74193_H_ -#define NLD_74193_H_ - -#include "../nl_setup.h" - -// usage : TTL_74193(name, pA, pB, pC, pD, pCLEAR, pLOADQ, pCU, pCD) -// auto connect: VCC, GND -#define TTL_74193(...) \ - NET_REGISTER_DEVEXT(TTL_74193, __VA_ARGS__) - -#endif /* NLD_74193_H_ */ diff --git a/src/lib/netlist/devices/nld_74194.cpp b/src/lib/netlist/devices/nld_74194.cpp index cc0b048d95d..c20f4b96021 100644 --- a/src/lib/netlist/devices/nld_74194.cpp +++ b/src/lib/netlist/devices/nld_74194.cpp @@ -23,8 +23,6 @@ * */ - -#include "nld_74194.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74194.h b/src/lib/netlist/devices/nld_74194.h deleted file mode 100644 index c380190d6fe..00000000000 --- a/src/lib/netlist/devices/nld_74194.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz -#ifndef NLD_74194_H_ -#define NLD_74194_H_ - -#include "../nl_setup.h" - -// usage : TTL_74194(name, pCLK, pS0, pS1, pSRIN, pA, pB, pC, pD, pSLIN, pCLRQ) -// auto connect: VCC, GND -#define TTL_74194(...) \ - NET_REGISTER_DEVEXT(TTL_74194, __VA_ARGS__) - -#endif /* NLD_74194_H_ */ diff --git a/src/lib/netlist/devices/nld_74365.cpp b/src/lib/netlist/devices/nld_74365.cpp index ce93d336158..8f078743773 100644 --- a/src/lib/netlist/devices/nld_74365.cpp +++ b/src/lib/netlist/devices/nld_74365.cpp @@ -22,7 +22,6 @@ * is not a "real" bus driver, it simply outputs 0 if the chip is not enabled. */ -#include "nld_74365.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74365.h b/src/lib/netlist/devices/nld_74365.h deleted file mode 100644 index 5900991e156..00000000000 --- a/src/lib/netlist/devices/nld_74365.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz -#ifndef NLD_74365_H_ -#define NLD_74365_H_ - -#include "../nl_setup.h" - -// usage : TTL_74365(name, pG1Q, pG2Q, pA1, pA2, pA3, pA4, pA5, pA6) -// auto connect: VCC, GND -#define TTL_74365(...) \ - NET_REGISTER_DEVEXT(TTL_74365, __VA_ARGS__) - -#endif /* NLD_74365_H_ */ diff --git a/src/lib/netlist/devices/nld_74377.cpp b/src/lib/netlist/devices/nld_74377.cpp index 45427bde827..dc38dbc0d2d 100644 --- a/src/lib/netlist/devices/nld_74377.cpp +++ b/src/lib/netlist/devices/nld_74377.cpp @@ -48,7 +48,6 @@ * */ -#include "nld_74377.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74377.h b/src/lib/netlist/devices/nld_74377.h deleted file mode 100644 index 7157abec99f..00000000000 --- a/src/lib/netlist/devices/nld_74377.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud,Aaron Giles - -#ifndef NLD_74377_H_ -#define NLD_74377_H_ - -#include "../nl_setup.h" - - -#define TTL_74377_GATE(name) \ - NET_REGISTER_DEV(TTL_74377_GATE, name) - - -#endif /* NLD_74377_H_ */ diff --git a/src/lib/netlist/devices/nld_74393.cpp b/src/lib/netlist/devices/nld_74393.cpp index 765c73a7880..5e9cef831d0 100644 --- a/src/lib/netlist/devices/nld_74393.cpp +++ b/src/lib/netlist/devices/nld_74393.cpp @@ -19,7 +19,6 @@ * */ -#include "nld_74393.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74393.h b/src/lib/netlist/devices/nld_74393.h deleted file mode 100644 index 664b7ce91eb..00000000000 --- a/src/lib/netlist/devices/nld_74393.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74393_H_ -#define NLD_74393_H_ - -#include "../nl_setup.h" - -// usage: TTL_74393(name, cCP, cMR) -#define TTL_74393(...) \ - NET_REGISTER_DEVEXT(TTL_74393, __VA_ARGS__) - -#endif /* NLD_74193_H_ */ diff --git a/src/lib/netlist/devices/nld_7448.h b/src/lib/netlist/devices/nld_7448.h deleted file mode 100644 index 937ea87e090..00000000000 --- a/src/lib/netlist/devices/nld_7448.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7448_H_ -#define NLD_7448_H_ - -#include "../nl_setup.h" - -// usage : TTL_7448(name, pA, pB, pC, pD, pLTQ, pBIQ, pRBIQ) -// auto connect: VCC, GND -#define TTL_7448(...) \ - NET_REGISTER_DEVEXT(TTL_7448, __VA_ARGS__) - -#endif /* NLD_7448_H_ */ diff --git a/src/lib/netlist/devices/nld_7450.cpp b/src/lib/netlist/devices/nld_7450.cpp index 35487bd12f9..d4fc9319b0f 100644 --- a/src/lib/netlist/devices/nld_7450.cpp +++ b/src/lib/netlist/devices/nld_7450.cpp @@ -21,7 +21,6 @@ * */ -#include "nld_7450.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_7450.h b/src/lib/netlist/devices/nld_7450.h deleted file mode 100644 index 7a58605f20c..00000000000 --- a/src/lib/netlist/devices/nld_7450.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7450_H_ -#define NLD_7450_H_ - -#include "../nl_setup.h" - -// usage: TTL_7450_ANDORINVERT(name, cI1, cI2, cI3, cI4) -#define TTL_7450_ANDORINVERT(...) \ - NET_REGISTER_DEVEXT(TTL_7450_ANDORINVERT, __VA_ARGS__) - -#endif /* NLD_7450_H_ */ diff --git a/src/lib/netlist/devices/nld_7473.cpp b/src/lib/netlist/devices/nld_7473.cpp index 8826df0239d..dbfedecb72e 100644 --- a/src/lib/netlist/devices/nld_7473.cpp +++ b/src/lib/netlist/devices/nld_7473.cpp @@ -57,7 +57,6 @@ * */ -#include "nld_7473.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_7473.h b/src/lib/netlist/devices/nld_7473.h deleted file mode 100644 index 6aedd619dac..00000000000 --- a/src/lib/netlist/devices/nld_7473.h +++ /dev/null @@ -1,16 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7473_H_ -#define NLD_7473_H_ - -#include "../nl_setup.h" - -// usage: TTL_7473(name, cCLK, cJ, cK, cCLRQ) -#define TTL_7473(...) \ - NET_REGISTER_DEVEXT(TTL_7473, __VA_ARGS__) - -#define TTL_7473A(...) \ - TTL_7473(__VA_ARGS__) - -#endif /* NLD_7473_H_ */ diff --git a/src/lib/netlist/devices/nld_7474.cpp b/src/lib/netlist/devices/nld_7474.cpp index 42d5acfc9af..16a259312dd 100644 --- a/src/lib/netlist/devices/nld_7474.cpp +++ b/src/lib/netlist/devices/nld_7474.cpp @@ -40,7 +40,6 @@ * FIXME: Check that (*) is emulated properly */ -#include "nld_7474.h" #include "nl_base.h" #include <array> diff --git a/src/lib/netlist/devices/nld_7474.h b/src/lib/netlist/devices/nld_7474.h deleted file mode 100644 index 7ae42fc750b..00000000000 --- a/src/lib/netlist/devices/nld_7474.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7474_H_ -#define NLD_7474_H_ - -#include "../nl_setup.h" - -// usage: TTL_7474(name, cCLK, cD, cCLRQ, cPREQ) -#define TTL_7474(...) \ - NET_REGISTER_DEVEXT(TTL_7474, __VA_ARGS__) - -#endif /* NLD_7474_H_ */ diff --git a/src/lib/netlist/devices/nld_7475.cpp b/src/lib/netlist/devices/nld_7475.cpp index b73bc8e4fad..1e5e9c82b1c 100644 --- a/src/lib/netlist/devices/nld_7475.cpp +++ b/src/lib/netlist/devices/nld_7475.cpp @@ -34,7 +34,6 @@ * */ -#include "nld_7475.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_7475.h b/src/lib/netlist/devices/nld_7475.h deleted file mode 100644 index 988061e3c6b..00000000000 --- a/src/lib/netlist/devices/nld_7475.h +++ /dev/null @@ -1,15 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_7475_H_ -#define NLD_7475_H_ - -#include "../nl_setup.h" - -#define TTL_7475_GATE(...) \ - NET_REGISTER_DEVEXT(TTL_7475_GATE, __VA_ARGS__) - -#define TTL_7477_GATE(...) \ - NET_REGISTER_DEVEXT(TTL_7477_GATE, __VA_ARGS__) - -#endif /* NLD_7475_H_ */ diff --git a/src/lib/netlist/devices/nld_7483.cpp b/src/lib/netlist/devices/nld_7483.cpp index 0e20ab76b63..d6708cbd3b6 100644 --- a/src/lib/netlist/devices/nld_7483.cpp +++ b/src/lib/netlist/devices/nld_7483.cpp @@ -24,7 +24,6 @@ * */ -#include "nld_7483.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_7483.h b/src/lib/netlist/devices/nld_7483.h deleted file mode 100644 index e2ede42246a..00000000000 --- a/src/lib/netlist/devices/nld_7483.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7483_H_ -#define NLD_7483_H_ - -#include "../nl_setup.h" - -// usage: TTL_7483(name, cA1, cA2, cA3, cA4, cB1, cB2, cB3, cB4, cCI) -#define TTL_7483(...) \ - NET_REGISTER_DEVEXT(TTL_7483, __VA_ARGS__) - -#endif /* NLD_7483_H_ */ diff --git a/src/lib/netlist/devices/nld_7485.cpp b/src/lib/netlist/devices/nld_7485.cpp index 7cce2fa8ad8..40a4831e1f7 100644 --- a/src/lib/netlist/devices/nld_7485.cpp +++ b/src/lib/netlist/devices/nld_7485.cpp @@ -22,7 +22,6 @@ * */ -#include "nld_7485.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_7485.h b/src/lib/netlist/devices/nld_7485.h deleted file mode 100644 index 8d140b57c4d..00000000000 --- a/src/lib/netlist/devices/nld_7485.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_7485_H_ -#define NLD_7485_H_ - -#include "../nl_setup.h" - -// usage: TTL_7485(name, cA0, cA1, cA2, cA3, cB0, cB1, cB2, cB3, cLTIN, cEQIN, cGTIN) -#define TTL_7485(...) \ - NET_REGISTER_DEVEXT(TTL_7485, __VA_ARGS__) - -#endif /* NLD_7485_H_ */ diff --git a/src/lib/netlist/devices/nld_7490.cpp b/src/lib/netlist/devices/nld_7490.cpp index 8dcf6ab2655..abf93a4189b 100644 --- a/src/lib/netlist/devices/nld_7490.cpp +++ b/src/lib/netlist/devices/nld_7490.cpp @@ -52,7 +52,6 @@ * */ -#include "nld_7490.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_7490.h b/src/lib/netlist/devices/nld_7490.h deleted file mode 100644 index 06a18f19c8d..00000000000 --- a/src/lib/netlist/devices/nld_7490.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7490_H_ -#define NLD_7490_H_ - -#include "../nl_setup.h" - -// usage: TTL_7490(name, cA, cB, cR1, cR2, cR91, cR92) -#define TTL_7490(...) \ - NET_REGISTER_DEVEXT(TTL_7490, __VA_ARGS__) - -#endif /* NLD_7490_H_ */ diff --git a/src/lib/netlist/devices/nld_7492.h b/src/lib/netlist/devices/nld_7492.h deleted file mode 100644 index 366e1c079c6..00000000000 --- a/src/lib/netlist/devices/nld_7492.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7492_H_ -#define NLD_7492_H_ - -#include "../nl_setup.h" - -// usage: TTL_7492(name, cA, cB, cR1, cR2) -#define TTL_7492(...) \ - NET_REGISTER_DEVEXT(TTL_7492, __VA_ARGS__) - -#endif /* NLD_7492_H_ */ diff --git a/src/lib/netlist/devices/nld_7493.cpp b/src/lib/netlist/devices/nld_7493.cpp index 17cf8eb5ff1..c52418f8d2e 100644 --- a/src/lib/netlist/devices/nld_7493.cpp +++ b/src/lib/netlist/devices/nld_7493.cpp @@ -54,7 +54,6 @@ * */ -#include "nld_7493.h" #include "nl_base.h" diff --git a/src/lib/netlist/devices/nld_7493.h b/src/lib/netlist/devices/nld_7493.h deleted file mode 100644 index 86bbc6a1482..00000000000 --- a/src/lib/netlist/devices/nld_7493.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_7493_H_ -#define NLD_7493_H_ - -#include "../nl_setup.h" - -// usage: TTL_7493(name, cCLKA, cCLKB, cR1, cR2) -#define TTL_7493(...) \ - NET_REGISTER_DEVEXT(TTL_7493, __VA_ARGS__) - -#endif /* NLD_7493_H_ */ diff --git a/src/lib/netlist/devices/nld_7497.cpp b/src/lib/netlist/devices/nld_7497.cpp index b43ff7dcfe2..895f8b5a07f 100644 --- a/src/lib/netlist/devices/nld_7497.cpp +++ b/src/lib/netlist/devices/nld_7497.cpp @@ -37,7 +37,6 @@ * Unity/cascade is used to inhibit output Y (UNITY L -> Y H) */ -#include "nld_7497.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_7497.h b/src/lib/netlist/devices/nld_7497.h deleted file mode 100644 index befebb8d64e..00000000000 --- a/src/lib/netlist/devices/nld_7497.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Sergey Svishchev - -#ifndef NLD_7497_H_ -#define NLD_7497_H_ - -#include "../nl_setup.h" - -// 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_ */ diff --git a/src/lib/netlist/devices/nld_74ls629.cpp b/src/lib/netlist/devices/nld_74ls629.cpp index 27eee588957..6e28feffdfc 100644 --- a/src/lib/netlist/devices/nld_74ls629.cpp +++ b/src/lib/netlist/devices/nld_74ls629.cpp @@ -58,8 +58,6 @@ * Then just use that to toggle a waveform. */ - -#include "nld_74ls629.h" #include "analog/nlid_twoterm.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_74ls629.h b/src/lib/netlist/devices/nld_74ls629.h deleted file mode 100644 index ff467d46cea..00000000000 --- a/src/lib/netlist/devices/nld_74ls629.h +++ /dev/null @@ -1,12 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_74LS629_H_ -#define NLD_74LS629_H_ - -#include "../nl_setup.h" - -#define SN74LS629(name, ...) \ - NET_REGISTER_DEVEXT(SN74LS629, name,__VA_ARGS__) - -#endif /* NLD_74LS629_H_ */ diff --git a/src/lib/netlist/devices/nld_8277.cpp b/src/lib/netlist/devices/nld_8277.cpp index 939f1a32ecc..9832a2857cc 100644 --- a/src/lib/netlist/devices/nld_8277.cpp +++ b/src/lib/netlist/devices/nld_8277.cpp @@ -18,7 +18,6 @@ * */ -#include "nld_8277.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_8277.h b/src/lib/netlist/devices/nld_8277.h deleted file mode 100644 index 54deeccb230..00000000000 --- a/src/lib/netlist/devices/nld_8277.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_8277_H_ -#define NLD_8277_H_ - -#include "../nl_setup.h" - -// usage : TTL_8277(name, pRESET, pCLK, pCLKA, pD0A, pD1A, pDSA, pCLKB, pD0B, pD1B, pDSB) -// auto connect: VCC, GND -#define TTL_8277(...) \ - NET_REGISTER_DEVEXT(TTL_8277, __VA_ARGS__) - -#endif /* NLD_2877_H_ */ diff --git a/src/lib/netlist/devices/nld_82S115.cpp b/src/lib/netlist/devices/nld_82S115.cpp index d96be04c053..f1e49bd9f83 100644 --- a/src/lib/netlist/devices/nld_82S115.cpp +++ b/src/lib/netlist/devices/nld_82S115.cpp @@ -25,7 +25,6 @@ * */ -#include "nld_82S115.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_82S115.h b/src/lib/netlist/devices/nld_82S115.h deleted file mode 100644 index b5d6dcf58a5..00000000000 --- a/src/lib/netlist/devices/nld_82S115.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_82S115_H_ -#define NLD_82S115_H_ - -#include "../nl_setup.h" - -// expects: PROM_82S115(name, cCE1Q, cCE2, cA0, cA1, cA2, cA3, cA4, cA5, cA6, cA7, cA8, cSTROBE) -#define PROM_82S115(...) \ - NET_REGISTER_DEVEXT(PROM_82S115, __VA_ARGS__) - -#endif /* NLD_82S115_H_ */ diff --git a/src/lib/netlist/devices/nld_82S16.cpp b/src/lib/netlist/devices/nld_82S16.cpp index bdc6a15132d..2fc92adfe30 100644 --- a/src/lib/netlist/devices/nld_82S16.cpp +++ b/src/lib/netlist/devices/nld_82S16.cpp @@ -22,7 +22,6 @@ * */ -#include "nld_82S16.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_82S16.h b/src/lib/netlist/devices/nld_82S16.h deleted file mode 100644 index ef73e631b16..00000000000 --- a/src/lib/netlist/devices/nld_82S16.h +++ /dev/null @@ -1,12 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_82S16_H_ -#define NLD_82S16_H_ - -#include "../nl_setup.h" - -#define TTL_82S16(name) \ - NET_REGISTER_DEV(TTL_82S16, name) - -#endif /* NLD_82S16_H_ */ diff --git a/src/lib/netlist/devices/nld_9316.h b/src/lib/netlist/devices/nld_9316.h deleted file mode 100644 index baefb42a758..00000000000 --- a/src/lib/netlist/devices/nld_9316.h +++ /dev/null @@ -1,25 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_9316_H_ -#define NLD_9316_H_ - -#include "../nl_setup.h" - -// usage: TTL_9316(name, cCLK, cENP, cENT, cCLRQ, cLOADQ, cA, cB, cC, cD) -#define TTL_9316(...) \ - NET_REGISTER_DEVEXT(TTL_74161, __VA_ARGS__) - -#define TTL_74161(...) \ - NET_REGISTER_DEVEXT(TTL_74161, __VA_ARGS__) - -#define TTL_74161_FIXME(...) \ - NET_REGISTER_DEVEXT(TTL_74161_FIXME, __VA_ARGS__) - -#define TTL_74163(...) \ - NET_REGISTER_DEVEXT(TTL_74163, __VA_ARGS__) - -#define TTL_9310(...) \ - NET_REGISTER_DEVEXT(TTL_9310, __VA_ARGS__) - -#endif /* NLD_9316_H_ */ diff --git a/src/lib/netlist/devices/nld_9321.cpp b/src/lib/netlist/devices/nld_9321.cpp index 68e09fd233e..5adffc3a313 100644 --- a/src/lib/netlist/devices/nld_9321.cpp +++ b/src/lib/netlist/devices/nld_9321.cpp @@ -18,7 +18,6 @@ * */ -#include "nld_9321.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_9321.h b/src/lib/netlist/devices/nld_9321.h deleted file mode 100644 index 8283dbde20c..00000000000 --- a/src/lib/netlist/devices/nld_9321.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_9321_H_ -#define NLD_9321_H_ - -#include "../nl_setup.h" - -// usage: TTL_9321(name, cAE, cA0, cA1, cBE, cB0, cB1) -#define TTL_9321(...) \ - NET_REGISTER_DEVEXT(TTL_9321, __VA_ARGS__) - -#endif /* NLD_9321_H_ */ diff --git a/src/lib/netlist/devices/nld_9322.cpp b/src/lib/netlist/devices/nld_9322.cpp index 1167ece79d9..2d952487a02 100644 --- a/src/lib/netlist/devices/nld_9322.cpp +++ b/src/lib/netlist/devices/nld_9322.cpp @@ -18,7 +18,6 @@ * */ -#include "nld_9322.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_9322.h b/src/lib/netlist/devices/nld_9322.h deleted file mode 100644 index 0584974da2e..00000000000 --- a/src/lib/netlist/devices/nld_9322.h +++ /dev/null @@ -1,13 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_9322_H_ -#define NLD_9322_H_ - -#include "../nl_setup.h" - -// usage: TTL_9322(name, cSELECT, cA1, cB1, cA2, cB2, cA3, cB3, cA4, cB4, cSTROBE) -#define TTL_9322(...) \ - NET_REGISTER_DEVEXT(TTL_9322, __VA_ARGS__) - -#endif /* NLD_9322_H_ */ diff --git a/src/lib/netlist/devices/nld_am2847.cpp b/src/lib/netlist/devices/nld_am2847.cpp index 9a35b5f8ac9..fb4cc384aea 100644 --- a/src/lib/netlist/devices/nld_am2847.cpp +++ b/src/lib/netlist/devices/nld_am2847.cpp @@ -18,7 +18,6 @@ * */ -#include "nld_am2847.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_am2847.h b/src/lib/netlist/devices/nld_am2847.h deleted file mode 100644 index bf7c3b8a635..00000000000 --- a/src/lib/netlist/devices/nld_am2847.h +++ /dev/null @@ -1,12 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_AM2847_H_ -#define NLD_AM2847_H_ - -#include "../nl_setup.h" - -#define TTL_AM2847(...) \ - NET_REGISTER_DEVEXT(TTL_AM2847, __VA_ARGS__) - -#endif /* NLD_AM2847_H_ */ diff --git a/src/lib/netlist/devices/nld_dm9314.cpp b/src/lib/netlist/devices/nld_dm9314.cpp index 215316f9d42..0f3980df98b 100644 --- a/src/lib/netlist/devices/nld_dm9314.cpp +++ b/src/lib/netlist/devices/nld_dm9314.cpp @@ -18,7 +18,6 @@ * */ -#include "nld_dm9314.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_dm9314.h b/src/lib/netlist/devices/nld_dm9314.h deleted file mode 100644 index 03aebb16f14..00000000000 --- a/src/lib/netlist/devices/nld_dm9314.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Felipe Sanches - -#ifndef NLD_DM9314_H_ -#define NLD_DM9314_H_ - -#include "../nl_setup.h" - -// usage : TTL_9314(name, pEQ, pMRQ, pS0Q, pS1Q, pS2Q, pS3Q, pD0, pD1, pD2, pD3) -// auto connect: VCC, GND -#define TTL_9314(...) \ - NET_REGISTER_DEVEXT(TTL_9314, __VA_ARGS__) - -#endif /* NLD_DM9314_H_ */ diff --git a/src/lib/netlist/devices/nld_dm9334.cpp b/src/lib/netlist/devices/nld_dm9334.cpp index 251604bdf93..d3989935f77 100644 --- a/src/lib/netlist/devices/nld_dm9334.cpp +++ b/src/lib/netlist/devices/nld_dm9334.cpp @@ -62,7 +62,6 @@ * */ -#include "nld_dm9334.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_dm9334.h b/src/lib/netlist/devices/nld_dm9334.h deleted file mode 100644 index 9e48fbf2cb3..00000000000 --- a/src/lib/netlist/devices/nld_dm9334.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_DM9334_H_ -#define NLD_DM9334_H_ - -#include "../nl_setup.h" - -// usage : TTL_9334(name, pCQ, pEQ, pD, pA0, pA1, pA2) -// auto connect: VCC, GND -#define TTL_9334(...) \ - NET_REGISTER_DEVEXT(TTL_9334, __VA_ARGS__) - -#endif /* NLD_DM9334_H_ */ diff --git a/src/lib/netlist/devices/nld_legacy.cpp b/src/lib/netlist/devices/nld_legacy.cpp index ca8893a59aa..338aeef73c9 100644 --- a/src/lib/netlist/devices/nld_legacy.cpp +++ b/src/lib/netlist/devices/nld_legacy.cpp @@ -5,7 +5,6 @@ * */ -#include "nld_legacy.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_legacy.h b/src/lib/netlist/devices/nld_legacy.h deleted file mode 100644 index a91074a4056..00000000000 --- a/src/lib/netlist/devices/nld_legacy.h +++ /dev/null @@ -1,37 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud -/* - * nld_legacy.h - * - * All of the devices below needs to disappear at some time ..... - * - * - */ - -#ifndef NLD_LEGACY_H_ -#define NLD_LEGACY_H_ - -#include "../nl_setup.h" - -// ---------------------------------------------------------------------------------------- -// Macros -// ---------------------------------------------------------------------------------------- - -#define NETDEV_RSFF(name) \ - NET_REGISTER_DEV(NETDEV_RSFF, name) - -#define NETDEV_DELAY(name) \ - NET_REGISTER_DEV(NETDEV_DELAY, name) - -// ---------------------------------------------------------------------------------------- -// Devices ... -// ---------------------------------------------------------------------------------------- - -namespace netlist -{ - namespace devices - { - } //namespace devices -} // namespace netlist - -#endif /* NLD_LEGACY_H_ */ diff --git a/src/lib/netlist/devices/nld_log.cpp b/src/lib/netlist/devices/nld_log.cpp index f60029748ce..75a22ddca32 100644 --- a/src/lib/netlist/devices/nld_log.cpp +++ b/src/lib/netlist/devices/nld_log.cpp @@ -16,7 +16,6 @@ */ #include "nl_base.h" -#include "nld_log.h" #include "plib/pfmtlog.h" #include "plib/pmulti_threading.h" #include "plib/pstream.h" diff --git a/src/lib/netlist/devices/nld_log.h b/src/lib/netlist/devices/nld_log.h deleted file mode 100644 index cf52e52a4f9..00000000000 --- a/src/lib/netlist/devices/nld_log.h +++ /dev/null @@ -1,18 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_LOG_H_ -#define NLD_LOG_H_ - -#include "../nl_setup.h" - -#define LOG(name, cI) \ - NET_REGISTER_DEV(LOG, name) \ - NET_CONNECT(name, I, cI) - -#define LOGD(name, cI, cI2) \ - NET_REGISTER_DEV(LOGD, name) \ - NET_CONNECT(name, I, cI) \ - NET_CONNECT(name, I2, cI2) - -#endif /* NLD_LOG_H_ */ diff --git a/src/lib/netlist/devices/nld_mm5837.cpp b/src/lib/netlist/devices/nld_mm5837.cpp index cf33660005a..45b97ade9ef 100644 --- a/src/lib/netlist/devices/nld_mm5837.cpp +++ b/src/lib/netlist/devices/nld_mm5837.cpp @@ -16,7 +16,6 @@ * */ -#include "nld_mm5837.h" #include "analog/nlid_twoterm.h" #include "solver/nld_matrix_solver.h" diff --git a/src/lib/netlist/devices/nld_mm5837.h b/src/lib/netlist/devices/nld_mm5837.h deleted file mode 100644 index 1bc6b5addee..00000000000 --- a/src/lib/netlist/devices/nld_mm5837.h +++ /dev/null @@ -1,12 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_MM5837_H_ -#define NLD_MM5837_H_ - -#include "../nl_setup.h" - -#define MM5837(name) \ - NET_REGISTER_DEV(MM5837, name) - -#endif /* NLD_MM5837_H_ */ diff --git a/src/lib/netlist/devices/nld_ne555.cpp b/src/lib/netlist/devices/nld_ne555.cpp index c132a88eda3..3f1238681e2 100644 --- a/src/lib/netlist/devices/nld_ne555.cpp +++ b/src/lib/netlist/devices/nld_ne555.cpp @@ -2,7 +2,6 @@ // copyright-holders:Couriersud -#include "nld_ne555.h" #include "analog/nlid_twoterm.h" #include "solver/nld_solver.h" diff --git a/src/lib/netlist/devices/nld_ne555.h b/src/lib/netlist/devices/nld_ne555.h deleted file mode 100644 index 1033b00cb67..00000000000 --- a/src/lib/netlist/devices/nld_ne555.h +++ /dev/null @@ -1,17 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_NE555_H_ -#define NLD_NE555_H_ - -#include "../nl_setup.h" - -// usage : NE555(name) -#define NE555(...) \ - NET_REGISTER_DEVEXT(NE555, __VA_ARGS__) - -/// usage : MC1455P(name) -#define MC1455P(...) \ - NET_REGISTER_DEVEXT(MC1455P, __VA_ARGS__) - -#endif /* NLD_NE555_H_ */ diff --git a/src/lib/netlist/devices/nld_r2r_dac.h b/src/lib/netlist/devices/nld_r2r_dac.h deleted file mode 100644 index 8a8f1c90f47..00000000000 --- a/src/lib/netlist/devices/nld_r2r_dac.h +++ /dev/null @@ -1,12 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud - -#ifndef NLD_R2R_DAC_H_ -#define NLD_R2R_DAC_H_ - -#include "../nl_setup.h" - -#define R2R_DAC(name, p_VIN, p_R, p_N) \ - NET_REGISTER_DEVEXT(R2R_DAC, name, p_VIN, p_R, p_N) - -#endif /* NLD_R2R_DAC_H_ */ diff --git a/src/lib/netlist/devices/nld_roms.h b/src/lib/netlist/devices/nld_roms.h deleted file mode 100644 index 0a8c09d8cf1..00000000000 --- a/src/lib/netlist/devices/nld_roms.h +++ /dev/null @@ -1,33 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud -/* - * nld_roms.h - * - */ - -#ifndef NLD_ROMS_H_ -#define NLD_ROMS_H_ - -#include "../nl_setup.h" - -// PROM_82S126(name, cCE1Q, cCE2Q, cA0, cA1, cA2, cA3, cA4, cA5, cA6, cA7) -#define PROM_82S126(...) \ - NET_REGISTER_DEVEXT(PROM_82S126, __VA_ARGS__) - -// PROM_74S287(name, cCE1Q, cCE2Q, cA0, cA1, cA2, cA3, cA4, cA5, cA6, cA7) -#define PROM_74S287(...) \ - NET_REGISTER_DEVEXT(PROM_74S287, __VA_ARGS__) - -// PROM_82S123(name, cCEQ, cA0, cA1, cA2, cA3, cA4) -#define PROM_82S123(...) \ - NET_REGISTER_DEVEXT(PROM_82S123, __VA_ARGS__) - -// EPROM_2716(name, cGQ, cEPQ, cA0, cA1, cA2, cA3, cA4, cA5, cA6, cA7, cA8, cA9, cA10) -#define EPROM_2716(...) \ - NET_REGISTER_DEVEXT(EPROM_2716, __VA_ARGS__) - -// PROM_MK28000(name, cOE1, cOE2, cAR, cA0, cA1, cA2, cA3, cA4, cA5, cA6, cA7, cA8, cA9, cA10, cA11) -#define PROM_MK28000(...) \ - NET_REGISTER_DEVEXT(PROM_MK28000, __VA_ARGS__) - -#endif /* NLD_ROMS_H_ */ diff --git a/src/lib/netlist/devices/nld_schmitt.cpp b/src/lib/netlist/devices/nld_schmitt.cpp index 6b49739e107..898e642ad53 100644 --- a/src/lib/netlist/devices/nld_schmitt.cpp +++ b/src/lib/netlist/devices/nld_schmitt.cpp @@ -5,8 +5,6 @@ * */ -#include "nld_schmitt.h" - #include "analog/nlid_twoterm.h" #include "nl_base.h" #include "nl_errstr.h" diff --git a/src/lib/netlist/devices/nld_schmitt.h b/src/lib/netlist/devices/nld_schmitt.h deleted file mode 100644 index 87b8626edda..00000000000 --- a/src/lib/netlist/devices/nld_schmitt.h +++ /dev/null @@ -1,21 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Vas Crabb -/* - * nld_schmitt.h - * - */ - -#ifndef NLD_SCHMITT_H_ -#define NLD_SCHMITT_H_ - -#include "../nl_setup.h" - -// ---------------------------------------------------------------------------------------- -// Macros -// ---------------------------------------------------------------------------------------- - -#define SCHMITT_TRIGGER(name, model) \ - NET_REGISTER_DEV(SCHMITT_TRIGGER, name) \ - NETDEV_PARAMI(name, STMODEL, model) - -#endif /* NLD_SCHMITT_H_ */ diff --git a/src/lib/netlist/devices/nld_system.h b/src/lib/netlist/devices/nld_system.h deleted file mode 100644 index 2f174731dde..00000000000 --- a/src/lib/netlist/devices/nld_system.h +++ /dev/null @@ -1,92 +0,0 @@ -// license:GPL-2.0+ -// copyright-holders:Couriersud -/* - * nld_system.h - * - * netlist devices defined in the core - */ - -#ifndef NLD_SYSTEM_H_ -#define NLD_SYSTEM_H_ - -#include "../nl_setup.h" - -// ----------------------------------------------------------------------------- -// Macros -// ----------------------------------------------------------------------------- - -#define TTL_INPUT(name, v) \ - NET_REGISTER_DEV(TTL_INPUT, name) \ - PARAM(name.IN, v) - -#define LOGIC_INPUT(name, v, family) \ - NET_REGISTER_DEV(LOGIC_INPUT, name) \ - PARAM(name.IN, v) \ - PARAM(name.MODEL, family) - -#define LOGIC_INPUT8(name, v, family) \ - NET_REGISTER_DEV(LOGIC_INPUT8, name) \ - PARAM(name.IN, v) \ - PARAM(name.MODEL, family) - -#define ANALOG_INPUT(name, v) \ - NET_REGISTER_DEV(ANALOG_INPUT, name) \ - PARAM(name.IN, v) - -#define MAINCLOCK(name, freq) \ - NET_REGISTER_DEVEXT(MAINCLOCK, name, freq) - -#define CLOCK(name, freq) \ - NET_REGISTER_DEV(CLOCK, name) \ - PARAM(name.FREQ, freq) - -#define VARCLOCK(name, n, func) \ - NET_REGISTER_DEV(VARCLOCK, name) \ - PARAM(name.N, n) \ - PARAM(name.FUNC, func) - -#define EXTCLOCK(name, freq, pattern) \ - NET_REGISTER_DEV(EXTCLOCK, name) \ - PARAM(name.FREQ, freq) \ - PARAM(name.PATTERN, pattern) - -#define GNDA() \ - NET_REGISTER_DEV(GNDA, GND) - -#define NC_PIN(name) \ - NET_REGISTER_DEV(NC_PIN, name) - -//FIXME: Usage discouraged, use OPTIMIZE_FRONTIER instead -#define FRONTIER_DEV(name, cIN, cG, cOUT) \ - NET_REGISTER_DEV(FRONTIER_DEV, name) \ - NET_C(cIN, name.I) \ - NET_C(cG, name.G) \ - NET_C(cOUT, name.Q) - -// FIXME ... remove parameters -#define SYS_DSW(name, pI, p1, p2) \ - NET_REGISTER_DEVEXT(SYS_DSW, name, pI, p1, p2) - -#define SYS_DSW2(name) \ - NET_REGISTER_DEV(SYS_DSW2, name) - -#define SYS_COMPD(name) \ - NET_REGISTER_DEV(SYS_COMPD, name) - -#define SYS_NOISE_MT_U(name, pSIGMA) \ - NET_REGISTER_DEVEXT(SYS_NOISE_MT_U, name, pSIGMA) - -#define SYS_NOISE_MT_N(name, pSIGMA) \ - NET_REGISTER_DEVEXT(SYS_NOISE_MT_N, name, pSIGMA) - -/* Default device to hold netlist parameters */ -#define PARAMETERS(name) \ - NET_REGISTER_DEV(PARAMETERS, name) - -#define AFUNC(name, p_N, p_F) \ - NET_REGISTER_DEV(AFUNC, name) \ - PARAM(name.N, p_N) \ - PARAM(name.FUNC, p_F) - - -#endif /* NLD_SYSTEM_H_ */ diff --git a/src/lib/netlist/devices/nld_tms4800.cpp b/src/lib/netlist/devices/nld_tms4800.cpp index abe63edda6e..f9ac6d00715 100644 --- a/src/lib/netlist/devices/nld_tms4800.cpp +++ b/src/lib/netlist/devices/nld_tms4800.cpp @@ -25,7 +25,6 @@ * http://bitsavers.trailing-edge.com/components/ti/_dataBooks/1975_TI_The_Semiconductor_Memory_Data_Book.pdf */ -#include "nld_tms4800.h" #include "nl_base.h" namespace netlist diff --git a/src/lib/netlist/devices/nld_tms4800.h b/src/lib/netlist/devices/nld_tms4800.h deleted file mode 100644 index dc2eaa7a16d..00000000000 --- a/src/lib/netlist/devices/nld_tms4800.h +++ /dev/null @@ -1,14 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Felipe Sanches - -#ifndef NLD_TMS4800_H_ -#define NLD_TMS4800_H_ - -#include "../nl_setup.h" - -// usage : ROM_TMS4800(name, pAR, pOE1, pOE2, pA0, pA1, pA2, pA3, pA4, pA5, pA6, pA7, pA8, pA9, pA10) -// auto connect: VCC, GND -#define ROM_TMS4800(...) \ - NET_REGISTER_DEVEXT(ROM_TMS4800, __VA_ARGS__) - -#endif /* NLD_TMS4800_H_ */ diff --git a/src/lib/netlist/devices/nld_tristate.cpp b/src/lib/netlist/devices/nld_tristate.cpp index 97dbb0a7750..cf4295bb39b 100644 --- a/src/lib/netlist/devices/nld_tristate.cpp +++ b/src/lib/netlist/devices/nld_tristate.cpp @@ -7,7 +7,6 @@ * */ -#include "nld_tristate.h" #include "nl_base.h" // FIXME: netlist now supports proper tristate outputs. All of this is legacy diff --git a/src/lib/netlist/devices/nld_tristate.h b/src/lib/netlist/devices/nld_tristate.h deleted file mode 100644 index 3c60846cb31..00000000000 --- a/src/lib/netlist/devices/nld_tristate.h +++ /dev/null @@ -1,25 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Ryan Holtz - -#ifndef NLD_TRISTATE_H_ -#define NLD_TRISTATE_H_ - -#include "../nl_setup.h" - -#define TTL_TRISTATE(name, cCEQ1, cD1, cCEQ2, cD2) \ - NET_REGISTER_DEV(TTL_TRISTATE, name) \ - NET_CONNECT(name, CEQ1, cCEQ1) \ - NET_CONNECT(name, D1, cD1) \ - NET_CONNECT(name, CEQ2, cCEQ2) \ - NET_CONNECT(name, D2, cD2) - -#define TTL_TRISTATE3(name, cCEQ1, cD1, cCEQ2, cD2, cCEQ3, cD3) \ - NET_REGISTER_DEV(TTL_TRISTATE3, name) \ - NET_CONNECT(name, CEQ1, cCEQ1) \ - NET_CONNECT(name, D1, cD1) \ - NET_CONNECT(name, CEQ2, cCEQ2) \ - NET_CONNECT(name, D2, cD2) \ - NET_CONNECT(name, CEQ3, cCEQ3) \ - NET_CONNECT(name, D3, cD3) - -#endif /* NLD_TRISTATE_H_ */ diff --git a/src/lib/netlist/examples/cmos_inverter.cpp b/src/lib/netlist/examples/cmos_inverter.cpp index 9261a1e5919..022da27d23d 100644 --- a/src/lib/netlist/examples/cmos_inverter.cpp +++ b/src/lib/netlist/examples/cmos_inverter.cpp @@ -7,19 +7,26 @@ #include "netlist/devices/net_lib.h" -#include "netlist/devices/net_lib.h" NETLIST_START(cmos_inverter) /* Standard stuff */ + //EXTERNAL_SOURCE(modules_lib) + + //INCLUDE(modules_lib) + SOLVER(Solver, 48000) PARAM(Solver.ACCURACY, 1e-7) - PARAM(Solver.NR_LOOPS, 5000) + PARAM(Solver.NR_LOOPS, 50) PARAM(Solver.METHOD, "MAT_CR") ANALOG_INPUT(V5, 5) + RTEST(X) + NET_C(X.1, V5) + NET_C(X.2, GND) + VS(IN, 5) - PARAM(IN.FUNC, "T 5 *") + PARAM(IN.FUNC, "T * 5") MOSFET(P, "PMOS(VTO=-1.0 KP=2e-3 LAMBDA=2E-2)") MOSFET(M, "NMOS(VTO=1.0 KP=2e-3 LAMBDA=2E-2)") diff --git a/src/lib/netlist/examples/cmos_inverter_clk.cpp b/src/lib/netlist/examples/cmos_inverter_clk.cpp index 7429b077245..d115867d9ee 100644 --- a/src/lib/netlist/examples/cmos_inverter_clk.cpp +++ b/src/lib/netlist/examples/cmos_inverter_clk.cpp @@ -7,7 +7,6 @@ #include "netlist/devices/net_lib.h" -#include "netlist/devices/net_lib.h" #define USE_CLOCK (1) @@ -18,10 +17,10 @@ NETLIST_START(cmos_inverter_clk) SOLVER(Solver, 1e5) //SOLVER(Solver, 100000000000) PARAM(Solver.ACCURACY, 1e-6 ) - PARAM(Solver.NR_LOOPS, 500000) + PARAM(Solver.NR_LOOPS, 50) PARAM(Solver.DYNAMIC_TS, 1) PARAM(Solver.DYNAMIC_LTE, 1e-5) - PARAM(Solver.DYNAMIC_MIN_TIMESTEP, 2e-9) + PARAM(Solver.DYNAMIC_MIN_TIMESTEP, 2e-6) ANALOG_INPUT(V5, 5) // CLOCK(clk, 0.5e6) diff --git a/src/lib/netlist/generated/nld_devinc.h b/src/lib/netlist/generated/nld_devinc.h index f5b14563db8..f5b14563db8 100644..100755 --- a/src/lib/netlist/generated/nld_devinc.h +++ b/src/lib/netlist/generated/nld_devinc.h diff --git a/src/lib/netlist/generated/nlm_modules_lib.cpp b/src/lib/netlist/generated/nlm_modules_lib.cpp new file mode 100755 index 00000000000..d9fe63979d9 --- /dev/null +++ b/src/lib/netlist/generated/nlm_modules_lib.cpp @@ -0,0 +1,12 @@ +// license:CC0 +// copyright-holders:Couriersud + +// File programmatically created Sat Sep 12 14:42:49 2020 + +#include "devices/net_lib.h" + +NETLIST_START(modules_lib) + + EXTERNAL_LIB_ENTRY(RTEST) + +NETLIST_END() diff --git a/src/lib/netlist/macro/modules/nlmod_RTEST.cpp b/src/lib/netlist/macro/modules/nlmod_RTEST.cpp new file mode 100644 index 00000000000..c2ad129c6e3 --- /dev/null +++ b/src/lib/netlist/macro/modules/nlmod_RTEST.cpp @@ -0,0 +1,12 @@ +// license:CC0 +// copyright-holders:Couriersud + +#include "devices/net_lib.h" + +NETLIST_START(RTEST) + + RES(R1, RES_K(10)) + ALIAS(1, R1.1) + ALIAS(2, R1.2) + +NETLIST_END() diff --git a/src/lib/netlist/macro/nlm_base_lib.cpp b/src/lib/netlist/macro/nlm_base_lib.cpp index d4caef36850..2e634b29e2c 100644 --- a/src/lib/netlist/macro/nlm_base_lib.cpp +++ b/src/lib/netlist/macro/nlm_base_lib.cpp @@ -3,16 +3,6 @@ #include "devices/net_lib.h" /* ---------------------------------------------------------------------------- - * External declarations - * ---------------------------------------------------------------------------*/ - -NETLIST_EXTERNAL(cd4xxx_lib) -NETLIST_EXTERNAL(opamp_lib) -NETLIST_EXTERNAL(otheric_lib) -NETLIST_EXTERNAL(ttl74xx_lib) -NETLIST_EXTERNAL(roms_lib) - -/* ---------------------------------------------------------------------------- * Diode Models * ---------------------------------------------------------------------------*/ @@ -123,6 +113,8 @@ NETLIST_START(base_lib) EXTERNAL_SOURCE(otheric_lib) EXTERNAL_SOURCE(roms_lib) + EXTERNAL_SOURCE(modules_lib) + INCLUDE(diode_models) INCLUDE(bjt_models) INCLUDE(mosfet_models) @@ -134,5 +126,7 @@ NETLIST_START(base_lib) INCLUDE(otheric_lib) INCLUDE(roms_lib) + INCLUDE(modules_lib) + NETLIST_END() diff --git a/src/lib/netlist/macro/nlm_base_lib.h b/src/lib/netlist/macro/nlm_base_lib.h deleted file mode 100644 index 098a0e3b43e..00000000000 --- a/src/lib/netlist/macro/nlm_base_lib.h +++ /dev/null @@ -1,34 +0,0 @@ -// license:CC0 -// copyright-holders:Couriersud -#ifndef NLM_BASE_H_ -#define NLM_BASE_H_ - -/// \file nlm_base.h -/// - -/* - * Provide base environment for netlist - * - */ - -#ifndef __PLIB_PREPROCESSOR__ - -#include "../nl_setup.h" - -/* ---------------------------------------------------------------------------- - * Netlist Macros - * ---------------------------------------------------------------------------*/ - -/* ---------------------------------------------------------------------------- - * DIP only macros - * ---------------------------------------------------------------------------*/ - -/* ---------------------------------------------------------------------------- - * External declarations - * ---------------------------------------------------------------------------*/ - -NETLIST_EXTERNAL(base_lib) - -#endif - -#endif diff --git a/src/lib/netlist/macro/nlm_cd4xxx_lib.h b/src/lib/netlist/macro/nlm_cd4xxx_lib.h deleted file mode 100644 index e0cf433457b..00000000000 --- a/src/lib/netlist/macro/nlm_cd4xxx_lib.h +++ /dev/null @@ -1,107 +0,0 @@ -// license:CC0 -// copyright-holders:Couriersud -#ifndef NLD_CD4XXX_H_ -#define NLD_CD4XXX_H_ - -/// \file nlm_cd4xxx.h -/// - -#include "../nl_setup.h" - -/* - * Devices: - * - * CD4001_NOR : single gate - * CD4001_DIP : dip package - * CD4013_DIP : dip package (device model in core) - * CD4020_DIP : dip package (device model in core) - * CD4024_DIP : dip package (device model in core) - * CD4016_DIP : dip package (device model in core) - * CD4053_DIP : dip package (device model in core) - * CD4066_DIP : dip package (device model in core) - * - */ - -#ifndef __PLIB_PREPROCESSOR__ - -/* ---------------------------------------------------------------------------- - * Netlist Macros - * ---------------------------------------------------------------------------*/ - -#if !NL_AUTO_DEVICES - -#define CD4001_GATE(name) \ - NET_REGISTER_DEV(CD4001_GATE, name) - -#define CD4001_DIP(name) \ - NET_REGISTER_DEV(CD4001_DIP, name) - -#define CD4011_GATE(name) \ - NET_REGISTER_DEV(CD4011_GATE, name) - -#define CD4011_DIP(name) \ - NET_REGISTER_DEV(CD4011_DIP, name) - -#define CD4069_GATE(name) \ - NET_REGISTER_DEV(CD4069_GATE, name) - -#define CD4069_DIP(name) \ - NET_REGISTER_DEV(CD4069_DIP, name) - -#define CD4070_GATE(name) \ - NET_REGISTER_DEV(CD4070_GATE, name) - -#define CD4070_DIP(name) \ - NET_REGISTER_DEV(CD4070_DIP, name) - -/* ---------------------------------------------------------------------------- - * DIP only macros - * ---------------------------------------------------------------------------*/ - -#define CD4006_DIP(name) \ - NET_REGISTER_DEV(CD4006_DIP, name) - -#define CD4013_DIP(name) \ - NET_REGISTER_DEV(CD4013_DIP, name) - -#define CD4017_DIP(name) \ - NET_REGISTER_DEV(CD4017_DIP, name) - -#define CD4022_DIP(name) \ - NET_REGISTER_DEV(CD4022_DIP, name) - -#define CD4020_DIP(name) \ - NET_REGISTER_DEV(CD4020_DIP, name) - -#define CD4024_DIP(name) \ - NET_REGISTER_DEV(CD4024_DIP, name) - -#define CD4053_DIP(name) \ - NET_REGISTER_DEV(CD4053_DIP, name) - -#define CD4066_DIP(name) \ - NET_REGISTER_DEV(CD4066_DIP, name) - -#define CD4016_DIP(name) \ - NET_REGISTER_DEV(CD4016_DIP, name) - -#define CD4316_DIP(name) \ - NET_REGISTER_DEV(CD4016_DIP, name) - -#define CD4538_DIP(name) \ - NET_REGISTER_DEV(CD4538_DIP, name) - -#define MM5837_DIP(name) \ - NET_REGISTER_DEV(MM5837_DIP, name) - -#endif // !NL_AUTO_DEVICES - -/* ---------------------------------------------------------------------------- - * External declarations - * ---------------------------------------------------------------------------*/ - -// moved to net_lib.h - -#endif - -#endif // NLD_CD4XXX_H_ diff --git a/src/lib/netlist/macro/nlm_opamp_lib.h b/src/lib/netlist/macro/nlm_opamp_lib.h deleted file mode 100644 index 3e17d67a7ab..00000000000 --- a/src/lib/netlist/macro/nlm_opamp_lib.h +++ /dev/null @@ -1,79 +0,0 @@ -// license:CC0 -// copyright-holders:Couriersud - -#ifndef NLM_OPAMP_H_ -#define NLM_OPAMP_H_ - -/// -/// \file nlm_opamp.h -/// - -#include "../nl_setup.h" - -#ifndef __PLIB_PREPROCESSOR__ - -/* ---------------------------------------------------------------------------- - * Netlist Macros - * ---------------------------------------------------------------------------*/ - -#if !NL_AUTO_DEVICES - -#define MB3614_DIP(name) \ - NET_REGISTER_DEV(MB3614_DIP, name) - -#define LM324_DIP(name) \ - NET_REGISTER_DEV(LM324_DIP, name) - -#define TL081_DIP(name) \ - NET_REGISTER_DEV(TL081_DIP, name) - -#define TL082_DIP(name) \ - NET_REGISTER_DEV(TL082_DIP, name) - -#define TL084_DIP(name) \ - NET_REGISTER_DEV(TL084_DIP, name) - -#define LM2902_DIP(name) \ - NET_REGISTER_DEV(LM2902_DIP, name) - -#define LM358_DIP(name) \ - NET_REGISTER_DEV(LM358_DIP, name) - -#define LM3900(name) \ - NET_REGISTER_DEV(LM3900, name) - -#define UA741_DIP8(name) \ - NET_REGISTER_DEV(UA741_DIP8, name) - -#define UA741_DIP10(name) \ - NET_REGISTER_DEV(UA741_DIP10, name) - -#define UA741_DIP14(name) \ - NET_REGISTER_DEV(UA741_DIP14, name) - -#define MC1558_DIP(name) \ - NET_REGISTER_DEV(MC1558_DIP, name) - -#define LM747_DIP(name) \ - NET_REGISTER_DEV(LM747_DIP, name) - -#define LM747A_DIP(name) \ - NET_REGISTER_DEV(LM747A_DIP, name) - -#define MC3340_DIP(name) \ - NET_REGISTER_DEV(MC3340_DIP, name) - -#define AN6551_SIL(name) \ - NET_REGISTER_DEV(AN6551_SIL, name) - -#endif // NL_AUTO_DEVICES - -/* ---------------------------------------------------------------------------- - * External declarations - * ---------------------------------------------------------------------------*/ - -// moved to net_lib.h - -#endif // __PLIB_PREPROCESSOR__ - -#endif diff --git a/src/lib/netlist/macro/nlm_otheric_lib.h b/src/lib/netlist/macro/nlm_otheric_lib.h deleted file mode 100644 index bba6997f39a..00000000000 --- a/src/lib/netlist/macro/nlm_otheric_lib.h +++ /dev/null @@ -1,48 +0,0 @@ -// license:CC0 -// copyright-holders:Couriersud - -#ifndef NLM_OTHER_H_ -#define NLM_OTHER_H_ - -/// -/// \file nlm_other.h -/// -/// -#include "../nl_setup.h" - -#ifndef __PLIB_PREPROCESSOR__ - -/* ---------------------------------------------------------------------------- - * Netlist Macros - * ---------------------------------------------------------------------------*/ - -#if !NL_AUTO_DEVICES - -#define MC14584B_GATE(name) \ - NET_REGISTER_DEV(MC14584B_GATE, name) - -#define MC14584B_DIP(name) \ - NET_REGISTER_DEV(MC14584B_DIP, name) - -#define NE566_DIP(name) \ - NET_REGISTER_DEV(NE566_DIP, name) - -// usage : NE555_DIP(name) -#define NE555_DIP(...) \ - NET_REGISTER_DEVEXT(NE555_DIP, __VA_ARGS__) - -// usage : MC1455P_DIP(name) -#define MC1455P_DIP(...) \ - NET_REGISTER_DEVEXT(MC1455P_DIP, __VA_ARGS__) - -#endif - -/* ---------------------------------------------------------------------------- - * External declarations - * ---------------------------------------------------------------------------*/ - -// moved to net_lib.h - -#endif - -#endif diff --git a/src/lib/netlist/macro/nlm_roms_lib.h b/src/lib/netlist/macro/nlm_roms_lib.h deleted file mode 100644 index f2efc1d82ba..00000000000 --- a/src/lib/netlist/macro/nlm_roms_lib.h +++ /dev/null @@ -1,60 +0,0 @@ -// license:CC0 -// copyright-holders:Couriersud - -#ifndef NLM_ROMS_H_ -#define NLM_ROMS_H_ - -/// -/// \file nlm_roms.h -/// - -#include "../nl_setup.h" - -#ifndef __PLIB_PREPROCESSOR__ - -/* ---------------------------------------------------------------------------- - * Netlist Macros - * ---------------------------------------------------------------------------*/ - -#if !NL_AUTO_DEVICES - -#define PROM_82S115_DIP(name) \ - NET_REGISTER_DEV(PROM_82S115_DIP, name) - -#define PROM_82S126_DIP(name) \ - NET_REGISTER_DEV(PROM_82S126_DIP, name) - -#define PROM_82S123_DIP(name) \ - NET_REGISTER_DEV(PROM_82S123_DIP, name) - -#define PROM_74S287_DIP(name) \ - NET_REGISTER_DEV(PROM_74S287_DIP, name) - -#define PROM_MK28000_DIP(name) \ - NET_REGISTER_DEV(PROM_MK28000_DIP, name) - -#define EPROM_2716_DIP(name) \ - NET_REGISTER_DEV(EPROM_2716_DIP, name) - -// usage : TTL_82S16_DIP(name) -#define TTL_82S16_DIP(...) \ - NET_REGISTER_DEVEXT(TTL_82S16_DIP, __VA_ARGS__) - -#define RAM_2102A_DIP(name) \ - NET_REGISTER_DEV(RAM_2102A_DIP, name) - -#define ROM_TMS4800_DIP(name) \ - NET_REGISTER_DEV(ROM_TMS4800, name) - -#endif // NL_AUTO_DEVICES - - -/* ---------------------------------------------------------------------------- - * External declarations - * ---------------------------------------------------------------------------*/ - -// moved to net_lib.h - -#endif // __PLIB_PREPROCESSOR__ - -#endif diff --git a/src/lib/netlist/macro/nlm_ttl74xx_lib.cpp b/src/lib/netlist/macro/nlm_ttl74xx_lib.cpp index c96310d7f80..bb95592825c 100644 --- a/src/lib/netlist/macro/nlm_ttl74xx_lib.cpp +++ b/src/lib/netlist/macro/nlm_ttl74xx_lib.cpp @@ -2235,12 +2235,6 @@ NETLIST_END() //- +-----+-----+----++---+ //- #ifndef __PLIB_PREPROCESSOR__ -#if !NL_AUTO_DEVICES -#define TTL_74279A(name) \ - NET_REGISTER_DEV(TTL_74279A, name) -#define TTL_74279B(name) \ - NET_REGISTER_DEV(TTL_74279B, name) -#endif #endif static NETLIST_START(TTL_74279_DIP) diff --git a/src/lib/netlist/macro/nlm_ttl74xx_lib.h b/src/lib/netlist/macro/nlm_ttl74xx_lib.h deleted file mode 100644 index a077c5e7edf..00000000000 --- a/src/lib/netlist/macro/nlm_ttl74xx_lib.h +++ /dev/null @@ -1,347 +0,0 @@ -// license:CC0 -// copyright-holders:Couriersud - -#ifndef NLM_TTL74XX_H_ -#define NLM_TTL74XX_H_ - -/// -/// \file nlm_ttl74xx.h -/// - -#include "../nl_setup.h" - -#ifndef __PLIB_PREPROCESSOR__ - -/* ---------------------------------------------------------------------------- - * Netlist Macros - * ---------------------------------------------------------------------------*/ - -#if !NL_AUTO_DEVICES - -#define TTL_7400_NAND(...) \ - NET_REGISTER_DEVEXT(TTL_7400_NAND, __VA_ARGS__) - -#define TTL_7400_DIP(name) \ - NET_REGISTER_DEV(TTL_7400_DIP, name) - - -#define TTL_7402_NOR(...) \ - NET_REGISTER_DEVEXT(TTL_7402_NOR, __VA_ARGS__) - -#define TTL_7402_DIP(name) \ - NET_REGISTER_DEV(TTL_7402_DIP, name) - -#define TTL_7404_INVERT(...) \ - NET_REGISTER_DEVEXT(TTL_7404_INVERT, __VA_ARGS__) - -#define TTL_7404_DIP(name) \ - NET_REGISTER_DEV(TTL_7404_DIP, name) - - -#define TTL_7406_GATE(name) \ - NET_REGISTER_DEV(TTL_7406_GATE, name) - -#define TTL_7406_DIP(name) \ - NET_REGISTER_DEV(TTL_7406_DIP, name) - - -#define TTL_7407_GATE(name) \ - NET_REGISTER_DEV(TTL_7407_GATE, name) - -#define TTL_7407_DIP(name) \ - NET_REGISTER_DEV(TTL_7407_DIP, name) - - -#define TTL_7408_AND(...) \ - NET_REGISTER_DEVEXT(TTL_7408_AND, __VA_ARGS__) - -#define TTL_7408_DIP(name) \ - NET_REGISTER_DEV(TTL_7408_DIP, name) - - -#define TTL_7410_NAND(...) \ - NET_REGISTER_DEVEXT(TTL_7410_NAND, __VA_ARGS__) - -#define TTL_7410_DIP(name) \ - NET_REGISTER_DEV(TTL_7410_DIP, name) - - -#define TTL_7411_AND(...) \ - NET_REGISTER_DEVEXT(TTL_7411_AND, __VA_ARGS__) - -#define TTL_7411_DIP(name) \ - NET_REGISTER_DEV(TTL_7411_DIP, name) - - -#define TTL_7414_GATE(name) \ - NET_REGISTER_DEV(TTL_7414_GATE, name) - -#define TTL_7414_DIP(name) \ - NET_REGISTER_DEV(TTL_7414_DIP, name) - - -#define TTL_74LS14_GATE(name) \ - NET_REGISTER_DEV(TTL_74LS14_GATE, name) - -#define TTL_74LS14_DIP(name) \ - NET_REGISTER_DEV(TTL_74LS14_DIP, name) - - -#define TTL_7416_GATE(name) \ - NET_REGISTER_DEV(TTL_7416_GATE, name) - -#define TTL_7416_DIP(name) \ - NET_REGISTER_DEV(TTL_7416_DIP, name) - - -#define TTL_7417_GATE(name) \ - NET_REGISTER_DEV(TTL_7417_GATE, name) - -#define TTL_7417_DIP(name) \ - NET_REGISTER_DEV(TTL_7417_DIP, name) - - -#define TTL_7420_NAND(...) \ - NET_REGISTER_DEVEXT(TTL_7420_NAND, __VA_ARGS__) - -#define TTL_7420_DIP(name) \ - NET_REGISTER_DEV(TTL_7420_DIP, name) - - -#define TTL_7421_AND(...) \ - NET_REGISTER_DEVEXT(TTL_7421_AND, __VA_ARGS__) - -#define TTL_7421_DIP(name) \ - NET_REGISTER_DEV(TTL_7421_DIP, name) - - -#define TTL_7425_NOR(...) \ - NET_REGISTER_DEVEXT(TTL_7425_NOR, __VA_ARGS__) - -#define TTL_7425_DIP(name) \ - NET_REGISTER_DEV(TTL_7425_DIP, name) - - -#define TTL_7427_NOR(...) \ - NET_REGISTER_DEVEXT(TTL_7427_NOR, __VA_ARGS__) - -#define TTL_7427_DIP(name) \ - NET_REGISTER_DEV(TTL_7427_DIP, name) - - -#define TTL_7430_NAND(...) \ - NET_REGISTER_DEVEXT(TTL_7430_NAND, __VA_ARGS__) - -#define TTL_7430_DIP(name) \ - NET_REGISTER_DEV(TTL_7430_DIP, name) - - -#define TTL_7432_OR(...) \ - NET_REGISTER_DEVEXT(TTL_7432_OR, __VA_ARGS__) - -#define TTL_7432_DIP(name) \ - NET_REGISTER_DEV(TTL_7432_DIP, name) - - -#define TTL_7437_NAND(...) \ - NET_REGISTER_DEVEXT(TTL_7437_NAND, __VA_ARGS__) - -#define TTL_7437_DIP(name) \ - NET_REGISTER_DEV(TTL_7437_DIP, name) - -#define TTL_7438_NAND(...) \ - NET_REGISTER_DEVEXT(TTL_7438_NAND, __VA_ARGS__) - -#define TTL_7438_DIP(name) \ - NET_REGISTER_DEV(TTL_7438_DIP, name) - - -#define TTL_7442_DIP(name) \ - NET_REGISTER_DEV(TTL_7442_DIP, name) - -#define TTL_7448_DIP(name) \ - NET_REGISTER_DEV(TTL_7448_DIP, name) - -#define TTL_7450_DIP(name) \ - NET_REGISTER_DEV(TTL_7450_DIP, name) - -#define TTL_7473_DIP(name) \ - NET_REGISTER_DEV(TTL_7473_DIP, name) - -#define TTL_7473A_DIP(name) \ - NET_REGISTER_DEV(TTL_7473A_DIP, name) - -#define TTL_7474_DIP(name) \ - NET_REGISTER_DEV(TTL_7474_DIP, name) - -#define TTL_7475_DIP(name) \ - NET_REGISTER_DEV(TTL_7475_DIP, name) - -#define TTL_7477_DIP(name) \ - NET_REGISTER_DEV(TTL_7477_DIP, name) - -#define TTL_7483_DIP(name) \ - NET_REGISTER_DEV(TTL_7483_DIP, name) - -#define TTL_7485_DIP(name) \ - NET_REGISTER_DEV(TTL_7485_DIP, name) - -#define TTL_7486_XOR(...) \ - NET_REGISTER_DEVEXT(TTL_7486_XOR, __VA_ARGS__) - -#define TTL_7486_DIP(name) \ - NET_REGISTER_DEV(TTL_7486_DIP, name) - -#define TTL_7490_DIP(name) \ - NET_REGISTER_DEV(TTL_7490_DIP, name) - -#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) - -#define TTL_74107_DIP(name) \ - NET_REGISTER_DEV(TTL_74107_DIP, name) - -#define TTL_74107A_DIP(name) \ - NET_REGISTER_DEV(TTL_74107A_DIP, name) - -#define TTL_74113_DIP(name) \ - NET_REGISTER_DEV(TTL_74113_DIP, name) - -#define TTL_74113A_DIP(name) \ - NET_REGISTER_DEV(TTL_74113A_DIP, name) - -#define TTL_74121_DIP(name) \ - NET_REGISTER_DEV(TTL_74121_DIP, name) - -#define TTL_74123_DIP(name) \ - NET_REGISTER_DEV(TTL_74123_DIP, name) - -#define TTL_9602_DIP(name) \ - NET_REGISTER_DEV(TTL_9602_DIP, name) - -#define TTL_74125_DIP(name) \ - NET_REGISTER_DEV(TTL_74125_DIP, name) - -#define TTL_74139_DIP(name) \ - NET_REGISTER_DEV(TTL_74139_DIP, name) - -#define TTL_74153_DIP(name) \ - NET_REGISTER_DEV(TTL_74153_DIP, name) - -#define TTL_74155_DIP(name) \ - NET_REGISTER_DEV(TTL_74155_DIP, name) - -#define TTL_74156_DIP(name) \ - NET_REGISTER_DEV(TTL_74156_DIP, name) - -#define TTL_74157_DIP(name) \ - NET_REGISTER_DEV(TTL_74157_DIP, name) - -#define TTL_74161_DIP(name) \ - NET_REGISTER_DEV(TTL_74161_DIP, name) - -#define TTL_74163_DIP(name) \ - NET_REGISTER_DEV(TTL_74163_DIP, name) - -#define TTL_74164_DIP(name) \ - NET_REGISTER_DEV(TTL_74164_DIP, name) - -#define TTL_74165_DIP(name) \ - NET_REGISTER_DEV(TTL_74165_DIP, name) - -#define TTL_74166_DIP(name) \ - NET_REGISTER_DEV(TTL_74166_DIP, name) - -#define TTL_74174_DIP(name) \ - NET_REGISTER_DEV(TTL_74174_DIP, name) - -#define TTL_74175_DIP(name) \ - NET_REGISTER_DEV(TTL_74175_DIP, name) - -#define TTL_74192_DIP(name) \ - NET_REGISTER_DEV(TTL_74192_DIP, name) - -#define TTL_74193_DIP(name) \ - NET_REGISTER_DEV(TTL_74193_DIP, name) - -#define TTL_74194_DIP(name) \ - NET_REGISTER_DEV(TTL_74194_DIP, name) - -#define TTL_74260_NOR(...) \ - NET_REGISTER_DEVEXT(TTL_74260_NOR, __VA_ARGS__) - -#define TTL_74260_DIP(name) \ - NET_REGISTER_DEV(TTL_74260_DIP, name) - -#define TTL_74279_DIP(name) \ - NET_REGISTER_DEV(TTL_74279_DIP, name) - -#define TTL_74290_DIP(name) \ - NET_REGISTER_DEV(TTL_74290_DIP, name) - -#define TTL_74293_DIP(name) \ - NET_REGISTER_DEV(TTL_74293_DIP, name) - -#define TTL_74365_DIP(name) \ - NET_REGISTER_DEV(TTL_74365_DIP, name) - -#define TTL_74377_DIP(name) \ - NET_REGISTER_DEV(TTL_74377_DIP, name) - -#define TTL_74378_DIP(name) \ - NET_REGISTER_DEV(TTL_74378_DIP, name) - -#define TTL_74379_DIP(name) \ - NET_REGISTER_DEV(TTL_74379_DIP, name) - -#define TTL_74393_DIP(name) \ - NET_REGISTER_DEV(TTL_74393_DIP, name) - -#define TTL_9312(...) \ - NET_REGISTER_DEVEXT(TTL_9312, __VA_ARGS__) - -#define TTL_9312_DIP(name) \ - NET_REGISTER_DEV(TTL_9312_DIP, name) - -#define TTL_9314_DIP(name) \ - NET_REGISTER_DEV(TTL_9314_DIP, name) - -#define TTL_9310_DIP(name) \ - NET_REGISTER_DEV(TTL_9310_DIP, name) - -#define TTL_9316_DIP(name) \ - NET_REGISTER_DEV(TTL_9316_DIP, name) - -#define TTL_9321_DIP(name) \ - NET_REGISTER_DEV(TTL_9321_DIP, name) - -#define TTL_9322_DIP(name) \ - NET_REGISTER_DEV(TTL_9322_DIP, name) - -#define TTL_9334_DIP(name) \ - NET_REGISTER_DEV(TTL_9334_DIP, name) - -#define TTL_8277_DIP(name) \ - NET_REGISTER_DEV(TTL_8277_DIP, name) - -#define TTL_AM2847_DIP(name) \ - NET_REGISTER_DEV(TTL_AM2847_DIP, name) - -#endif // NL_AUTO_DEVICES - -/* ---------------------------------------------------------------------------- - * External declarations - * ---------------------------------------------------------------------------*/ - -// moved to net_lib.h - -#endif // __PLIB_PREPROCESSOR__ - - -#endif // NLM_TTL74XX diff --git a/src/lib/netlist/nl_base.cpp b/src/lib/netlist/nl_base.cpp index d3da7ec899b..a4510fe5765 100644 --- a/src/lib/netlist/nl_base.cpp +++ b/src/lib/netlist/nl_base.cpp @@ -1,7 +1,6 @@ // license:GPL-2.0+ // copyright-holders:Couriersud -#include "macro/nlm_base_lib.h" #include "solver/nld_matrix_solver.h" #include "solver/nld_solver.h" @@ -17,6 +16,8 @@ #include "nl_errstr.h" +#include "devices/net_lib.h" + #include <limits> namespace netlist @@ -136,9 +137,13 @@ namespace netlist m_setup->parser().add_include<plib::psource_str_t>("devices/net_lib.h", content); #if 1 NETLIST_NAME(base_lib)(m_setup->parser()); + //m_setup->parser().register_source<source_pattern_t>("../macro/modules/nlmod_{1}.cpp"); + //m_setup->parser().register_source<source_pattern_t>("../macro/nlm_{1}.cpp"); #else #if 1 m_setup->parser().register_source<source_pattern_t>("src/lib/netlist/macro/nlm_{1}.cpp"); + m_setup->parser().register_source<source_pattern_t>("src/lib/netlist/generated/nlm_{1}.cpp"); + m_setup->parser().register_source<source_pattern_t>("src/lib/netlist/macro/modules/nlmod_{1}.cpp"); m_setup->parser().include("base_lib"); #else // FIXME: This is very slow - need optimized parsing scanning @@ -209,7 +214,6 @@ namespace netlist ENTRY(NL_USE_MEMPOOL) ENTRY(NL_USE_QUEUE_STATS) ENTRY(NL_USE_COPY_INSTEAD_OF_REFERENCE) - ENTRY(NL_AUTO_DEVICES) ENTRY(NL_USE_FLOAT128) ENTRY(NL_USE_FLOAT_MATRIX) ENTRY(NL_USE_LONG_DOUBLE_MATRIX) diff --git a/src/lib/netlist/nl_config.h b/src/lib/netlist/nl_config.h index 4ffba2364fd..6d4c572eb08 100644 --- a/src/lib/netlist/nl_config.h +++ b/src/lib/netlist/nl_config.h @@ -19,7 +19,7 @@ /// /// \brief Version - Minor. /// -#define NL_VERSION_MINOR 13 +#define NL_VERSION_MINOR 14 /// \brief Version - Patch level. /// #define NL_VERSION_PATCHLEVEL 0 diff --git a/src/lib/netlist/nl_errstr.h b/src/lib/netlist/nl_errstr.h index db15fccd6c8..4b44fb7b963 100644 --- a/src/lib/netlist/nl_errstr.h +++ b/src/lib/netlist/nl_errstr.h @@ -52,6 +52,7 @@ namespace netlist //PERRMSGV(MF_PARAM_NOT_FP_1, 1, "Parameter value <{1}> not floating point") PERRMSGV(MF_TT_LINE_WITHOUT_HEAD, 0, "TT_LINE found without TT_HEAD") PERRMSGV(MF_LOCAL_SOURCE_NOT_FOUND_1, 1, "Local source not found: <{1}>") + PERRMSGV(MF_EXTERNAL_SOURCE_IS_LOCAL_1, 1, "External lib entry appears as a local one: <{1}>") PERRMSGV(MF_TRUTHTABLE_NOT_FOUND_1, 1, "Truthtable not found: <{1}>") // nl_setup.cpp diff --git a/src/lib/netlist/nl_parser.cpp b/src/lib/netlist/nl_parser.cpp index f032a50076e..d5823d2e930 100644 --- a/src/lib/netlist/nl_parser.cpp +++ b/src/lib/netlist/nl_parser.cpp @@ -44,6 +44,7 @@ parser_t::parser_t(nlparse_t &setup) m_tok_INCLUDE = m_tokenizer.register_token("INCLUDE"); m_tok_LOCAL_SOURCE = m_tokenizer.register_token("LOCAL_SOURCE"); m_tok_LOCAL_LIB_ENTRY = m_tokenizer.register_token("LOCAL_LIB_ENTRY"); + m_tok_EXTERNAL_LIB_ENTRY = m_tokenizer.register_token("EXTERNAL_LIB_ENTRY"); m_tok_SUBMODEL = m_tokenizer.register_token("SUBMODEL"); m_tok_NETLIST_START = m_tokenizer.register_token("NETLIST_START"); m_tok_NETLIST_END = m_tokenizer.register_token("NETLIST_END"); @@ -141,6 +142,8 @@ bool parser_t::parse(const token_store &tokstor, const pstring &nlname) //m_cur_local->push_back(token_t(m_tok_paren_right)); in_nl = true; } + // FIXME: do we really need this going forward ? there should be no need + // for NETLIST_EXTERNAL in netlist files else if (token.is(m_tok_NETLIST_EXTERNAL)) { if (in_nl) @@ -197,17 +200,10 @@ void parser_t::parse_netlist(const pstring &nlname) net_local_source(); else if (token.is(m_tok_EXTERNAL_SOURCE)) net_external_source(); - //else if (token.is(m_tok_TRUTHTABLE_START)) - // net_truthtable_start(nlname); else if (token.is(m_tok_LOCAL_LIB_ENTRY)) - { - require_token(m_tok_paren_left); - pstring name(get_identifier()); - register_local_as_source(name); - // FIXME: Need to pass in parameter definition FIXME: get line number right - m_setup.register_lib_entry(name, "", plib::source_location("parser: " + nlname, 1)); - require_token(m_tok_paren_right); - } + net_lib_entry(true); + else if (token.is(m_tok_EXTERNAL_LIB_ENTRY)) + net_lib_entry(false); else if (token.is(m_tok_TRUTHTABLE_ENTRY)) { require_token(m_tok_paren_left); @@ -232,6 +228,21 @@ void parser_t::parse_netlist(const pstring &nlname) } } +void parser_t::net_lib_entry(bool is_local) +{ + require_token(m_tok_paren_left); + pstring name(get_identifier()); + + if (is_local) + register_local_as_source(name); + else if (m_local.find(name) != m_local.end()) + error(MF_EXTERNAL_SOURCE_IS_LOCAL_1(name)); + + // FIXME: Need to pass in parameter definition FIXME: get line number right + m_setup.register_lib_entry(name, "", sourceloc()); + require_token(m_tok_paren_right); +} + void parser_t::net_truthtable_start(const pstring &nlname) { bool head_found(false); @@ -282,7 +293,7 @@ void parser_t::net_truthtable_start(const pstring &nlname) require_token(m_tok_paren_left); require_token(m_tok_paren_right); // FIXME: proper location - m_setup.truthtable_create(desc, def_param, plib::source_location(nlname, 1)); + m_setup.truthtable_create(desc, def_param, sourceloc()); return; } } @@ -355,9 +366,7 @@ void parser_t::register_local_as_source(const pstring &name) { auto p = m_local.find(name); if (p != m_local.end()) - { m_setup.register_source<source_token_t>(name, p->second); - } else error(MF_LOCAL_SOURCE_NOT_FOUND_1(name)); } diff --git a/src/lib/netlist/nl_parser.h b/src/lib/netlist/nl_parser.h index d186effc57c..aafe0911a2e 100644 --- a/src/lib/netlist/nl_parser.h +++ b/src/lib/netlist/nl_parser.h @@ -45,6 +45,7 @@ namespace netlist void net_include(); void net_local_source(); void net_external_source(); + void net_lib_entry(bool is_local); void net_register_dev(); void net_truthtable_start(const pstring &nlname); @@ -75,6 +76,7 @@ namespace netlist token_id_t m_tok_EXTERNAL_SOURCE; token_id_t m_tok_LOCAL_SOURCE; token_id_t m_tok_LOCAL_LIB_ENTRY; + token_id_t m_tok_EXTERNAL_LIB_ENTRY; token_id_t m_tok_TRUTHTABLE_START; token_id_t m_tok_TRUTHTABLE_END; token_id_t m_tok_TRUTHTABLE_ENTRY; diff --git a/src/lib/netlist/nl_setup.cpp b/src/lib/netlist/nl_setup.cpp index d4b3de2c0fb..b2ade9d48ce 100644 --- a/src/lib/netlist/nl_setup.cpp +++ b/src/lib/netlist/nl_setup.cpp @@ -2,7 +2,6 @@ // copyright-holders:Couriersud #include "plib/palloc.h" -#include "analog/nld_twoterm.h" #include "core/setup.h" #include "devices/nlid_proxy.h" #include "devices/nlid_truthtable.h" diff --git a/src/lib/netlist/nl_setup.h b/src/lib/netlist/nl_setup.h index 4e9b01dac22..7f6988f2951 100644 --- a/src/lib/netlist/nl_setup.h +++ b/src/lib/netlist/nl_setup.h @@ -8,8 +8,6 @@ #ifndef NLSETUP_H_ #define NLSETUP_H_ -#define NL_AUTO_DEVICES 0 - #include "plib/ppreprocessor.h" #include "plib/psource.h" #include "plib/pstream.h" @@ -82,17 +80,20 @@ void NETLIST_NAME(name)(netlist::nlparse_t &setup) \ setup.register_source_proc(# name, &NETLIST_NAME(name)); #define EXTERNAL_SOURCE(name) \ + NETLIST_EXTERNAL(name) \ setup.register_source_proc(# name, &NETLIST_NAME(name)); -#define LOCAL_LIB_ENTRY_1(name) \ - LOCAL_SOURCE(name) \ +#define LOCAL_LIB_ENTRY_2(type, name) \ + type ## _SOURCE(name) \ setup.register_lib_entry(# name, "", PSOURCELOC()); -#define LOCAL_LIB_ENTRY_2(name, param_spec) \ - LOCAL_SOURCE(name) \ +#define LOCAL_LIB_ENTRY_3(type, name, param_spec) \ + type ## _SOURCE(name) \ setup.register_lib_entry(# name, param_spec, PSOURCELOC()); -#define LOCAL_LIB_ENTRY(...) PCALLVARARG(LOCAL_LIB_ENTRY_, __VA_ARGS__) +#define LOCAL_LIB_ENTRY(...) PCALLVARARG(LOCAL_LIB_ENTRY_, LOCAL, __VA_ARGS__) + +#define EXTERNAL_LIB_ENTRY(...) PCALLVARARG(LOCAL_LIB_ENTRY_, EXTERNAL, __VA_ARGS__) #define INCLUDE(name) \ setup.include(# name); diff --git a/src/lib/netlist/prg/nlwav.cpp b/src/lib/netlist/prg/nlwav.cpp index 82e543d9228..4b726bbe2cc 100755 --- a/src/lib/netlist/prg/nlwav.cpp +++ b/src/lib/netlist/prg/nlwav.cpp @@ -82,8 +82,8 @@ public: template <typename T> void write_sample_int(double sample) { - const auto mmax(static_cast<double>(plib::numeric_limits<T>::max())); - const auto mmin(static_cast<double>(plib::numeric_limits<T>::min())); + constexpr auto mmax(static_cast<double>(plib::numeric_limits<T>::max())); + constexpr auto mmin(static_cast<double>(plib::numeric_limits<T>::min())); sample *= mmax; sample = std::max(mmin, sample); |