summaryrefslogtreecommitdiffstats
path: root/src/lib/netlist/examples
Commit message (Collapse)AuthorAgeFilesLines
* netlist: static solver work and improve code readability (#9841) couriersud2022-05-301-1/+1
| | | | | | | | | | | - nltool: Added support for building individual static solver files. - Added pre-built documentation files for nltool and nlwav. - plib: Extended typed_version to have patchlevel as well. - plib: Compile more of ppmf.h with nvcc. - create_devinc.py: Add include guards to the generated files. - makefile: Recreate generated files when python code has changed. - Reduced nld_base.h usage in the core. - <oved extern template class declarations to where they belong. - Generally improved code readability and fixed a lot of issues cspell reported.
* netlist: rename more files to lower case. couriersud2020-10-022-0/+0
|
* netlist: move to generated header and link support files files. couriersud2020-09-122-6/+12
| | | | | | | | | | | | | * 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.
* netlist: Fix various issues around include directories. couriersud2020-08-255-5/+5
| | | | | | | | | * removed include directory src/lib/netlist from various genie files to avoid potential issues. * Code using netlist should use #include "netlist/*". * Updated includes. * Fixed standalone makefile depend target to properly deal with relative paths.
* netlist: build system improvements couriersud2020-08-241-1/+1
| | | | * Medium term this will significantly ease adding devices to netlist.
* netlist: dead code removal. couriersud2020-08-171-0/+215
| | | | | * moved dead code into examples/lostfound.cpp * This work didn't improve performance but still may serve as examples for complex truth table implementations.
* netlist: Device refactoring Aaron Giles2020-08-011-0/+1
| | | | | | | * Move DIPs for 82S16, 82S115, and 2102A devices into nlm_proms * Moved 7448 DIP to a macro. Replaced 7442 with truthtable and macro. * Moved 74LS629 DIP into macro. * Expand truthtable to handle 10 outputs.
* netlist: prepare road towards trapezoidal integration. couriersud2020-07-171-5/+0
| | | | | * This is a long term transition goal. Documented in source (see NL_USE_BACKWARD_EULER).
* netlist: fix power pin names for CMOS devices. couriersud2020-07-121-2/+5
| | | | | | | | | * For truthtable cmos devices the power pin names will now be set according to the logic family. * Fix some issues for CD4538 * Change "already connected" warning to info level. Some ICs (CD4538) connect pins internally to GND and the schematics again externally. This will cause this info to be printed. The warning now is a lot more verbose.
* netlist: update documenation on noise sources. couriersud2020-07-051-2/+2
|
* srcclean and cleanup (nw) Vas Crabb2020-06-211-2/+2
|
* netlist: Add working 74125 and 74126 implementations. [Couriersud] couriersud2020-05-171-3/+5
| | | | | | | | | | | These tristate buffers natively support tristate outputs. For use cases with fixed enable inputs the devices support a parameter FORCE_TRISTATE_LOGIC which if being set to 1 makes the device behave like a logic output. Added additional syntax and consistency checks for tristate outputs. Updated the example and added dip implementations including documentation.
* netlist: code cleanup and development stage tristate [Couriersud] couriersud2020-05-151-0/+40
| | | | | | | | | | Code cleanup to better separate the following stages: - parsing - setup - run In addition preliminary native tristate support was added. Not yet production ready, please don't use it.
* netlist: remove family_setter and other maintenance. (nw) couriersud2020-05-091-32/+0
| | | | | | | | | | | | | | | - removed family_setter - naming alignment, family becomes model. - architecture cleanups.) - reviewed reset logic. - pass truthtable family as string to factory. This is another set of changes on the path to align logic families and models. As a side effect, the object model now makes a clear distinction between analog models and logic models. The number of macros in nl_base.h has decreased significantly due to these changes.
* netlist: Add two noise sources. [Couriersud] couriersud2020-05-031-0/+36
| | | | | | | | | | | | | | | | | | | The two sources act as voltage sources, though noise may also be injected as conductivy or current noise. SYS_NOISE_MT_U: Mersenne Twister uniform noise SYS_NOISE_MT_N: Mersenne Twister normal noise nld_sys_noise is templated: using NETLIB_NAME(sys_noise_mt_u) = NETLIB_NAME(sys_noise)<plib::mt19937_64, plib::uniform_distribution_t>; Thus the approach is scalable. The implementation is state save aware, and thus reproducible results are guaranteed. An example use case is provided as well, see examples/noise.cpp.
* netlist: change license for netlists in examples to CC0. [Couriersud] couriersud2020-05-0231-1957/+32
|
* netlist: Add simple ZDIODE model. [Couriersud] couriersud2020-05-021-0/+45
| | | | | | | | | | | | | The model is driven by three additional model parameters: NBV, IBV, BV. Example code how to define a typical 7.5V Zener diode: ZDIODE(ZD, "D(BV=7.5 IBV=0.01 NBV=3)") or NET_MODEL("A1234 D(BV=7.5 IBV=0.01 NBV=3)") ZDIODE(ZD, "A1234")
* netlist: Fixed polarity issue in CCCS device [Colin Howell, Couriersud] couriersud2020-05-011-8/+8
| | | | Note: This affects all use cases of CCCS. I have changed all uses in MAME.
* netlist: Fix inclusion of examples in documentation. (nw) couriersud2020-05-011-0/+10
|
* Remove explicit logging since it can be done on the command line via nltool. Aaron Giles2020-05-011-6/+0
|
* Add 74393 device and unit test. Aaron Giles2020-05-011-0/+32
|
* netlist: Add the NE566 as a macro device. [Couriersud] couriersud2020-05-011-0/+21
| | | | | | | | The device can be found in nlm_other.cpp. Removed nld_ne566.* Added SYS_SW, SYS_SW2 and SYS_COMP. These are single switch, alternating switch and a analog comparator with digital outputs. Renamed RES_SWITCH to SYS_SW. Added example ne566.cpp in netlist/examples.
* srcclean (nw) Vas Crabb2020-03-221-26/+26
|
* williams.cpp: Improve williams2 color display. [Couriersud] couriersud2020-03-051-5/+8
| | | | | | | | | | | | | | | | Change color levels for williams2 hardware to better color display. Output levels are computed in netlist. These levels are aligned to LTspice modelling I did. Also improved the modelling to do what the actual hardware for mysticm did: Color decoding depends on W13..W11. These are actually flip screen versions of V13..V11. Fixed treatment on Bit0 although not used by the game code. Added R,G,B gain and offset sliders for the williams2 hardware. MAME only supports one setting for all channels. This is not good enough to come close to video recordings found on youtube. Minor changes to nltool to better measure time taken to run a simulation.
* netlist: Fix inductor. (nw) couriersud2020-03-022-265/+261
| | | | | Fix inductor calculation. Updated turkey shoot example to skip start-up swinging of L1/C60 LC circuit. Recording now starts at 1ms.
* Use netlist to calculate RGB values for Turkey Shoot. [Couriersud] couriersud2020-03-022-0/+468
| | | | | This example shows how the netlist tools can be used to derive RGB tables from a schematic. All steps are given in serc/lib/netlist/examples/turkey_shoot.cpp
* Document current state of congo bongo development. (nw) couriersud2020-02-162-190/+278
|
* netlist: Document Congo Bongo progress and fix devices. couriersud2020-01-312-26/+29
|
* srcclean (nw) Vas Crabb2019-12-2134-1084/+1084
|
* netlist: move nl_examples to src/lib/netlist/examples. (nw) couriersud2019-11-2536-0/+4249
One folder less in the top-level.