summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/examples/cccs.cpp
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2020-05-01 18:09:36 +0200
committer couriersud <couriersud@gmx.org>2020-05-01 18:09:36 +0200
commita97d097b3b79e9fa395eabec4829dd82abc2ba47 (patch)
tree3e61f23bb514a9acb1ceb083d83704418c5ae71e /src/lib/netlist/examples/cccs.cpp
parentd3f054974ee7427fd7d0f6e5ffe2b1461b3ffb55 (diff)
netlist: Fixed polarity issue in CCCS device [Colin Howell, Couriersud]
Note: This affects all use cases of CCCS. I have changed all uses in MAME.
Diffstat (limited to 'src/lib/netlist/examples/cccs.cpp')
-rw-r--r--src/lib/netlist/examples/cccs.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/lib/netlist/examples/cccs.cpp b/src/lib/netlist/examples/cccs.cpp
new file mode 100644
index 00000000000..02cccd1736e
--- /dev/null
+++ b/src/lib/netlist/examples/cccs.cpp
@@ -0,0 +1,39 @@
+// license:CC0
+// copyright-holders:Couriersud
+/*
+ * cccs.cpp
+ *
+ */
+
+
+#include "netlist/devices/net_lib.h"
+
+NETLIST_START(cccs)
+
+ CLOCK(clk, 1000) // 1000 Hz
+ SOLVER(Solver, 48000)
+ PARAM(Solver.ACCURACY, 1e-12)
+ PARAM(Solver.METHOD, "MAT_CR")
+
+ ANALOG_INPUT(V5,5)
+ CCCS(VV, 0.9)
+ PARAM(VV.RI, 1e-3)
+
+ RES(R2, 1000)
+ RES(R1, 1000)
+
+ NET_C(V5, clk.VCC)
+ NET_C(clk, VV.IP)
+ NET_C(VV.IN, R1.1)
+ NET_C(GND, R1.2, R2.2, VV.OP, clk.GND)
+
+ NET_C(R2.1, VV.ON)
+
+ /* Simple current source */
+
+ CS(CS1, 1)
+ RES(R3, 1)
+ NET_C(R3.1, CS1.P)
+ NET_C(GND, CS1.N, R3.2)
+
+NETLIST_END()