- Added Ebers-Moll BJT model. Currently only for NPN.
- Fixed convergence issue in the solver.
- Accuracy for Ebers-Moll must be better than 1e-5 to not generate nano-second spikes.
Typical sound applications should be able to run with less since the spikes are
not audible.
The examples have a ".c" suffix. In eclipse, I get automatic syntax parsing and error notifications. The parser treats "#" preprocessor defines/includes just as comments.
All of these examples can be run through nltool:
./nltool -f nl_examples/opamp.c -t 1 -l OUT
runs the opamp example for 1 second of emulation time and logs the terminal named "OUT" to "netlist_log_OUT.log".
I'll post a simple script to the list to visualize those logs using gnuplot.
- update the parser code
- the "rom" netlist and preprocessor netlist are now aligned again.
- got rid of fatalerror in netlist/* code. Implementing applications have
to implement fatalerror in a derived class from netlist_base_t now.
Fixed an issue in the object model as well and made the code distinguish between a core terminal and analog terminals.
NETDEV_R(RA, 5000)
NETDEV_R(RB, 3000)
NETDEV_C(C, 0.15e-6)
NETDEV_NE555(555)
NET_C(V0, 555.GND)
NET_C(V5, 555.VCC)
NET_C(RA.1, 555.VCC)
NET_C(RA.2, 555.DISCH)
NET_C(RB.1, 555.DISCH)
NET_C(RB.2, 555.TRIG)
NET_C(RB.2, 555.THRESH)
NET_C(555.TRIG, C.1)
NET_C(C.2, V0)
In addition, fixed some bugs and added auto-sizing to netlist_list_t.
There shouldn't be memory holes left now, apart from memory allocated in a static class factory.