├── Circuits ├── Empty ├── FSM2 ├── equation.txt ├── QuadSpline ├── test ├── FSM4 ├── nltest ├── net ├── delay ├── x ├── mess2 ├── oddcase2 ├── N4NL ├── delay2 ├── rlc_nl ├── rtest ├── simple ├── singular ├── text_test ├── vtest ├── nl2 ├── FSM3 ├── nand4test ├── rlc netlist ├── lpf ├── oddcase ├── 1dopt ├── net2 ├── wire ├── mttree ├── tline ├── tline2 ├── rlc_inv ├── tsort ├── tsort1 ├── tsort2 ├── rlctree2 ├── ee241power ├── 145mlab23 ├── cyclic1 ├── diode_OR ├── signal2 ├── FSM1 ├── nlxxx ├── tristate ├── xxx_nl ├── xxx2nl ├── xxx netlist ├── mos nl ├── rc_tree ├── rlc5.nl ├── 142ps7p2 ├── nl3 ├── exam2p3 ├── test netlist ├── and5.NL ├── rlc ├── rlc_test ├── rlc2 ├── rlc6.nl ├── mttree2 ├── delay_test ├── netlist test ├── signal ├── fig8.7 ├── nl ├── rlc3 ├── io2 ├── ee145mlab21 ├── io ├── mess ├── m.nl ├── 142ps6p1 ├── xxx3 ├── nand ├── xxx2 ├── rctree ├── mux_4or ├── test1 ├── xtest ├── rlctree ├── m2.nl ├── mult_ic.nl ├── 142ps3p3 ├── mult.nl ├── xxx ├── problem1 ├── problem1b ├── rlc5 ├── multX.nl ├── bigtree ├── wires ├── iotest2 ├── exam1p1 ├── 14in ├── bigtree2 ├── bigtree3 ├── biggertree ├── fotest ├── exam1p1b ├── problem1c ├── cbadder ├── mult2 ├── 219bhw4p3 ├── mult bad ├── MULT.TXT ├── TEST.TXT ├── XXX.TXT ├── fig7.4 ├── rlc4 ├── exam2p1 ├── fig9.3 ├── ee241hw2p1 ├── mult_good.nl ├── y ├── bad2 ├── mult ├── mult_nl ├── multf ├── multX ├── nettest ├── mult_nl2 ├── bad ├── mult4t3 ├── hugetree ├── timetest ├── OPTIMAL2 └── mult_origx ├── in_cmds ├── CircuitSolver.Data ├── _CASE1 ├── _Test2 ├── _squirgle ├── _TEST_2 ├── _TEST5 ├── _3RCd ├── _RC ├── _RCdout ├── _RCein ├── _RCeout ├── _TEST ├── _RCjoint ├── _DELAY ├── _EQUAL ├── _TEST3 ├── _TEST_4 ├── _nodes100 ├── _LM741 ├── _7404 ├── _4069 ├── IC_Template ├── _4001 ├── _4011 ├── _4030 ├── _4070 ├── _4071 ├── _4077 ├── _4081 ├── _4093 ├── _7400 ├── _7402 ├── _7408 ├── _7486 ├── _MUX2 ├── _NAND_IC ├── _7474 ├── _340 ├── _OpAmp ├── _M ├── C.S.ICData ├── C.S.ComponentData └── DEBUG ├── BLANK.CUR ├── RCa46405 ├── Header ├── Delay.h ├── Draw.h ├── Graph.h ├── Logic.h ├── Undo.h ├── Complex.h ├── Equation.h ├── IOVector.h ├── Matrix.h ├── Netlist.h ├── Oracle.h ├── RLC_Tree.h ├── CompArray.h ├── FSMDesign.h ├── GridArray.h ├── Optimizer.h ├── Scheduling.h ├── CircuitSolver.h ├── ComponentID.h ├── NetPointerSet.h ├── Propagations.h ├── STL_Support.h ├── StringTable.h ├── TextGraphics.h ├── PropagationFunctions.h ├── RESOURCE.H └── Graphics.h ├── LIBCPM ├── TYPES.H ├── DFOR.LIB ├── DFPORT.LIB ├── Utils.cpp ├── DFCONSOL.LIB ├── libACCPM.lib ├── Coordinator.h ├── cuts.h ├── USER.H └── UTILS.H ├── Circuit Solver.µ ├── CircuitSolver.aps ├── CircuitSolver.ico ├── CircuitSolver.rc ├── Cursors ├── ARROW.CUR ├── crosshair.cur ├── RESOURCE.H ├── crosshair.rc └── Templ1.rc ├── Source ├── C.S.Draw.cpp ├── C.S.Undo.cpp ├── C.S.Graph.cpp ├── C.S.Logic.cpp ├── C.S.MOSFET.cpp ├── C.S.Matrix.cpp ├── C.S.Netlist.cpp ├── C.S.Nodes.cpp ├── C.S.Window.cpp ├── Unused │ ├── Graph.h │ ├── Memory.h │ ├── C.S.Diode.cpp │ ├── C.S.Games.cpp │ ├── C.S.OpAmp.cpp │ ├── C.S.Text.cpp │ ├── OSSpecific.h │ ├── TypeConvert.h │ ├── C.S.Memory.cpp │ ├── Visualization.h │ ├── C.S.GateDelay.cpp │ ├── C.S.Polynomial.cpp │ ├── C.S.simpl-dix.cpp │ ├── Visualization.cpp │ ├── C.S.AND_INV_Circ.cpp │ ├── C.S.LogicOptimize.cpp │ ├── set_valid_nodes.cpp │ ├── Nodes_unused.cpp │ ├── Acquisition.cpp │ └── Old_Topo_Sort.cpp ├── C.S.Equation.cpp ├── C.S.FSMDesign.cpp ├── C.S.GridArray.cpp ├── C.S.IOVector.cpp ├── C.S.TopoSort.cpp ├── C.S.Utilities.cpp ├── C.S.WindowOps.cpp ├── CircuitSolver.cpp ├── RLC_opt │ ├── Oracle.h │ ├── C.S.RLC.cpp │ ├── Optimizer.h │ ├── RLC_Tree.h │ ├── C.S.ACCPM.cpp │ ├── C.S.Oracle.cpp │ ├── C.S.Optimizer.cpp │ ├── C.S.RLC_Tree.cpp │ └── C.S.QueryPoint.cpp ├── C.S.InputVector.cpp ├── C.S.LinkCircuit.cpp ├── C.S.LogicDelay.cpp ├── C.S.LogicEngine.cpp ├── C.S.MatrixUtil.cpp ├── C.S.Scheduling.cpp ├── C.S.StringTable.cpp ├── C.S.TextGraphics.cpp ├── C.S.Transforms.cpp ├── C.S.Transistor.cpp ├── Mac │ ├── MacInterface.h │ ├── C.S.InterfaceMac.cpp │ └── C.S.GraphicsMac.cpp ├── All_OS │ ├── AllInterface.h │ ├── C.S.GraphicsAll.cpp │ └── C.S.InterfaceAll.cpp ├── C.S.AnalogAnalysis.cpp ├── C.S.ComplexNumbers.cpp ├── C.S.LogicFunctions.cpp ├── C.S.NetPointerSet.cpp ├── C.S.PlaceAndRoute.cpp ├── C.S.SchematicEdit.cpp ├── Win32 │ ├── Win32Interface.h │ ├── C.S.GraphicsWin32.cpp │ ├── C.S.InterfaceWin32.cpp │ └── OpenGL_Support │ │ └── glut-3.7.6-bin │ │ ├── glut32.dll │ │ ├── glut32.lib │ │ └── glut.def ├── C.S.IntegratedCircuit.cpp ├── C.S.LogicComponents.cpp ├── C.S.LogicPropagation.cpp ├── C.S.SimulationSetup.cpp ├── OpenGL │ ├── OpenGLInterface.h │ ├── C.S.GraphicsOpenGL.cpp │ └── C.S.InterfaceOpenGL.cpp ├── XWindows │ ├── XWindowsInterface.h │ ├── C.S.GraphicsXWindows.cpp │ └── C.S.InterfaceXWindows.cpp └── Borrowed_Code │ └── FFT.CPP ├── unix_rename.txt ├── WinCircuit Solver Data ├── CW Settings.stg └── C++ Console Debug.tdt ├── WinCircuit Solver.vcxproj.user ├── C.S.MachineSpecs ├── Techdata.txt ├── .gitignore ├── RESOURCE.H ├── CircuitSolver.dlg ├── WinCircuit Solver.dsw ├── bigtree4 ├── WinCircuit Solver.sln ├── LICENSE ├── README.md ├── problem2 ├── setup-unix ├── setup-cygwin ├── Makefile-unix └── Makefile-cygwin /Circuits/Empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Circuits/FSM2: -------------------------------------------------------------------------------- 1 | FSM _fsm2 1 0 4 4 2 | -------------------------------------------------------------------------------- /Circuits/equation.txt: -------------------------------------------------------------------------------- 1 | sinx + 2.0*(x - 1) -------------------------------------------------------------------------------- /in_cmds: -------------------------------------------------------------------------------- 1 | o 2 | C7552.NL 3 | y 4 | y 5 | n 6 | 1000 7 | y 8 | 0 9 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_CASE1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _case1 53 -19 50818 182 -------------------------------------------------------------------------------- /CircuitSolver.Data/_Test2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _Test2 53 -19 1038 714 -------------------------------------------------------------------------------- /Circuits/QuadSpline: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Graph -1 4 0 2 1 2 1.5 2.75 4 14 -------------------------------------------------------------------------------- /BLANK.CUR: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/BLANK.CUR -------------------------------------------------------------------------------- /Circuits/test: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 0 331 0 450 0 654 -------------------------------------------------------------------------------- /RCa46405: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/RCa46405 -------------------------------------------------------------------------------- /Circuits/FSM4: -------------------------------------------------------------------------------- 1 | FSM _fsm2 1 0 4 4 2 | states 1 3 | 0 _A 12 274 4 | transitions 0 5 | -------------------------------------------------------------------------------- /Header/Delay.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Delay.h -------------------------------------------------------------------------------- /Header/Draw.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Draw.h -------------------------------------------------------------------------------- /Header/Graph.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Graph.h -------------------------------------------------------------------------------- /Header/Logic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Logic.h -------------------------------------------------------------------------------- /Header/Undo.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Undo.h -------------------------------------------------------------------------------- /LIBCPM/TYPES.H: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/LIBCPM/TYPES.H -------------------------------------------------------------------------------- /Circuit Solver.µ: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Circuit Solver.µ -------------------------------------------------------------------------------- /CircuitSolver.aps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/CircuitSolver.aps -------------------------------------------------------------------------------- /CircuitSolver.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/CircuitSolver.ico -------------------------------------------------------------------------------- /CircuitSolver.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/CircuitSolver.rc -------------------------------------------------------------------------------- /Cursors/ARROW.CUR: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Cursors/ARROW.CUR -------------------------------------------------------------------------------- /Header/Complex.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Complex.h -------------------------------------------------------------------------------- /Header/Equation.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Equation.h -------------------------------------------------------------------------------- /Header/IOVector.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/IOVector.h -------------------------------------------------------------------------------- /Header/Matrix.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Matrix.h -------------------------------------------------------------------------------- /Header/Netlist.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Netlist.h -------------------------------------------------------------------------------- /Header/Oracle.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Oracle.h -------------------------------------------------------------------------------- /Header/RLC_Tree.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/RLC_Tree.h -------------------------------------------------------------------------------- /LIBCPM/DFOR.LIB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/LIBCPM/DFOR.LIB -------------------------------------------------------------------------------- /LIBCPM/DFPORT.LIB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/LIBCPM/DFPORT.LIB -------------------------------------------------------------------------------- /LIBCPM/Utils.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/LIBCPM/Utils.cpp -------------------------------------------------------------------------------- /Header/CompArray.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/CompArray.h -------------------------------------------------------------------------------- /Header/FSMDesign.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/FSMDesign.h -------------------------------------------------------------------------------- /Header/GridArray.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/GridArray.h -------------------------------------------------------------------------------- /Header/Optimizer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Optimizer.h -------------------------------------------------------------------------------- /Header/Scheduling.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Scheduling.h -------------------------------------------------------------------------------- /LIBCPM/DFCONSOL.LIB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/LIBCPM/DFCONSOL.LIB -------------------------------------------------------------------------------- /LIBCPM/libACCPM.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/LIBCPM/libACCPM.lib -------------------------------------------------------------------------------- /Source/C.S.Draw.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Draw.cpp -------------------------------------------------------------------------------- /Source/C.S.Undo.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Undo.cpp -------------------------------------------------------------------------------- /CircuitSolver.Data/_squirgle: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _squirgle 53 -19 50818 500 50182 288 -19 394 1 -------------------------------------------------------------------------------- /Cursors/crosshair.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Cursors/crosshair.cur -------------------------------------------------------------------------------- /Header/CircuitSolver.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/CircuitSolver.h -------------------------------------------------------------------------------- /Header/ComponentID.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/ComponentID.h -------------------------------------------------------------------------------- /Header/NetPointerSet.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/NetPointerSet.h -------------------------------------------------------------------------------- /Header/Propagations.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/Propagations.h -------------------------------------------------------------------------------- /Header/STL_Support.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/STL_Support.h -------------------------------------------------------------------------------- /Header/StringTable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/StringTable.h -------------------------------------------------------------------------------- /Header/TextGraphics.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/TextGraphics.h -------------------------------------------------------------------------------- /Source/C.S.Graph.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Graph.cpp -------------------------------------------------------------------------------- /Source/C.S.Logic.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Logic.cpp -------------------------------------------------------------------------------- /Source/C.S.MOSFET.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.MOSFET.cpp -------------------------------------------------------------------------------- /Source/C.S.Matrix.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Matrix.cpp -------------------------------------------------------------------------------- /Source/C.S.Netlist.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Netlist.cpp -------------------------------------------------------------------------------- /Source/C.S.Nodes.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Nodes.cpp -------------------------------------------------------------------------------- /Source/C.S.Window.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Window.cpp -------------------------------------------------------------------------------- /Source/Unused/Graph.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/Graph.h -------------------------------------------------------------------------------- /Source/Unused/Memory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/Memory.h -------------------------------------------------------------------------------- /CircuitSolver.Data/_TEST_2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC 2 | _test_2 3 | 53 -19 4 | 2 541 5 | 1055 404 6 | -------------------------------------------------------------------------------- /Source/C.S.Equation.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Equation.cpp -------------------------------------------------------------------------------- /Source/C.S.FSMDesign.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.FSMDesign.cpp -------------------------------------------------------------------------------- /Source/C.S.GridArray.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.GridArray.cpp -------------------------------------------------------------------------------- /Source/C.S.IOVector.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.IOVector.cpp -------------------------------------------------------------------------------- /Source/C.S.TopoSort.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.TopoSort.cpp -------------------------------------------------------------------------------- /Source/C.S.Utilities.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Utilities.cpp -------------------------------------------------------------------------------- /Source/C.S.WindowOps.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.WindowOps.cpp -------------------------------------------------------------------------------- /Source/CircuitSolver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/CircuitSolver.cpp -------------------------------------------------------------------------------- /Source/RLC_opt/Oracle.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/Oracle.h -------------------------------------------------------------------------------- /unix_rename.txt: -------------------------------------------------------------------------------- 1 | bash-2.05$ for foo in *.cc ; do mv `basename $foo .cc` `basename $foo .cc`.cpp 2 | ; done -------------------------------------------------------------------------------- /Circuits/nltest: -------------------------------------------------------------------------------- 1 | * Circuit - nltest 2 | 3 | 3 = BUF(2) 4 | R1 2 3 10 5 | 6 | 7 | .OPTIONS 8 | .END 9 | -------------------------------------------------------------------------------- /Source/C.S.InputVector.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.InputVector.cpp -------------------------------------------------------------------------------- /Source/C.S.LinkCircuit.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.LinkCircuit.cpp -------------------------------------------------------------------------------- /Source/C.S.LogicDelay.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.LogicDelay.cpp -------------------------------------------------------------------------------- /Source/C.S.LogicEngine.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.LogicEngine.cpp -------------------------------------------------------------------------------- /Source/C.S.MatrixUtil.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.MatrixUtil.cpp -------------------------------------------------------------------------------- /Source/C.S.Scheduling.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Scheduling.cpp -------------------------------------------------------------------------------- /Source/C.S.StringTable.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.StringTable.cpp -------------------------------------------------------------------------------- /Source/C.S.TextGraphics.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.TextGraphics.cpp -------------------------------------------------------------------------------- /Source/C.S.Transforms.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Transforms.cpp -------------------------------------------------------------------------------- /Source/C.S.Transistor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.Transistor.cpp -------------------------------------------------------------------------------- /Source/Mac/MacInterface.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Mac/MacInterface.h -------------------------------------------------------------------------------- /Source/RLC_opt/C.S.RLC.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/C.S.RLC.cpp -------------------------------------------------------------------------------- /Source/RLC_opt/Optimizer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/Optimizer.h -------------------------------------------------------------------------------- /Source/RLC_opt/RLC_Tree.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/RLC_Tree.h -------------------------------------------------------------------------------- /Source/Unused/C.S.Diode.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.Diode.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.Games.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.Games.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.OpAmp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.OpAmp.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.Text.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.Text.cpp -------------------------------------------------------------------------------- /Source/Unused/OSSpecific.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/OSSpecific.h -------------------------------------------------------------------------------- /Source/Unused/TypeConvert.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/TypeConvert.h -------------------------------------------------------------------------------- /CircuitSolver.Data/_TEST5: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC 2 | _test5 3 | 53 -19 4 | 1038 395 5 | 1 176 6 | 1002 714 7 | -------------------------------------------------------------------------------- /Header/PropagationFunctions.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Header/PropagationFunctions.h -------------------------------------------------------------------------------- /Source/All_OS/AllInterface.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/All_OS/AllInterface.h -------------------------------------------------------------------------------- /Source/C.S.AnalogAnalysis.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.AnalogAnalysis.cpp -------------------------------------------------------------------------------- /Source/C.S.ComplexNumbers.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.ComplexNumbers.cpp -------------------------------------------------------------------------------- /Source/C.S.LogicFunctions.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.LogicFunctions.cpp -------------------------------------------------------------------------------- /Source/C.S.NetPointerSet.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.NetPointerSet.cpp -------------------------------------------------------------------------------- /Source/C.S.PlaceAndRoute.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.PlaceAndRoute.cpp -------------------------------------------------------------------------------- /Source/C.S.SchematicEdit.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.SchematicEdit.cpp -------------------------------------------------------------------------------- /Source/RLC_opt/C.S.ACCPM.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/C.S.ACCPM.cpp -------------------------------------------------------------------------------- /Source/RLC_opt/C.S.Oracle.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/C.S.Oracle.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.Memory.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.Memory.cpp -------------------------------------------------------------------------------- /Source/Unused/Visualization.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/Visualization.h -------------------------------------------------------------------------------- /Source/Win32/Win32Interface.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Win32/Win32Interface.h -------------------------------------------------------------------------------- /Circuits/net: -------------------------------------------------------------------------------- 1 | Circuit - net R1 3 4 12.1 R2 5 6 10 V1 0 2 AC 40 C1 2 1 1u R3 1 0 30 L1 1 0 1.2m R4 7 8 756 .OPTIONS .END -------------------------------------------------------------------------------- /Source/C.S.IntegratedCircuit.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.IntegratedCircuit.cpp -------------------------------------------------------------------------------- /Source/C.S.LogicComponents.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.LogicComponents.cpp -------------------------------------------------------------------------------- /Source/C.S.LogicPropagation.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.LogicPropagation.cpp -------------------------------------------------------------------------------- /Source/C.S.SimulationSetup.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/C.S.SimulationSetup.cpp -------------------------------------------------------------------------------- /Source/Mac/C.S.InterfaceMac.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Mac/C.S.InterfaceMac.cpp -------------------------------------------------------------------------------- /Source/OpenGL/OpenGLInterface.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/OpenGL/OpenGLInterface.h -------------------------------------------------------------------------------- /Source/RLC_opt/C.S.Optimizer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/C.S.Optimizer.cpp -------------------------------------------------------------------------------- /Source/RLC_opt/C.S.RLC_Tree.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/C.S.RLC_Tree.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.GateDelay.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.GateDelay.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.Polynomial.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.Polynomial.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.simpl-dix.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.simpl-dix.cpp -------------------------------------------------------------------------------- /Source/Unused/Visualization.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/Visualization.cpp -------------------------------------------------------------------------------- /CircuitSolver.Data/_3RCd: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _3RCd 53 -19 50182 817 50818 605 50178 181 50814 393 1044 711 1044 287 1043 499 -------------------------------------------------------------------------------- /CircuitSolver.Data/_RC: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _RC 53 -19 50605 818 50182 393 50607 605 50395 393 -19 501 7.2e-12 -20 499 278 -------------------------------------------------------------------------------- /Source/All_OS/C.S.GraphicsAll.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/All_OS/C.S.GraphicsAll.cpp -------------------------------------------------------------------------------- /Source/All_OS/C.S.InterfaceAll.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/All_OS/C.S.InterfaceAll.cpp -------------------------------------------------------------------------------- /Source/RLC_opt/C.S.QueryPoint.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/RLC_opt/C.S.QueryPoint.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.AND_INV_Circ.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.AND_INV_Circ.cpp -------------------------------------------------------------------------------- /Source/Win32/C.S.GraphicsWin32.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Win32/C.S.GraphicsWin32.cpp -------------------------------------------------------------------------------- /CircuitSolver.Data/_RCdout: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _RCdout 53 -19 50182 393 50818 607 50607 605 50393 395 -19 501 3.6e-12 -20 499 556 -------------------------------------------------------------------------------- /CircuitSolver.Data/_RCein: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _RCein 53 -19 50818 607 50182 393 50607 605 50395 393 -19 501 1e-11 -20 499 1111 -------------------------------------------------------------------------------- /CircuitSolver.Data/_RCeout: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _RCeout 53 -19 50182 393 50393 395 50818 607 50607 605 -19 501 5e-12 -20 499 2222 -------------------------------------------------------------------------------- /CircuitSolver.Data/_TEST: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Subcircuit _test 120 -40 1042 2319 1037 493 1037 500 1037 507 50798 692 1 694 50802 696 -------------------------------------------------------------------------------- /Circuits/delay: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 440 6 | 3 495 1 7 | 23 497 8 | 22 546 9 | -------------------------------------------------------------------------------- /Source/OpenGL/C.S.GraphicsOpenGL.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/OpenGL/C.S.GraphicsOpenGL.cpp -------------------------------------------------------------------------------- /Source/OpenGL/C.S.InterfaceOpenGL.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/OpenGL/C.S.InterfaceOpenGL.cpp -------------------------------------------------------------------------------- /Source/Unused/C.S.LogicOptimize.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Unused/C.S.LogicOptimize.cpp -------------------------------------------------------------------------------- /Source/Win32/C.S.InterfaceWin32.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Win32/C.S.InterfaceWin32.cpp -------------------------------------------------------------------------------- /Source/XWindows/XWindowsInterface.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/XWindows/XWindowsInterface.h -------------------------------------------------------------------------------- /CircuitSolver.Data/_RCjoint: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _RCjoint 53 -19 50818 605 50605 607 50182 395 50395 393 -19 501 8.6e-12 -20 499 444 -------------------------------------------------------------------------------- /Circuits/x: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 22 231 50337 231 50345 337 50762 337 1054 451 50770 557 23 770 1054 868 1054 876 -------------------------------------------------------------------------------- /WinCircuit Solver Data/CW Settings.stg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/WinCircuit Solver Data/CW Settings.stg -------------------------------------------------------------------------------- /Source/XWindows/C.S.GraphicsXWindows.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/XWindows/C.S.GraphicsXWindows.cpp -------------------------------------------------------------------------------- /Source/XWindows/C.S.InterfaceXWindows.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/XWindows/C.S.InterfaceXWindows.cpp -------------------------------------------------------------------------------- /Circuits/mess2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 25 858 27 860 1 1011 677 1011 666 1011 656 1011 592 1011 304 1011 295 1011 284 1011 274 -------------------------------------------------------------------------------- /Circuits/oddcase2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 3 329 1054 867 50769 557 50761 337 50345 337 50337 231 22 231 23 231 1054 451 1054 875 -------------------------------------------------------------------------------- /LIBCPM/Coordinator.h: -------------------------------------------------------------------------------- 1 | //#include "user.h" 2 | 3 | int CPM_coordinator(struct user_defined *my_variables, int argc, char **argv); 4 | 5 | 6 | -------------------------------------------------------------------------------- /WinCircuit Solver Data/C++ Console Debug.tdt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/WinCircuit Solver Data/C++ Console Debug.tdt -------------------------------------------------------------------------------- /Circuits/N4NL: -------------------------------------------------------------------------------- 1 | # Circuit - n4nl 2 | 3 | INPUT(1) 4 | INPUT(2) 5 | INPUT(3) 6 | OUTPUT(5) 7 | INPUT(4) 8 | 5 = NAND(2 3 4 1) 9 | 10 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_DELAY: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC_GV 2 | _delay 3 | 53 -19 4 | 50818 825 5 | 50825 507 6 | 50182 185 7 | 50185 503 8 | 1 505 1 9 | -------------------------------------------------------------------------------- /Circuits/delay2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 23 447 6 | 22 435 7 | 1 437 1 8 | 1 441 2 9 | 1 445 3 10 | -------------------------------------------------------------------------------- /Circuits/rlc_nl: -------------------------------------------------------------------------------- 1 | * Circuit - rlc_nl 2 | 3 | V1 0 2 AC 40 4 | C1 2 1 1u 5 | R1 1 0 30 6 | L1 1 0 1.2m 7 | 8 | 9 | .OPTIONS 10 | .END 11 | -------------------------------------------------------------------------------- /Circuits/rtest: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 384 6 | 21 386 1 7 | 23 388 8 | -20 494 1000 9 | 25 600 10 | -------------------------------------------------------------------------------- /Circuits/simple: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50179 175 6 | 50171 169 7 | 22 169 8 | 1 173 9 | 23 179 10 | -------------------------------------------------------------------------------- /Circuits/singular: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 25 379 6 | 31 381 1 7 | 20 385 10 8 | 31 389 1 9 | 25 391 10 | -------------------------------------------------------------------------------- /Circuits/text_test: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 1008 326 6 | 72 351 7 | 61 549 8 | 63 569 9 | 1002 666 10 | -------------------------------------------------------------------------------- /Circuits/vtest: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 25 557 6 | 25 545 7 | 30 547 10 8 | 20 551 100 9 | 30 555 0 10 | -------------------------------------------------------------------------------- /Circuits/nl2: -------------------------------------------------------------------------------- 1 | * Circuit - nl2 2 | 3 | 4 = NOR(9,10) 4 | 6 = NOR(7,8) 5 | 10 = NOR(3,8) 6 | 5 = NOR(4,3) 7 | 8 | 9 | .OPTIONS 10 | .END 11 | -------------------------------------------------------------------------------- /Circuits/FSM3: -------------------------------------------------------------------------------- 1 | FSM _fsm1 1 0 4 4 2 | states 2 3 | 0 _A 10 329 4 | 1 _B 5 342 5 | transitions 2 6 | 0 _trans1 10 0 331 332 0 0 7 | 1 _trans2 3 0 331 448 0 1 8 | -------------------------------------------------------------------------------- /Circuits/nand4test: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 275 6 | 22 328 7 | 22 381 8 | 44 383 9 | 23 385 10 | 22 434 11 | -------------------------------------------------------------------------------- /Circuits/rlc netlist: -------------------------------------------------------------------------------- 1 | Circuit - rlc netlist 2 | 3 | V1 0 2 AC 40 4 | C1 2 1 1u 5 | R1 1 0 30 6 | L1 1 0 1.2m 7 | 8 | 9 | .OPTIONS 10 | .END 11 | -------------------------------------------------------------------------------- /Source/Win32/OpenGL_Support/glut-3.7.6-bin/glut32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Win32/OpenGL_Support/glut-3.7.6-bin/glut32.dll -------------------------------------------------------------------------------- /Source/Win32/OpenGL_Support/glut-3.7.6-bin/glut32.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fegennari/CircuitSolver/HEAD/Source/Win32/OpenGL_Support/glut-3.7.6-bin/glut32.lib -------------------------------------------------------------------------------- /CircuitSolver.Data/_EQUAL: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC 2 | _equal 3 | 53 -19 4 | 50447 182 5 | 50451 447 6 | 7 506 7 | 23 508 8 | 50818 553 9 | 50553 557 10 | -------------------------------------------------------------------------------- /Circuits/lpf: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 50507 505 50505 346 50448 342 50554 553 20 344 1000 16 503 25 549 30 551 1 -20 613 1000 -19 660 1e-06 25 719 25 766 -------------------------------------------------------------------------------- /WinCircuit Solver.vcxproj.user: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /Circuits/oddcase: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 50770 558 50762 337 50345 337 50337 231 23 231 22 231 23 345 1042 452 23 558 23 762 23 770 1042 869 1042 877 23 975 23 983 -------------------------------------------------------------------------------- /LIBCPM/cuts.h: -------------------------------------------------------------------------------- 1 | void CPM_oracle_call(struct Newcut*, int, struct UserSettings, char *, double*, double **, 2 | int,struct Archive *, struct user_defined*, int, double&,int&, int&); 3 | -------------------------------------------------------------------------------- /Circuits/1dopt: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50438 279 6 | 24 279 7 | 20 440 2 8 | 50444 442 9 | 50 446 1 10 | 50450 448 11 | -19 556 32 12 | 25 662 13 | -------------------------------------------------------------------------------- /Circuits/net2: -------------------------------------------------------------------------------- 1 | Circuit - net2 R1 0 3 1k I1 0 1 10m R2 2 0 1k R3 1 2 1k R4 2 3 50.5 R5 3 4 1k R6 4 0 680 R7 0 1 1k R8 2 5 1k R9 5 6 1k R10 6 0 1k R11 1 5 1k R12 5 7 1k R13 7 0 1k R14 5 0 1k .OPTIONS .END -------------------------------------------------------------------------------- /Circuits/wire: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 25 559 6 | 25 539 7 | 20 329 1 8 | 50 333 1 9 | 50 337 1 10 | 50 341 1 11 | 50 345 1 12 | -30 433 1 13 | -19 453 2 14 | -------------------------------------------------------------------------------- /Circuits/mttree: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50176 168 6 | 50335 176 7 | 24 176 8 | 50168 380 9 | 50 382 1 10 | 40 386 1 11 | -20 547 1 12 | -19 759 1 13 | 25 865 14 | -------------------------------------------------------------------------------- /Circuits/tline: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50332 226 6 | 50 228 1 7 | 19 232 1 8 | 25 234 9 | 24 328 10 | 50 330 1 11 | 50438 332 12 | 50 440 2 13 | 19 444 1 14 | 25 446 15 | -------------------------------------------------------------------------------- /Circuits/tline2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 20 330 0.1 6 | 50332 226 7 | 50 228 1 8 | 19 232 1 9 | 25 234 10 | 24 328 11 | 50438 332 12 | 50 440 2 13 | 19 444 1 14 | 25 446 15 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_TEST3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _test3 53 -19 1051 885 1051 498 1051 808 1051 590 1051 377 1051 222 1051 349 1051 670 1051 720 1051 766 1051 761 1051 542 1051 731 1051 464 1051 356 1051 559 1051 288 1051 333 1051 603 1051 454 -------------------------------------------------------------------------------- /CircuitSolver.Data/_TEST_4: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _test_4 53 -19 1031 755 1031 643 1031 218 1031 185 1031 676 1031 774 1031 287 1031 245 1031 411 1031 512 1031 501 1031 539 1031 602 1031 337 1031 401 1031 561 1031 664 1031 654 1031 597 1031 276 -------------------------------------------------------------------------------- /CircuitSolver.Data/_nodes100: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _nodes100 53 -19 50818 363 9 166 9 378 9 590 9 802 9 173 9 385 9 597 9 809 9 179 9 391 9 603 9 815 9 186 9 398 9 610 9 822 9 192 9 404 9 616 9 828 9 198 9 410 9 622 9 834 30 365 100 19 577 100 -------------------------------------------------------------------------------- /Circuits/rlc_inv: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 25 514 6 | 25 478 7 | 30 480 1 8 | 20 484 1 9 | 50 488 1 10 | 50 492 1 11 | 50 496 1 12 | 2 500 13 | 50 504 1 14 | 50 508 1 15 | 19 512 10 16 | -------------------------------------------------------------------------------- /Circuits/tsort: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 23 345 6 | 22 174 7 | 22 227 8 | 9 229 9 | 22 280 10 | 3 286 11 | 22 337 12 | 7 343 13 | 22 386 14 | 5 392 15 | 22 439 16 | 11 441 17 | 22 492 18 | -------------------------------------------------------------------------------- /Circuits/tsort1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 174 6 | 22 227 7 | 9 229 8 | 22 280 9 | 3 286 10 | 22 337 11 | 7 343 12 | 23 345 13 | 22 386 14 | 5 392 15 | 22 439 16 | 11 441 17 | 22 492 18 | -------------------------------------------------------------------------------- /Circuits/tsort2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 174 6 | 22 227 7 | 22 280 8 | 22 337 9 | 22 386 10 | 22 439 11 | 22 492 12 | 9 229 13 | 11 441 14 | 3 286 15 | 5 392 16 | 7 343 17 | 23 345 18 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_LM741: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _LM741 53 -19 50292 291 22 291 50705 704 50704 810 50292 186 23 705 50282 280 50280 174 50718 716 50716 822 25 718 24 282 50182 341 50341 342 50342 501 50444 443 50443 814 50550 656 50656 659 50659 818 16 499 -------------------------------------------------------------------------------- /Circuits/rlctree2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50332 226 6 | 50 228 1.13702 7 | 19 232 1 8 | 25 234 9 | 24 324 10 | 28 326 1 11 | 20 330 0.1 12 | 50438 332 13 | 50 440 1.13702 14 | 19 444 1 15 | 25 446 16 | -------------------------------------------------------------------------------- /Circuits/ee241power: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 25 538 6 | 28 328 3e-11 7 | 20 332 0.05 8 | 50340 334 9 | -27 432 2.5 10 | -19 440 3e-08 11 | -31 446 -3.6 12 | 28 540 3e-11 13 | 20 544 0.05 14 | 50552 546 15 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_7404: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _7404 53 -19 50826 614 50822 610 50818 606 50814 602 50810 598 50806 594 50726 724 50724 830 50406 194 50402 190 50398 186 50394 182 50390 178 50386 174 50278 276 50276 170 2 612 2 604 2 596 2 404 2 396 2 388 25 726 24 278 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4069: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4069 53 -19 50826 667 50822 663 50818 659 50814 655 50810 651 50806 647 50406 194 50402 190 50398 186 50394 182 50390 178 50386 174 50726 724 50724 830 50278 276 50276 170 25 726 24 278 -2 404 -2 396 -2 388 2 665 2 657 2 649 -------------------------------------------------------------------------------- /Circuits/145mlab23: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50444 338 6 | 50338 334 7 | 50334 387 8 | 50493 491 9 | 50491 489 10 | 50485 484 11 | 16 442 12 | 25 480 13 | 30 482 1 14 | 20 487 5100 15 | -19 597 1e-06 16 | 25 703 17 | -------------------------------------------------------------------------------- /Circuits/cyclic1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50271 270 6 | 22 270 7 | 50275 271 8 | 3 330 9 | 23 332 10 | 50487 381 11 | 50540 487 12 | 50487 491 13 | 23 491 14 | 5 595 15 | 50491 597 16 | 50271 642 17 | 50642 646 18 | -------------------------------------------------------------------------------- /CircuitSolver.Data/IC_Template: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _NEW 53 -19 50726 724 50724 830 50277 276 50276 170 25 726 24 277 50826 561 50561 557 50822 663 50818 606 50814 602 50806 541 50541 545 50810 651 50194 459 50459 455 50349 190 50398 186 50394 182 50174 439 50439 443 50337 178 -------------------------------------------------------------------------------- /Circuits/diode_OR: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 225 6 | 21 227 1 7 | 50388 229 8 | 50237 229 9 | 50767 237 10 | 22 384 11 | 21 386 1 12 | 23 388 13 | -20 494 1000 14 | 25 600 15 | 22 755 16 | 21 757 1 17 | 50759 767 18 | -------------------------------------------------------------------------------- /Circuits/signal2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50449 131 6 | 50 133 1 7 | -19 241 10 8 | 25 347 9 | 50437 431 10 | 22 431 11 | 50 439 1 12 | 2 443 1 13 | 50 447 1 14 | 50502 449 15 | 50 504 1 16 | -19 612 10 17 | 25 718 18 | -------------------------------------------------------------------------------- /C.S.MachineSpecs: -------------------------------------------------------------------------------- 1 | Machine_Type: PC 2 | Microprocessor_Equivalent_Speed(MHz): 750 3 | X_Pixels: 1024 4 | Sound(1/0): 1 5 | Has_Sound_Card(1/0): 1 6 | Max_Subcircuits(5K_max_each): 50000 7 | Store_Comp_Data_in_RAM(1/0): 1 8 | Store_IC_Data_in_RAM(1/0): 1 9 | Key: 185396 10 | -------------------------------------------------------------------------------- /Circuits/FSM1: -------------------------------------------------------------------------------- 1 | FSM _fsm1 1 0 4 4 2 | states 4 3 | 0 _A 15 334 4 | 1 _B 0 344 5 | 2 _C 10 715 6 | 3 _D 12 705 7 | transitions 5 8 | 0 _t1 5 0 336 341 0 1 9 | 1 _t2 12 0 503 609 1 2 10 | 2 _t3 2 0 711 709 2 3 11 | 3 _t4 14 0 546 440 3 0 12 | 4 _init 0 0 330 332 -1 0 13 | -------------------------------------------------------------------------------- /Circuits/nlxxx: -------------------------------------------------------------------------------- 1 | * Circuit - nlxxx 2 | 3 | INPUT 6 4 | INPUT 7 5 | INPUT 8 6 | OUTPUT 4 7 | 9 = NAND(6 7 8) 8 | 1 = NOT(0) 9 | 2 = NOT(1) 10 | 3 = NOT(2) 11 | 5 = AND(3 3) 12 | 10 = AND(5 5) 13 | R1 9 0 4.7k 14 | R2 10 4 22k 15 | 16 | 17 | .OPTIONS 18 | .END 19 | -------------------------------------------------------------------------------- /Circuits/tristate: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50641 270 6 | 50270 273 7 | 50273 326 8 | 22 326 9 | 50538 432 10 | 22 432 11 | 36 434 12 | 23 436 13 | 50749 537 14 | 50537 538 15 | 50644 641 16 | 50750 749 17 | 37 752 18 | 23 754 19 | -------------------------------------------------------------------------------- /Circuits/xxx_nl: -------------------------------------------------------------------------------- 1 | * Circuit - xxx_nl 2 | 3 | INPUT 4 4 | INPUT 5 5 | INPUT 6 6 | OUTPUT 0 7 | 8 = NAND(5,6,7) 8 | 2 = NOT(2) 9 | 2 = INV(2) 10 | 3 = NOT(2) 11 | 4 = AND(3,3) 12 | 9 = AND(4,4) 13 | R1 7 1 4.7k 14 | R2 8 0 22k 15 | 16 | 17 | .OPTIONS 18 | .END 19 | -------------------------------------------------------------------------------- /Circuits/xxx2nl: -------------------------------------------------------------------------------- 1 | * Circuit - xxx2nl 2 | 3 | INPUT(6) 4 | INPUT(7) 5 | INPUT(8) 6 | OUTPUT(4) 7 | 9 = NAND(6 7 8) 8 | 1 = NOT(0) 9 | 2 = NOT(1) 10 | 3 = NOT(2) 11 | 5 = AND(3 3) 12 | 10 = AND(5 5) 13 | R1 9 0 4.7k 14 | R2 10 4 22k 15 | 16 | 17 | .OPTIONS 18 | .END 19 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_4001: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4001 53 -19 50726 724 50724 830 50277 276 50276 170 25 726 24 277 50826 561 50561 557 50822 663 50818 606 50814 602 50806 541 50541 545 50810 651 50194 459 50459 455 50349 190 50398 186 50394 182 50174 439 50439 443 50337 178 6 392 6 600 -6 400 -6 608 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4011: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4011 53 -19 50170 276 50276 278 50830 724 50724 726 25 726 24 278 -4 608 -4 400 4 600 4 392 50826 561 50561 557 50822 663 50818 606 50814 602 50806 541 50541 545 50810 651 50194 459 50459 455 50349 190 50398 186 50394 182 50174 439 50439 443 50337 178 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4030: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4030 53 -19 -7 608 -7 400 7 600 7 392 50337 178 50439 443 50174 439 50394 182 50398 186 50349 190 50459 455 50194 459 50810 651 50541 545 50806 541 50814 602 50818 606 50822 663 50561 557 50826 561 24 277 25 726 50276 170 50277 276 50724 830 50726 724 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4070: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4070 53 -19 -7 608 -7 400 7 600 7 392 50726 724 50724 830 50277 276 50276 170 25 726 24 277 50826 561 50561 557 50822 663 50818 606 50814 602 50806 541 50541 545 50810 651 50194 459 50459 455 50349 190 50398 186 50394 182 50174 439 50439 443 50337 178 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4071: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4071 53 -19 -5 608 -5 400 5 600 5 392 50337 178 50439 443 50174 439 50394 182 50398 186 50349 190 50459 455 50194 459 50810 651 50541 545 50806 541 50814 602 50818 606 50822 663 50561 557 50826 561 24 277 25 726 50276 170 50277 276 50724 830 50726 724 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4077: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4077 53 -19 -8 608 -8 400 8 600 8 392 50337 178 50439 443 50174 439 50394 182 50398 186 50349 190 50459 455 50194 459 50810 651 50541 545 50806 541 50814 602 50818 606 50822 663 50561 557 50826 561 24 277 25 726 50276 170 50277 276 50724 830 50726 724 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4081: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4081 53 -19 -3 608 -3 400 3 600 3 392 50337 178 50439 443 50174 439 50394 182 50398 186 50349 190 50459 455 50194 459 50810 651 50541 545 50806 541 50814 602 50818 606 50822 663 50561 557 50826 561 24 277 25 726 50276 170 50277 276 50724 830 50726 724 -------------------------------------------------------------------------------- /CircuitSolver.Data/_4093: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _4011 53 -19 50337 178 50439 443 50174 439 50394 182 50398 186 50349 190 50459 455 50194 459 50810 651 50541 545 50806 541 50814 602 50818 606 50822 663 50561 557 50826 561 24 277 25 726 50276 170 50277 276 50724 830 50726 724 4 392 4 600 -4 400 -4 608 -------------------------------------------------------------------------------- /CircuitSolver.Data/_7400: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _7400 53 -19 50826 614 50822 663 50818 553 50553 557 50814 602 50810 651 50806 541 50541 545 50406 194 50349 190 50455 451 50451 186 50394 182 50337 178 50443 439 50439 174 50726 724 50724 830 50278 276 50276 170 4 612 4 600 4 404 4 392 25 726 24 278 -------------------------------------------------------------------------------- /CircuitSolver.Data/_7402: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _7402 53 -19 50826 561 50561 557 50822 663 50818 606 50814 549 50549 545 50810 651 50806 594 50194 459 50459 455 50190 349 50186 398 50182 447 50447 443 50337 178 50386 174 50726 724 50724 830 50278 276 50276 170 -6 400 -6 388 -6 608 -6 596 25 726 24 278 -------------------------------------------------------------------------------- /CircuitSolver.Data/_7408: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _7408 53 -19 50826 614 50822 663 50818 553 50553 557 50814 602 50810 651 50806 541 50541 545 50406 194 50349 190 50455 451 50451 186 50394 182 50337 178 50443 439 50439 174 50726 724 50724 830 50278 276 50276 170 3 612 3 600 3 404 3 392 25 726 24 278 -------------------------------------------------------------------------------- /Circuits/xxx netlist: -------------------------------------------------------------------------------- 1 | Circuit - xxx netlist 2 | 3 | INPUT 4 4 | INPUT 5 5 | 8 = NAND(5,6,7) 6 | R1 7 1 4.7k 7 | 2 = NOT(2) 8 | 2 = NOT(2) 9 | INPUT 6 10 | 3 = NOT(2) 11 | 4 = AND(3,3) 12 | 9 = AND(4,4) 13 | R2 8 0 22k 14 | OUTPUT 0 15 | 16 | 17 | .OPTIONS 18 | .END 19 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_7486: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _7486 53 -19 -13 608 -13 400 13 600 13 392 50337 178 50439 443 50174 439 50394 182 50398 186 50349 190 50459 455 50194 459 50810 651 50541 545 50806 541 50814 602 50818 606 50822 663 50561 557 50826 561 24 277 25 726 50276 170 50277 276 50724 830 50726 724 -------------------------------------------------------------------------------- /Circuits/mos nl: -------------------------------------------------------------------------------- 1 | * Circuit - mos nl 2 | 3 | M1 2 1 3 3 n_level_3 l=2u w=20u 4 | M2 6 4 5 5 p_level_3 l=2u w=18u 5 | M3 8 7 9 9 n_level_3 l=2u w=10u 6 | M4 0 10 11 11 p_level_3 l=2u w=8u 7 | 8 | .model n_level_3 level=3 9 | .model p_level_3 level=3 10 | 11 | .OPTIONS 12 | .END 13 | -------------------------------------------------------------------------------- /Circuits/rc_tree: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50598 492 6 | 50280 492 7 | 20 282 5 8 | 20 286 2 9 | -19 390 2 10 | -19 394 5 11 | 20 490 10 12 | 25 496 13 | 20 600 5 14 | -19 704 1 15 | -19 708 2 16 | 25 814 17 | 25 810 18 | 25 500 19 | 22 488 20 | -------------------------------------------------------------------------------- /Circuits/rlc5.nl: -------------------------------------------------------------------------------- 1 | * Circuit - circuits/rlc5.nl 2 | 3 | V1 0 2 AC 5 4 | C1 4 2 2u 5 | L1 2 1 3m 6 | R1 1 0 100 7 | R2 1 5 100 8 | V2 0 4 AC 40 9 | C2 4 3 1u 10 | R3 3 0 30 11 | L2 3 0 1.2m 12 | V3 0 5 AC 112 13 | V4 0 6 AC 7 14 | R4 6 3 500 15 | 16 | 17 | .OPTIONS 18 | .END 19 | -------------------------------------------------------------------------------- /Circuits/142ps7p2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50720 714 6 | 50714 708 7 | 50508 502 8 | 50502 496 9 | 50496 493 10 | 50489 488 11 | 25 484 12 | 30 486 5 13 | 19 491 3.47e-12 14 | -19 602 7.96e-11 15 | -20 608 1000 16 | -28 614 3.18e-08 17 | 25 714 18 | -------------------------------------------------------------------------------- /Circuits/nl3: -------------------------------------------------------------------------------- 1 | * Circuit - nl3 2 | 3 | M1 3 1 2 2 p_level_3 l=2u w=16u 4 | M2 5 4 0 0 n_level_3 l=2u w=20u 5 | M3 8 6 7 7 p_level_3 l=2u w=8u 6 | R1 9 10 100 7 | M4 12 11 13 13 n_level_3 l=2u w=10u 8 | 9 | .model p_level_3 level=3 10 | .model n_level_3 level=3 11 | 12 | .OPTIONS 13 | .END 14 | -------------------------------------------------------------------------------- /Circuits/exam2p3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 24 236 6 | 22 274 7 | 3 329 8 | 50334 331 9 | 22 380 10 | 5 389 11 | 50395 391 12 | 2 397 13 | 50405 399 14 | 22 440 15 | 3 460 16 | 23 462 17 | 50511 509 18 | 22 603 19 | 3 658 20 | 50668 660 21 | 50509 668 22 | 22 709 23 | -------------------------------------------------------------------------------- /Circuits/test netlist: -------------------------------------------------------------------------------- 1 | Circuit - test netlist 2 | 3 | INPUT 8 4 | L1 9 10 1k 5 | V1 0 2 AC 40 6 | C1 2 1 1u 7 | R1 1 0 30 8 | L2 1 0 1.2m 9 | D1 22 20 DIODE 10 | 5 = BUF(4) 11 | 8 = NAND(6,7) 12 | 15 = XNOR(12,13,14) 13 | 18 = AND(16,17) 14 | 22 = XNOR(19,20,21) 15 | 16 | 17 | .OPTIONS 18 | .END 19 | -------------------------------------------------------------------------------- /Circuits/and5.NL: -------------------------------------------------------------------------------- 1 | # Frank Gennari 1/14/01 2 | INPUT(2, 3, 4, 5, 6) 3 | INPUT(7) 4 | INPUT(8) 5 | INPUT(9) 6 | INPUT(10) 7 | INPUT(11) 8 | INPUT(12) 9 | INPUT(13) 10 | INPUT(14) 11 | INPUT(15) 12 | INPUT(16) 13 | INPUT(17) 14 | OUTPUT(19, 20, 21, 22) 15 | 19 = XOR(2 3) 16 | # 19 = XNOR(2 3 4 5 6 7 8 9 10 11 12) 17 | -------------------------------------------------------------------------------- /Circuits/rlc: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50398 392 6 | 50504 398 7 | 50645 486 8 | 30 488 40 9 | 50490 492 10 | 19 494 1e-06 11 | 50496 498 12 | 50392 498 13 | 20 500 30 14 | 50661 502 15 | 28 506 0.0012 16 | 50656 645 17 | 25 656 18 | 50667 661 19 | 50656 661 20 | 50508 667 21 | -------------------------------------------------------------------------------- /Circuits/rlc_test: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | -42 453 0.0012 6 | 50398 392 7 | 50504 398 8 | 50645 486 9 | 30 488 40 10 | 50490 492 11 | 19 494 1e-06 12 | 50496 498 13 | 50392 498 14 | 20 500 30 15 | 50661 502 16 | 50656 645 17 | 25 656 18 | 50667 661 19 | 50656 661 20 | 50508 667 21 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_MUX2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _mux2 53 -19 50350 615 50615 596 50331 596 50596 595 50814 813 50813 919 50919 909 50909 697 50697 538 50342 339 50339 816 50816 814 50648 595 50818 659 50399 664 50664 659 50659 653 50653 388 50293 187 50187 182 50282 176 50176 178 25 754 24 489 41 540 2 -41 348 2 -41 337 2 40 699 1 40 344 1 40 333 1 -------------------------------------------------------------------------------- /CircuitSolver.Data/_NAND_IC: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _NAND_IC 53 -19 40 720 3 40 561 3 40 402 3 41 243 2 41 238 2 41 249 2 50231 178 50236 231 50395 236 50400 395 50198 192 50298 293 50304 298 50351 298 50510 457 50669 616 50184 182 50131 184 50135 131 50241 135 50553 182 50559 553 50708 814 50718 708 50724 718 50247 724 50834 818 50304 834 24 192 25 775 50192 187 -------------------------------------------------------------------------------- /LIBCPM/USER.H: -------------------------------------------------------------------------------- 1 | // ----------------------------------------------------------------- 2 | // user.h: 3 | // definition of additional variables by the user 4 | // the new variable are grouped into the "user_defined" structure 5 | //------------------------------------------------------------------ 6 | 7 | typedef struct user_defined 8 | { 9 | 10 | }user_defined; -------------------------------------------------------------------------------- /Circuits/rlc2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 -19 618 1 -19 622 1 -19 292 1 -19 773 1 -19 380 1 -19 751 1 50645 486 50656 645 50508 667 50661 502 50667 661 50656 661 50496 498 50392 498 50398 392 50504 398 50490 492 -19 767 1 -19 384 1 -19 286 1 -19 410 1 -19 406 1 25 520 28 518 0.001 19 514 1e-06 20 510 100 30 488 40 19 494 1e-06 20 500 30 28 506 0.0012 25 656 -------------------------------------------------------------------------------- /CircuitSolver.Data/_7474: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _7474 53 -19 50194 565 50565 562 50190 349 50349 350 50350 456 50182 288 50288 292 50292 504 50504 505 50178 337 50337 346 50346 452 50720 715 50715 556 50556 550 50826 720 50822 769 50769 767 50767 449 50449 444 50810 439 50439 440 50814 655 50655 652 50652 493 50726 724 50724 830 50278 276 50276 170 25 726 24 278 63 507 63 495 -------------------------------------------------------------------------------- /Circuits/rlc6.nl: -------------------------------------------------------------------------------- 1 | * Circuit - circuits/rlc5.nl 2 | 3 | V1 0 xyz AC 5 4 | C1 4b xyz 2u 5 | L1 2 1 3m 6 | R1 node100 0 100 7 | R2 node100 5 100 8 | V2 0 4b AC 40 9 | C2 4b 3 1u 10 | R3 333 0 666 11 | L2 333 0 1.2m 12 | V3 0 5 AC 112 13 | V4 0 a6 AC 7 14 | R4 a6 333 500 15 | T17 1 0 2 0 10.1 16 | 17 | @ F=A'*(B+C')+D 18 | 19 | .OPTIONS 20 | .END 21 | -------------------------------------------------------------------------------- /Circuits/mttree2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 25 987 6 | 50192 184 7 | 50351 192 8 | 24 192 9 | 19 353 1 10 | 25 355 11 | 50184 396 12 | 20 398 1 13 | 50402 400 14 | -20 457 1 15 | -19 502 0.5 16 | -19 506 0.5 17 | -19 508 1 18 | 19 565 1 19 | 25 567 20 | 25 608 21 | 25 612 22 | 25 614 23 | -20 669 1 24 | -19 881 1 25 | -------------------------------------------------------------------------------- /Techdata.txt: -------------------------------------------------------------------------------- 1 | tline_seg 10 2 | is_distributed 1 3 | mos_rdsn 1.0 4 | mos_rdsp 1.0 5 | mos_cg 1.0 6 | mos_cd 1.0 7 | mos_cs 1.0 8 | tline_r0 1.0 9 | tline_l0 1.0 10 | tline_c0 1.0 11 | mos_min 1.0 12 | mos_max 10.0 13 | wire_min 1.0 14 | wire_max 1.0 15 | mw_area_r 1.0 16 | -------------------------------------------------------------------------------- /Circuits/delay_test: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50342 340 6 | 50336 335 7 | 50278 277 8 | 50277 224 9 | 50384 383 10 | 50383 436 11 | 50485 538 12 | 50538 537 13 | 50379 326 14 | 50273 326 15 | 50326 325 16 | 50167 114 17 | 50114 113 18 | 22 113 19 | 3 222 2 20 | 22 325 21 | 5 333 3 22 | 2 338 1 23 | 23 342 24 | 3 434 2 25 | 22 537 26 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_340: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _340 53 -19 7 492 7 445 5 399 5 781 6 721 3 516 3 933 2 459 50543 182 50437 178 50389 174 50496 494 50390 389 50972 389 50876 186 50878 876 50664 876 50666 664 50972 984 50761 496 50772 761 50938 935 50832 938 50726 723 50558 664 50567 558 50450 447 50343 344 50555 343 50558 555 50810 783 50351 457 50818 351 50814 401 50822 518 50235 447 50245 235 50351 245 5 0 -------------------------------------------------------------------------------- /Circuits/netlist test: -------------------------------------------------------------------------------- 1 | #Circuit - netlist test 2 | 3 | INPUT 4 4 | OUTPUT 6 5 | INPUT 15 6 | INPUT 13 7 | OUTPUT 16 8 | OUTPUT 23 9 | 6 = AND(4,5) 10 | 10 = AND(8,9) 11 | 15 = XOR(3,13,14) 12 | 20 = AND(18,19) 13 | 23 = AND(21,22) 14 | V1 0 2 AC 40 15 | C1 2 1 1u 16 | R1 1 0 30 17 | L1 1 0 1.2m 18 | R2 2 3 100 19 | R3 5 3 1k 20 | R123456 3 4 .1 21 | 22 | 23 | .OPTIONS 24 | .END 25 | -------------------------------------------------------------------------------- /Circuits/signal: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50449 131 6 | 50 133 1 7 | 50225 172 8 | 24 172 9 | -19 241 1e-010 10 | 50433 274 11 | 41 276 1 12 | 50543 331 13 | 25 347 14 | 50433 431 15 | 22 431 16 | 50592 433 17 | 50 439 1 18 | 2 443 19 | 50 447 1 20 | 50502 449 21 | 50 504 1 22 | 40 594 1 23 | -19 612 1e-010 24 | 50702 649 25 | 25 702 26 | 25 718 27 | -------------------------------------------------------------------------------- /CircuitSolver.Data/_OpAmp: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _OpAmp 53 -19 50650 649 50649 172 50172 178 50182 341 50340 341 50818 842 50842 577 20 575 100 31 440 1e-09 31 652 1e-09 31 554 1e-10 20 558 1e+07 30 351 0.001 32 571 100000 50438 332 50650 756 50548 442 50654 548 25 603 50550 548 50603 550 50340 332 50552 340 50348 341 50349 348 50560 348 50768 756 50556 768 50779 768 50514 779 50516 514 50361 353 50520 361 25 728 50569 728 5 0 -------------------------------------------------------------------------------- /Circuits/fig8.7: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50350 297 6 | 50297 282 7 | 50456 455 8 | 50455 614 9 | 50614 612 10 | 50555 547 11 | 50661 645 12 | 50596 594 13 | 50594 223 14 | 50223 221 15 | 50490 489 16 | 50489 330 17 | 50330 327 18 | 50331 330 19 | 50225 223 20 | 22 221 21 | 6 280 1 22 | 22 327 23 | 3 405 5 24 | 23 407 25 | 3 545 1 26 | 5 610 1 27 | 22 645 28 | -------------------------------------------------------------------------------- /LIBCPM/UTILS.H: -------------------------------------------------------------------------------- 1 | //--------------------------------------------------------- 2 | // utils.h 3 | 4 | int odd(int); 5 | void displayVector(char *, double *, int); 6 | void display_i(char *, int *, int); 7 | int max(int, int); 8 | double maxd(double a, double b); 9 | double scalar(double *, double *, int); 10 | double scalar_int(double *, int *, int); 11 | double norm2(double *, int); 12 | double dist2(double *, double *, int); 13 | -------------------------------------------------------------------------------- /Circuits/nl: -------------------------------------------------------------------------------- 1 | * Circuit - nl 2 | 3 | OUTPUT 13 4 | INPUT 14 5 | 7 = BUF(6) 6 | R1 1 2 324 7 | R2 3 4 -1 8 | IC1 n25 n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12 n13 n14 7408 9 | 10 | 11 | 12 | Q1 8 7 9 2n3904 13 | Q2 12 10 11 2n3906 14 | C1 15 16 1u 15 | D1 17 18 DIODE 16 | 17 | 18 | V1 19 20 AC 10 19 | V2 21 22 AC 3 20 | 21 | .model 2n3904 npn 22 | .model 2n3906 pnp 23 | 24 | .OPTIONS 25 | .END 26 | -------------------------------------------------------------------------------- /Circuits/rlc3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50508 296 6 | 50292 291 7 | 50287 284 8 | 50280 492 9 | 19 282 2e-06 10 | 28 289 0.003 11 | 20 294 100 12 | 50398 392 13 | 50504 398 14 | 50645 486 15 | 30 488 40 16 | 50490 492 17 | 19 494 1e-06 18 | 50496 498 19 | 50392 498 20 | 20 500 30 21 | 50661 502 22 | 28 506 0.0012 23 | 50656 645 24 | 25 656 25 | 50667 661 26 | 50656 661 27 | 50508 667 28 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .vs/ 2 | Debug/ 3 | Release/ 4 | CUTLINE.txt 5 | IV.TXT 6 | TruthTable.txt 7 | profile.txt 8 | results.out 9 | Win Circuit Solver.dbg 10 | WinCircuit Solver.001 11 | WinCircuit Solver.VC.VC.opendb 12 | WinCircuit Solver.VC.db 13 | WinCircuit Solver.mcp 14 | WinCircuit Solver.opt 15 | WinCircuit Solver.plg 16 | WinCircuit Solver.sln.docstates.suo 17 | WinCircuit Solver.suo 18 | WinCircuit Solver.sdf 19 | TAGS 20 | *~ 21 | -------------------------------------------------------------------------------- /Circuits/io2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50977 924 6 | 50924 871 7 | 50288 235 8 | 23 235 9 | 50341 288 10 | 23 288 11 | 23 341 12 | 50341 394 13 | 50447 394 14 | 23 394 15 | 50500 447 16 | 23 447 17 | 50553 500 18 | 22 500 19 | 23 500 20 | 50606 553 21 | 23 553 22 | 50712 606 23 | 23 606 24 | 50765 712 25 | 23 712 26 | 50818 765 27 | 23 765 28 | 50871 818 29 | 23 818 30 | 23 871 31 | 23 924 32 | 23 977 33 | -------------------------------------------------------------------------------- /Circuits/ee145mlab21: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 19 342 1.63e-08 6 | 50348 344 7 | 50454 348 8 | 19 383 6.75e-09 9 | 50389 385 10 | 50495 389 11 | 50344 397 12 | 50385 438 13 | 16 452 14 | 20 456 1e+06 15 | 25 458 16 | 16 493 17 | 20 497 5100 18 | 50340 499 19 | 20 501 5100 20 | 25 532 21 | 30 534 1 22 | 20 538 5100 23 | 50381 540 24 | 20 542 5100 25 | -19 609 2.39e-09 26 | -19 650 5.75e-09 27 | 25 715 28 | 25 756 29 | -------------------------------------------------------------------------------- /Circuits/io: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 128 6 | 23 128 7 | 22 181 8 | 23 181 9 | 22 234 10 | 23 234 11 | 22 287 12 | 23 287 13 | 22 340 14 | 23 340 15 | 22 393 16 | 23 393 17 | 22 446 18 | 23 446 19 | 22 499 20 | 23 499 21 | 22 552 22 | 23 552 23 | 22 605 24 | 23 605 25 | 22 658 26 | 23 658 27 | 22 711 28 | 23 711 29 | 22 764 30 | 23 764 31 | 22 817 32 | 23 817 33 | 22 870 34 | 23 870 35 | 22 923 36 | 23 923 37 | -------------------------------------------------------------------------------- /Circuits/mess: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 9 0 53 -19 25 161 27 163 1 1011 162 1011 169 1011 174 1011 181 1011 188 1011 197 1011 205 1011 319 1011 325 1011 331 1011 337 1011 344 1011 351 1011 358 1011 365 1011 465 1011 481 1011 491 1011 496 1011 503 1011 510 1011 524 1011 532 1011 538 1011 638 1011 648 1011 653 1011 659 1011 666 1011 673 1011 679 1011 685 1011 696 1011 787 1011 807 1011 812 1011 818 1011 825 1011 832 1011 850 1011 856 1011 913 1011 921 1011 929 1011 937 1011 949 1011 956 -------------------------------------------------------------------------------- /CircuitSolver.Data/_M: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_IC _M 53 -19 50174 161 50161 373 50373 374 50268 109 50109 133 50133 186 50855 850 50850 532 50532 533 50749 745 50745 639 50484 325 5 588 50855 908 50908 919 50919 654 50495 494 50494 653 50653 643 50643 749 50700 541 50810 757 50342 713 50713 708 50708 814 50506 400 50400 391 50182 235 50235 237 50237 449 50555 552 50822 663 50663 654 50654 601 50818 447 50442 443 50447 443 50495 442 50178 443 50285 280 50280 174 5 755 3 539 3 804 3 504 7 323 7 550 7 340 -------------------------------------------------------------------------------- /Circuits/m.nl: -------------------------------------------------------------------------------- 1 | # Circuit - circuits/m.nl 2 | 3 | INPUT(1) 4 | INPUT(2) 5 | OUTPUT(3) 6 | /* random 7 | crap */ 8 | x= (2+3) 9 | 10 | OUTPUT(out_x) 11 | $ z = OR(1,2) 12 | 3 = XOR($z, 4) 13 | $out_x = XOR(0, out_x) 14 | 35 = AND("0" "1") 15 | $2 = XOR(35 1) 16 | @c=(a|b)&(!a|!b) 17 | @f=a+b 18 | @ g=f*b 19 | @ h=~g 20 | 21 | $this = $out_x 22 | 35 = $that 23 | $zero = 0 24 | $one = "1" 25 | $this = NAND("1", that) 26 | 27 | r1 net1 net2 (sqrt(pi)+3.7*x) -------------------------------------------------------------------------------- /RESOURCE.H: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Developer Studio generated include file. 3 | // Used by CircuitSolver.rc 4 | // 5 | 6 | // Next default values for new objects 7 | // 8 | #ifdef APSTUDIO_INVOKED 9 | #ifndef APSTUDIO_READONLY_SYMBOLS 10 | #define _APS_NEXT_RESOURCE_VALUE 202 11 | #define _APS_NEXT_COMMAND_VALUE 32768 12 | #define _APS_NEXT_CONTROL_VALUE 201 13 | #define _APS_NEXT_SYMED_VALUE 101 14 | #endif 15 | #endif 16 | -------------------------------------------------------------------------------- /Circuits/142ps6p1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50416 411 6 | 50411 406 7 | 50406 399 8 | 50398 391 9 | 50391 386 10 | 50386 381 11 | 50381 375 12 | 50628 623 13 | 50623 618 14 | 50618 611 15 | 50611 610 16 | 50610 603 17 | 50603 598 18 | 50598 593 19 | 50593 587 20 | -31 481 1 21 | -19 487 1.544e-09 22 | -28 492 1.606e-05 23 | -20 497 4880 24 | -34 505 10 25 | -19 512 1.493e-09 26 | -28 517 1.731e-05 27 | -20 522 5000 28 | 25 611 29 | -------------------------------------------------------------------------------- /Circuits/xxx3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 6 0 4 | 53 -19 5 | 22 279 6 | 22 332 7 | 10 334 8 | 50340 336 9 | 2 342 10 | 50345 344 11 | 2 347 12 | 50350 349 13 | 50456 350 14 | 22 385 15 | 2 458 16 | 50462 460 17 | 50886 462 18 | 50610 606 19 | 50822 610 20 | 50704 651 21 | 50700 699 22 | 50753 700 23 | 50647 700 24 | 3 702 25 | 50757 704 26 | 3 706 27 | 50712 708 28 | 50606 712 29 | 23 713 30 | 50713 819 31 | 50819 822 32 | 50699 858 33 | 50858 886 34 | -------------------------------------------------------------------------------- /Circuits/nand: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 24 126 6 | 24 132 7 | 24 138 8 | 50440 175 9 | 41 177 1 10 | 50605 181 11 | 41 183 1 12 | 41 189 1 13 | 50338 232 14 | 50238 232 15 | 50244 238 16 | 50352 338 17 | 50391 338 18 | 23 352 19 | 50440 434 20 | 22 434 21 | 40 442 1 22 | 50550 497 23 | 50599 593 24 | 22 593 25 | 40 601 1 26 | 50599 605 27 | 50709 656 28 | 50758 752 29 | 22 752 30 | 50770 758 31 | 40 760 1 32 | 50187 770 33 | 25 815 34 | -------------------------------------------------------------------------------- /Circuits/xxx2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 6 0 4 | 53 -19 5 | 22 279 6 | 22 332 7 | 10 334 8 | 20 338 4700 9 | 50446 340 10 | 50234 340 11 | 2 342 12 | 50345 344 13 | 2 347 14 | 50350 349 15 | 50456 350 16 | 22 385 17 | 2 458 18 | 50462 460 19 | 50886 462 20 | 50610 606 21 | 50822 610 22 | 50704 651 23 | 50700 699 24 | 50647 700 25 | 50753 700 26 | 3 702 27 | 50757 704 28 | 3 706 29 | 20 710 22000 30 | 50606 712 31 | 23 713 32 | 50713 819 33 | 50819 822 34 | 50699 858 35 | 50858 886 36 | -------------------------------------------------------------------------------- /Circuits/rctree: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50714 704 6 | 50704 598 7 | 50594 435 8 | 50174 280 9 | 50435 276 10 | 50184 174 11 | 20 186 1 12 | 20 278 1 13 | 20 282 1 14 | -19 294 1e-009 15 | -19 386 1e-009 16 | -19 390 1e-009 17 | 25 400 18 | 20 433 1 19 | -30 537 1 20 | 20 596 1 21 | 20 600 1 22 | -19 700 1e-009 23 | -19 708 1e-009 24 | 20 716 1 25 | -19 810 1e-009 26 | -19 824 1e-009 27 | 25 930 28 | 25 916 29 | 25 814 30 | 25 806 31 | 25 643 32 | 25 496 33 | 25 492 34 | -------------------------------------------------------------------------------- /CircuitSolver.dlg: -------------------------------------------------------------------------------- 1 | 3 DIALOG DISCARDABLE 22, 17, 191, 91 2 | STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU 3 | CAPTION "About Circuit Solver" 4 | FONT 8, "System" 5 | BEGIN 6 | CTEXT "Circuit Solver",-1,0,5,191,8 7 | CTEXT "by Frank Gennari",-1,0,15,191,8 8 | CTEXT "Version 1.0a ",-1,0,32,191,8 9 | CTEXT "Copyright \251 1996-2000",-1,0,44,191,9 10 | DEFPUSHBUTTON "OK",IDOK,79,73,32,14,WS_GROUP 11 | ICON 3,-1,24,12,18,20,WS_GROUP 12 | END 13 |  -------------------------------------------------------------------------------- /Cursors/RESOURCE.H: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Developer Studio generated include file. 3 | // Used by crosshair.rc 4 | // 5 | #define IDC_POINTER 104 6 | 7 | // Next default values for new objects 8 | // 9 | #ifdef APSTUDIO_INVOKED 10 | #ifndef APSTUDIO_READONLY_SYMBOLS 11 | #define _APS_NEXT_RESOURCE_VALUE 101 12 | #define _APS_NEXT_COMMAND_VALUE 40001 13 | #define _APS_NEXT_CONTROL_VALUE 1000 14 | #define _APS_NEXT_SYMED_VALUE 101 15 | #endif 16 | #endif 17 | -------------------------------------------------------------------------------- /Circuits/mux_4or: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50908 916 6 | 50493 864 7 | 50864 855 8 | 50544 809 9 | 50809 802 10 | 50643 749 11 | 50444 709 12 | 50709 702 13 | 50645 643 14 | 50554 552 15 | 50539 544 16 | 50592 539 17 | 50491 493 18 | 50332 491 19 | 50448 444 20 | 50916 439 21 | 50395 390 22 | 50333 332 23 | 50552 234 24 | 50234 225 25 | 29 115 26 | 29 168 27 | 38 223 28 | 29 274 29 | 5 388 30 | 38 503 31 | 23 505 32 | 38 700 33 | 22 749 34 | 29 751 35 | 22 802 36 | 22 855 37 | 22 908 38 | -------------------------------------------------------------------------------- /Circuits/test1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50141 112 6 | 50565 141 7 | 50165 163 8 | 22 163 9 | 50112 165 10 | 50166 165 11 | 3 221 12 | 50226 223 13 | 50271 269 14 | 22 269 15 | 50642 271 16 | 50272 271 17 | 5 281 18 | 50286 283 19 | 50339 286 20 | 25 332 21 | 3 394 22 | 50398 396 23 | 50407 405 24 | 5 453 25 | 50460 455 26 | 50498 481 27 | 22 481 28 | 50445 498 29 | 25 504 30 | 38 515 31 | 23 517 32 | 50498 551 33 | 50566 565 34 | 3 606 35 | 50617 608 36 | 50405 617 37 | 50657 642 38 | -------------------------------------------------------------------------------- /Circuits/xtest: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 6 0 4 | 53 -19 5 | 50345 239 6 | 22 279 7 | 22 332 8 | 10 334 9 | 20 338 4700 10 | 50446 340 11 | 2 342 12 | 50345 344 13 | 2 347 14 | 50350 349 15 | 50456 350 16 | 22 385 17 | 2 458 18 | 50462 460 19 | 50886 462 20 | 50606 491 21 | 23 491 22 | 50610 606 23 | 50822 610 24 | 50704 651 25 | 50700 699 26 | 50753 700 27 | 50647 700 28 | 3 702 29 | 50757 704 30 | 3 706 31 | 20 710 22000 32 | 50606 712 33 | 23 713 34 | 50713 819 35 | 50819 822 36 | 50699 858 37 | 50858 886 38 | -------------------------------------------------------------------------------- /Circuits/rlctree: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50184 182 6 | 50178 174 7 | 20 180 2 8 | 28 186 1 9 | 50435 276 10 | 20 278 1 11 | 50174 280 12 | 20 282 1 13 | -19 294 1e-009 14 | -19 386 1e-009 15 | -19 390 1e-009 16 | 25 400 17 | 20 433 1 18 | 50594 435 19 | 25 492 20 | 25 496 21 | -30 537 1 22 | 20 596 1 23 | 50704 598 24 | 20 600 1 25 | 25 643 26 | -19 700 1e-009 27 | 50714 704 28 | -19 708 1e-009 29 | 20 716 1 30 | 25 806 31 | -19 810 1e-009 32 | 25 814 33 | -19 824 1e-009 34 | 25 916 35 | 25 930 36 | -------------------------------------------------------------------------------- /Header/RESOURCE.H: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Developer Studio generated include file. 3 | // Used by Circuit Solver VC.rc 4 | // 5 | #define IDS_PROJNAME 100 6 | 7 | #define IDR_CircuitSolverVC 100 8 | 9 | 10 | // Next default values for new objects 11 | // 12 | #ifdef APSTUDIO_INVOKED 13 | #ifndef APSTUDIO_READONLY_SYMBOLS 14 | #define _APS_NEXT_RESOURCE_VALUE 201 15 | #define _APS_NEXT_COMMAND_VALUE 32768 16 | #define _APS_NEXT_CONTROL_VALUE 201 17 | #define _APS_NEXT_SYMED_VALUE 101 18 | #endif 19 | #endif 20 | -------------------------------------------------------------------------------- /Circuits/m2.nl: -------------------------------------------------------------------------------- 1 | # Circuit - m2.nl 2 | 3 | INPUT(2) 4 | INPUT(3) 5 | OUTPUT(4) 6 | OUTPUT(5) 7 | 8 = OR(6 7) 8 | 10 = NOT(9) 9 | 12 = NOT(11) 10 | 15 = AND(13 14) 11 | 18 = AND(16 17) 12 | 21 = OR(19 20) 13 | 23 = NOT(22) 14 | 25 = NOT(24) 15 | 28 = AND(26 27) 16 | 31 = AND(29 30) 17 | 34 = OR(32 33) 18 | 37 = AND(35 36) 19 | 39 = NOT(38) 20 | 41 = NOT(40) 21 | 44 = AND(42 43) 22 | 47 = AND(45 46) 23 | 50 = OR(48 49) 24 | 53 = OR(51 52) 25 | 56 = OR(54 55) 26 | 59 = AND(57 58) 27 | 61 = NOT(60) 28 | 64 = NAND(62 63) 29 | R1 65 66 20.2725 30 | 31 | 32 | -------------------------------------------------------------------------------- /Circuits/mult_ic.nl: -------------------------------------------------------------------------------- 1 | # Circuit - mult_ic.nl 2 | 3 | INPUT(1) 4 | INPUT(2) 5 | INPUT(3) 6 | INPUT(4) 7 | INPUT(5) 8 | INPUT(6) 9 | OUTPUT(25) 10 | OUTPUT(25) 11 | OUTPUT(26) 12 | OUTPUT(27) 13 | OUTPUT(22) 14 | OUTPUT(13) 15 | 15 = XOR(6 5) 16 | 24 = XOR(5 4) 17 | IC1 n0 n7 n8 9 6 6 1 0 M 18 | IC2 9 10 11 12 6 6 2 0 M 19 | IC3 12 13 14 0 6 6 3 0 M 20 | IC4 n1 16 17 18 5 15 8 7 M 21 | IC5 18 19 20 21 5 15 11 7 M 22 | IC6 21 22 23 0 5 15 14 10 M 23 | IC7 n2 25 n3 28 4 24 17 16 M 24 | IC8 28 26 n4 29 4 24 20 16 M 25 | IC9 29 27 n5 0 4 24 23 19 M 26 | 27 | -------------------------------------------------------------------------------- /Circuits/142ps3p3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50222 116 6 | 50116 123 7 | 50123 388 8 | 50388 393 9 | 50393 287 10 | 50280 227 11 | 50227 226 12 | 50548 442 13 | 50442 452 14 | 50452 611 15 | 50668 615 16 | 50664 662 17 | 50662 291 18 | 50291 287 19 | 50283 280 20 | 50333 280 21 | 50280 279 22 | 50548 545 23 | 50541 647 24 | 50077 75 25 | 25 77 26 | -20 181 5000 27 | 25 275 28 | 34 277 0.0193 29 | 20 285 5181 30 | -20 439 20000 31 | 20 543 5000 32 | 20 550 3782 33 | 25 552 34 | 34 666 0.02644 35 | 25 668 36 | -30 753 1 37 | 25 859 38 | -------------------------------------------------------------------------------- /Circuits/mult.nl: -------------------------------------------------------------------------------- 1 | # Circuit - mult.nl 2 | 3 | INPUT(1) 4 | INPUT(2) 5 | INPUT(3) 6 | INPUT(4) 7 | INPUT(5) 8 | INPUT(6) 9 | OUTPUT(25) 10 | OUTPUT(25) 11 | OUTPUT(26) 12 | OUTPUT(27) 13 | OUTPUT(22) 14 | OUTPUT(13) 15 | 15 = XOR(6 5) 16 | 24 = XOR(5 4) 17 | X1 0 7 8 9 6 6 1 0 M 18 | X2 9 10 11 12 6 6 2 0 M 19 | X3 12 13 14 0 6 6 3 0 M 20 | X4 1 16 17 18 5 15 8 7 M 21 | X5 18 19 20 21 5 15 11 7 M 22 | X6 21 22 23 0 5 15 14 10 M 23 | X7 2 25 3 28 4 24 17 16 M 24 | X8 28 26 4 29 4 24 20 16 M 25 | X9 29 27 5 0 4 24 23 19 M 26 | 27 | .subckt M 28 | 29 | .ends 30 | 31 | 32 | -------------------------------------------------------------------------------- /Circuits/xxx: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 6 0 4 | 53 -19 5 | 50239 234 6 | 50345 239 7 | 22 279 8 | 22 332 9 | 10 334 10 | 20 338 4700 11 | 50446 340 12 | 50234 340 13 | 2 342 14 | 50345 344 15 | 50451 345 16 | 2 347 17 | 50350 349 18 | 50456 350 19 | 22 385 20 | 50451 446 21 | 50456 451 22 | 2 458 23 | 50462 460 24 | 50886 462 25 | 50610 606 26 | 50822 610 27 | 50704 651 28 | 50700 699 29 | 50647 700 30 | 50753 700 31 | 3 702 32 | 50757 704 33 | 3 706 34 | 20 710 22000 35 | 50606 712 36 | 23 713 37 | 50713 819 38 | 50819 822 39 | 50699 858 40 | 50858 886 41 | -------------------------------------------------------------------------------- /Circuits/problem1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 25 122 50122 123 50123 124 50124 177 50177 179 20 181 1000 31 217 0.01 50431 219 20 227 1000 50123 229 20 382 1000 50225 384 50543 384 50387 384 20 389 1000 50395 391 50183 395 20 397 1000 50406 399 20 408 680 50411 410 50517 411 50215 427 20 429 1000 50433 431 50380 433 50698 433 25 517 50544 543 20 546 1000 50550 548 50656 550 25 586 50427 586 50658 656 20 660 1000 50664 662 20 666 1000 50669 668 50828 669 20 700 1000 50703 702 50861 702 50707 703 50813 707 50709 707 50656 709 20 815 1000 50818 817 20 820 1000 50823 822 50929 823 25 828 20 863 1000 50918 865 50919 918 25 919 25 929 -------------------------------------------------------------------------------- /Circuits/problem1b: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 20 700 -1 20 389 1000 25 929 25 919 50919 918 50918 865 20 863 1000 25 828 50929 823 50823 822 20 820 1000 50818 817 20 815 1000 50656 709 50709 707 50813 707 50707 703 50861 702 50703 702 50828 669 50669 668 20 666 1000 50664 662 20 660 1000 50658 656 50427 586 25 586 50656 550 50550 548 20 546 1000 50544 543 25 517 50698 433 50380 433 50433 431 20 429 1000 50215 427 50517 411 50411 410 20 408 680 50406 399 20 397 1000 50183 395 50395 391 50387 384 50543 384 50225 384 20 382 1000 50123 229 20 227 1000 50431 219 31 217 0.01 20 181 1000 50177 179 50124 177 50123 124 50122 123 25 122 -------------------------------------------------------------------------------- /Circuits/rlc5: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50292 186 6 | 50186 198 7 | 25 221 8 | 30 223 5 9 | 50231 225 10 | 50284 231 11 | 19 282 2e-06 12 | 50287 284 13 | 28 289 0.003 14 | 50292 291 15 | 20 294 100 16 | 50508 296 17 | 50198 304 18 | 50398 392 19 | 50504 398 20 | -20 410 100 21 | 50645 486 22 | 30 488 40 23 | 50280 492 24 | 50490 492 25 | 19 494 1e-06 26 | 50496 498 27 | 50392 498 28 | 20 500 30 29 | 50661 502 30 | 28 506 0.0012 31 | 25 512 32 | 30 514 112 33 | 50656 645 34 | 25 656 35 | 50667 661 36 | 50656 661 37 | 50508 667 38 | 25 857 39 | 30 859 7 40 | 20 863 500 41 | 50867 865 42 | 50496 867 43 | -------------------------------------------------------------------------------- /Circuits/multX.nl: -------------------------------------------------------------------------------- 1 | # Circuit - multX.nl 2 | 3 | INPUT(1) 4 | INPUT(2) 5 | INPUT(3) 6 | INPUT(4) 7 | INPUT(5) 8 | INPUT(6) 9 | OUTPUT(25) 10 | OUTPUT(25) 11 | OUTPUT(26) 12 | OUTPUT(27) 13 | OUTPUT(22) 14 | OUTPUT(13) 15 | 15 = XOR(6 5) 16 | 24 = XOR(5 4) 17 | X1 n0 n7 n8 n9 n6 n6 n1 n0 M 18 | X2 n9 n10 n11 n12 n6 n6 n2 n0 M 19 | X3 n12 n13 n14 n0 n6 n6 n3 n0 M 20 | X4 n1 n16 n17 n18 n5 n15 n8 n7 M 21 | X5 n18 n19 n20 n21 n5 n15 n11 n7 M 22 | X6 n21 n22 n23 n0 n5 n15 n14 n10 M 23 | X7 n2 n25 n3 n28 n4 n24 n17 n16 M 24 | X8 n28 n26 n4 n29 n4 n24 n20 n16 M 25 | X9 n29 n27 n5 n0 n4 n24 n23 n19 M 26 | 27 | .subckt M 28 | 29 | .ends 30 | 31 | 32 | -------------------------------------------------------------------------------- /WinCircuit Solver.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "WinCircuit Solver"=".\WinCircuit Solver.dsp" - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /Circuits/bigtree: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50299 193 6 | 50 195 1 7 | 50 199 1 8 | 50 203 1 9 | 19 207 1 10 | 25 209 11 | 50499 287 12 | 50 289 1 13 | 50 293 1 14 | 50 297 1 15 | 50405 299 16 | 19 301 1 17 | 25 303 18 | 50 407 1 19 | 50 411 1 20 | 50 415 1 21 | 19 419 1 22 | 25 421 23 | 25 479 24 | 30 481 1 25 | 20 485 1 26 | 50 489 1 27 | 50 493 1 28 | 50 497 1 29 | 50711 499 30 | 19 501 1 31 | 25 503 32 | 50723 617 33 | 50 619 1 34 | 50 623 1 35 | 50 627 1 36 | 19 631 1 37 | 25 633 38 | 50 713 1 39 | 50 717 1 40 | 50 721 1 41 | 50829 723 42 | 19 725 1 43 | 25 727 44 | 50 831 1 45 | 50 835 1 46 | 50 839 1 47 | 19 843 1 48 | 25 845 49 | -------------------------------------------------------------------------------- /Circuits/wires: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 6 0 4 | 53 -19 5 | 50532 58 6 | 50988 83 7 | 50839 97 8 | 50118 107 9 | 22 107 10 | 50701 118 11 | 50122 118 12 | 50660 125 13 | 50569 127 14 | 50430 132 15 | 50927 138 16 | 50843 145 17 | 50808 174 18 | 50635 258 19 | 50101 258 20 | 50855 275 21 | 50275 344 22 | 50914 430 23 | 50058 493 24 | 50902 493 25 | 50905 532 26 | 50475 532 27 | 50145 560 28 | 50938 569 29 | 50951 635 30 | 50258 660 31 | 50344 701 32 | 50125 752 33 | 50127 770 34 | 50770 808 35 | 50266 839 36 | 50997 843 37 | 50925 855 38 | 50752 905 39 | 50083 914 40 | 50174 925 41 | 50493 927 42 | 50560 938 43 | 50929 938 44 | 23 951 45 | 50097 988 46 | 50138 997 47 | -------------------------------------------------------------------------------- /Circuits/iotest2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50966 114 6 | 50118 962 7 | 50913 909 8 | 50860 856 9 | 50807 803 10 | 50701 697 11 | 50648 644 12 | 50595 591 13 | 50542 538 14 | 50489 485 15 | 50436 432 16 | 50383 379 17 | 50330 326 18 | 50277 273 19 | 50224 220 20 | 50171 167 21 | 22 114 22 | 23 118 23 | 22 167 24 | 23 171 25 | 22 220 26 | 23 224 27 | 22 273 28 | 23 277 29 | 22 326 30 | 23 330 31 | 22 379 32 | 23 383 33 | 22 432 34 | 23 436 35 | 22 485 36 | 23 489 37 | 22 538 38 | 23 542 39 | 22 591 40 | 23 595 41 | 22 644 42 | 23 648 43 | 22 697 44 | 23 701 45 | 22 803 46 | 23 807 47 | 22 856 48 | 23 860 49 | 22 909 50 | 23 913 51 | 22 962 52 | 23 966 53 | -------------------------------------------------------------------------------- /Circuits/exam1p1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50372 637 6 | 50637 647 7 | 50875 865 8 | 50169 160 9 | 2 171 2 10 | 50187 173 11 | 50717 187 12 | 2 189 2 13 | 50197 191 14 | 50303 197 15 | 3 358 7 16 | 50365 360 17 | 50577 365 18 | 50160 372 19 | 22 372 20 | 2 374 2 21 | 50382 376 22 | 50400 390 23 | 22 390 24 | 3 437 5 25 | 50443 439 26 | 50496 443 27 | 5 455 5 28 | 50462 457 29 | 50409 462 30 | 50488 484 31 | 22 484 32 | 50553 500 33 | 50506 500 34 | 5 551 10 35 | 50765 553 36 | 5 632 5 37 | 23 634 38 | 3 702 5 39 | 50708 704 40 | 50602 708 41 | 50724 717 42 | 50753 749 43 | 22 749 44 | 50769 765 45 | 3 779 5 46 | 50789 781 47 | 50683 789 48 | 3 824 5 49 | 50830 826 50 | 22 865 51 | -------------------------------------------------------------------------------- /Circuits/14in: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50375 110 6 | 22 110 7 | 50429 112 8 | 22 112 9 | 50482 114 10 | 22 114 11 | 50540 116 12 | 22 116 13 | 50383 118 14 | 22 118 15 | 50438 120 16 | 22 120 17 | 50492 122 18 | 22 122 19 | 50545 124 20 | 22 124 21 | 50391 126 22 | 22 126 23 | 50446 128 24 | 22 128 25 | 50501 130 26 | 22 130 27 | 50556 132 28 | 22 132 29 | 50459 134 30 | 22 134 31 | 50141 136 32 | 22 136 33 | 50406 141 34 | 50376 375 35 | 50386 383 36 | 50397 391 37 | 50439 438 38 | 50450 446 39 | 43 484 40 | 50698 486 41 | 43 494 42 | 50816 496 43 | 50503 501 44 | 43 505 45 | 50512 507 46 | 43 514 47 | 23 516 48 | 50535 540 49 | 50710 698 50 | 3 765 51 | 50777 767 52 | 50565 777 53 | -------------------------------------------------------------------------------- /Circuits/bigtree2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50299 193 6 | 50 195 1 7 | 50 199 1 8 | 50 203 1 9 | 19 207 1 10 | 25 209 11 | 50490 278 12 | 50278 279 13 | 50 281 1 14 | 50499 287 15 | 50 289 1 16 | 50 293 1 17 | 50 297 1 18 | 50405 299 19 | 19 301 1 20 | 25 303 21 | 50 387 1 22 | 50283 389 23 | 50 407 1 24 | 50 411 1 25 | 50 415 1 26 | 19 419 1 27 | 25 421 28 | 25 478 29 | 30 480 1 30 | 20 484 1 31 | 50 488 1 32 | 50385 491 33 | 50 493 1 34 | 50 497 1 35 | 50711 499 36 | 19 501 1 37 | 25 503 38 | 50723 617 39 | 50 619 1 40 | 50 623 1 41 | 50 627 1 42 | 19 631 1 43 | 25 633 44 | 50 713 1 45 | 50 717 1 46 | 50 721 1 47 | 50829 723 48 | 19 725 1 49 | 25 727 50 | 50 831 1 51 | 50 835 1 52 | 50 839 1 53 | 19 843 1 54 | 25 845 55 | -------------------------------------------------------------------------------- /Source/Unused/set_valid_nodes.cpp: -------------------------------------------------------------------------------- 1 | void set_valid_nodes(component *head); 2 | 3 | 4 | void set_valid_nodes(component *head) { 5 | 6 | connections x = get_connections(head->location, head->id, head->flags); 7 | 8 | if (x.in1 != 0 && NODENUMBER[x.in1] == -2) 9 | NODENUMBER[x.in1] = -1; 10 | 11 | if (x.in2 != 0 && NODENUMBER[x.in2] == -2) 12 | NODENUMBER[x.in2] = -1; 13 | 14 | if (x.in3 != 0 && NODENUMBER[x.in3] == -2) 15 | NODENUMBER[x.in3] = -1; 16 | 17 | if (x.out1 != 0 && NODENUMBER[x.out1] == -2) 18 | NODENUMBER[x.out1] = -1; 19 | 20 | if (x.out2 != 0 && NODENUMBER[x.out2] == -2) 21 | NODENUMBER[x.out2] = -1; 22 | 23 | if (x.out3 != 0 && NODENUMBER[x.out3] == -2) 24 | NODENUMBER[x.out3] = -1; 25 | } 26 | 27 | 28 | else 29 | set_valid_nodes(temp); -------------------------------------------------------------------------------- /bigtree4: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50299 193 6 | 50 195 6.73055 7 | 50 199 4.9155 8 | 50 203 3.62752 9 | 19 207 10 10 | 25 209 11 | 50499 287 12 | 50 289 34.1216 13 | 50 293 25.0901 14 | 50 297 18.5264 15 | 50405 299 16 | 19 301 1 17 | 25 303 18 | 50 407 6.75852 19 | 50 411 4.89332 20 | 50 415 3.61974 21 | 19 419 10 22 | 25 421 23 | 25 479 24 | 30 481 1 25 | 20 485 1 26 | 50 489 100 27 | 50 493 100 28 | 50 497 93.0279 29 | 50711 499 30 | 19 501 1 31 | 25 503 32 | 50723 617 33 | 50 619 6.60653 34 | 50 623 4.95799 35 | 50 627 3.69399 36 | 19 631 10 37 | 25 633 38 | 50 713 34.0654 39 | 50 717 25.2633 40 | 50 721 18.4554 41 | 50829 723 42 | 19 725 1 43 | 25 727 44 | 50 831 6.7159 45 | 50 835 4.93878 46 | 50 839 3.59975 47 | 19 843 10 48 | 25 845 49 | -------------------------------------------------------------------------------- /Circuits/bigtree3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50299 193 6 | 50 195 7.66592 7 | 50 199 5.47827 8 | 50 203 3.93092 9 | 19 207 10 10 | 25 209 11 | 50499 287 12 | 50 289 54.667 13 | 50 293 27.2505 14 | 50 297 17.5 15 | 50405 299 16 | 19 301 1 17 | 25 303 18 | 50 407 7.65287 19 | 50 411 5.47775 20 | 50 415 3.94613 21 | 19 419 10 22 | 25 421 23 | 25 479 24 | 30 481 1 25 | 20 485 1 26 | 50 489 100 27 | 50 493 100 28 | 50 497 100 29 | 50711 499 30 | 19 501 1 31 | 25 503 32 | 50723 617 33 | 50 619 7.6777 34 | 50 623 5.50455 35 | 50 627 3.89014 36 | 19 631 10 37 | 25 633 38 | 50 713 42.5303 39 | 50 717 29.6394 40 | 50 721 21.6026 41 | 50829 723 42 | 19 725 1 43 | 25 727 44 | 50 831 7.65756 45 | 50 835 5.47807 46 | 50 839 3.93603 47 | 19 843 10 48 | 25 845 49 | -------------------------------------------------------------------------------- /Circuits/biggertree: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50299 193 6 | 50 195 1 7 | 50 199 1 8 | 50 203 1 9 | 19 207 1 10 | 25 209 11 | 25 275 12 | 19 277 1 13 | 50 281 1 14 | 50 285 1 15 | 50499 287 16 | 50 289 1 17 | 50 293 1 18 | 50 297 1 19 | 50405 299 20 | 19 301 1 21 | 25 303 22 | 50 407 1 23 | 50 411 1 24 | 50 415 1 25 | 19 419 1 26 | 25 421 27 | 25 479 28 | 30 481 1 29 | 20 485 1 30 | 50 489 1 31 | 50 493 1 32 | 50 497 1 33 | 50711 499 34 | 19 501 1 35 | 25 503 36 | 50723 617 37 | 50 619 1 38 | 50 623 1 39 | 50 627 1 40 | 19 631 1 41 | 25 633 42 | 25 699 43 | 19 701 1 44 | 50 705 1 45 | 50 709 1 46 | 50 713 1 47 | 50 717 1 48 | 50 721 1 49 | 50829 723 50 | 19 725 1 51 | 25 727 52 | 50 831 1 53 | 50 835 1 54 | 50 839 1 55 | 19 843 1 56 | 25 845 57 | -------------------------------------------------------------------------------- /Circuits/fotest: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50356 350 6 | 50350 403 7 | 50403 399 8 | 50515 513 9 | 50513 725 10 | 50725 718 11 | 50727 833 12 | 50833 824 13 | 50218 216 14 | 22 216 15 | 50748 218 16 | 50223 218 17 | 50382 223 18 | 50228 223 19 | 2 230 20 | 50233 232 21 | 50710 233 22 | 50236 233 23 | 50342 236 24 | 50640 322 25 | 50330 322 26 | 22 322 27 | 23 356 28 | 50383 382 29 | 50395 388 30 | 9 397 31 | 50593 434 32 | 50434 436 33 | 43 438 34 | 50448 440 35 | 50607 448 36 | 50489 488 37 | 23 515 38 | 50488 541 39 | 50541 544 40 | 50600 593 41 | 50606 600 42 | 50388 600 43 | 50759 600 44 | 50659 606 45 | 50608 607 46 | 50645 640 47 | 50661 659 48 | 8 700 49 | 50703 702 50 | 50915 703 51 | 50544 703 52 | 39 716 53 | 23 727 54 | 50751 748 55 | -5 761 56 | 50922 816 57 | 50922 915 58 | 50926 922 59 | 50767 926 60 | -------------------------------------------------------------------------------- /Circuits/exam1p1b: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 1 459 1 6 | 22 108 7 | 1 110 1 8 | 50165 112 9 | 50271 165 10 | 50169 165 11 | 2 171 2 12 | 50173 183 13 | 1 185 2 14 | 2 189 2 15 | 50193 191 16 | 1 195 1 17 | 50303 197 18 | 50372 266 19 | 50266 271 20 | 50183 342 21 | 50717 346 22 | 50342 346 23 | 3 358 7 24 | 1 362 1 25 | 50365 364 26 | 50577 365 27 | 50637 372 28 | 2 374 2 29 | 1 378 1 30 | 50382 380 31 | 22 390 32 | 1 392 3 33 | 50400 394 34 | 3 437 5 35 | 1 441 2 36 | 50496 443 37 | 5 455 5 38 | 50462 461 39 | 50409 462 40 | 22 484 41 | 1 486 1 42 | 50553 500 43 | 1 502 1 44 | 50506 504 45 | 5 551 10 46 | 50765 553 47 | 5 632 5 48 | 23 634 49 | 50647 637 50 | 3 702 5 51 | 1 706 1 52 | 50602 708 53 | 50720 717 54 | 1 722 4 55 | 22 749 56 | 1 751 2 57 | 1 767 1 58 | 3 779 5 59 | 1 783 2 60 | 50789 785 61 | 50683 789 62 | 3 824 5 63 | 1 828 1 64 | 22 865 65 | 1 867 1 66 | 50875 869 67 | -------------------------------------------------------------------------------- /Circuits/problem1c: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 25 122 6 | 50122 123 7 | 50123 124 8 | 50124 177 9 | 50177 179 10 | 20 181 1000 11 | 31 217 0 12 | 50431 219 13 | 20 227 1000 14 | 50123 229 15 | 20 382 1000 16 | 50225 384 17 | 50543 384 18 | 50387 384 19 | 20 389 1000 20 | 50395 391 21 | 50183 395 22 | 20 397 1000 23 | 50406 399 24 | 20 408 680 25 | 50411 410 26 | 50517 411 27 | 50215 427 28 | 20 429 1000 29 | 50433 431 30 | 50380 433 31 | 50698 433 32 | 25 517 33 | 50544 543 34 | 20 546 1000 35 | 50550 548 36 | 50656 550 37 | 50427 586 38 | 25 586 39 | 50658 656 40 | 20 660 1000 41 | 50664 662 42 | 20 666 1000 43 | 50669 668 44 | 50828 669 45 | 20 700 1000 46 | 50703 702 47 | 50861 702 48 | 50707 703 49 | 50813 707 50 | 50709 707 51 | 50656 709 52 | 20 815 1000 53 | 50818 817 54 | 20 820 1000 55 | 50823 822 56 | 50929 823 57 | 25 828 58 | 20 863 1000 59 | 50918 865 60 | 50919 918 61 | 25 919 62 | 25 929 63 | -------------------------------------------------------------------------------- /WinCircuit Solver.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinCircuit Solver", "WinCircuit Solver.vcxproj", "{33DE0EF8-CF26-9EEE-A0DD-3A0AF73150EF}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {33DE0EF8-CF26-9EEE-A0DD-3A0AF73150EF}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {33DE0EF8-CF26-9EEE-A0DD-3A0AF73150EF}.Debug|Win32.Build.0 = Debug|Win32 14 | {33DE0EF8-CF26-9EEE-A0DD-3A0AF73150EF}.Release|Win32.ActiveCfg = Release|Win32 15 | {33DE0EF8-CF26-9EEE-A0DD-3A0AF73150EF}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Circuits/cbadder: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50064 56 6 | 22 56 7 | 50094 64 8 | 50117 64 9 | 50677 94 10 | 50163 162 11 | 22 162 12 | 50375 163 13 | 50164 163 14 | 3 172 15 | 50176 174 16 | 7 219 17 | 50223 221 18 | 50753 223 19 | 5 231 20 | 50235 233 21 | 50447 235 22 | 50236 235 23 | 50480 268 24 | 50270 268 25 | 22 268 26 | 50282 280 27 | 7 291 28 | 50314 293 29 | 23 314 30 | 50551 339 31 | 50339 342 32 | 50376 375 33 | 3 431 34 | 50439 433 35 | 50280 439 36 | 50448 447 37 | 50482 480 38 | 3 503 39 | 50509 505 40 | 50520 516 41 | 50657 551 42 | 50554 551 43 | 5 564 44 | 50573 566 45 | 50587 586 46 | 22 586 47 | 50799 587 48 | 50588 587 49 | 50615 614 50 | 38 628 51 | 50632 630 52 | 23 632 53 | 7 643 54 | 50657 645 55 | 50660 657 56 | 50679 677 57 | 50904 692 58 | 50694 692 59 | 22 692 60 | 3 715 61 | 50728 717 62 | 50516 728 63 | 50766 753 64 | 50800 799 65 | 3 855 66 | 50879 857 67 | 50614 879 68 | 50906 904 69 | -------------------------------------------------------------------------------- /Circuits/mult2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 53 -19 50968 974 50959 965 50975 922 50966 913 50907 904 50957 904 50844 839 50839 818 50756 809 50818 809 50809 800 50844 791 50818 765 50702 755 50800 747 50764 711 50734 711 50711 702 50693 702 50746 693 50763 667 50931 666 50659 665 50754 658 50762 657 50650 656 50745 649 50595 648 50753 648 50585 595 50744 585 50526 528 50685 526 50526 509 50456 509 50509 500 50491 500 50438 491 50526 473 50500 447 50402 416 50455 402 50393 402 50446 393 50384 393 50437 384 50367 368 50454 358 50940 357 50350 356 50445 349 50453 348 50341 347 50436 340 50444 339 50286 339 50276 286 50435 276 50528 263 50263 259 50368 209 50199 200 50209 200 50147 200 50146 199 50190 191 50199 191 50138 191 50137 190 50181 182 50190 182 50129 182 50128 181 50074 127 50209 103 50259 100 50839 97 50145 92 50136 83 50083 74 22 83 22 92 22 97 22 100 22 103 25 126 25 135 25 144 1042 234 1042 243 1042 252 25 359 -7 418 1042 543 1042 552 1042 561 25 668 -7 736 1042 852 1042 861 1042 870 23 904 23 907 23 913 23 922 23 931 23 940 25 977 -------------------------------------------------------------------------------- /Circuits/219bhw4p3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50253 252 6 | 50252 358 7 | 50147 141 8 | 50708 390 9 | 50708 698 10 | 50390 391 11 | 50709 708 12 | 50603 597 13 | 50285 283 14 | 50283 442 15 | 50442 440 16 | 50124 123 17 | 2 126 18 | 50132 128 19 | 50238 132 20 | 2 139 21 | 50164 161 22 | 22 161 23 | 50172 164 24 | 50190 184 25 | 50137 190 26 | 3 202 27 | 50209 204 28 | 23 209 29 | 3 227 30 | 50123 229 31 | 50278 277 32 | 3 293 33 | 50560 295 34 | 50299 295 35 | 50164 323 36 | 3 340 37 | 50343 342 38 | 50184 343 39 | 50344 343 40 | 3 354 41 | 50358 356 42 | 50411 358 43 | 3 378 44 | 50383 380 45 | 50277 383 46 | 50436 383 47 | 50405 397 48 | 2 413 49 | 50416 415 50 | 50469 416 51 | 50429 426 52 | 22 426 53 | 50588 429 54 | 2 438 55 | 3 524 56 | 50527 526 57 | 23 527 58 | 50564 560 59 | 50593 588 60 | 50641 588 61 | 2 595 62 | 3 619 63 | 50623 621 64 | 2 625 65 | 50628 627 66 | 50575 628 67 | 3 658 68 | 50662 660 69 | 50397 662 70 | 2 664 71 | 50670 666 72 | 3 696 73 | 50747 744 74 | 22 744 75 | -------------------------------------------------------------------------------- /Circuits/mult bad: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit xxx 5 0 50968 974 50959 965 50975 922 50966 913 50907 904 50957 904 50844 839 50839 818 50756 809 50818 809 50809 800 50844 791 50818 765 50702 755 50800 747 50764 711 50734 711 50711 702 50693 702 50746 693 50763 667 50931 666 50659 665 50754 658 50762 657 50650 656 50745 649 50595 648 50753 648 50585 595 50744 585 50526 528 50685 526 50526 509 50456 509 50509 500 50491 500 50438 491 50526 473 50500 447 50402 416 50455 402 50393 402 50446 393 50384 393 50437 384 50367 368 50454 358 50940 357 50350 356 50445 349 50453 348 50341 347 50436 340 50444 339 50286 339 50276 286 50435 276 50528 263 50263 259 50368 209 50199 200 50209 200 50147 200 50146 199 50190 191 50199 191 50138 191 50137 190 50181 182 50190 182 50129 182 50128 181 50209 103 50259 100 50839 97 50145 92 50136 83 50127 74 22 74 22 83 22 92 22 97 22 100 22 103 25 126 25 135 25 144 1142 234 1142 243 1142 252 25 359 -7 418 999 543 0 0 -534 -534 999 552 45343 -234 -3245 345 999 561 25 668 456 23423 43534 53453534 6456445 324.32 423.534 1042 870 23 w904 23 907 23 913 23 922 23 931 23 940 25 977 fdsagdsgd ter 534 e ewr jhkh `125 65 -------------------------------------------------------------------------------- /Circuits/MULT.TXT: -------------------------------------------------------------------------------- 1 | 2 | O-* O-* O-* O-*O-*O-* 3 | |*** |*** |*** | | | 4 | ---**-------**-------**--+--+--* 5 | = | = | = | | *--+* 6 | *---------*++ ++++ ++++ | || 7 | | |***-----****-----***| ||-\ **| 8 | | *--------*--------*-------+----+*) |- | 9 | **** **** **** | = ||-/ * | 10 | +++*--------*--------*------+----+----*-* 11 | ) | ) | ) | | | | 12 | *---------*++ ++++ ++++ | | | 13 | | |***-----****-----***| | ||-\ * 14 | | *--------*--------*-------+--------+----+*) |- 15 | **** **** **** | = | ||-/ * 16 | +++*--------*--------*------+--------+----*----* 17 | ) | ) | ) | | | 18 | +*--*-O +*++ +*++ *-O *-O 19 | |*|*-----**|*-----**|| 20 | -------------------------------------------------------------------------------- /Circuits/TEST.TXT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | |||||||| 6 | ++++++++ -+-+- 7 | ) | -| | 8 | ++++++++ -+-+- 9 | |||||||| 10 | -+-+- -+-+- 11 | | | ||||||| -| | 12 | -+-+- +++++++ +-+- 13 | ) | 14 | +++++++ 15 | ||||||| 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Circuits/XXX.TXT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | *----* 6 | O-|-\ ||\ ||\ 7 | O-| |O\/\*| O**| O** 8 | O-|-/ ||/ ||/ ||\ 9 | *----*----*| O*-* 10 | |/ | 11 | | 12 | *---* | 13 | *-\ *-\ | | | 14 | ** |* |-\/\**-O| | 15 | |*-/ *-/ | | | 16 | | *--* | 17 | *---------------------------* 18 | 19 | 20 | -------------------------------------------------------------------------------- /Circuits/fig7.4: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50552 539 6 | 50552 446 7 | 50663 658 8 | 50658 552 9 | 50446 451 10 | 50556 554 11 | 50554 342 12 | 50345 342 13 | 50342 130 14 | 50130 124 15 | 50124 177 16 | 50875 861 17 | 50822 821 18 | 50821 556 19 | 50556 557 20 | 50769 663 21 | 50829 826 22 | 50509 721 23 | 50721 723 24 | 50735 733 25 | 50357 675 26 | 50357 356 27 | 50675 676 28 | 50782 780 29 | 50240 134 30 | 2 136 31 | 50509 138 32 | 50164 162 33 | 22 162 34 | 50177 171 35 | 3 219 36 | 50224 221 37 | 50171 224 38 | 3 232 39 | 50240 234 40 | 50246 240 41 | 50299 246 42 | 50269 268 43 | 22 268 44 | 50270 269 45 | 2 280 46 | 50283 282 47 | 3 354 48 | 50358 357 49 | 50411 358 50 | 8 400 51 | 50405 402 52 | 5 466 53 | 50470 468 54 | 23 470 55 | 50269 481 56 | 50481 482 57 | 50511 509 58 | 4 537 59 | 3 566 60 | 50570 568 61 | 50517 570 62 | 50587 586 63 | 22 586 64 | 50799 587 65 | 50588 587 66 | 3 612 67 | 50617 614 68 | 5 731 69 | 23 735 70 | 3 778 71 | 50800 799 72 | 9 824 73 | 5 855 74 | 50861 857 75 | 50278 861 76 | 50906 904 77 | 22 904 78 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 fegennari 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Circuits/rlc4: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50333 332 6 | 50333 492 7 | 50327 328 8 | 50116 115 9 | 19 118 2e-05 10 | 50121 120 11 | 50280 121 12 | 19 123 1e-06 13 | 50128 125 14 | 28 130 0.0001 15 | 50133 132 16 | 20 135 50 17 | 50296 137 18 | -20 221 200 19 | 19 282 2e-06 20 | 50287 284 21 | 28 289 0.003 22 | 50292 291 23 | 20 294 100 24 | 50508 296 25 | 50486 327 26 | 19 330 0.0001 27 | -20 390 20 28 | 50398 392 29 | 50504 398 30 | 50645 486 31 | 30 488 40 32 | 50810 492 33 | 50490 492 34 | 50280 333 35 | 19 494 1e-06 36 | 50392 498 37 | 50496 498 38 | 20 500 30 39 | 50661 502 40 | 28 506 0.0012 41 | 50656 645 42 | 25 656 43 | 50656 661 44 | 50667 661 45 | 50508 667 46 | 20 712 30 47 | 50715 714 48 | 20 717 20 49 | 50720 719 50 | 50667 720 51 | 50645 804 52 | 28 806 0.0007 53 | 50810 808 54 | 28 812 0.0001 55 | 50816 814 56 | 50710 816 57 | 19 818 3e-07 58 | 50821 820 59 | 20 823 45 60 | 50826 825 61 | 50720 826 62 | 50804 910 63 | 20 912 200 64 | 50916 914 65 | 19 918 2.5e-06 66 | 50814 920 67 | 50922 920 68 | 20 924 400 69 | 50927 926 70 | 20 929 300 71 | 50932 931 72 | 50826 932 73 | -------------------------------------------------------------------------------- /Circuits/exam2p1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50063 55 6 | 50169 63 7 | 50080 63 8 | 50186 80 9 | 50273 114 10 | 50114 124 11 | 50055 161 12 | 22 161 13 | 2 163 14 | 50377 165 15 | 50503 185 16 | 50185 186 17 | 3 224 18 | 50228 226 19 | 50387 228 20 | 50124 230 21 | 50230 239 22 | 9 241 23 | 50251 243 24 | 50569 251 25 | 50273 270 26 | 50275 273 27 | 50292 289 28 | 50376 373 29 | 22 373 30 | 50535 376 31 | 50270 376 32 | 50379 377 33 | 50381 379 34 | 50909 379 35 | 50398 394 36 | 3 436 37 | 50440 438 38 | 11 442 39 | 23 444 40 | 3 453 41 | 50457 455 42 | 50487 479 43 | 50593 487 44 | 50504 503 45 | 3 512 46 | 50515 514 47 | 50621 515 48 | 50539 535 49 | 50698 539 50 | 50563 562 51 | 50479 585 52 | 50797 585 53 | 22 585 54 | 2 587 55 | 50748 589 56 | 50622 621 57 | 11 624 58 | 23 626 59 | 3 648 60 | 50652 650 61 | 50493 652 62 | 50663 661 63 | 50699 698 64 | 50857 698 65 | 5 718 66 | 50722 720 67 | 50765 748 68 | 50394 765 69 | 50875 769 70 | 3 777 71 | 50781 779 72 | 50675 781 73 | 50819 797 74 | 50289 819 75 | 50828 819 76 | 50875 857 77 | 50880 875 78 | 50562 880 79 | 50926 909 80 | 50661 926 81 | -------------------------------------------------------------------------------- /Circuits/fig9.3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50518 517 6 | 50097 60 7 | 50786 97 8 | 22 108 9 | 1 110 5 10 | 50113 112 11 | 50060 113 12 | 50116 113 13 | 7 171 2 14 | 50204 173 15 | 23 204 16 | 50380 221 17 | 50221 222 18 | 50113 272 19 | 50272 275 20 | 50321 320 21 | 22 320 22 | 50586 321 23 | 50322 321 24 | 3 330 1 25 | 50335 332 26 | 7 377 2 27 | 50380 379 28 | 50804 380 29 | 50381 380 30 | 5 390 1 31 | 50393 392 32 | 50397 393 33 | 50428 426 34 | 22 426 35 | 50439 441 36 | 7 452 2 37 | 50469 454 38 | 23 469 39 | 50428 481 40 | 50503 501 41 | 3 536 1 42 | 50545 538 43 | 50439 545 44 | 50393 552 45 | 50552 556 46 | 50571 569 47 | 50587 586 48 | 3 611 1 49 | 50618 613 50 | 38 626 2 51 | 23 628 52 | 50639 638 53 | 22 638 54 | 50640 639 55 | 50715 662 56 | 5 673 1 57 | 50569 675 58 | 7 695 2 59 | 50713 697 60 | 50501 713 61 | 50713 715 62 | 50768 715 63 | 50746 744 64 | 22 744 65 | 50799 746 66 | 50677 783 67 | 50783 786 68 | 50818 804 69 | 50871 818 70 | 3 823 1 71 | 50835 825 72 | 50517 835 73 | 3 854 1 74 | 50866 856 75 | 50972 866 76 | 50874 871 77 | 50639 904 78 | 50905 904 79 | 50989 972 80 | 50724 989 81 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # CircuitSolver 2 | Digital/Analog Circuit Design and Simulation System. CircuitSolver contains a variety of features for design and analysis of simple analog and digital circuits, as well as a built-in graphing calculator. It's great for solving those homework problems from EE course textbooks. The UI is text-based with some simple graphics with clickable buttons. 3 | 4 | This project was originally written in C++ (mostly C) in CodeWarrior during my time at Carnegie Mellon University from 1996-2000. I've since ported this to Windows, linux, and cygwin. I provide the source of CircuitSolver for educational purposes but with no support. Use it how you would like. 5 | 6 | Only the Windows build is currently supported. The WinCircuit Solver.vcxproj file can be opened with any recent version of MS Visual Studio (2010, 2015, etc.) and should build with no external dependencies and run on any modern version of MS Windows. 7 | 8 | That's right, there are no dependencies. Everything is self-contained. All of the graphics, window management, mouse/keyboard input, file I/O, etc. are done in software using native OS system calls. This project was written before most of the utility libraries in use today even existed. 9 | -------------------------------------------------------------------------------- /Source/Unused/Nodes_unused.cpp: -------------------------------------------------------------------------------- 1 | unsigned count_wires(component *head) { 2 | 3 | int ID; 4 | unsigned numwires(0); 5 | 6 | while (head != 0) { 7 | ID = head->id; 8 | 9 | if (get_order(ID) == wirex) { 10 | ++numwires; 11 | } 12 | else if (!useCOMPLEX) { 13 | if (ID == INDUCTOR_ID) { 14 | ++numwires; 15 | } 16 | else if (ID == XFMR_ID) { 17 | numwires += 2; 18 | } 19 | } 20 | head = head->next; 21 | } 22 | return numwires; 23 | } 24 | 25 | 26 | 27 | 28 | void create_wires(component *head, wire *wires) { 29 | 30 | int ID; 31 | unsigned index(0); 32 | connections x; 33 | 34 | while (head != 0) { 35 | ID = head->id; 36 | 37 | if (get_order(ID) == wirex) { 38 | wires[index].start = head->location; 39 | wires[index++].end = ID - Wire_base_id; 40 | } 41 | else if (!useCOMPLEX) { 42 | if (ID == INDUCTOR_ID) { 43 | x = get_connections(head->location, ID, head->flags); 44 | wires[index].start = x.in2; 45 | wires[index++].end = x.out2; 46 | } 47 | else if (ID == XFMR_ID) { 48 | x = get_connections(head->location, ID, head->flags); 49 | wires[index].start = x.in1; 50 | wires[index++].end = x.in3; 51 | wires[index].start = x.out1; 52 | wires[index++].end = x.out3; 53 | } 54 | } 55 | head = head->next; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /Cursors/crosshair.rc: -------------------------------------------------------------------------------- 1 | //Microsoft Developer Studio generated resource script. 2 | // 3 | #include "resource.h" 4 | 5 | #define APSTUDIO_READONLY_SYMBOLS 6 | ///////////////////////////////////////////////////////////////////////////// 7 | // 8 | // Generated from the TEXTINCLUDE 2 resource. 9 | // 10 | #include "afxres.h" 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | #undef APSTUDIO_READONLY_SYMBOLS 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // English (U.S.) resources 17 | 18 | #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) 19 | #ifdef _WIN32 20 | LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US 21 | #pragma code_page(1252) 22 | #endif //_WIN32 23 | 24 | ///////////////////////////////////////////////////////////////////////////// 25 | // 26 | // Cursor 27 | // 28 | 29 | IDC_POINTER CURSOR DISCARDABLE "arrow.cur" 30 | #endif // English (U.S.) resources 31 | ///////////////////////////////////////////////////////////////////////////// 32 | 33 | 34 | 35 | #ifndef APSTUDIO_INVOKED 36 | ///////////////////////////////////////////////////////////////////////////// 37 | // 38 | // Generated from the TEXTINCLUDE 3 resource. 39 | // 40 | 41 | 42 | ///////////////////////////////////////////////////////////////////////////// 43 | #endif // not APSTUDIO_INVOKED 44 | 45 | -------------------------------------------------------------------------------- /problem2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 20 89 1000 6 | 50250 91 7 | 25 122 8 | 50122 123 9 | 50123 124 10 | 50124 177 11 | 50177 179 12 | 20 181 1000 13 | 20 185 1000 14 | 50189 187 15 | 24 187 16 | 20 191 1000 17 | 50087 193 18 | 30 217 10 19 | 50431 219 20 | 20 227 1000 21 | 50123 229 22 | 16 248 23 | 20 252 1000 24 | 50413 254 25 | 25 299 26 | 20 382 1000 27 | 50225 384 28 | 50543 384 29 | 50387 384 30 | 20 389 1000 31 | 50183 395 32 | 20 397 1000 33 | 50399 401 34 | 50406 405 35 | 20 408 680 36 | 50411 410 37 | 50517 411 38 | 50411 413 39 | 50215 427 40 | 20 429 1000 41 | 50433 431 42 | 50380 433 43 | 50698 433 44 | 33 446 2 45 | 35 456 2 46 | 25 517 47 | 50544 543 48 | 20 546 1000 49 | 50707 548 50 | 50444 550 51 | 20 552 1000 52 | 50448 554 53 | 50454 560 54 | 20 562 1000 55 | 50458 564 56 | 50406 565 57 | 50410 569 58 | 50427 586 59 | 25 586 60 | 32 620 2 61 | 50658 656 62 | 20 660 1000 63 | 50664 662 64 | 20 666 1000 65 | 50669 668 66 | 50828 669 67 | 20 700 1000 68 | 50703 702 69 | 50861 702 70 | 50707 703 71 | 50813 707 72 | 50709 707 73 | 50656 709 74 | 50586 745 75 | 50431 749 76 | 50618 777 77 | 20 779 1000 78 | 50622 781 79 | 50904 798 80 | 34 800 2 81 | 50908 802 82 | 20 815 1000 83 | 50818 817 84 | 20 820 1000 85 | 50823 822 86 | 50929 823 87 | 25 828 88 | 20 863 1000 89 | 50918 865 90 | 20 906 1000 91 | 50919 918 92 | 25 919 93 | 25 929 94 | -------------------------------------------------------------------------------- /CircuitSolver.Data/C.S.ICData: -------------------------------------------------------------------------------- 1 | _4000 _Dual_3_In_NOR_+_INVERTER 14 _4001 _Quad_2_Input_NOR_Gate 14 _4002 _Dual_4_Input_NOR_Gate 14 _4009 _Hex_INVERTER 16 _4011 _Quad_2_Input_NAND_Gate 14 _4012 _Dual_4_Input_NAND_Gate 14 _4013 _Dual_D_FlipFlop 14 _4019 _Quad_AND/OR_Select_Gate 16 _4023 _Triple_3_Input_NAND_Gate 14 _4025 _Triple_3_Input_NOR_Gate 14 _4027 _Dual_JK/MS_FlipFlop 16 _4030 _Quad_XOR_Gate 14 _4049 _Hex_INVERTER 16 _4050 _Hex_BUFFER 16 _4068 _8_Input_AND/NAND_Gate(HV) 14 _4069 _Hex_INVERTER(HV) 14 _4070 _Quad_XOR_Gate 14 _4071 _Quad_2_Input_OR_Gate 14 _4072 _Dual_4_Input_OR_Gate 14 _4073 _Triple_3_Input_AND_Gate 14 _4075 _Triple_3_Input_OR_Gate 14 _4077 _Quad_XNOR_Gate 14 _4078 _8_Input_NOR_Gate 14 _4081 _Quad_2_Input_AND_Gate 14 _4082 _Dual_4_Input_AND_Gate 14 _4093 _Quad_2_Input_NAND_S.T. 14 _4503 _Hex_Tri_State_BUFFER 16 _7400 _Quad_2_Input_NAND_Gate 14 _7402 _Quad_2_Input_NOR_Gate 14 _7404 _Hex_INVERTER 14 _7408 _Quad_AND_Gate 14 _7474 _Dual_D_FilpFlop 14 _7486 _Quad_XOR 14 _555 _Timer 8 _LM741 _OP-AMP 8 _test _test 20 _NAND_IC _3_Input_NAND_Gate 4 _Test2 _Test 10 _mux2 _2_input_mux 4 _OpAmp _Non-Ideal_OpAmp 4 _340 _340hw2p8 8 _M _Canonical_Booth_Multiplier 8 _RC _ParallelRC 2 _RCdout _outerdiamond 2 _RCein _Inner_expander 2 _RCeout _outer_expander 2 _RCjoint _joint 2 _3RCd _3RCds,2outer,oneinner 4 _test_2 _test_circuit_2 16 _test3 _test_for_RAM_storage 14 _test_4 _test_circuit_4_for_RAM_storage 16 _nodes100 _100_node_IC 2 _squirgle _WOM 2 _case1 _odd_case_test 2 _test5 _test_5 8 _delay _fixed_logic_delay 2 2 | _equal _equivalent_circuit 2 3 | -------------------------------------------------------------------------------- /Circuits/ee241hw2p1: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50083 100 6 | 50100 948 7 | 50948 945 8 | 50348 83 9 | 50083 63 10 | 50063 858 11 | 50858 857 12 | 50959 970 13 | 50970 334 14 | 50334 341 15 | 24 130 16 | 24 145 17 | -41 185 2 18 | 50187 190 19 | 50194 192 20 | 41 196 2 21 | 22 217 22 | 2 219 23 | 50221 227 24 | 50289 236 25 | 50304 251 26 | 23 285 27 | 50285 287 28 | 50287 289 29 | 50291 289 30 | 50296 291 31 | 50192 296 32 | 50190 298 33 | 50298 302 34 | 50304 302 35 | 50306 304 36 | 50307 306 37 | 23 307 38 | 50217 323 39 | 50323 332 40 | -40 346 1 41 | 50287 393 42 | 50450 397 43 | 50306 412 44 | 50535 429 45 | 22 429 46 | 2 431 47 | 50442 433 48 | 40 444 1 49 | -40 467 1 50 | 50817 499 51 | -40 505 1 52 | 50613 507 53 | 50302 514 54 | 50729 517 55 | 50517 518 56 | 50548 535 57 | 50654 548 58 | 50662 556 59 | 50987 563 60 | 40 565 1 61 | 50576 566 62 | 50788 576 63 | 50649 596 64 | 50596 613 65 | 50628 622 66 | 50469 628 67 | 50747 641 68 | 22 641 69 | 2 643 70 | 50645 649 71 | 50660 654 72 | 50925 660 73 | 50667 662 74 | 50673 667 75 | 50620 673 76 | 50332 703 77 | 50703 716 78 | 40 718 1 79 | 50729 727 80 | 50770 747 81 | 50876 770 82 | 25 773 83 | -40 784 1 84 | 50786 788 85 | 50833 817 86 | 50727 833 87 | 50888 835 88 | 50959 853 89 | 22 853 90 | 2 855 91 | 50227 863 92 | 50863 866 93 | 40 868 1 94 | 50884 876 95 | 50566 884 96 | 25 923 97 | 50940 925 98 | 50622 940 99 | -40 943 1 100 | 50341 977 101 | 50977 987 102 | 25 994 103 | -------------------------------------------------------------------------------- /Circuits/mult_good.nl: -------------------------------------------------------------------------------- 1 | # Circuit - circuits/mult_good.nl 2 | 3 | INPUT(11) 4 | INPUT(8) 5 | INPUT(2) 6 | INPUT(4) 7 | INPUT(16) 8 | INPUT(22) 9 | OUTPUT(12) 10 | OUTPUT(12) 11 | OUTPUT(9) 12 | OUTPUT(5) 13 | OUTPUT(17) 14 | OUTPUT(23) 15 | 15 = XOR(22 16) 16 | 3 = XOR(16 4) 17 | 19 = XOR(0 28) 18 | 27 = XOR(11 25) 19 | 30 = XOR(22 0) 20 | 28 = AND(22 27) 21 | 63 = AND(11 25) 22 | 29 = AND(30 64) 23 | 26 = OR(29 63) 24 | 64 = OR(25 11) 25 | 14 = XOR(0 32) 26 | 31 = XOR(8 24) 27 | 34 = XOR(22 0) 28 | 32 = AND(22 31) 29 | 65 = AND(8 24) 30 | 33 = AND(34 66) 31 | 25 = OR(33 65) 32 | 66 = OR(24 8) 33 | 23 = XOR(0 36) 34 | 35 = XOR(2 0) 35 | 38 = XOR(22 0) 36 | 36 = AND(22 35) 37 | 67 = AND(2 0) 38 | 37 = AND(38 68) 39 | 24 = OR(37 67) 40 | 68 = OR(0 2) 41 | 7 = XOR(19 40) 42 | 39 = XOR(11 20) 43 | 42 = XOR(16 19) 44 | 40 = AND(15 39) 45 | 69 = AND(11 20) 46 | 41 = AND(42 70) 47 | 21 = OR(41 69) 48 | 70 = OR(20 11) 49 | 1 = XOR(19 44) 50 | 43 = XOR(8 18) 51 | 46 = XOR(16 19) 52 | 44 = AND(15 43) 53 | 71 = AND(8 18) 54 | 45 = AND(46 72) 55 | 20 = OR(45 71) 56 | 72 = OR(18 8) 57 | 17 = XOR(14 48) 58 | 47 = XOR(2 0) 59 | 50 = XOR(16 14) 60 | 48 = AND(15 47) 61 | 73 = AND(2 0) 62 | 49 = AND(50 74) 63 | 18 = OR(49 73) 64 | 74 = OR(0 2) 65 | 12 = XOR(7 52) 66 | 51 = XOR(11 10) 67 | 54 = XOR(4 7) 68 | 52 = AND(3 51) 69 | 75 = AND(11 10) 70 | 53 = AND(54 76) 71 | 13 = OR(53 75) 72 | 76 = OR(10 11) 73 | 9 = XOR(7 56) 74 | 55 = XOR(8 6) 75 | 58 = XOR(4 7) 76 | 56 = AND(3 55) 77 | 77 = AND(8 6) 78 | 57 = AND(58 78) 79 | 10 = OR(57 77) 80 | 78 = OR(6 8) 81 | 5 = XOR(1 60) 82 | 59 = XOR(2 0) 83 | 62 = XOR(4 1) 84 | 60 = AND(3 59) 85 | 79 = AND(2 0) 86 | 61 = AND(62 80) 87 | 6 = OR(61 79) 88 | 80 = OR(0 2) 89 | 90 | 91 | -------------------------------------------------------------------------------- /Circuits/y: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 74 6 | 50127 74 7 | 22 83 8 | 50136 83 9 | 22 92 10 | 50145 92 11 | 22 97 12 | 50839 97 13 | 22 100 14 | 50259 100 15 | 22 103 16 | 50209 103 17 | 25 126 18 | 25 135 19 | 25 144 20 | 50128 181 21 | 50129 182 22 | 50190 182 23 | 50181 182 24 | 50137 190 25 | 50138 191 26 | 50199 191 27 | 50190 191 28 | 50146 199 29 | 50147 200 30 | 50209 200 31 | 50199 200 32 | 50368 209 33 | 1042 234 34 | 1042 243 35 | 1042 252 36 | 50263 259 37 | 50528 263 38 | 50435 276 39 | 50276 286 40 | 50286 339 41 | 50444 339 42 | 50436 340 43 | 50341 347 44 | 50453 348 45 | 50445 349 46 | 50350 356 47 | 50940 357 48 | 50454 358 49 | 25 359 50 | 50367 368 51 | 50437 384 52 | 50384 393 53 | 50446 393 54 | 50393 402 55 | 50455 402 56 | 50402 416 57 | -7 418 58 | 50500 447 59 | 50526 473 60 | 50438 491 61 | 50491 500 62 | 50509 500 63 | 50456 509 64 | 50526 509 65 | 50685 526 66 | 50526 528 67 | 1042 543 68 | 1042 552 69 | 1042 561 70 | 50744 585 71 | 50585 595 72 | 50753 648 73 | 50595 648 74 | 50745 649 75 | 50650 656 76 | 50762 657 77 | 50754 658 78 | 50659 665 79 | 50931 666 80 | 50763 667 81 | 25 668 82 | 50746 693 83 | 50693 702 84 | 50711 702 85 | 50734 711 86 | 50764 711 87 | -7 736 88 | 50800 747 89 | 50702 755 90 | 50818 765 91 | 50844 791 92 | 50809 800 93 | 50818 809 94 | 50756 809 95 | 50839 818 96 | 50844 839 97 | 1042 852 98 | 1042 861 99 | 1042 870 100 | 23 904 101 | 50957 904 102 | 50907 904 103 | 23 907 104 | 23 913 105 | 50966 913 106 | 23 922 107 | 50975 922 108 | 23 931 109 | 23 940 110 | 50959 965 111 | 50968 974 112 | 25 977 113 | -------------------------------------------------------------------------------- /Circuits/bad2: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50127 74 6 | 22 74 7 | 50136 83 8 | 22 83 9 | 50145 92 10 | 22 92 11 | 50839 97 12 | 22 97 13 | 50259 100 14 | 22 100 15 | 50209 103 16 | 22 103 17 | 25 126 18 | 25 135 19 | 25 144 20 | 50128 181 21 | 50129 182 22 | 50190 182 23 | 50181 182 24 | 50137 190 25 | 50138 191 26 | 50199 191 27 | 50190 191 28 | 50146 199 29 | 50147 200 30 | 50209 200 31 | 50199 200 32 | 50368 209 33 | 1042 234 34 | 1042 243 35 | 1042 252 36 | 50263 259 37 | 50528 263 38 | 50435 276 39 | 50276 286 40 | 50286 339 41 | 50444 339 42 | 50436 340 43 | 50341 347 44 | 50453 348 45 | 50445 349 46 | 50350 356 47 | 50940 357 48 | 50454 358 49 | 25 359 50 | 50367 368 51 | 50437 384 52 | 50384 393 53 | 50446 393 54 | 50393 402 55 | 50455 402 56 | 50402 416 57 | -7 418 58 | 50500 447 59 | 50526 473 60 | 50438 491 61 | 50491 500 62 | 50509 500 63 | 50456 509 64 | 50526 509 65 | 50685 526 66 | 50526 528 67 | 1042 543 68 | 1042 552 69 | 1042 561 70 | 50744 585 71 | 50585 595 72 | 50753 648 73 | 50595 648 74 | 50745 649 75 | 50650 656 76 | 50762 657 77 | 50754 658 78 | 50659 665 79 | 50931 666 80 | 50763 667 81 | 25 668 82 | 50746 693 83 | 50693 702 84 | 50711 702 85 | 50734 711 86 | 50764 711 87 | -7 736 88 | 50800 747 89 | 50702 755 90 | 50818 765 91 | 50844 791 92 | 50809 800 93 | 50818 809 94 | 50756 809 95 | 50839 818 96 | 50844 839 97 | 1042 852 98 | 1042 861 99 | 1042 870 100 | 50957 904 101 | 50907 904 102 | 23 904 103 | 23 907 104 | 50966 913 105 | 23 913 106 | 50975 922 107 | 23 922 108 | 23 931 109 | 23 940 110 | 50959 965 111 | 50968 974 112 | 25 977 113 | -------------------------------------------------------------------------------- /Circuits/mult: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 74 6 | 50127 74 7 | 22 83 8 | 50136 83 9 | 22 92 10 | 50145 92 11 | 22 97 12 | 50839 97 13 | 22 100 14 | 50259 100 15 | 22 103 16 | 50209 103 17 | 25 126 18 | 25 135 19 | 25 144 20 | 50128 181 21 | 50129 182 22 | 50190 182 23 | 50181 182 24 | 50137 190 25 | 50138 191 26 | 50199 191 27 | 50190 191 28 | 50146 199 29 | 50147 200 30 | 50209 200 31 | 50199 200 32 | 50368 209 33 | 1042 234 34 | 1042 243 35 | 1042 252 36 | 50263 259 37 | 50528 263 38 | 50435 276 39 | 50276 286 40 | 50286 339 41 | 50444 339 42 | 50436 340 43 | 50341 347 44 | 50453 348 45 | 50445 349 46 | 50350 356 47 | 50940 357 48 | 50454 358 49 | 25 359 50 | 50367 368 51 | 50437 384 52 | 50384 393 53 | 50446 393 54 | 50393 402 55 | 50455 402 56 | 50402 416 57 | -7 418 58 | 50500 447 59 | 50526 473 60 | 50438 491 61 | 50491 500 62 | 50509 500 63 | 50456 509 64 | 50526 509 65 | 50685 526 66 | 50526 528 67 | 1042 543 68 | 1042 552 69 | 1042 561 70 | 50744 585 71 | 50585 595 72 | 50753 648 73 | 50595 648 74 | 50745 649 75 | 50650 656 76 | 50762 657 77 | 50754 658 78 | 50659 665 79 | 50931 666 80 | 50763 667 81 | 25 668 82 | 50746 693 83 | 50693 702 84 | 50711 702 85 | 50734 711 86 | 50764 711 87 | -7 736 88 | 50800 747 89 | 50702 755 90 | 50818 765 91 | 50844 791 92 | 50809 800 93 | 50818 809 94 | 50756 809 95 | 50839 818 96 | 50844 839 97 | 1042 852 98 | 1042 861 99 | 1042 870 100 | 23 904 101 | 50957 904 102 | 50907 904 103 | 23 907 104 | 23 913 105 | 50966 913 106 | 23 922 107 | 50975 922 108 | 23 931 109 | 23 940 110 | 50959 965 111 | 50968 974 112 | 25 977 113 | -------------------------------------------------------------------------------- /Circuits/mult_nl: -------------------------------------------------------------------------------- 1 | * Circuit - mult_nl 2 | 3 | INPUT 11 4 | INPUT 8 5 | INPUT 2 6 | INPUT 4 7 | INPUT 16 8 | INPUT 22 9 | OUTPUT 12 10 | OUTPUT 12 11 | OUTPUT 9 12 | OUTPUT 5 13 | OUTPUT 17 14 | OUTPUT 23 15 | 16 = XOR(23,17) 16 | 4 = XOR(17,5) 17 | 20 = XOR(1,29) 18 | 19 | 28 = XOR(12,26) 20 | 31 = XOR(23,1) 21 | 29 = AND(23,28) 22 | 64 = AND(12,26) 23 | 30 = AND(31,65) 24 | 27 = OR(30,64) 25 | 65 = OR(26,12) 26 | 15 = XOR(1,33) 27 | 28 | 29 | 32 = XOR(9,25) 30 | 35 = XOR(23,1) 31 | 33 = AND(23,32) 32 | 66 = AND(9,25) 33 | 34 = AND(35,67) 34 | 26 = OR(34,66) 35 | 67 = OR(25,9) 36 | 24 = XOR(1,37) 37 | 36 = XOR(3,1) 38 | 39 = XOR(23,1) 39 | 37 = AND(23,36) 40 | 68 = AND(3,1) 41 | 38 = AND(39,69) 42 | 25 = OR(38,68) 43 | 69 = OR(1,3) 44 | 8 = XOR(20,41) 45 | 40 = XOR(12,21) 46 | 43 = XOR(17,20) 47 | 41 = AND(16,40) 48 | 70 = AND(12,21) 49 | 42 = AND(43,71) 50 | 22 = OR(42,70) 51 | 71 = OR(21,12) 52 | 2 = XOR(20,45) 53 | 44 = XOR(9,19) 54 | 47 = XOR(17,20) 55 | 45 = AND(16,44) 56 | 72 = AND(9,19) 57 | 46 = AND(47,73) 58 | 21 = OR(46,72) 59 | 73 = OR(19,9) 60 | 18 = XOR(15,49) 61 | 48 = XOR(3,1) 62 | 51 = XOR(17,15) 63 | 49 = AND(16,48) 64 | 74 = AND(3,1) 65 | 50 = AND(51,75) 66 | 19 = OR(50,74) 67 | 75 = OR(1,3) 68 | 13 = XOR(8,53) 69 | 52 = XOR(12,11) 70 | 55 = XOR(5,8) 71 | 53 = AND(4,52) 72 | 76 = AND(12,11) 73 | 54 = AND(55,77) 74 | 14 = OR(54,76) 75 | 77 = OR(11,12) 76 | 10 = XOR(8,57) 77 | 56 = XOR(9,7) 78 | 59 = XOR(5,8) 79 | 57 = AND(4,56) 80 | 78 = AND(9,7) 81 | 58 = AND(59,79) 82 | 11 = OR(58,78) 83 | 79 = OR(7,9) 84 | 6 = XOR(2,61) 85 | 60 = XOR(3,1) 86 | 63 = XOR(5,2) 87 | 61 = AND(4,60) 88 | 80 = AND(3,1) 89 | 62 = AND(63,81) 90 | 7 = OR(62,80) 91 | 81 = OR(1,3) 92 | 93 | 94 | .OPTIONS 95 | .END 96 | -------------------------------------------------------------------------------- /Circuits/multf: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50136 83 6 | 50092 83 7 | 22 83 8 | 50145 92 9 | 50839 97 10 | 22 97 11 | 50259 100 12 | 22 100 13 | 50209 103 14 | 22 103 15 | 50127 121 16 | 22 121 17 | 25 126 18 | 25 135 19 | 25 144 20 | 50128 181 21 | 50129 182 22 | 50190 182 23 | 50181 182 24 | 50137 190 25 | 50138 191 26 | 50199 191 27 | 50190 191 28 | 50146 199 29 | 50147 200 30 | 50209 200 31 | 50199 200 32 | 50368 209 33 | 1042 234 34 | 1042 243 35 | 1042 252 36 | 50263 259 37 | 50528 263 38 | 50435 276 39 | 50276 286 40 | 50286 339 41 | 50444 339 42 | 50436 340 43 | 50341 347 44 | 50453 348 45 | 50445 349 46 | 50350 356 47 | 50940 357 48 | 50454 358 49 | 25 359 50 | 50367 368 51 | 50437 384 52 | 50384 393 53 | 50446 393 54 | 50393 402 55 | 50455 402 56 | 50402 416 57 | -7 418 58 | 50500 447 59 | 50526 473 60 | 50438 491 61 | 50491 500 62 | 50509 500 63 | 50456 509 64 | 50526 509 65 | 50685 526 66 | 50526 528 67 | 1042 543 68 | 1042 552 69 | 1042 561 70 | 50744 585 71 | 50585 595 72 | 50753 648 73 | 50595 648 74 | 50745 649 75 | 50650 656 76 | 50762 657 77 | 50754 658 78 | 50659 665 79 | 50931 666 80 | 50763 667 81 | 25 668 82 | 50746 693 83 | 50693 702 84 | 50711 702 85 | 50734 711 86 | 50764 711 87 | -7 736 88 | 50800 747 89 | 50702 755 90 | 50818 765 91 | 50844 791 92 | 50809 800 93 | 50818 809 94 | 50756 809 95 | 50839 818 96 | 50844 839 97 | 1042 852 98 | 1042 861 99 | 1042 870 100 | 50957 904 101 | 50907 904 102 | 23 904 103 | 23 907 104 | 50966 913 105 | 23 913 106 | 50975 922 107 | 23 922 108 | 23 931 109 | 23 940 110 | 50959 965 111 | 50968 974 112 | 25 977 113 | -------------------------------------------------------------------------------- /Circuits/multX: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit_GV 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50127 74 6 | 22 74 7 | 50136 83 8 | 22 83 9 | 50145 92 10 | 22 92 11 | 50839 97 12 | 22 97 13 | 50259 100 14 | 22 100 15 | 50209 103 16 | 22 103 17 | 25 126 18 | 25 135 19 | 25 144 20 | 50128 181 21 | 50181 182 22 | 50190 182 23 | 50129 182 24 | 50137 190 25 | 50190 191 26 | 50199 191 27 | 50138 191 28 | 50146 199 29 | 50199 200 30 | 50209 200 31 | 50147 200 32 | 50368 209 33 | 1042 234 34 | 1042 243 35 | 1042 252 36 | 50263 259 37 | 50528 263 38 | 50435 276 39 | 50276 286 40 | 50444 339 41 | 50286 339 42 | 50436 340 43 | 50341 347 44 | 50453 348 45 | 50445 349 46 | 50350 356 47 | 50940 357 48 | 50454 358 49 | 25 359 50 | 50367 368 51 | 50437 384 52 | 50446 393 53 | 50384 393 54 | 50455 402 55 | 50393 402 56 | 50402 416 57 | -7 418 1 58 | 50500 447 59 | 50526 473 60 | 50438 491 61 | 50509 500 62 | 50491 500 63 | 50526 509 64 | 50456 509 65 | 50685 526 66 | 50526 528 67 | 1042 543 68 | 1042 552 69 | 1042 561 70 | 50744 585 71 | 50585 595 72 | 50595 648 73 | 50753 648 74 | 50745 649 75 | 50650 656 76 | 50762 657 77 | 50754 658 78 | 50659 665 79 | 50931 666 80 | 50763 667 81 | 25 668 82 | 50746 693 83 | 50711 702 84 | 50693 702 85 | 50764 711 86 | 50734 711 87 | -7 736 1 88 | 50800 747 89 | 50702 755 90 | 50818 765 91 | 50844 791 92 | 50809 800 93 | 50756 809 94 | 50818 809 95 | 50839 818 96 | 50844 839 97 | 1042 852 98 | 1042 861 99 | 1042 870 100 | 50907 904 101 | 50957 904 102 | 23 904 103 | 23 907 104 | 50966 913 105 | 23 913 106 | 50975 922 107 | 23 922 108 | 23 931 109 | 23 940 110 | 50959 965 111 | 50968 974 112 | 25 977 113 | -------------------------------------------------------------------------------- /Circuits/nettest: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50083 74 6 | 50136 83 7 | 50092 83 8 | 50145 92 9 | 50097 92 10 | 50839 97 11 | 22 97 12 | 50259 100 13 | 22 100 14 | 50209 103 15 | 22 103 16 | 25 126 17 | 50074 127 18 | 25 135 19 | 25 144 20 | 50128 181 21 | 50129 182 22 | 50190 182 23 | 50181 182 24 | 50137 190 25 | 50138 191 26 | 50199 191 27 | 50190 191 28 | 50146 199 29 | 50147 200 30 | 50209 200 31 | 50199 200 32 | 50368 209 33 | 1042 234 34 | 1042 243 35 | 1042 252 36 | 50263 259 37 | 50528 263 38 | 50435 276 39 | 50276 286 40 | 50286 339 41 | 50444 339 42 | 50436 340 43 | 50341 347 44 | 50453 348 45 | 50445 349 46 | 50350 356 47 | 50940 357 48 | 50454 358 49 | 25 359 50 | 50367 368 51 | 50437 384 52 | 50384 393 53 | 50446 393 54 | 50393 402 55 | 50455 402 56 | 50402 416 57 | -7 418 58 | 50500 447 59 | 50526 473 60 | 50438 491 61 | 50491 500 62 | 50509 500 63 | 50456 509 64 | 50526 509 65 | 50685 526 66 | 50526 528 67 | 1042 543 68 | 1042 552 69 | 1042 561 70 | 50744 585 71 | 50585 595 72 | 50753 648 73 | 50595 648 74 | 50745 649 75 | 50650 656 76 | 50762 657 77 | 50754 658 78 | 50659 665 79 | 50931 666 80 | 50763 667 81 | 25 668 82 | 50746 693 83 | 50693 702 84 | 50711 702 85 | 50734 711 86 | 50764 711 87 | -7 736 88 | 50800 747 89 | 50702 755 90 | 50818 765 91 | 50844 791 92 | 50809 800 93 | 50818 809 94 | 50756 809 95 | 50839 818 96 | 50844 839 97 | 1042 852 98 | 1042 861 99 | 1042 870 100 | 50957 904 101 | 50907 904 102 | 23 904 103 | 23 907 104 | 50966 913 105 | 23 913 106 | 50975 922 107 | 23 922 108 | 23 931 109 | 23 940 110 | 50959 965 111 | 50968 974 112 | 25 977 113 | -------------------------------------------------------------------------------- /Circuits/mult_nl2: -------------------------------------------------------------------------------- 1 | * Circuit - mult_nl2 2 | 3 | INPUT 11 4 | INPUT 8 5 | INPUT 2 6 | INPUT 4 7 | INPUT 16 8 | INPUT 22 9 | OUTPUT 12 10 | OUTPUT 12 11 | OUTPUT 9 12 | OUTPUT 5 13 | OUTPUT 17 14 | OUTPUT 23 15 | 16 = XOR(23,17) 16 | 4 = XOR(17,5) 17 | 20 = XOR(1,31) 18 | 30 = XOR(12,26) 19 | 33 = XOR(23,1) 20 | 31 = AND(23,30) 21 | 66 = AND(12,26) 22 | 32 = AND(33,67) 23 | 27 = OR(32,66) 24 | 67 = OR(26,12) 25 | 15 = XOR(1,35) 26 | 34 = XOR(9,25) 27 | 37 = XOR(23,1) 28 | 35 = AND(23,34) 29 | 68 = AND(9,25) 30 | 36 = AND(37,69) 31 | 26 = OR(36,68) 32 | 69 = OR(25,9) 33 | 24 = XOR(1,39) 34 | 38 = XOR(3,1) 35 | 41 = XOR(23,1) 36 | 39 = AND(23,38) 37 | 70 = AND(3,1) 38 | 40 = AND(41,71) 39 | 25 = OR(40,70) 40 | 71 = OR(1,3) 41 | 8 = XOR(20,43) 42 | 42 = XOR(12,21) 43 | 45 = XOR(17,20) 44 | 43 = AND(16,42) 45 | 72 = AND(12,21) 46 | 44 = AND(45,73) 47 | 22 = OR(44,72) 48 | 73 = OR(21,12) 49 | 2 = XOR(20,47) 50 | 46 = XOR(9,19) 51 | 49 = XOR(17,20) 52 | 47 = AND(16,46) 53 | 74 = AND(9,19) 54 | 48 = AND(49,75) 55 | 21 = OR(48,74) 56 | 75 = OR(19,9) 57 | 18 = XOR(15,51) 58 | 50 = XOR(3,1) 59 | 53 = XOR(17,15) 60 | 51 = AND(16,50) 61 | 76 = AND(3,1) 62 | 52 = AND(53,77) 63 | 19 = OR(52,76) 64 | 77 = OR(1,3) 65 | 13 = XOR(8,55) 66 | 54 = XOR(12,11) 67 | 57 = XOR(5,8) 68 | 55 = AND(4,54) 69 | 78 = AND(12,11) 70 | 56 = AND(57,79) 71 | 14 = OR(56,78) 72 | 79 = OR(11,12) 73 | 10 = XOR(8,59) 74 | 58 = XOR(9,7) 75 | 61 = XOR(5,9) 76 | 59 = AND(4,58) 77 | 80 = AND(9,7) 78 | 60 = AND(61,81) 79 | 11 = OR(60,80) 80 | 81 = OR(7,9) 81 | 6 = XOR(2,63) 82 | 62 = XOR(3,1) 83 | 65 = XOR(5,2) 84 | 63 = AND(4,62) 85 | 82 = AND(3,1) 86 | 64 = AND(65,83) 87 | 7 = OR(0,82) 88 | 83 = OR(1,3) 89 | R1 27 28 278 90 | C1 27 28 7.2p 91 | 92 | 93 | .OPTIONS 94 | .END 95 | -------------------------------------------------------------------------------- /Circuits/bad: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 1050 483 6 | 1050 216 7 | 22 74 8 | 50127 74 9 | 22 83 10 | 50136 83 11 | 22 92 12 | 50145 92 13 | 22 97 14 | 50839 97 15 | 22 100 16 | 50259 100 17 | 22 103 18 | 50209 103 19 | 25 126 20 | 25 135 21 | 25 144 22 | 50128 181 23 | 50181 182 24 | 50190 182 25 | 50129 182 26 | 50137 190 27 | 50190 191 28 | 50199 191 29 | 50138 191 30 | 50146 199 31 | 50199 200 32 | 50209 200 33 | 50147 200 34 | 50368 209 35 | 1050 225 36 | 1042 234 37 | 1042 243 38 | 1042 252 39 | 50263 259 40 | 50528 263 41 | 50435 276 42 | 50276 286 43 | 50444 339 44 | 50286 339 45 | 50436 340 46 | 50341 347 47 | 50453 348 48 | 50445 349 49 | 50350 356 50 | 50940 357 51 | 50454 358 52 | 25 359 53 | 50367 368 54 | 50437 384 55 | 50446 393 56 | 50384 393 57 | 50455 402 58 | 50393 402 59 | 50402 416 60 | -7 418 61 | 50500 447 62 | 50526 473 63 | 50438 491 64 | 50509 500 65 | 50491 500 66 | 50526 509 67 | 50456 509 68 | 50685 526 69 | 50526 528 70 | 1042 543 71 | 1042 552 72 | 1042 561 73 | 50744 585 74 | 50585 595 75 | 50595 648 76 | 50753 648 77 | 50745 649 78 | 50650 656 79 | 50762 657 80 | 50754 658 81 | 50659 665 82 | 50931 666 83 | 50763 667 84 | 25 668 85 | 50746 693 86 | 50711 702 87 | 50693 702 88 | 50764 711 89 | 50734 711 90 | -7 736 91 | 50800 747 92 | 50702 755 93 | 50818 765 94 | 50844 791 95 | 50809 800 96 | 50756 809 97 | 50818 809 98 | 50839 818 99 | 50844 839 100 | 1042 852 101 | 1042 861 102 | 1042 870 103 | 23 904 104 | 50907 904 105 | 50957 904 106 | 23 907 107 | 23 913 108 | 50966 913 109 | 23 922 110 | 50975 922 111 | 23 931 112 | 23 940 113 | 50959 965 114 | 50968 974 115 | 25 977 116 | -------------------------------------------------------------------------------- /Circuits/mult4t3: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 74 6 | 50127 74 7 | 22 83 8 | 50136 83 9 | 22 92 10 | 50145 92 11 | 22 97 12 | 50839 97 13 | 22 100 14 | 50259 100 15 | 22 103 16 | 50209 103 17 | 25 126 18 | 25 135 19 | 25 144 20 | 1050 163 21 | 50128 181 22 | 50129 182 23 | 50190 182 24 | 50181 182 25 | 50137 190 26 | 50138 191 27 | 50199 191 28 | 50190 191 29 | 50146 199 30 | 50147 200 31 | 50209 200 32 | 50199 200 33 | 50368 209 34 | 1050 225 35 | 1042 234 36 | 1042 243 37 | 1042 252 38 | 50263 259 39 | 50528 263 40 | 50435 276 41 | 50276 286 42 | 50286 339 43 | 50444 339 44 | 50436 340 45 | 50341 347 46 | 50453 348 47 | 50445 349 48 | 50350 356 49 | 50940 357 50 | 50454 358 51 | 25 359 52 | 50367 368 53 | 50437 384 54 | 50384 393 55 | 50446 393 56 | 50393 402 57 | 50455 402 58 | 50402 416 59 | -7 418 60 | 1050 428 61 | 50500 447 62 | 50526 473 63 | 50438 491 64 | 50491 500 65 | 50509 500 66 | 50456 509 67 | 50526 509 68 | 50685 526 69 | 50526 528 70 | 1042 543 71 | 1042 552 72 | 1042 561 73 | 50744 585 74 | 50585 595 75 | 50753 648 76 | 50595 648 77 | 50745 649 78 | 50650 656 79 | 50762 657 80 | 50754 658 81 | 50659 665 82 | 50931 666 83 | 50763 667 84 | 25 668 85 | 1050 674 86 | 50746 693 87 | 50693 702 88 | 50711 702 89 | 50734 711 90 | 50764 711 91 | -7 736 92 | 50800 747 93 | 50702 755 94 | 50818 765 95 | 50844 791 96 | 50809 800 97 | 50818 809 98 | 50756 809 99 | 50839 818 100 | 50844 839 101 | 1042 852 102 | 1042 861 103 | 1042 870 104 | 23 904 105 | 50957 904 106 | 50907 904 107 | 23 907 108 | 23 913 109 | 50966 913 110 | 23 922 111 | 50975 922 112 | 23 931 113 | 23 940 114 | 50959 965 115 | 50968 974 116 | 25 977 117 | -------------------------------------------------------------------------------- /setup-unix: -------------------------------------------------------------------------------- 1 | mv Source/*.cpp . 2 | mv Source/All_OS/* . 3 | mv Source/Borrowed_Code/* . 4 | mv FFT.cpp FFT.cc 5 | mv CircuitSolver.cpp CircuitSolver.cc 6 | mv C.S.AnalogAnalysis.cpp C.S.AnalogAnalysis.cc 7 | mv C.S.ComplexNumbers.cpp C.S.ComplexNumbers.cc 8 | mv C.S.Draw.cpp C.S.Draw.cc 9 | mv C.S.Equation.cpp C.S.Equation.cc 10 | mv C.S.FSMDesign.cpp C.S.FSMDesign.cc 11 | mv C.S.Graph.cpp C.S.Graph.cc 12 | mv C.S.GraphicsAll.cpp C.S.GraphicsAll.cc 13 | mv C.S.GridArray.cpp C.S.GridArray.cc 14 | mv C.S.InputVector.cpp C.S.InputVector.cc 15 | mv C.S.IntegratedCircuit.cpp C.S.IntegratedCircuit.cc 16 | mv C.S.InterfaceAll.cpp C.S.InterfaceAll.cc 17 | mv C.S.IOVector.cpp C.S.IOVector.cc 18 | mv C.S.LinkCircuit.cpp C.S.LinkCircuit.cc 19 | mv C.S.Logic.cpp C.S.Logic.cc 20 | mv C.S.LogicComponents.cpp C.S.LogicComponents.cc 21 | mv C.S.LogicDelay.cpp C.S.LogicDelay.cc 22 | mv C.S.LogicEngine.cpp C.S.LogicEngine.cc 23 | mv C.S.LogicFunctions.cpp C.S.LogicFunctions.cc 24 | mv C.S.LogicPropagation.cpp C.S.LogicPropagation.cc 25 | mv C.S.MOSFET.cpp C.S.MOSFET.cc 26 | mv C.S.Matrix.cpp C.S.Matrix.cc 27 | mv C.S.Netlist.cpp C.S.Netlist.cc 28 | mv C.S.NetPointerSet.cpp C.S.NetPointerSet.cc 29 | mv C.S.Nodes.cpp C.S.Nodes.cc 30 | mv C.S.PlaceAndRoute.cpp C.S.PlaceAndRoute.cc 31 | mv C.S.Scheduling.cpp C.S.Scheduling.cc 32 | mv C.S.SchematicEdit.cpp C.S.SchematicEdit.cc 33 | mv C.S.SimulationSetup.cpp C.S.SimulationSetup.cc 34 | mv C.S.StringTable.cpp C.S.StringTable.cc 35 | mv C.S.TextGraphics.cpp C.S.TextGraphics.cc 36 | mv C.S.TopoSort.cpp C.S.TopoSort.cc 37 | mv C.S.Transforms.cpp C.S.Transforms.cc 38 | mv C.S.Transistor.cpp C.S.Transistor.cc 39 | mv C.S.Undo.cpp C.S.Undo.cc 40 | mv C.S.Utilities.cpp C.S.Utilities.cc 41 | mv C.S.Window.cpp C.S.Window.cc 42 | mv C.S.WindowOps.cpp C.S.WindowOps.cc 43 | rm -f *~ 44 | gmake clean 45 | gmake opt >& out 46 | -------------------------------------------------------------------------------- /setup-cygwin: -------------------------------------------------------------------------------- 1 | mv Source/*.cpp . 2 | mv Source/Win32/* . 3 | mv Source/Borrowed_Code/* . 4 | mv FFT.cpp FFT.cc 5 | mv CircuitSolver.cpp CircuitSolver.cc 6 | mv C.S.AnalogAnalysis.cpp C.S.AnalogAnalysis.cc 7 | mv C.S.ComplexNumbers.cpp C.S.ComplexNumbers.cc 8 | mv C.S.Draw.cpp C.S.Draw.cc 9 | mv C.S.Equation.cpp C.S.Equation.cc 10 | mv C.S.FSMDesign.cpp C.S.FSMDesign.cc 11 | mv C.S.Graph.cpp C.S.Graph.cc 12 | mv C.S.GraphicsWin32.cpp C.S.GraphicsWin32.cc 13 | mv C.S.GridArray.cpp C.S.GridArray.cc 14 | mv C.S.InputVector.cpp C.S.InputVector.cc 15 | mv C.S.IntegratedCircuit.cpp C.S.IntegratedCircuit.cc 16 | mv C.S.InterfaceWin32.cpp C.S.InterfaceWin32.cc 17 | mv C.S.IOVector.cpp C.S.IOVector.cc 18 | mv C.S.LinkCircuit.cpp C.S.LinkCircuit.cc 19 | mv C.S.Logic.cpp C.S.Logic.cc 20 | mv C.S.LogicComponents.cpp C.S.LogicComponents.cc 21 | mv C.S.LogicDelay.cpp C.S.LogicDelay.cc 22 | mv C.S.LogicEngine.cpp C.S.LogicEngine.cc 23 | mv C.S.LogicFunctions.cpp C.S.LogicFunctions.cc 24 | mv C.S.LogicPropagation.cpp C.S.LogicPropagation.cc 25 | mv C.S.MOSFET.cpp C.S.MOSFET.cc 26 | mv C.S.Matrix.cpp C.S.Matrix.cc 27 | mv C.S.Netlist.cpp C.S.Netlist.cc 28 | mv C.S.NetPointerSet.cpp C.S.NetPointerSet.cc 29 | mv C.S.Nodes.cpp C.S.Nodes.cc 30 | mv C.S.PlaceAndRoute.cpp C.S.PlaceAndRoute.cc 31 | mv C.S.Scheduling.cpp C.S.Scheduling.cc 32 | mv C.S.SchematicEdit.cpp C.S.SchematicEdit.cc 33 | mv C.S.SimulationSetup.cpp C.S.SimulationSetup.cc 34 | mv C.S.StringTable.cpp C.S.StringTable.cc 35 | mv C.S.TextGraphics.cpp C.S.TextGraphics.cc 36 | mv C.S.TopoSort.cpp C.S.TopoSort.cc 37 | mv C.S.Transforms.cpp C.S.Transforms.cc 38 | mv C.S.Transistor.cpp C.S.Transistor.cc 39 | mv C.S.Undo.cpp C.S.Undo.cc 40 | mv C.S.Utilities.cpp C.S.Utilities.cc 41 | mv C.S.Window.cpp C.S.Window.cc 42 | mv C.S.WindowOps.cpp C.S.WindowOps.cc 43 | rm -f *~ 44 | make clean 45 | make opt >& out 46 | -------------------------------------------------------------------------------- /Cursors/Templ1.rc: -------------------------------------------------------------------------------- 1 | //Microsoft Developer Studio generated resource script. 2 | // 3 | #include "resource.h" 4 | 5 | #define APSTUDIO_READONLY_SYMBOLS 6 | ///////////////////////////////////////////////////////////////////////////// 7 | // 8 | // Generated from the TEXTINCLUDE 2 resource. 9 | // 10 | #include "afxres.h" 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | #undef APSTUDIO_READONLY_SYMBOLS 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // English (U.S.) resources 17 | 18 | #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) 19 | #ifdef _WIN32 20 | LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US 21 | #pragma code_page(1252) 22 | #endif //_WIN32 23 | 24 | ///////////////////////////////////////////////////////////////////////////// 25 | // 26 | // Cursor 27 | // 28 | 29 | IDC_POINTER CURSOR DISCARDABLE "arrow.cur" 30 | 31 | #ifdef APSTUDIO_INVOKED 32 | ///////////////////////////////////////////////////////////////////////////// 33 | // 34 | // TEXTINCLUDE 35 | // 36 | 37 | 1 TEXTINCLUDE DISCARDABLE 38 | BEGIN 39 | "resource.h\0" 40 | END 41 | 42 | 2 TEXTINCLUDE DISCARDABLE 43 | BEGIN 44 | "#include ""afxres.h""\r\n" 45 | "\0" 46 | END 47 | 48 | 3 TEXTINCLUDE DISCARDABLE 49 | BEGIN 50 | "\r\n" 51 | "\0" 52 | END 53 | 54 | #endif // APSTUDIO_INVOKED 55 | 56 | #endif // English (U.S.) resources 57 | ///////////////////////////////////////////////////////////////////////////// 58 | 59 | 60 | 61 | #ifndef APSTUDIO_INVOKED 62 | ///////////////////////////////////////////////////////////////////////////// 63 | // 64 | // Generated from the TEXTINCLUDE 3 resource. 65 | // 66 | 67 | 68 | ///////////////////////////////////////////////////////////////////////////// 69 | #endif // not APSTUDIO_INVOKED 70 | 71 | -------------------------------------------------------------------------------- /CircuitSolver.Data/C.S.ComponentData: -------------------------------------------------------------------------------- 1 | general n 100000 100000 100000 99999.9 100 100000 100 0.7 0.2 2n3904 n 0.6 75 40 6 200 0.625 300 0.7 0.2 2n3906 p 1 80 80 5 180 0.625 200 0.7 0.2 123ap n 0.6 75 40 6 200 0.625 300 0.7 0.2 idealp p 1e+06 1e+06 1e+06 1e+06 100 1e+06 100 0.7 0.2 idealn n 1e+06 1e+06 1e+06 1e+06 100 1e+06 100 0.7 0.2 2n3053 n 1 120 80 7 90 1 100 0.7 0.2 2sc2120 n 0.8 35 30 5 120 0.6 100 0.7 0.2 2sa1015 p 0.5 100 80 5 100 0.6 120 0.7 0.2 2sc1815y n 0.4 70 70 4 120 0.625 200 0.7 0.2 strange n 100 1000 500 10 100 1000 0 0 0 2n3055 n 15 100 60 7 45 115 3 0.7 0.2 tip120 n 8 100 100 5 1000 65 0 0.7 0.2 mps2222 n 0.6 75 40 6 200 0.625 300 0.7 0.2 mps2222a n 0.6 75 40 6 200 0.625 300 0.7 0.2 mps2907 p 1 80 80 5 180 0.625 200 0.7 0.2 mps9418 n 0.8 35 30 5 120 0.6 100 0.7 0.2 mps9426b n 0.05 40 40 4 30 0.425 500 0.7 0.2 mps9468 p 0.5 300 300 5 40 0.625 50 0.7 0.2 tip29 n 4 130 120 5 70 40 4 0.7 0.2 tip30b p 4 130 120 5 70 40 5 0.7 0.2 tip32 p 7 90 80 5 20 50 4 0.7 0.2 tip31 n 7 90 80 5 20 50 4 0.7 0.2 tip32a p 4 130 120 5 70 40 5 0.7 0.2 tip41 n 7 90 80 5 20 50 4 0.7 0.2 tip41c n 15 100 100 5 40 90 3 0.7 0.2 mj2955 p 15 100 70 7 20 115 2.5 0.7 0.2 tip42 p 7 90 80 5 20 50 4 0.7 0.2 mje170 p 4 80 80 5 25 40 2 0.7 0.2 mje200 n 4 80 80 5 25 40 2 0.7 0.2 mje210 p 4 80 80 5 25 40 2 0.7 0.2 2n1702 n 15 100 60 7 45 115 3 0.7 0.2 mje2955t p 15 100 100 5 40 90 3 0.7 0.2 2n222 p 1 32 32 10 120 0.65 0 0.7 0.2 2n2222 n 0.8 75 40 6 200 0.4 300 0.7 0.2 2n2222a n 0.8 75 40 6 200 0.4 300 0.7 0.2 2n2369 n 0.8 75 40 6 200 0.4 300 0.7 0.2 2n3405 n 0.5 70 70 5 120 0.6 120 0.7 0.2 2n4125 p 1 80 80 5 180 0.625 200 0.7 0.2 2n4401 n 0.6 75 40 6 200 0.625 300 0.7 0.2 2n4403 p 1 80 80 5 180 0.625 200 0.7 0.2 mpsa55 p 1 80 80 5 180 0.625 200 0.7 0.2 2sa733 p 0.5 100 80 5 100 0.6 120 0.7 0.2 2sc945 n 0.4 70 70 4 120 0.625 200 0.7 0.2 tip125 p 8 100 100 5 1000 65 0 0.7 0.2 tip100 n 12 100 100 5 1000 80 0 0.7 0.2 tip116 p 8 100 100 5 1000 65 0 0.7 0.2 NTE2322 n 0.6 60 40 5 100 0.65 350 0.7 0.2 322NPN n 1e+10 1e+10 1e+10 1e+10 70 1e+10 1e+10 0.7 0.1 322hw n 1e+06 1e+06 1e+06 1e+06 75 1e+06 1e+06 0.7 0.1 test n 1 10 50 1 100 25 100 0.7 0.2 -------------------------------------------------------------------------------- /Source/Borrowed_Code/FFT.CPP: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | int ibitr(int, int); 5 | void fft(double [], double [], int ,int); 6 | void fft(double xr[], double xi[], int nu,int ie) 7 | { 8 | static int n,n1,n2,nu1,p,k1n2,i,k,l; 9 | static double arg,c,s,tr,ti; 10 | double *stab, *ctab; 11 | #define TWOPI 6.2831853 /* 2 PI */ 12 | #define PITWO 1.5707963 /* PI/2 */ 13 | /* allocate storage for sine and cosine tables */ 14 | n=1<0) s=-s; 42 | k1n2=k+n2; 43 | tr = xr[k1n2]*c + xi[k1n2]*s; 44 | ti = xi[k1n2]*c - xr[k1n2]*s; 45 | xr[k1n2] = xr[k] - tr; 46 | xi[k1n2] = xi[k] - ti; 47 | xr[k] = xr[k] + tr; 48 | xi[k] = xi[k] + ti; 49 | k=k+1; 50 | } /* end i loop */ 51 | k=k+n2; 52 | } /* end while */ 53 | k=0; 54 | nu1=nu1-1; 55 | n2=n2/2; 56 | } /* end l loop */ 57 | for (k=0; kk) 61 | { 62 | tr=xr[k]; 63 | ti=xi[k]; 64 | xr[k]=xr[i]; 65 | xi[k]=xi[i]; 66 | xr[i]=tr; 67 | xi[i]=ti; 68 | } 69 | } 70 | if (ie>0) 71 | { 72 | for(i=0; i>1; 94 | } 95 | return (bitr); 96 | } 97 | 98 | 99 | -------------------------------------------------------------------------------- /Circuits/hugetree: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 50925 819 6 | 50077 183 7 | 25 53 8 | 19 55 10 9 | 50 59 1 10 | 50 63 1 11 | 50 67 1 12 | 50 71 1 13 | 50 75 1 14 | 50 79 1 15 | 50 83 1 16 | 50 87 1 17 | 50 91 1 18 | 50 95 1 19 | 50 99 1 20 | 19 103 10 21 | 25 105 22 | 25 159 23 | 19 161 10 24 | 50 165 1 25 | 50 169 1 26 | 50 173 1 27 | 50 177 1 28 | 50 181 1 29 | 50 185 1 30 | 50 189 1 31 | 50 193 1 32 | 50 197 1 33 | 50 201 1 34 | 50 205 1 35 | 19 209 10 36 | 25 211 37 | 25 265 38 | 19 267 10 39 | 50 271 1 40 | 50 275 1 41 | 50 279 1 42 | 50 283 1 43 | 50 287 1 44 | 50 291 1 45 | 50 295 1 46 | 50 299 1 47 | 50195 301 48 | 50 303 1 49 | 50 307 1 50 | 50 311 1 51 | 19 315 10 52 | 25 317 53 | 25 371 54 | 19 373 10 55 | 50 377 1 56 | 50 381 1 57 | 50 385 1 58 | 50 389 1 59 | 50 393 1 60 | 50 397 1 61 | 50293 399 62 | 50 401 1 63 | 50 405 1 64 | 50 409 1 65 | 50 413 1 66 | 50 417 1 67 | 19 421 10 68 | 25 423 69 | 25 477 70 | 30 479 1 71 | 20 483 1 72 | 50 487 1 73 | 50 491 1 74 | 50599 493 75 | 50387 493 76 | 50 495 1 77 | 50 499 1 78 | 50 503 1 79 | 50 507 1 80 | 50 511 1 81 | 50 515 1 82 | 50 519 1 83 | 50 523 1 84 | 19 527 10 85 | 25 529 86 | 25 583 87 | 19 585 10 88 | 50 589 1 89 | 50 593 1 90 | 50 597 1 91 | 50 601 1 92 | 50 605 1 93 | 50 609 1 94 | 50717 611 95 | 50 613 1 96 | 50 617 1 97 | 50 621 1 98 | 50 625 1 99 | 50 629 1 100 | 19 633 10 101 | 25 635 102 | 25 689 103 | 19 691 10 104 | 50 695 1 105 | 50 699 1 106 | 50 703 1 107 | 50 707 1 108 | 50 711 1 109 | 50 715 1 110 | 50 719 1 111 | 50 723 1 112 | 50831 725 113 | 50 727 1 114 | 50 731 1 115 | 50 735 1 116 | 19 739 10 117 | 25 741 118 | 25 795 119 | 19 797 10 120 | 50 801 1 121 | 50 805 1 122 | 50 809 1 123 | 50 813 1 124 | 50 817 1 125 | 50 821 1 126 | 50 825 1 127 | 50 829 1 128 | 50 833 1 129 | 50 837 1 130 | 50 841 1 131 | 19 845 10 132 | 25 847 133 | 25 901 134 | 19 903 10 135 | 50 907 1 136 | 50 911 1 137 | 50 915 1 138 | 50 919 1 139 | 50 923 1 140 | 50 927 1 141 | 50 931 1 142 | 50 935 1 143 | 50 939 1 144 | 50 943 1 145 | 50 947 1 146 | 19 951 10 147 | 25 953 148 | -------------------------------------------------------------------------------- /Circuits/timetest: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 74 6 | 50127 74 7 | 22 83 8 | 50136 83 9 | 22 92 10 | 50145 92 11 | 22 97 12 | 50839 97 13 | 22 100 14 | 50259 100 15 | 22 103 16 | 50209 103 17 | 1050 116 18 | 25 126 19 | 1050 129 20 | 25 135 21 | 1050 141 22 | 25 144 23 | 1050 163 24 | 1050 174 25 | 50128 181 26 | 50181 182 27 | 50190 182 28 | 50129 182 29 | 50137 190 30 | 50190 191 31 | 50199 191 32 | 50138 191 33 | 50146 199 34 | 50199 200 35 | 50209 200 36 | 50147 200 37 | 50368 209 38 | 1042 234 39 | 1050 239 40 | 1042 243 41 | 1050 247 42 | 1042 252 43 | 1050 258 44 | 50263 259 45 | 50528 263 46 | 50435 276 47 | 1050 280 48 | 50276 286 49 | 1050 327 50 | 50444 339 51 | 50286 339 52 | 50436 340 53 | 50341 347 54 | 50453 348 55 | 50445 349 56 | 50350 356 57 | 50940 357 58 | 50454 358 59 | 25 359 60 | 50367 368 61 | 50437 384 62 | 50446 393 63 | 50384 393 64 | 50455 402 65 | 50393 402 66 | 50402 416 67 | -7 418 68 | 1050 421 69 | 1050 428 70 | 1050 441 71 | 50500 447 72 | 1050 449 73 | 1050 460 74 | 1050 467 75 | 50526 473 76 | 1050 486 77 | 50438 491 78 | 50509 500 79 | 50491 500 80 | 50526 509 81 | 50456 509 82 | 50685 526 83 | 50526 528 84 | 1042 543 85 | 1042 552 86 | 1042 561 87 | 50744 585 88 | 50585 595 89 | 1050 630 90 | 1050 633 91 | 1050 642 92 | 50595 648 93 | 50753 648 94 | 50745 649 95 | 1050 654 96 | 50650 656 97 | 50762 657 98 | 50754 658 99 | 50659 665 100 | 50931 666 101 | 50763 667 102 | 25 668 103 | 1050 671 104 | 1050 676 105 | 1050 690 106 | 50746 693 107 | 50711 702 108 | 50693 702 109 | 50764 711 110 | 50734 711 111 | 1050 714 112 | -7 736 113 | 50800 747 114 | 50702 755 115 | 50818 765 116 | 1050 776 117 | 50844 791 118 | 50809 800 119 | 50756 809 120 | 50818 809 121 | 1050 812 122 | 50839 818 123 | 50844 839 124 | 1042 852 125 | 1050 857 126 | 1042 861 127 | 1042 870 128 | 1050 875 129 | 1050 902 130 | 23 904 131 | 50907 904 132 | 50957 904 133 | 23 907 134 | 23 913 135 | 50966 913 136 | 23 922 137 | 50975 922 138 | 23 931 139 | 1050 936 140 | 23 940 141 | 1050 944 142 | 1050 952 143 | 50959 965 144 | 1050 971 145 | 50968 974 146 | 25 977 147 | 1050 981 148 | -------------------------------------------------------------------------------- /Header/Graphics.h: -------------------------------------------------------------------------------- 1 | #ifndef _CSGRAPHICS_H_ 2 | #define _CSGRAPHICS_H_ 3 | 4 | 5 | // This is a copy of graphics.h and console_settings.h 6 | // that was modified by Frank Gennari for use with Circuit Solver - 2000. 7 | extern int CurrentColor; 8 | 9 | int const NUM_COLORS = 17; 10 | 11 | 12 | #define NO_COLOR -1 13 | 14 | // color tables 15 | enum {NONE = 0, RED, GREEN, BLUE, YELLOW, PINK, PURPLE, BROWN, AQUA, WHITE, BLACK, DKGREY, LTBLUE, ALMOND, LTGREY, TAN, DKGREEN, ORANGE}; 16 | // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 17 | 18 | 19 | struct Point; 20 | 21 | 22 | void SelectConsoleWindow(void); 23 | void SelectDrawingWindow(void); 24 | 25 | Point GetMouseLocation(void); 26 | void GetMouseLocation(int &x, int &y); 27 | 28 | Point GetClick(void); 29 | void GetClick(int &x, int &y); 30 | int FoundAClick(Point *); 31 | 32 | void LineDraw(int x1, int y1, int x2, int y2); 33 | void RectangleDraw(int x1, int y1, int x2, int y2); 34 | void RectangleFrame(int x1, int y1, int x2, int y2); 35 | void CircleDraw(int x, int y, int rad); 36 | void CircleFrame(int x, int y, int rad); 37 | void ArcFrame(int x, int y, int radius, int startDegrees, int NumDegrees); 38 | 39 | void SetDrawingColorx(int WhichColorx); 40 | void NumToStr(int n, char str[]); 41 | void DrawInt(int n); 42 | 43 | void ColorPixel(int color, Point p); 44 | 45 | 46 | // floating point to integer drawing function wrappers 47 | // eliminates many of the double->integer conversion warnings generated by some compilers 48 | inline void MoveTo(double x, double y) {MoveTo((int)x, (int)y);}; 49 | inline void LineTo(double x, double y) {LineTo((int)x, (int)y);}; 50 | inline void LineDraw(double x1, double y1, double x2, double y2) {LineDraw((int)x1, (int)y1, (int)x2, (int)y2);}; 51 | inline void RectangleDraw(double x1, double y1, double x2, double y2) {RectangleDraw((int)x1, (int)y1, (int)x2, (int)y2);}; 52 | inline void RectangleFrame(double x1, double y1, double x2, double y2) {RectangleFrame((int)x1, (int)y1, (int)x2, (int)y2);}; 53 | inline void CircleDraw(double x, double y, int rad) {CircleDraw((int)x, (int)y, rad);}; 54 | inline void CircleFrame(double x, double y, int rad) {CircleFrame((int)x, (int)y, rad);}; 55 | inline void ArcFrame(double x, double y, int radius, int startDegrees, int NumDegrees) {ArcFrame((int)x, (int)y, radius, startDegrees, NumDegrees);}; 56 | 57 | #endif 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /Circuits/OPTIMAL2: -------------------------------------------------------------------------------- 1 | placed 2 | nodes 3 | baz bus 82 649 4 | bus3 bus 64 675 5 | e ip 54 752 6 | c ip 54 696 7 | cb1 crossbar 52 2892 8 | d shared 45 2950 9 | b ip 34 3237 10 | dir1 direct 28 1594 11 | bar ip 25 3712 12 | g hcube 23 3701 13 | sh1 shared 20 3062 14 | long_name ip 15 2057 15 | f ip 12 622 16 | a ip 12 1081 17 | foo ip 12 3154 18 | wire ip 2 3251 19 | conn ip 4 4105 20 | bus2 bus 2 737 21 | ana1 analog 1 3055 22 | ser1 serial 0 4130 23 | edges 24 | baz bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 bus3 25 | bus3 baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 26 | e baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 27 | c baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 28 | cb1 baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 29 | d baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 30 | b baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 31 | dir1 baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 32 | bar baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 33 | g baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 34 | sh1 baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 35 | long_name baz baz baz baz baz baz baz baz baz baz baz baz baz baz baz 36 | f baz baz baz baz baz baz baz baz baz baz baz baz 37 | a baz baz baz baz baz baz baz baz baz baz baz baz 38 | foo baz baz baz baz baz baz baz baz baz baz baz baz 39 | wire baz baz 40 | conn baz baz baz baz 41 | bus2 baz baz 42 | ana1 baz 43 | ser1 44 | -------------------------------------------------------------------------------- /Makefile-unix: -------------------------------------------------------------------------------- 1 | PROG = Circuit_Solver 2 | LIB = 3 | BINDIR = . 4 | LIBDIR = . 5 | CC = gcc 6 | CCC = g++ 7 | LIBDIR = #c:/Cygwin/lib/ 8 | LIBS = #$(LIBDIR)libcomdlg32.a $(LIBDIR)libgdi32.a $(LIBDIR)libuser32.a $(LIBDIR)libkernel32.a 9 | MOREOBJECTS = 10 | MORELIBS = 11 | CFLAGS = -DALL -I. -IHeader -ISource -ISource/All_os 12 | LFLAGS = #-L$(LIBDIR) $(LIBS) 13 | 14 | #CC_SRC_FILES = Source/CircuitSolver.cpp Source/C.S.AnalogAnalysis.cpp Source/C.S.ComplexNumbers.cpp Source/C.S.Draw.cpp Source/C.S.Equation.cpp Source/C.S.FSMDesign.cpp Source/C.S.Graph.cpp Source/C.S.GridArray.cpp Source/C.S.InputVector.cpp Source/C.S.IntegratedCircuit.cpp Source/C.S.IOVector.cpp Source/C.S.LinkCircuit.cpp Source/C.S.Logic.cpp Source/C.S.LogicComponents.cpp Source/C.S.LogicDelay.cpp Source/C.S.LogicEngine.cpp Source/C.S.LogicFunctions.cpp Source/C.S.LogicPropagation.cpp Source/C.S.MOSFET.cpp Source/C.S.Netlist.cpp Source/C.S.NetPointerSet.cpp Source/C.S.Nodes.cppSource/C.S.PlaceAndRoute.cpp Source/C.S.Scheduling.cpp Source/C.S.SchematicEdit.cpp Source/C.S.SimulationSetup.cpp Source/C.S.StringTable.cpp Source/C.S.TextGraphics.cpp Source/C.S.TopoSort.cpp Source/C.S.Transforms.cppSource/C.S.Transistor.cpp Source/C.S.Undo.cpp Source/C.S.Utilities.cpp Source/C.S.WindowOps.cpp Source/C.S.Window.cpp Source/All_os/C.S.GraphicsAll.cpp Source/All_os/C.S.InterfaceAll.cpp Source/Borrowed_Code/FFT.C 15 | 16 | CC_OBJ_FILES = CircuitSolver.o C.S.AnalogAnalysis.o C.S.ComplexNumbers.o C.S.Draw.o C.S.Equation.o C.S.FSMDesign.o C.S.Graph.o C.S.GridArray.o C.S.InputVector.o C.S.IntegratedCircuit.o C.S.IOVector.o C.S.LinkCircuit.o C.S.Logic.o C.S.LogicComponents.o C.S.LogicDelay.o C.S.LogicEngine.o C.S.LogicFunctions.o C.S.LogicPropagation.o C.S.MOSFET.o C.S.Netlist.o C.S.NetPointerSet.o C.S.Nodes.o C.S.PlaceAndRoute.o C.S.Scheduling.o C.S.SchematicEdit.o C.S.SimulationSetup.o C.S.StringTable.o C.S.TextGraphics.o C.S.TopoSort.o C.S.Transforms.o C.S.Transistor.o C.S.Undo.o C.S.Utilities.o C.S.WindowOps.o C.S.Window.o C.S.GraphicsAll.o C.S.InterfaceAll.o FFT.o #CSRes.o 17 | 18 | #CC_OBJ_FILES = $(CC_SRC_FILES:.cpp=.o) 19 | 20 | $(PROG): $(CC_OBJ_FILES) 21 | $(CCC) $(CC_OBJ_FILES) $(CFLAGS) $(LFLAGS) -o $(PROG) 22 | 23 | .cc.o: 24 | $(CCC) $(CFLAGS) -c $< 25 | 26 | test: 27 | $(MAKE) "CFLAGS=$(CFLAGS) -g 28 | 29 | opt: 30 | $(MAKE) "CFLAGS=$(CFLAGS) -O" 31 | 32 | debug: 33 | $(MAKE) "CFLAGS=$(CFLAGS) -g -DDEBUG -DVERBOSE" 34 | 35 | pedantic: 36 | $(MAKE) "CFLAGS=$(CFLAGS) -pedantic -Wall -Wcast-qual -Wconversion -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wid-clash-31 -DDEBUG -DVERBOSE" 37 | 38 | profile: 39 | $(MAKE) "CFLAGS=$(CFLAGS) -pg -g -O" 40 | 41 | clean: 42 | rm -f *~ $(PROG) *.o 43 | 44 | CSres.o: CircuitSolver.rc 45 | windres -o CSres.o CircuitSolver.rc -------------------------------------------------------------------------------- /Makefile-cygwin: -------------------------------------------------------------------------------- 1 | PROG = Circuit_Solver 2 | LIB = 3 | BINDIR = . 4 | LIBDIR = . 5 | CC = gcc 6 | CCC = g++ 7 | LIBDIR = c:/Cygwin/lib/w32api/ 8 | LIBS = $(LIBDIR)libcomdlg32.a $(LIBDIR)libgdi32.a $(LIBDIR)libuser32.a $(LIBDIR)libkernel32.a 9 | MOREOBJECTS = 10 | MORELIBS = 11 | CFLAGS = -DALL -I. -IHeader -ISource -ISource/All_os 12 | LFLAGS = -L$(LIBDIR) $(LIBS) 13 | 14 | #CC_SRC_FILES = Source/CircuitSolver.cpp Source/C.S.AnalogAnalysis.cpp Source/C.S.ComplexNumbers.cpp Source/C.S.Draw.cpp Source/C.S.Equation.cpp Source/C.S.FSMDesign.cpp Source/C.S.Graph.cpp Source/C.S.GridArray.cpp Source/C.S.InputVector.cpp Source/C.S.IntegratedCircuit.cpp Source/C.S.IOVector.cpp Source/C.S.LinkCircuit.cpp Source/C.S.Logic.cpp Source/C.S.LogicComponents.cpp Source/C.S.LogicDelay.cpp Source/C.S.LogicEngine.cpp Source/C.S.LogicFunctions.cpp Source/C.S.LogicPropagation.cpp Source/C.S.MOSFET.cpp Source/C.S.Netlist.cpp Source/C.S.NetPointerSet.cpp Source/C.S.Nodes.cpp Source/C.S.PlaceAndRoute.cpp Source/C.S.Scheduling.cpp Source/C.S.SchematicEdit.cpp Source/C.S.SimulationSetup.cpp Source/C.S.StringTable.cpp Source/C.S.TextGraphics.cpp Source/C.S.TopoSort.cpp Source/C.S.Transforms.cpp Source/C.S.Transistor.cpp Source/C.S.Undo.cpp Source/C.S.Utilities.cpp Source/C.S.WindowOps.cpp Source/C.S.Window.cpp Source/Win32/C.S.GraphicsWin32.cpp Source/Win32/C.S.InterfaceWin32.cpp Source/Borrowed_Code/FFT.C 15 | 16 | CC_OBJ_FILES = CircuitSolver.o C.S.AnalogAnalysis.o C.S.ComplexNumbers.o C.S.Draw.o C.S.Equation.o C.S.FSMDesign.o C.S.Graph.o C.S.GridArray.o C.S.InputVector.o C.S.IntegratedCircuit.o C.S.IOVector.o C.S.LinkCircuit.o C.S.Logic.o C.S.LogicComponents.o C.S.LogicDelay.o C.S.LogicEngine.o C.S.LogicFunctions.o C.S.LogicPropagation.o C.S.MOSFET.o C.S.Netlist.o C.S.NetPointerSet.o C.S.Nodes.o C.S.PlaceAndRoute.o C.S.Scheduling.o C.S.SchematicEdit.o C.S.SimulationSetup.o C.S.StringTable.o C.S.TextGraphics.o C.S.TopoSort.o C.S.Transforms.o C.S.Transistor.o C.S.Undo.o C.S.Utilities.o C.S.WindowOps.o C.S.Window.o C.S.GraphicsWin32.o C.S.InterfaceWin32.o FFT.o #CSRes.o 17 | 18 | #CC_OBJ_FILES = $(CC_SRC_FILES:.cpp=.o) 19 | 20 | $(PROG): $(CC_OBJ_FILES) 21 | $(CCC) $(CC_OBJ_FILES) $(CFLAGS) $(LFLAGS) -o $(PROG) 22 | 23 | .cc.o: 24 | $(CCC) $(CFLAGS) -c $< 25 | 26 | test: 27 | $(MAKE) "CFLAGS=$(CFLAGS) -g 28 | 29 | opt: 30 | $(MAKE) "CFLAGS=$(CFLAGS) -O" 31 | 32 | debug: 33 | $(MAKE) "CFLAGS=$(CFLAGS) -g -DDEBUG -DVERBOSE" 34 | 35 | pedantic: 36 | $(MAKE) "CFLAGS=$(CFLAGS) -pedantic -Wall -Wcast-qual -Wconversion -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wid-clash-31 -DDEBUG -DVERBOSE" 37 | 38 | profile: 39 | $(MAKE) "CFLAGS=$(CFLAGS) -pg -g -O" 40 | 41 | clean: 42 | rm -f *~ $(PROG).exe *.o 43 | 44 | CSres.o: CircuitSolver.rc 45 | windres -o CSres.o CircuitSolver.rc -------------------------------------------------------------------------------- /Source/Win32/OpenGL_Support/glut-3.7.6-bin/glut.def: -------------------------------------------------------------------------------- 1 | DESCRIPTION 'OpenGL Utility Toolkit for Win32' 2 | 3 | VERSION 3.7 4 | 5 | EXPORTS 6 | 7 | glutAddMenuEntry 8 | glutAddSubMenu 9 | glutAttachMenu 10 | glutBitmapCharacter 11 | glutBitmapLength 12 | glutBitmapWidth 13 | glutButtonBoxFunc 14 | glutChangeToMenuEntry 15 | glutChangeToSubMenu 16 | glutCopyColormap 17 | glutCreateMenu 18 | __glutCreateMenuWithExit 19 | glutCreateSubWindow 20 | glutCreateWindow 21 | __glutCreateWindowWithExit 22 | glutDestroyMenu 23 | glutDestroyWindow 24 | glutDetachMenu 25 | glutDeviceGet 26 | glutDialsFunc 27 | glutDisplayFunc 28 | glutEnterGameMode 29 | glutEntryFunc 30 | glutEstablishOverlay 31 | glutExtensionSupported 32 | glutForceJoystickFunc 33 | glutFullScreen 34 | glutGameModeGet 35 | glutGameModeString 36 | glutGet 37 | glutGetColor 38 | glutGetMenu 39 | glutGetModifiers 40 | glutGetWindow 41 | glutHideOverlay 42 | glutHideWindow 43 | glutIconifyWindow 44 | glutIdleFunc 45 | glutIgnoreKeyRepeat 46 | glutInit 47 | __glutInitWithExit 48 | glutInitDisplayMode 49 | glutInitDisplayString 50 | glutInitWindowPosition 51 | glutInitWindowSize 52 | glutJoystickFunc 53 | glutKeyboardFunc 54 | glutKeyboardUpFunc 55 | glutLayerGet 56 | glutLeaveGameMode 57 | glutMainLoop 58 | glutMenuStateFunc 59 | glutMenuStatusFunc 60 | glutMotionFunc 61 | glutMouseFunc 62 | glutOverlayDisplayFunc 63 | glutPassiveMotionFunc 64 | glutPopWindow 65 | glutPositionWindow 66 | glutPostOverlayRedisplay 67 | glutPostRedisplay 68 | glutPostWindowOverlayRedisplay 69 | glutPostWindowRedisplay 70 | glutPushWindow 71 | glutRemoveMenuItem 72 | glutRemoveOverlay 73 | glutReportErrors 74 | glutReshapeFunc 75 | glutReshapeWindow 76 | glutSetColor 77 | glutSetCursor 78 | glutSetIconTitle 79 | glutSetKeyRepeat 80 | glutSetMenu 81 | glutSetWindow 82 | glutSetWindowTitle 83 | glutSetupVideoResizing 84 | glutShowOverlay 85 | glutShowWindow 86 | glutSolidCone 87 | glutSolidCube 88 | glutSolidDodecahedron 89 | glutSolidIcosahedron 90 | glutSolidOctahedron 91 | glutSolidSphere 92 | glutSolidTeapot 93 | glutSolidTetrahedron 94 | glutSolidTorus 95 | glutSpaceballButtonFunc 96 | glutSpaceballMotionFunc 97 | glutSpaceballRotateFunc 98 | glutSpecialFunc 99 | glutSpecialUpFunc 100 | glutStopVideoResizing 101 | glutStrokeCharacter 102 | glutStrokeLength 103 | glutStrokeWidth 104 | glutSwapBuffers 105 | glutTabletButtonFunc 106 | glutTabletMotionFunc 107 | glutTimerFunc 108 | glutUseLayer 109 | glutVideoPan 110 | glutVideoResize 111 | glutVideoResizeGet 112 | glutVisibilityFunc 113 | glutWarpPointer 114 | glutWindowStatusFunc 115 | glutWireCone 116 | glutWireCube 117 | glutWireDodecahedron 118 | glutWireIcosahedron 119 | glutWireOctahedron 120 | glutWireSphere 121 | glutWireTeapot 122 | glutWireTetrahedron 123 | glutWireTorus 124 | ; __glutSetFCB 125 | ; __glutGetFCB 126 | 127 | -------------------------------------------------------------------------------- /Source/Unused/Acquisition.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | 6 | // Acquisition.cpp - Written by Frank Gennari 3/5/01 for EE145M Lab 7 | void do_acquisition(); 8 | void read_data(int iteration, HDC Context); 9 | 10 | 11 | 12 | void do_acquisition() { 13 | 14 | // create window 15 | WNDCLASS graphicsWindow; 16 | HWND DrawingWindow; 17 | HDC DWContext; 18 | HCURSOR arrowCursor = LoadCursor(NULL, IDC_ARROW); // Default cursor 19 | HBRUSH bkBrush = HBRUSH(COLOR_WINDOW + 1); // Brush for painting window background 20 | HINSTANCE thisInstance = GetModuleHandle(0); 21 | 22 | graphicsWindow.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW; 23 | graphicsWindow.lpfnWndProc = DefWindowProc; 24 | graphicsWindow.cbClsExtra = 0; 25 | graphicsWindow.cbWndExtra = 0; 26 | graphicsWindow.hInstance = thisInstance; 27 | graphicsWindow.hIcon = NULL; 28 | graphicsWindow.hCursor = arrowCursor; 29 | graphicsWindow.hbrBackground = bkBrush; 30 | graphicsWindow.lpszMenuName = NULL; 31 | graphicsWindow.lpszClassName = "EE145M Lab"; 32 | 33 | RegisterClass (&graphicsWindow); 34 | 35 | DrawingWindow = CreateWindow ("EE145M Lab", 36 | "EE145M LAb Data Acquisition Terminal", // Set window title 37 | WS_OVERLAPPEDWINDOW, // Use standard window style 38 | 0, // Initial x 39 | 0, // and y position 40 | 320, // Initial width 41 | 160, // and height 42 | NULL, // No parent window 43 | NULL, // Use menu from window class 44 | thisInstance, // Use current program instance 45 | NULL); // No special creation parameters 46 | 47 | if (DrawingWindow == NULL) 48 | exit(1); 49 | 50 | ShowWindow(DrawingWindow, SW_SHOWNORMAL); 51 | UpdateWindow(DrawingWindow); 52 | 53 | // create graphic context 54 | DWContext = GetDC(DrawingWindow); // Get device context for client area 55 | if (DWContext == NULL) 56 | exit(1); 57 | 58 | // create font 59 | LOGFONT FontStruct; 60 | HFONT DWFont; 61 | 62 | FontStruct.lfUnderline = FALSE; 63 | FontStruct.lfStrikeOut = FALSE; 64 | FontStruct.lfItalic = FALSE; 65 | FontStruct.lfEscapement = FALSE; 66 | FontStruct.lfOrientation = FALSE; 67 | FontStruct.lfOutPrecision = OUT_DEFAULT_PRECIS; 68 | FontStruct.lfClipPrecision = CLIP_DEFAULT_PRECIS; 69 | FontStruct.lfCharSet = ANSI_CHARSET; 70 | FontStruct.lfQuality = DRAFT_QUALITY; 71 | FontStruct.lfWeight = FW_NORMAL; 72 | FontStruct.lfPitchAndFamily = VARIABLE_PITCH | FF_SWISS; 73 | 74 | FontStruct.lfHeight = 16; 75 | FontStruct.lfWidth = 8; 76 | 77 | DWFont = CreateFontIndirect(&FontStruct); 78 | if (DWFont == NULL) 79 | exit(1); 80 | 81 | SelectObject(DWContext, DWFont); 82 | 83 | // draw text 84 | //SetBkMode(DWContext, TRANSPARENT); 85 | //SetBkMode(DWContext, OPAQUE); 86 | TextOut(DWContext, 20, 20, ((const char *)"Acquiring Data. Click to stop."), 30); 87 | 88 | // acquisition loop 89 | BOOL ContinueFlag = TRUE; 90 | BOOL SeeMessage; 91 | MSG theMessage; 92 | int i = 0; 93 | 94 | while (ContinueFlag) { 95 | read_data(i, DWContext); 96 | ++i; 97 | 98 | SeeMessage = PeekMessage(&theMessage, NULL, 0, 0, 1); // Get next message 99 | if (SeeMessage) { 100 | if (theMessage.message == WM_LBUTTONDOWN) { 101 | ContinueFlag = FALSE; 102 | } 103 | TranslateMessage(&theMessage); // Convert virtual keys to characters 104 | DispatchMessage(&theMessage); // Send message to window procedure 105 | } 106 | } 107 | 108 | // cleanup 109 | DeleteObject(DWFont); 110 | ReleaseDC(DrawingWindow, DWContext); 111 | DestroyWindow(DrawingWindow); // Destroy the window 112 | } 113 | 114 | 115 | 116 | 117 | void read_data(int iteration, HDC Context) { 118 | 119 | char text[32] = {0}; 120 | double value; 121 | 122 | //value = 1234.5; 123 | value = iteration/1000; 124 | 125 | if (iteration%1000 == 0) { 126 | sprintf(text, "%f", value); 127 | TextOut(Context, 100, 60, ((const char *)text), 8); 128 | } 129 | } 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | -------------------------------------------------------------------------------- /Source/Mac/C.S.GraphicsMac.cpp: -------------------------------------------------------------------------------- 1 | #include "CircuitSolver.h" 2 | 3 | 4 | // This is a copy of graphics.cc and console_settings.cc 5 | // that was modified by Frank Gennari for use with Circuit Solver - 2000. 6 | 7 | 8 | extern tSIOUXSettings SIOUXSettings; 9 | extern int WinClick; 10 | extern DialogPtr Menubar_Dialog; 11 | 12 | WindowPtr DrawingWindow; 13 | WindowPtr ConsoleWindow = (WindowPtr)-2L; 14 | 15 | int CurrentColor = 10; 16 | 17 | const SInt16 MAGICVALUE = '127g'; 18 | 19 | 20 | char const colorRGB[num_colors+1][3] = { 21 | {0, 0, 0}, 22 | {65535, 0, 0}, 23 | {0, 65535, 0}, 24 | {0, 0, 65535}, 25 | {65535, 65535, 0}, 26 | {65535, 5837, 22993}, 27 | {65535, 0, 65535}, 28 | {65535, 24000, 6000}, 29 | {22158, 62402, 65535}, 30 | {65535, 65535, 65535}, 31 | {0, 0, 0}, 32 | {37941, 37941, 37941}, 33 | {21519, 37173, 47427}, 34 | {63810, 61003, 45672}, 35 | {46437, 46603, 47103}, 36 | {54702, 47663, 39973}, 37 | {3655, 31905, 0} 38 | {65535, 38000, 0}}; 39 | 40 | int const INVERT_COLORS = 0; 41 | int const SWAP_BW = 0; 42 | 43 | 44 | void do_console(void) { 45 | 46 | SIOUXSettings.initializeTB = INIT_TB; 47 | SIOUXSettings.fontsize = FONT_SIZE; 48 | SIOUXSettings.fontid = FONT_ID; 49 | SIOUXSettings.columns = COLUMNS; 50 | SIOUXSettings.rows = ROWS; 51 | SIOUXSettings.asktosaveonclose = ASK_TO_SAVE_ON_CLOSE; 52 | SIOUXSettings.setupmenus = SET_UP_MENUS; 53 | SIOUXSettings.toppixel= TOP_PIXEL; 54 | SIOUXSettings.leftpixel = LEFT_PIXEL; 55 | } 56 | 57 | 58 | 59 | 60 | 61 | void SelectConsoleWindow(void) { 62 | 63 | WindowRef scan = FrontWindow(); 64 | 65 | while (scan && GetWindowKind(scan) == MAGICVALUE) 66 | scan = GetNextWindow(scan); 67 | 68 | if (scan != NULL) 69 | SelectWindow(scan); 70 | } 71 | 72 | 73 | 74 | void SelectDrawingWindow(void) { 75 | 76 | WindowRef scan = FrontWindow(); 77 | 78 | while (scan) { 79 | if (GetWindowKind(scan) == MAGICVALUE) 80 | SelectWindow(scan); 81 | scan = GetNextWindow(scan); 82 | } 83 | } 84 | 85 | 86 | 87 | 88 | void SetColor(int whichcolor) { 89 | 90 | RGBColor color; 91 | 92 | CurrentColor = whichcolor; 93 | 94 | if (whichcolor <= && whichcolor > num_colors) { 95 | internal_error(); 96 | cout << "Error: Invalid Color: " << WhichColorx << endl; 97 | } 98 | if (SWAP_BW) { 99 | if (whichcolor == BLACK) { 100 | whichcolor = WHITE; 101 | } 102 | else if (whichcolor == WHITE) { 103 | whichcolor = BLACK; 104 | } 105 | } 106 | color.red = colorRGB[whichcolor][0]; 107 | color.green = colorRGB[whichcolor][1]; 108 | color.blue = colorRGB[whichcolor][2]; 109 | 110 | if (INVERT_COLORS) { 111 | color.red ^= 65535; 112 | color.green ^= 65535; 113 | color.blue ^= 65535; 114 | } 115 | RGBForeColor(&color); 116 | } 117 | 118 | 119 | 120 | void ToolboxInit(void) { 121 | 122 | InitGraf(&qd.thePort); 123 | InitFonts(); 124 | InitWindows(); 125 | InitMenus(); 126 | TEInit(); 127 | InitDialogs( 0L ); 128 | InitCursor(); 129 | } 130 | 131 | 132 | 133 | void WindowInit(int windowID) { 134 | 135 | WindowPtr window; 136 | 137 | window = GetNewCWindow(windowID,nil,kMoveToFront); 138 | if (window == nil) { 139 | SysBeep(10); 140 | ExitToShell(); 141 | } 142 | SetWindowKind(window, MAGICVALUE);// <-- new code 143 | ShowWindow(window); 144 | SetPort(window); 145 | DrawingWindow = window; 146 | } 147 | 148 | 149 | 150 | Point GetMouseLocation(void) { 151 | 152 | Point pt; 153 | 154 | GetMouse(&pt); 155 | return (pt); 156 | } 157 | 158 | 159 | 160 | void GetMouseLocation(int &x, int &y) { 161 | 162 | Point pt; 163 | 164 | GetMouse(&pt); 165 | x = pt.h; 166 | y = pt.v; 167 | } 168 | 169 | 170 | 171 | int FoundAClick(Point *pt) { 172 | 173 | int ok, windowCode; 174 | EventRecord theEvent; 175 | WindowPtr theWindow; 176 | 177 | ok = GetNextEvent(everyEvent, &theEvent); 178 | windowCode = FindWindow(theEvent.where, &theWindow); 179 | 180 | if (theEvent.what == mouseDown) { 181 | 182 | if (theWindow == DrawingWindow) 183 | WinClick = 0; 184 | else if (theWindow == ConsoleWindow) 185 | WinClick = 1; 186 | else if (theWindow == Menubar_Dialog) 187 | WinClick = 2; 188 | else 189 | WinClick = 1; 190 | 191 | switch (windowCode) { 192 | 193 | case inContent: 194 | SetPort(DrawingWindow); 195 | GlobalToLocal(&(theEvent.where)); 196 | (*pt).h = theEvent.where.h; 197 | (*pt).v = theEvent.where.v; 198 | return 1; 199 | break; 200 | } 201 | } 202 | return 0; 203 | } 204 | 205 | 206 | 207 | Point GetClick(void) { 208 | 209 | Point pt; 210 | 211 | while (!FoundAClick(&pt)) {}; 212 | 213 | return pt; 214 | } 215 | 216 | 217 | 218 | void GetClick(int &x, int &y) { 219 | 220 | Point pt; 221 | 222 | while (!FoundAClick(&pt)) {}; 223 | 224 | x = pt.h; 225 | y = pt.v; 226 | } 227 | 228 | 229 | 230 | void init(void) { 231 | 232 | do_console(); 233 | ToolboxInit(); 234 | WindowInit(kMyWindowID); 235 | } 236 | 237 | 238 | 239 | 240 | /*void MoveTo(int x, int y) { 241 | 242 | 243 | } 244 | 245 | 246 | 247 | void LineTo(int x, int y) { 248 | 249 | 250 | }*/ 251 | 252 | 253 | 254 | 255 | /* top left and bottom right x and y coords */ 256 | void RectangleDraw(int x1, int y1 , int x2, int y2) { 257 | 258 | Rect r; 259 | 260 | if(x1 > x2) 261 | swap(x1, x2); 262 | 263 | if (y1 > y2) 264 | swap(y1, y2); 265 | 266 | SetRect(&r, x1,y1,x2,y2); 267 | PaintRect(&r); 268 | } 269 | 270 | 271 | 272 | 273 | /* top left and bottom right x and y coords */ 274 | void RectangleFrame(int x1, int y1 , int x2, int y2) { 275 | 276 | Rect r; 277 | 278 | if(x1 > x2) 279 | swap(x1, x2); 280 | 281 | if (y1 > y2) 282 | swap(y1, y2); 283 | 284 | SetRect(&r, x1,y1,x2,y2); 285 | FrameRect(&r); 286 | } 287 | 288 | 289 | 290 | 291 | /* given x ,y points, and radius - draw filled circle */ 292 | 293 | void CircleDraw(int x, int y, int rad) { 294 | 295 | if (rad < 0) 296 | rad = -rad; 297 | 298 | Rect r; 299 | SetRect(&r,x-rad,y-rad,x+rad,y+rad); 300 | PaintOval(&r); 301 | } 302 | 303 | 304 | 305 | 306 | /* given x ,y points, and radius - draw wire frame circle */ 307 | void CircleFrame(int x, int y, int rad) { 308 | 309 | if (rad < 0) 310 | rad = -rad; 311 | 312 | Rect r; 313 | SetRect(&r,x-rad,y-rad,x+rad,y+rad); 314 | FrameOval(&r); 315 | } 316 | 317 | 318 | 319 | void LineDraw(int x1, int y1, int x2, int y2) { 320 | 321 | MoveTo(x1,y1); 322 | LineTo(x2,y2); 323 | } 324 | 325 | 326 | 327 | 328 | void ArcFrame( int x, int y,int radius,int startDegrees, int NumDegrees) { 329 | 330 | if (radius < 0) 331 | radius = -radius; 332 | 333 | Rect r; 334 | SetRect (&r, x - radius, y - radius,x + radius, y + radius); 335 | FrameArc(&r,startDegrees,NumDegrees); 336 | } 337 | 338 | 339 | 340 | 341 | void NumToStr(int n, char str[]) { //Max value of int is 9999. 342 | 343 | int d1,d2,d3,d4; 344 | int foundNonZero = 0; 345 | 346 | d1 = n / 1000; 347 | d2 = n/100 %10; 348 | d3 = n/10 % 10; 349 | d4 = n % 10; 350 | 351 | str[0] = 4; //This must be the length of the string since 352 | //it must be a Pascal string. 353 | 354 | if (d1!=0 ) 355 | { str[1] = (char)(d1 + '0'); 356 | foundNonZero = 1; 357 | } 358 | else 359 | { str[1] =' '; 360 | } 361 | 362 | if (d2 != 0 || foundNonZero == 1) 363 | { str[2] = (char)(d2 + '0'); 364 | foundNonZero = 1; 365 | } 366 | else 367 | { str[2] =' '; 368 | } 369 | 370 | if (d3 != 0 || foundNonZero == 1) 371 | { str[3] = (char)(d3 + '0'); 372 | foundNonZero = 1; 373 | } 374 | else 375 | { str[3] =' '; 376 | } 377 | 378 | str[4] = (char)(d4 + '0'); 379 | 380 | str[5] = '\0'; 381 | 382 | } 383 | 384 | void DrawInt(int n) { //Max value of int is 9999. 385 | 386 | char str[6]; 387 | 388 | NumToStr(n, str); 389 | DrawString((ConstStr255Param)str); 390 | } 391 | 392 | 393 | 394 | 395 | void ColorPixel(int color, Point p) { // Not used yet. 396 | 397 | SetColor(color); 398 | LineDraw(p.h, p.v, p.h, p.v); 399 | } 400 | 401 | 402 | 403 | 404 | -------------------------------------------------------------------------------- /Source/Unused/Old_Topo_Sort.cpp: -------------------------------------------------------------------------------- 1 | 2 | comp_sim *topo_sort(comp_sim *comps, int *&permute_output, NetPointerSet &fanin, NetPointerSet &fanout, NetPointerSet &bidir, string *str_arr, int nodes, int &num_inputs, int &num_ff, int num_comps); 3 | int propagate(comp_sim &comp, int *can_propagate, int prop_num); 4 | 5 | 6 | // ************************************************ 7 | // Old Topo Sort 8 | // ************************************************ 9 | 10 | 11 | // Topological sort based on component connections - speeds up analysis 12 | comp_sim *topo_sort(comp_sim *comps, int *&permute_output, NetPointerSet &fanin, NetPointerSet &fanout, NetPointerSet &bidir, string *str_arr, int nodes, int &num_inputs, int &num_ff, int num_comps) { 13 | 14 | if (use_graph_topo_sort) { 15 | return topo_sort_graph_based(comps, permute_output, fanin, fanout, bidir, str_arr, nodes, num_inputs, num_ff, num_comps); 16 | } 17 | 18 | unsigned int i; 19 | int *conn, *can_propagate = NULL, ID, counter(0), comp_num, outputs(0), add_this_one, comps_left(0); 20 | int more_outputs, total_outputs(0), warning(0), temp_counter, found_ground(0), found_power(0); 21 | int unreachable_outs, unreachable_comps; 22 | char has_changed, *comp_added = NULL; 23 | comp_sim *comps2 = NULL; 24 | 25 | reset_timer(1); 26 | show_elapsed_time(); 27 | cout << "Finding circuit topology..." << endl; 28 | 29 | num_inputs = 0; 30 | num_ff = 0; 31 | num_iterations = 0; 32 | 33 | // *** USE input_nets, output_nets *** 34 | 35 | can_propagate = memAlloc_init(can_propagate, nodes+1, 0); 36 | comp_added = memAlloc_init(comp_added, num_comps+1, (char)0); 37 | comps2 = memAlloc(comps2, num_comps+1); 38 | 39 | // find inputs and outputs 40 | for(i = 0; (int)i < num_comps; ++i) { // find inputs and outputs 41 | ID = comps[i].id; 42 | 43 | if (ID == OUTPUT_ID) { 44 | comps[i].value = ++total_outputs; 45 | } 46 | else if (ID == INPUT_ID) { 47 | ++num_inputs; 48 | comp_added[i] = 1; 49 | } 50 | else if (ID == ST_SEL_ID) { 51 | comp_added[i] = 1; 52 | } 53 | else if (ID == POWER_ID && !found_power) { 54 | comp_added[i] = 1; 55 | found_power = 1; 56 | } 57 | else if (ID == GROUND_ID && !found_ground) { 58 | comp_added[i] = 1; 59 | found_ground = 1; 60 | } 61 | else if (get_order(ID) == flipflopx) { 62 | ++num_ff; 63 | } 64 | if (comp_added[i] == 1) { 65 | copy_comp_sim(comps2[counter++], comps[i]); 66 | if (ID != ST_SEL_ID || force_init_states || no_inputs) { 67 | can_propagate[comps[i].conn_loc] = -1; 68 | } 69 | } 70 | } 71 | permute_output = memAlloc_init(permute_output, total_outputs, (int)0); 72 | 73 | // topologically order components 74 | do { 75 | has_changed = false; 76 | comp_num = 0; 77 | 78 | for(i = 0; (int)i < num_comps; ++i) { 79 | ID = comps[i].id; 80 | conn = comps[i].conn; 81 | 82 | if (comp_added[comp_num] == 0 && propagate(comps[i], can_propagate, num_iterations + 1)) { 83 | add_this_one = 0; 84 | 85 | if ((ID >= BUFFER_ID && ID <= TXNOR_ID) || (ID >= T_ST_BUF_ID && ID <= ADDER_ID) || (ID >= QAND_ID && ID <= DELAY_ID) || ID == OPAMP_ID) { // standard logic gates + opamp + other logic 86 | if (propagate(comps[i], can_propagate, 0)) { 87 | can_propagate[conn[4]] = num_iterations + 1; 88 | add_this_one = 1; 89 | 90 | if (ID == ADDER_ID) { // adder has two outputs 91 | can_propagate[conn[5]] = num_iterations + 1; 92 | } 93 | } 94 | } 95 | else if (ID >= PRSL_ID && ID <= NTFF_ID) { // flipflops 96 | if (propagate(comps[i], can_propagate, 0)) { 97 | can_propagate[conn[3]] = num_iterations + 1; 98 | add_this_one = 1; 99 | } 100 | if (propagate(comps[i], can_propagate, 0)) { 101 | can_propagate[conn[5]] = num_iterations + 1; 102 | add_this_one = 1; 103 | } 104 | } // transistors 105 | else if (get_order(ID) == transistorx || ID == NFET_ID || ID == PFET_ID) { 106 | if (can_propagate[conn[1]] != 0) { 107 | if (can_propagate[conn[3]] != 0 && can_propagate[conn[5]] == 0) { 108 | can_propagate[conn[5]] = num_iterations + 1; 109 | allow_mult_loops = 1; 110 | add_this_one = 1; 111 | } 112 | else if (can_propagate[conn[5]] != 0 && can_propagate[conn[3]] == 0) { 113 | can_propagate[conn[3]] = num_iterations + 1; 114 | allow_mult_loops = 1; 115 | add_this_one = 1; 116 | } 117 | } 118 | } 119 | else if (ID >= V_SOURCE_ID && ID <= MAX_DEP_SRC_ID) // sources - do nothing 120 | add_this_one = 0; 121 | 122 | else if (get_order(ID) != icx) { // ignore ICs 123 | switch(ID) { 124 | 125 | case OUTPUT_ID: 126 | if (comps[i].value != 0) { 127 | if (can_propagate[comps[i].conn_loc] != num_iterations + 1 && can_propagate[comps[i].conn_loc] != 0) { 128 | permute_output[outputs++] = (int)comps[i].value; 129 | comps[i].value = 0; 130 | add_this_one = 1; 131 | } 132 | } 133 | break; 134 | 135 | case BATTERY_ID: 136 | case DIODE_ID: // change? 137 | case RES_ID: 138 | if (can_propagate[conn[1]] != 0 && can_propagate[conn[4]] == 0) { 139 | can_propagate[conn[4]] = num_iterations + 1; 140 | add_this_one = 1; // only second iteration? 141 | } 142 | else if (can_propagate[conn[4]] != 0 && can_propagate[conn[1]] == 0) { 143 | can_propagate[conn[1]] = num_iterations + 1; 144 | add_this_one = 1; // only second iteration? 145 | } 146 | break; 147 | 148 | case CAP_ID: // ignore for now 149 | case INDUCTOR_ID: // treated as wire 150 | case ST_SEL_ID: // handled as input 151 | case POWER_ID: // power and ground - ignore? 152 | case GROUND_ID: 153 | break; 154 | 155 | default: 156 | cerr << "\nError: Unidentified component ID: " << ID << endl; 157 | } 158 | } 159 | if (add_this_one) { 160 | copy_comp_sim(comps2[counter++], comps[i]); 161 | comp_added[comp_num] = 1; 162 | has_changed = true; 163 | } 164 | } 165 | ++comp_num; 166 | } 167 | ++num_iterations; 168 | 169 | if (outputs == total_outputs && has_changed) { 170 | if (warning == 0) { 171 | warning = 1; 172 | comps_left = num_comps - counter; 173 | } 174 | else 175 | warning = 2; 176 | } 177 | 178 | } while (num_iterations <= max(nodes, num_comps) && counter < num_comps && has_changed); 179 | 180 | temp_counter = counter; 181 | more_outputs = outputs; 182 | 183 | // add the rest of the components 184 | for (i = 0; (int)i < num_comps && counter < num_comps; ++i) { 185 | if (comp_added[i] == 0) { 186 | copy_comp_sim(comps2[counter++], comps[i]); 187 | 188 | if (comps[i].id == OUTPUT_ID && comps[i].value != 0) { 189 | permute_output[more_outputs++] = (int)comps[i].value; 190 | comps[i].value = 0; 191 | } 192 | if (get_order(comps[i].id) == icx || comps[i].id == OUTPUT_ID) 193 | ++temp_counter; 194 | } 195 | } 196 | delete [] can_propagate; 197 | delete [] comp_added; 198 | delete [] comps; 199 | 200 | show_elapsed_time(); 201 | cout << "done.\n" << num_comps << " total component"; 202 | if (num_comps != 1) 203 | cout << "s"; 204 | cout << "." << endl; 205 | 206 | reset_timer(1); 207 | show_elapsed_time(); 208 | cout << "Maximum topological critical path is " << (num_iterations - 1) << " gate delays." << endl; 209 | 210 | num_iterations = 0; 211 | unreachable_outs = total_outputs - outputs; 212 | unreachable_comps = counter - temp_counter; 213 | 214 | // report warnings 215 | if (warning == 2) 216 | cout << "Note: It appears that the output values can be calculated without evaluating " << comps_left << " of the gates/components." << endl; 217 | 218 | check_print_num_message(unreachable_outs, 1, "unreachable output"); 219 | check_print_num_message(unreachable_comps, 1, "unreachable component"); 220 | 221 | // DEBUGGING 222 | if (test_show_topo_sort) { 223 | cout << "Components topologically sorted are: " << endl; 224 | for(i = 0; (int)i < num_comps; ++i) { 225 | cout << get_name(comps2[i].id, 0) << ", "; 226 | } 227 | cout << "Click to continue." << endl; 228 | get_window_click(); 229 | } 230 | return comps2; 231 | } 232 | 233 | 234 | 235 | 236 | int propagate(comp_sim &comp, int *can_propagate, int prop_num) { 237 | 238 | int *conn = comp.conn; 239 | 240 | if (conn[0] >= 0 && can_propagate[conn[0]] == prop_num) 241 | return 0; 242 | 243 | if (conn[1] >= 0 && can_propagate[conn[1]] == prop_num) 244 | return 0; 245 | 246 | if (conn[2] >= 0 && can_propagate[conn[2]] == prop_num) 247 | return 0; 248 | 249 | if (comp.id >= QAND_ID && comp.id <= QXNOR_ID && conn[3] >= 0 && can_propagate[conn[3]] == prop_num) 250 | return 0; 251 | 252 | return 1; 253 | } -------------------------------------------------------------------------------- /CircuitSolver.Data/DEBUG: -------------------------------------------------------------------------------- 1 | 0 | 7391,36 6224,19 2 | 1 | 9726,0 1168,0 3 | 2 | 4 | 3 | 4671,1 1559,27 5 | 4 | 8562,56 6228,5 3505,33 2727,9 393,12 6 | 5 | 2339,29 7 | 6 | 5841,72 1562,27 8 | 7 | 9343,15 9 | 8 | 10 | 9 | 11 | 10 | 5845,14 12 | 11 | 13 | 12 | 9348,15 14 | 13 | 4681,1 791,4 402,12 15 | 14 | 7794,1 5849,15 4682,14 3515,3 1181,0 16 | 15 | 3516,3 17 | 16 | 18 | 17 | 8964,23 4296,5 19 | 18 | 7798,1 5853,2 3130,6 1185,1 20 | 19 | 6632,73 21 | 20 | 8189,4 22 | 21 | 23 | 22 | 5857,16 2356,9 1189,6 800,4 24 | 23 | 4691,14 25 | 24 | 26 | 25 | 27 | 26 | 7806,54 3527,34 1193,6 28 | 27 | 416,12 29 | 28 | 8975,23 30 | 29 | 4308,7 31 | 30 | 8588,23 6643,0 32 | 31 | 8589,23 7422,13 5477,2 809,4 33 | 32 | 7423,13 5478,2 34 | 33 | 35 | 34 | 4313,7 36 | 35 | 37 | 36 | 5482,2 2759,2 38 | 37 | 39 | 38 | 9763,61 5484,12 40 | 39 | 8597,57 3929,0 41 | 40 | 2763,2 818,4 42 | 41 | 1597,63 43 | 42 | 3154,6 44 | 43 | 45 | 44 | 46 | 45 | 47 | 46 | 9771,21 435,7 48 | 47 | 436,1 49 | 48 | 8217,13 2771,8 437,12 50 | 49 | 7440,51 438,5 51 | 50 | 8608,58 5885,16 3940,0 52 | 51 | 9776,21 53 | 52 | 9388,59 3553,0 1608,8 54 | 53 | 8611,58 6277,12 3554,0 2387,0 55 | 54 | 2388,0 56 | 55 | 6279,12 5890,16 444,7 57 | 56 | 445,2 58 | 57 | 446,12 59 | 58 | 7449,51 447,5 60 | 59 | 61 | 60 | 4728,39 62 | 61 | 8230,13 3562,35 839,4 63 | 62 | 64 | 63 | 65 | 64 | 453,9 66 | 65 | 8234,2 454,3 67 | 66 | 844,4 455,12 68 | 67 | 456,5 69 | 68 | 6681,3 4736,13 70 | 69 | 9405,21 8238,18 71 | 70 | 3182,0 72 | 71 | 2405,30 73 | 72 | 6685,3 3573,36 74 | 73 | 8242,4 5519,42 4741,13 75 | 74 | 4353,37 74,1 76 | 75 | 7855,76 3576,36 1242,6 77 | 76 | 78 | 77 | 1244,6 79 | 78 | 80 | 79 | 7859,54 81 | 80 | 2414,30 82 | 81 | 83 | 82 | 6695,3 84 | 83 | 9808,3 7863,19 6696,0 5529,2 3195,0 83,2 85 | 84 | 5530,2 473,5 86 | 85 | 87 | 86 | 6310,5 88 | 87 | 9812,3 7867,1 5144,5 3199,3 89 | 88 | 8646,77 90 | 89 | 91 | 90 | 1646,1 92 | 91 | 7871,22 4370,13 3203,6 93 | 92 | 6705,0 92,3 94 | 93 | 95 | 94 | 1650,1 96 | 95 | 9820,23 5541,43 3207,6 97 | 96 | 98 | 97 | 2820,66 97,4 99 | 98 | 6322,9 100 | 99 | 8657,23 101 | 100 | 9436,15 7491,1 100,5 102 | 101 | 9437,15 7492,1 2824,8 103 | 102 | 491,5 104 | 103 | 6327,9 103,6 105 | 104 | 1660,1 106 | 105 | 7496,1 4773,1 2828,9 1661,8 107 | 106 | 108 | 107 | 7498,18 109 | 108 | 5943,16 1275,6 110 | 109 | 4777,1 2832,2 111 | 110 | 3611,67 112 | 111 | 5168,5 500,5 113 | 112 | 114 | 113 | 2836,10 115 | 114 | 1670,8 116 | 115 | 117 | 116 | 118 | 117 | 4785,41 119 | 118 | 9454,60 120 | 119 | 7899,22 5954,16 121 | 120 | 1287,0 509,5 122 | 121 | 5567,16 3622,0 123 | 122 | 8291,18 5568,16 4401,7 2456,2 124 | 123 | 4402,7 2457,2 125 | 124 | 8293,18 7904,22 126 | 125 | 1292,0 127 | 126 | 904,19 126,0 128 | 127 | 2461,2 127,1 9463,60 129 | 128 | 128,6 130 | 129 | 6742,48 2463,6 907,19 129,6 131 | 130 | 5576,44 132 | 131 | 133 | 132 | 134 | 133 | 135 | 134 | 136 | 135 | 913,20 135,0 137 | 136 | 136,2 138 | 137 | 6750,17 526,5 137,6 8695,2 139 | 138 | 138,6 140 | 139 | 5196,7 528,5 141 | 140 | 4419,38 142 | 141 | 5587,45 2864,10 8699,2 143 | 142 | 7533,50 6755,17 144 | 143 | 6367,46 145 | 144 | 9869,80 5590,45 3256,6 922,21 144,0 146 | 145 | 145,3 147 | 146 | 3258,6 2869,10 146,6 148 | 147 | 147,6 149 | 148 | 9873,23 150 | 149 | 4428,38 151 | 150 | 152 | 151 | 1707,26 8709,2 153 | 152 | 9877,21 5209,7 8710,23 7543,1 154 | 153 | 931,17 7544,1 155 | 154 | 156 | 155 | 8324,4 157 | 156 | 9881,3 7158,4 5213,2 158 | 157 | 159 | 158 | 160 | 159 | 3660,3 1715,7 161 | 160 | 9885,0 6384,17 5217,12 162 | 161 | 8719,23 163 | 162 | 940,11 164 | 163 | 3664,3 165 | 164 | 2498,29 1720,7 7555,51 5221,5 166 | 165 | 1332,24 167 | 166 | 4834,70 168 | 167 | 8336,13 169 | 168 | 170 | 169 | 9505,3 171 | 170 | 9506,3 4838,41 172 | 171 | 173 | 172 | 8341,13 174 | 173 | 3674,3 175 | 174 | 2508,2 9510,3 6787,3 4842,13 3675,0 176 | 175 | 2509,2 177 | 176 | 9512,18 178 | 177 | 7957,22 3289,6 179 | 178 | 956,54 6791,3 4846,1 2123,6 180 | 179 | 957,19 5625,71 181 | 180 | 958,1 7182,4 182 | 181 | 959,22 181,6 183 | 182 | 1349,7 182,6 4850,14 184 | 183 | 3684,0 185 | 184 | 186 | 185 | 187 | 186 | 6799,16 2520,30 188 | 187 | 965,22 189 | 188 | 9913,0 7968,22 966,20 190 | 189 | 3301,0 967,2 191 | 190 | 190,6 7581,22 5636,16 968,23 192 | 191 | 191,6 7582,22 6415,9 4470,1 193 | 192 | 6416,9 4471,1 194 | 193 | 9918,0 195 | 194 | 3306,0 196 | 195 | 197 | 196 | 4475,1 1752,1 974,23 585,13 198 | 197 | 975,21 199 | 198 | 976,3 8756,57 4477,12 200 | 199 | 7590,52 2922,10 977,0 199,6 201 | 200 | 1756,1 200,6 202 | 201 | 203 | 202 | 2147,6 204 | 203 | 205 | 204 | 206 | 205 | 207 | 206 | 8764,20 595,13 208 | 207 | 209 | 208 | 7210,13 1764,28 210 | 209 | 6433,47 209,6 211 | 210 | 7601,53 4878,14 2933,10 212 | 211 | 9547,59 8769,20 213 | 212 | 8381,55 2546,10 214 | 213 | 7604,53 5270,12 2547,10 1380,0 215 | 214 | 1381,0 216 | 215 | 5272,12 4883,14 217 | 216 | 218 | 217 | 219 | 218 | 6442,47 220 | 219 | 221 | 220 | 3721,35 222 | 221 | 9557,3 7223,13 2555,31 223 | 222 | 9558,3 224 | 223 | 225 | 224 | 226 | 225 | 9172,4 7227,1 227 | 226 | 228 | 227 | 229 | 228 | 5674,2 3729,11 230 | 229 | 8398,20 7231,18 231 | 230 | 2175,0 232 | 231 | 1398,25 233 | 232 | 5678,2 2566,32 234 | 233 | 9569,60 7235,4 4512,37 3734,11 235 | 234 | 3346,33 236 | 235 | 6848,74 2569,32 237 | 236 | 238 | 237 | 239 | 238 | 240 | 239 | 6852,16 241 | 240 | 1407,25 242 | 241 | 243 | 242 | 5688,2 244 | 243 | 8801,2 6856,17 5689,16 4522,1 2188,0 245 | 244 | 4523,1 246 | 245 | 247 | 246 | 9971,0 5303,5 248 | 247 | 8805,2 6860,3 4137,5 2192,2 249 | 248 | 7639,75 250 | 249 | 9196,4 251 | 250 | 252 | 251 | 6864,0 3363,11 2196,6 253 | 252 | 5698,16 254 | 253 | 255 | 254 | 256 | 255 | 8813,22 4534,38 2200,6 257 | 256 | 258 | 257 | 9982,0 1813,64 259 | 258 | 5315,7 647,41 260 | 259 | 9595,0 7650,22 648,13 259,5 261 | 260 | 9596,0 8429,13 6484,3 649,1 262 | 261 | 8430,13 6485,3 1817,28 650,14 263 | 262 | 264 | 263 | 5320,7 263,5 265 | 264 | 266 | 265 | 6489,3 3766,3 1821,7 267 | 266 | 268 | 267 | 6491,12 656,14 269 | 268 | 9604,61 4936,14 657,15 270 | 269 | 3770,3 1825,1 658,2 271 | 270 | 2604,65 659,16 272 | 271 | 4161,5 273 | 272 | 274 | 273 | 1829,8 275 | 274 | 276 | 275 | 277 | 276 | 665,16 276,7 278 | 277 | 9224,15 3778,10 666,17 279 | 278 | 8447,56 667,3 280 | 279 | 9615,62 6892,0 4947,14 668,0 281 | 280 | 282 | 281 | 4560,14 2615,10 283 | 282 | 9618,62 7284,18 4561,14 3394,0 1449,1 284 | 283 | 3395,0 1450,1 285 | 284 | 7286,18 6897,0 286 | 285 | 287 | 286 | 286,7 288 | 287 | 8456,56 1454,1 289 | 288 | 290 | 289 | 5735,44 1456,6 291 | 290 | 9237,15 4569,39 292 | 291 | 293 | 292 | 294 | 293 | 295 | 294 | 9241,3 296 | 295 | 297 | 296 | 685,5 298 | 297 | 7688,1 5743,15 299 | 298 | 9245,18 300 | 299 | 4189,7 301 | 300 | 3412,34 302 | 301 | 7692,1 4580,40 1857,8 303 | 302 | 9249,4 6526,46 5748,15 304 | 303 | 5360,42 305 | 304 | 8862,78 4583,40 2249,6 693,18 306 | 305 | 307 | 306 | 2251,6 1862,8 308 | 307 | 309 | 308 | 8866,22 310 | 309 | 3421,34 311 | 310 | 312 | 311 | 7702,1 313 | 312 | 8870,20 7703,22 6536,3 4202,7 314 | 313 | 6537,3 702,18 315 | 314 | 316 | 315 | 7317,4 317 | 316 | 8874,2 6151,5 4206,1 318 | 317 | 9653,79 319 | 318 | 320 | 319 | 2653,2 321 | 320 | 5377,15 4210,12 8878,23 322 | 321 | 7712,22 323 | 322 | 711,18 324 | 323 | 2657,2 325 | 324 | 6548,47 4214,5 1491,24 326 | 325 | 327 | 326 | 3827,68 328 | 327 | 7329,13 329 | 328 | 9664,0 330 | 329 | 8498,2 331 | 330 | 3831,10 8499,2 332 | 331 | 333 | 332 | 7334,13 334 | 333 | 2667,2 335 | 334 | 5780,2 3835,11 2668,10 1501,1 8503,2 336 | 335 | 1502,1 337 | 336 | 8505,18 338 | 337 | 2282,6 6950,0 339 | 338 | 5784,2 3839,3 1116,6 338,28 340 | 339 | 4618,69 339,7 341 | 340 | 6175,5 340,1 342 | 341 | 341,8 343 | 342 | 3843,0 344 | 343 | 2677,10 345 | 344 | 346 | 345 | 734,18 347 | 346 | 1513,25 5792,14 348 | 347 | 347,8 349 | 348 | 348,9 8906,23 6961,0 350 | 349 | 2294,0 349,2 351 | 350 | 4629,14 350,10 6574,0 352 | 351 | 3463,3 9298,18 6575,0 5408,7 353 | 352 | 3464,3 5409,7 354 | 353 | 9300,18 8911,23 355 | 354 | 2299,0 356 | 355 | 744,13 357 | 356 | 3468,3 745,1 356,10 358 | 357 | 746,18 357,11 359 | 358 | 3470,6 747,4 358,3 7749,52 360 | 359 | 1915,8 359,0 6583,48 361 | 360 | 362 | 361 | 363 | 362 | 1140,6 364 | 363 | 365 | 364 | 753,13 366 | 365 | 754,2 367 | 366 | 9702,3 755,18 7757,19 368 | 367 | 756,4 367,6 369 | 368 | 368,6 6203,9 370 | 369 | 5426,43 371 | 370 | 9706,3 1926,8 6594,49 3871,0 372 | 371 | 8540,55 7762,19 373 | 372 | 1539,8 7374,50 374 | 373 | 1540,8 762,15 6597,49 4263,12 375 | 374 | 763,3 376 | 375 | 764,18 4265,12 3876,0 377 | 376 | 765,4 378 | 377 | 379 | 378 | 5435,43 380 | 379 | 381 | 380 | 9716,3 2714,31 382 | 381 | 9717,0 8550,2 6216,9 1548,26 383 | 382 | 8551,2 384 | 383 | 385 | 384 | 384,12 9331,4 386 | 385 | 8165,4 6220,3 387 | 386 | 388 | 387 | 389 | 388 | 4667,1 2722,9 390 | -------------------------------------------------------------------------------- /Circuits/mult_origx: -------------------------------------------------------------------------------- 1 | Circuit_Solver_Saved_Circuit 2 | xxx 3 | 5 0 4 | 53 -19 5 | 22 74 6 | 50127 74 7 | 22 83 8 | 50136 83 9 | 22 92 10 | 50145 92 11 | 22 97 12 | 50839 97 13 | 22 100 14 | 50259 100 15 | 22 103 16 | 50209 103 17 | 25 126 18 | 25 135 19 | 25 144 20 | 50128 181 21 | 50129 182 22 | 50190 182 23 | 50181 182 24 | 50137 190 25 | 50138 191 26 | 50199 191 27 | 50190 191 28 | 50146 199 29 | 50147 200 30 | 50209 200 31 | 50199 200 32 | 50368 209 33 | 50263 259 34 | 50528 263 35 | 50435 276 36 | 50276 286 37 | 50286 339 38 | 50444 339 39 | 50436 340 40 | 50341 347 41 | 50453 348 42 | 50445 349 43 | 50350 356 44 | 50940 357 45 | 50454 358 46 | 25 359 47 | 50367 368 48 | 50437 384 49 | 50384 393 50 | 50446 393 51 | 50393 402 52 | 50455 402 53 | 50402 416 54 | -7 418 55 | 50500 447 56 | 50526 473 57 | 50438 491 58 | 50491 500 59 | 50509 500 60 | 50456 509 61 | 50526 509 62 | 50685 526 63 | 50526 528 64 | 50744 585 65 | 50585 595 66 | 50753 648 67 | 50595 648 68 | 50745 649 69 | 50650 656 70 | 50762 657 71 | 50754 658 72 | 50659 665 73 | 50931 666 74 | 50763 667 75 | 25 668 76 | 50746 693 77 | 50693 702 78 | 50711 702 79 | 50734 711 80 | 50764 711 81 | -7 736 82 | 50800 747 83 | 50702 755 84 | 50818 765 85 | 50844 791 86 | 50809 800 87 | 50818 809 88 | 50756 809 89 | 50839 818 90 | 50844 839 91 | 23 904 92 | 50957 904 93 | 50907 904 94 | 23 907 95 | 23 913 96 | 50966 913 97 | 23 922 98 | 50975 922 99 | 23 931 100 | 23 940 101 | 50959 965 102 | 50968 974 103 | 25 977 104 | 51222 1063 105 | 51063 1087 106 | 51128 1115 107 | 50126 1128 108 | 51234 1128 109 | 50127 1132 110 | 50128 1136 111 | 50129 1140 112 | 51087 1140 113 | 51136 1189 114 | 51189 1191 115 | 51239 1234 116 | 7 1277 117 | 51438 1279 118 | 7 1294 119 | 51115 1327 120 | 51327 1328 121 | 51354 1345 122 | 51460 1354 123 | 51449 1396 124 | 51132 1397 125 | 51401 1397 126 | 51396 1397 127 | 51772 1401 128 | 51191 1403 129 | 51449 1448 130 | 3 1458 131 | 51804 1486 132 | 51486 1487 133 | 3 1493 134 | 51654 1495 135 | 7 1504 136 | 51509 1506 137 | 5 1542 138 | 51608 1555 139 | 51699 1593 140 | 51607 1597 141 | 51448 1607 142 | 51617 1608 143 | 51873 1608 144 | 51776 1617 145 | 51667 1662 146 | 51296 1667 147 | 51703 1699 148 | 51597 1703 149 | 5 1709 150 | 51764 1711 151 | 3 1758 152 | 50338 1764 153 | 50339 1768 154 | 51662 1768 155 | 50340 1772 156 | 50341 1776 157 | 51809 1804 158 | 51809 1862 159 | 51862 1873 160 | 52176 2017 161 | 52017 2041 162 | 52082 2069 163 | 50135 2082 164 | 52188 2082 165 | 50136 2086 166 | 50137 2090 167 | 50138 2094 168 | 52041 2094 169 | 52090 2143 170 | 52143 2145 171 | 52193 2188 172 | 7 2231 173 | 52392 2233 174 | 7 2248 175 | 52069 2281 176 | 52281 2282 177 | 52308 2299 178 | 52414 2308 179 | 52403 2350 180 | 52086 2351 181 | 52355 2351 182 | 52350 2351 183 | 52726 2355 184 | 52145 2357 185 | 52403 2402 186 | 3 2412 187 | 52758 2440 188 | 52440 2441 189 | 3 2447 190 | 52608 2449 191 | 7 2458 192 | 52463 2460 193 | 5 2496 194 | 52562 2509 195 | 52653 2547 196 | 52561 2551 197 | 52402 2561 198 | 52571 2562 199 | 52827 2562 200 | 52730 2571 201 | 52621 2616 202 | 52250 2621 203 | 52657 2653 204 | 52551 2657 205 | 5 2663 206 | 52718 2665 207 | 3 2712 208 | 50347 2718 209 | 50348 2722 210 | 52616 2722 211 | 50349 2726 212 | 50350 2730 213 | 52763 2758 214 | 52763 2816 215 | 52816 2827 216 | 53130 2971 217 | 52971 2995 218 | 53036 3023 219 | 50144 3036 220 | 53142 3036 221 | 50145 3040 222 | 50146 3044 223 | 50147 3048 224 | 52995 3048 225 | 53044 3097 226 | 53097 3099 227 | 53147 3142 228 | 7 3185 229 | 53346 3187 230 | 7 3202 231 | 53023 3235 232 | 53235 3236 233 | 53262 3253 234 | 53368 3262 235 | 53357 3304 236 | 53040 3305 237 | 53309 3305 238 | 53304 3305 239 | 53680 3309 240 | 53099 3311 241 | 53357 3356 242 | 3 3366 243 | 53712 3394 244 | 53394 3395 245 | 3 3401 246 | 53562 3403 247 | 7 3412 248 | 53417 3414 249 | 5 3450 250 | 53516 3463 251 | 53607 3501 252 | 53515 3505 253 | 53356 3515 254 | 53525 3516 255 | 53781 3516 256 | 53684 3525 257 | 53575 3570 258 | 53204 3575 259 | 53611 3607 260 | 53505 3611 261 | 5 3617 262 | 53672 3619 263 | 3 3666 264 | 50356 3672 265 | 50357 3676 266 | 53570 3676 267 | 50358 3680 268 | 50359 3684 269 | 53717 3712 270 | 53717 3770 271 | 53770 3781 272 | 54084 3925 273 | 53925 3949 274 | 53990 3977 275 | 50435 3990 276 | 54096 3990 277 | 50436 3994 278 | 50437 3998 279 | 50438 4002 280 | 53949 4002 281 | 53998 4051 282 | 54051 4053 283 | 54101 4096 284 | 7 4139 285 | 54300 4141 286 | 7 4156 287 | 53977 4189 288 | 54189 4190 289 | 54216 4207 290 | 54322 4216 291 | 54311 4258 292 | 53994 4259 293 | 54263 4259 294 | 54258 4259 295 | 54634 4263 296 | 54053 4265 297 | 54311 4310 298 | 3 4320 299 | 54666 4348 300 | 54348 4349 301 | 3 4355 302 | 54516 4357 303 | 7 4366 304 | 54371 4368 305 | 5 4404 306 | 54470 4417 307 | 54561 4455 308 | 54469 4459 309 | 54310 4469 310 | 54479 4470 311 | 54735 4470 312 | 54638 4479 313 | 54529 4524 314 | 54158 4529 315 | 54565 4561 316 | 54459 4565 317 | 5 4571 318 | 54626 4573 319 | 3 4620 320 | 50647 4626 321 | 50648 4630 322 | 54524 4630 323 | 50649 4634 324 | 50650 4638 325 | 54671 4666 326 | 54671 4724 327 | 54724 4735 328 | 55038 4879 329 | 54879 4903 330 | 54944 4931 331 | 50444 4944 332 | 55050 4944 333 | 50445 4948 334 | 50446 4952 335 | 50447 4956 336 | 54903 4956 337 | 54952 5005 338 | 55005 5007 339 | 55055 5050 340 | 7 5093 341 | 55254 5095 342 | 7 5110 343 | 54931 5143 344 | 55143 5144 345 | 55170 5161 346 | 55276 5170 347 | 55265 5212 348 | 54948 5213 349 | 55217 5213 350 | 55212 5213 351 | 55588 5217 352 | 55007 5219 353 | 55265 5264 354 | 3 5274 355 | 55620 5302 356 | 55302 5303 357 | 3 5309 358 | 55470 5311 359 | 7 5320 360 | 55325 5322 361 | 5 5358 362 | 55424 5371 363 | 55515 5409 364 | 55423 5413 365 | 55264 5423 366 | 55433 5424 367 | 55689 5424 368 | 55592 5433 369 | 55483 5478 370 | 55112 5483 371 | 55519 5515 372 | 55413 5519 373 | 5 5525 374 | 55580 5527 375 | 3 5574 376 | 50656 5580 377 | 50657 5584 378 | 55478 5584 379 | 50658 5588 380 | 50659 5592 381 | 55625 5620 382 | 55625 5678 383 | 55678 5689 384 | 55992 5833 385 | 55833 5857 386 | 55898 5885 387 | 50453 5898 388 | 56004 5898 389 | 50454 5902 390 | 50455 5906 391 | 50456 5910 392 | 55857 5910 393 | 55906 5959 394 | 55959 5961 395 | 56009 6004 396 | 7 6047 397 | 56208 6049 398 | 7 6064 399 | 55885 6097 400 | 56097 6098 401 | 56124 6115 402 | 56230 6124 403 | 56219 6166 404 | 55902 6167 405 | 56171 6167 406 | 56166 6167 407 | 56542 6171 408 | 55961 6173 409 | 56219 6218 410 | 3 6228 411 | 56574 6256 412 | 56256 6257 413 | 3 6263 414 | 56424 6265 415 | 7 6274 416 | 56279 6276 417 | 5 6312 418 | 56378 6325 419 | 56469 6363 420 | 56377 6367 421 | 56218 6377 422 | 56387 6378 423 | 56643 6378 424 | 56546 6387 425 | 56437 6432 426 | 56066 6437 427 | 56473 6469 428 | 56367 6473 429 | 5 6479 430 | 56534 6481 431 | 3 6528 432 | 50665 6534 433 | 50666 6538 434 | 56432 6538 435 | 50667 6542 436 | 50668 6546 437 | 56579 6574 438 | 56579 6632 439 | 56632 6643 440 | 56946 6787 441 | 56787 6811 442 | 56852 6839 443 | 50744 6852 444 | 56958 6852 445 | 50745 6856 446 | 50746 6860 447 | 50747 6864 448 | 56811 6864 449 | 56860 6913 450 | 56913 6915 451 | 56963 6958 452 | 7 7001 453 | 57162 7003 454 | 7 7018 455 | 56839 7051 456 | 57051 7052 457 | 57078 7069 458 | 57184 7078 459 | 57173 7120 460 | 56856 7121 461 | 57125 7121 462 | 57120 7121 463 | 57496 7125 464 | 56915 7127 465 | 57173 7172 466 | 3 7182 467 | 57528 7210 468 | 57210 7211 469 | 3 7217 470 | 57378 7219 471 | 7 7228 472 | 57233 7230 473 | 5 7266 474 | 57332 7279 475 | 57423 7317 476 | 57331 7321 477 | 57172 7331 478 | 57341 7332 479 | 57597 7332 480 | 57500 7341 481 | 57391 7386 482 | 57020 7391 483 | 57427 7423 484 | 57321 7427 485 | 5 7433 486 | 57488 7435 487 | 3 7482 488 | 50956 7488 489 | 50957 7492 490 | 57386 7492 491 | 50958 7496 492 | 50959 7500 493 | 57533 7528 494 | 57533 7586 495 | 57586 7597 496 | 57900 7741 497 | 57741 7765 498 | 57806 7793 499 | 50753 7806 500 | 57912 7806 501 | 50754 7810 502 | 50755 7814 503 | 50756 7818 504 | 57765 7818 505 | 57814 7867 506 | 57867 7869 507 | 57917 7912 508 | 7 7955 509 | 58116 7957 510 | 7 7972 511 | 57793 8005 512 | 58005 8006 513 | 58032 8023 514 | 58138 8032 515 | 58127 8074 516 | 57810 8075 517 | 58079 8075 518 | 58074 8075 519 | 58450 8079 520 | 57869 8081 521 | 58127 8126 522 | 3 8136 523 | 58482 8164 524 | 58164 8165 525 | 3 8171 526 | 58332 8173 527 | 7 8182 528 | 58187 8184 529 | 5 8220 530 | 58286 8233 531 | 58377 8271 532 | 58285 8275 533 | 58126 8285 534 | 58295 8286 535 | 58551 8286 536 | 58454 8295 537 | 58345 8340 538 | 57974 8345 539 | 58381 8377 540 | 58275 8381 541 | 5 8387 542 | 58442 8389 543 | 3 8436 544 | 50965 8442 545 | 50966 8446 546 | 58340 8446 547 | 50967 8450 548 | 50968 8454 549 | 58487 8482 550 | 58487 8540 551 | 58540 8551 552 | 58854 8695 553 | 58695 8719 554 | 58760 8747 555 | 50762 8760 556 | 58866 8760 557 | 50763 8764 558 | 50764 8768 559 | 50765 8772 560 | 58719 8772 561 | 58768 8821 562 | 58821 8823 563 | 58871 8866 564 | 7 8909 565 | 59070 8911 566 | 7 8926 567 | 58747 8959 568 | 58959 8960 569 | 58986 8977 570 | 59092 8986 571 | 59081 9028 572 | 58764 9029 573 | 59033 9029 574 | 59028 9029 575 | 59404 9033 576 | 58823 9035 577 | 59081 9080 578 | 3 9090 579 | 59436 9118 580 | 59118 9119 581 | 3 9125 582 | 59286 9127 583 | 7 9136 584 | 59141 9138 585 | 5 9174 586 | 59240 9187 587 | 59331 9225 588 | 59239 9229 589 | 59080 9239 590 | 59249 9240 591 | 59505 9240 592 | 59408 9249 593 | 59299 9294 594 | 58928 9299 595 | 59335 9331 596 | 59229 9335 597 | 5 9341 598 | 59396 9343 599 | 3 9390 600 | 50974 9396 601 | 50975 9400 602 | 59294 9400 603 | 50976 9404 604 | 50977 9408 605 | 59441 9436 606 | 59441 9494 607 | 59494 9505 608 | --------------------------------------------------------------------------------