summaryrefslogtreecommitdiff
path: root/Windows/spice
diff options
context:
space:
mode:
Diffstat (limited to 'Windows/spice')
-rw-r--r--Windows/spice/ReleaseNotes.txt27
-rw-r--r--Windows/spice/bin/libfftw3-3.dllbin0 -> 2365756 bytes
-rw-r--r--Windows/spice/bin/ngspice.exebin0 -> 4744192 bytes
-rw-r--r--Windows/spice/bin/vcomp100.dllbin0 -> 51024 bytes
-rw-r--r--Windows/spice/doc/ANALYSES115
-rw-r--r--Windows/spice/doc/AUTHORS76
-rw-r--r--Windows/spice/doc/BUGS38
-rw-r--r--Windows/spice/doc/COPYING613
-rw-r--r--Windows/spice/doc/DEVICES854
-rw-r--r--Windows/spice/doc/FAQ376
-rw-r--r--Windows/spice/doc/INSTALL699
-rw-r--r--Windows/spice/doc/NEWS578
-rw-r--r--Windows/spice/doc/README54
-rw-r--r--Windows/spice/doc/ngspice26-manual.pdfbin0 -> 2141771 bytes
-rw-r--r--Windows/spice/examples/Monte_Carlo/MC_2_circ.sp109
-rw-r--r--Windows/spice/examples/Monte_Carlo/MC_2_control.sp43
-rw-r--r--Windows/spice/examples/Monte_Carlo/MC_ring.sp251
-rw-r--r--Windows/spice/examples/Monte_Carlo/MonteCarlo.sp68
-rw-r--r--Windows/spice/examples/Monte_Carlo/OpWien.sp87
-rw-r--r--Windows/spice/examples/TransImpedanceAmp/README41
-rw-r--r--Windows/spice/examples/TransImpedanceAmp/output.net454
-rw-r--r--Windows/spice/examples/TransmissionLines/cpl1_4_line.sp63
-rw-r--r--Windows/spice/examples/TransmissionLines/cpl2_2_line.sp46
-rw-r--r--Windows/spice/examples/TransmissionLines/cpl3_4_line.sp37
-rw-r--r--Windows/spice/examples/TransmissionLines/cpl4_txl_2_line.sp378
-rw-r--r--Windows/spice/examples/TransmissionLines/cpl_ibm1.sp82
-rw-r--r--Windows/spice/examples/TransmissionLines/cpl_ibm2.sp22
-rw-r--r--Windows/spice/examples/TransmissionLines/cpl_ibm3.sp70
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra1_1_line.sp19
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra1_4_line.sp144
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra2_2_line.sp24
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra3_2_line.sp98
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra4_1_line.sp239
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra5_1_line.sp530
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra6_2_line.sp394
-rw-r--r--Windows/spice/examples/TransmissionLines/ltra7_4_line.sp113
-rw-r--r--Windows/spice/examples/TransmissionLines/txl1_1_line.sp18
-rw-r--r--Windows/spice/examples/TransmissionLines/txl2_3_line.sp26
-rw-r--r--Windows/spice/examples/TransmissionLines/txl3_1_line.sp236
-rw-r--r--Windows/spice/examples/TransmissionLines/txl4_1_line.sp523
-rw-r--r--Windows/spice/examples/cider/bicmos/bicmos.lib127
-rw-r--r--Windows/spice/examples/cider/bicmos/bicmpd.cir26
-rw-r--r--Windows/spice/examples/cider/bjt/astable.cir34
-rw-r--r--Windows/spice/examples/cider/bjt/colposc.cir33
-rw-r--r--Windows/spice/examples/cider/bjt/ecp.cir57
-rw-r--r--Windows/spice/examples/cider/bjt/invchain.cir38
-rw-r--r--Windows/spice/examples/cider/bjt/meclgate.cir74
-rw-r--r--Windows/spice/examples/cider/bjt/pebjt.lib71
-rw-r--r--Windows/spice/examples/cider/bjt/pz.cir16
-rw-r--r--Windows/spice/examples/cider/bjt/rtlinv.cir29
-rw-r--r--Windows/spice/examples/cider/bjt/vco.cir45
-rw-r--r--Windows/spice/examples/cider/diode/diode.cir35
-rw-r--r--Windows/spice/examples/cider/diode/diotran.cir31
-rw-r--r--Windows/spice/examples/cider/diode/pindiode.cir42
-rw-r--r--Windows/spice/examples/cider/jfet/jfet.cir36
-rw-r--r--Windows/spice/examples/cider/mos/bootinv.cir59
-rw-r--r--Windows/spice/examples/cider/mos/charge.cir57
-rw-r--r--Windows/spice/examples/cider/mos/cmosinv.cir115
-rw-r--r--Windows/spice/examples/cider/mos/nmosinv.cir55
-rw-r--r--Windows/spice/examples/cider/mos/pass.cir59
-rw-r--r--Windows/spice/examples/cider/mos/ringosc.cir122
-rw-r--r--Windows/spice/examples/cider/parallel/BICMOS.LIB931
-rw-r--r--Windows/spice/examples/cider/parallel/bicmpd.cir26
-rw-r--r--Windows/spice/examples/cider/parallel/bicmpu.cir24
-rw-r--r--Windows/spice/examples/cider/parallel/clkfeed.cir34
-rw-r--r--Windows/spice/examples/cider/parallel/cmosamp.cir29
-rw-r--r--Windows/spice/examples/cider/parallel/eclinv.cir30
-rw-r--r--Windows/spice/examples/cider/parallel/ecpal.cir19
-rw-r--r--Windows/spice/examples/cider/parallel/foobar10
-rw-r--r--Windows/spice/examples/cider/parallel/gmamp.cir34
-rw-r--r--Windows/spice/examples/cider/parallel/latch.cir46
-rw-r--r--Windows/spice/examples/cider/parallel/ppef.1d.cir25
-rw-r--r--Windows/spice/examples/cider/parallel/ppef.2d.cir25
-rw-r--r--Windows/spice/examples/cider/parallel/readme3
-rw-r--r--Windows/spice/examples/cider/parallel/ringosc.1u.cir39
-rw-r--r--Windows/spice/examples/cider/parallel/ringosc.2u.cir114
-rw-r--r--Windows/spice/examples/cider/resistor/gaasres.cir30
-rw-r--r--Windows/spice/examples/cider/resistor/sires.cir26
-rw-r--r--Windows/spice/examples/cider/serial/astable.cir30
-rw-r--r--Windows/spice/examples/cider/serial/charge.cir53
-rw-r--r--Windows/spice/examples/cider/serial/colposc.cir29
-rw-r--r--Windows/spice/examples/cider/serial/dbridge.cir30
-rw-r--r--Windows/spice/examples/cider/serial/invchain.cir34
-rw-r--r--Windows/spice/examples/cider/serial/meclgate.cir70
-rw-r--r--Windows/spice/examples/cider/serial/nmosinv.cir51
-rw-r--r--Windows/spice/examples/cider/serial/pass.cir55
-rw-r--r--Windows/spice/examples/cider/serial/pullup.cir67
-rw-r--r--Windows/spice/examples/cider/serial/readme3
-rw-r--r--Windows/spice/examples/cider/serial/recovery.cir40
-rw-r--r--Windows/spice/examples/cider/serial/rtlinv.cir25
-rw-r--r--Windows/spice/examples/cider/serial/vco.cir41
-rw-r--r--Windows/spice/examples/control_structs/foreach_bjt_ft.sp51
-rw-r--r--Windows/spice/examples/control_structs/new-check-3.sp96
-rw-r--r--Windows/spice/examples/control_structs/new-check-4.sp111
-rw-r--r--Windows/spice/examples/control_structs/repeat3.sp148
-rw-r--r--Windows/spice/examples/control_structs/s-param.cir120
-rw-r--r--Windows/spice/examples/measure/func_cap.sp15
-rw-r--r--Windows/spice/examples/measure/inv-meas-tran-auto.sp103
-rw-r--r--Windows/spice/examples/measure/inv-meas-tran-control.sp113
-rw-r--r--Windows/spice/examples/measure/inv-meas-tran.sp104
-rw-r--r--Windows/spice/examples/measure/inv-meas-tran_oc.sp98
-rw-r--r--Windows/spice/examples/measure/mos-meas-dc-control.sp49
-rw-r--r--Windows/spice/examples/measure/mos-meas-dc.sp37
-rw-r--r--Windows/spice/examples/measure/rc-meas-ac-control.sp64
-rw-r--r--Windows/spice/examples/measure/rc-meas-ac.sp54
-rw-r--r--Windows/spice/examples/measure/simple-meas-tran.sp57
-rw-r--r--Windows/spice/examples/memristor/memristor.sp65
-rw-r--r--Windows/spice/examples/memristor/memristor_x.sp83
-rw-r--r--Windows/spice/examples/numparam/example.cir16
-rw-r--r--Windows/spice/examples/numparam/pin.mod33
-rw-r--r--Windows/spice/examples/numparam/pintest.cir32
-rw-r--r--Windows/spice/examples/pss/colpitt_osc_pss.cir22
-rw-r--r--Windows/spice/examples/pss/compl_cross_quad_osc_pss.cir35
-rw-r--r--Windows/spice/examples/pss/hartley_osc_pss.cir21
-rw-r--r--Windows/spice/examples/pss/ring_osc_pss.cir29
-rw-r--r--Windows/spice/examples/pss/vackar_osc_pss.cir21
-rw-r--r--Windows/spice/examples/pss/vdp_osc_pss.cir17
-rw-r--r--Windows/spice/examples/snapshot/adder_mos.cir26
-rw-r--r--Windows/spice/examples/snapshot/adder_mos_circ.cir61
-rw-r--r--Windows/spice/examples/snapshot/adder_snload.script15
-rw-r--r--Windows/spice/examples/transient-noise/README15
-rw-r--r--Windows/spice/examples/transient-noise/modelcard.nmos41
-rw-r--r--Windows/spice/examples/transient-noise/modelcard.pmos31
-rw-r--r--Windows/spice/examples/transient-noise/noi-ring51-demo.cir59
-rw-r--r--Windows/spice/examples/transient-noise/noi-sc-tr.cir53
-rw-r--r--Windows/spice/examples/transient-noise/noilib-demo.h56
-rw-r--r--Windows/spice/examples/transient-noise/noise_vnoi.cir31
-rw-r--r--Windows/spice/examples/transient-noise/rts-1.cir29
-rw-r--r--Windows/spice/examples/transient-noise/shot_ng.cir27
-rw-r--r--Windows/spice/examples/various/FFT_Leakage.cir53
-rw-r--r--Windows/spice/examples/various/FFT_tests.cir123
-rw-r--r--Windows/spice/examples/various/adder_mos.cir79
-rw-r--r--Windows/spice/examples/various/agauss_test.cir48
-rw-r--r--Windows/spice/examples/various/gain_stage.cir34
-rw-r--r--Windows/spice/examples/various/modelcard.nmos34
-rw-r--r--Windows/spice/examples/various/modelcard.pmos29
-rw-r--r--Windows/spice/examples/various/nic_soa.cir39
-rw-r--r--Windows/spice/examples/various/param_sweep.cir29
-rw-r--r--Windows/spice/examples/xspice/analog_models1_transient.sp65
-rw-r--r--Windows/spice/examples/xspice/delta-sigma/README25
-rw-r--r--Windows/spice/examples/xspice/delta-sigma/count-latch-dac.cir81
-rw-r--r--Windows/spice/examples/xspice/delta-sigma/counter-test.cir42
-rw-r--r--Windows/spice/examples/xspice/delta-sigma/delta-sigma-1.cir106
-rw-r--r--Windows/spice/examples/xspice/delta-sigma/delta-sigma-oc.cir95
-rw-r--r--Windows/spice/examples/xspice/delta-sigma/mod1-ct-test.cir52
-rw-r--r--Windows/spice/examples/xspice/delta-sigma/mod1-ct.cir46
-rw-r--r--Windows/spice/examples/xspice/fstest.sp26
-rw-r--r--Windows/spice/examples/xspice/pll/README39
-rw-r--r--Windows/spice/examples/xspice/pll/f-p-det-d-sub.cir16
-rw-r--r--Windows/spice/examples/xspice/pll/loop-filter-2.cir50
-rw-r--r--Windows/spice/examples/xspice/pll/loop-filter.cir31
-rw-r--r--Windows/spice/examples/xspice/pll/pll-xspice-fstep.cir165
-rw-r--r--Windows/spice/examples/xspice/pll/pll-xspice.cir144
-rw-r--r--Windows/spice/examples/xspice/pll/pll-xspice_oc.cir142
-rw-r--r--Windows/spice/examples/xspice/pll/test-f-p-det.cir114
-rw-r--r--Windows/spice/examples/xspice/pll/test_vco.cir158
-rw-r--r--Windows/spice/examples/xspice/pll/vco_sub.cir67
-rw-r--r--Windows/spice/examples/xspice/pll/vco_sub_new.cir30
-rw-r--r--Windows/spice/examples/xspice/sine.m264
-rw-r--r--Windows/spice/examples/xspice/xspice_c1.cir22
-rw-r--r--Windows/spice/examples/xspice/xspice_c2.cir16
-rw-r--r--Windows/spice/examples/xspice/xspice_c3.cir97
-rw-r--r--Windows/spice/how-to-use-ngspice140111.txt359
-rw-r--r--Windows/spice/lib/ngspice/analog.cmbin0 -> 98816 bytes
-rw-r--r--Windows/spice/lib/ngspice/digital.cmbin0 -> 102912 bytes
-rw-r--r--Windows/spice/lib/ngspice/spice2poly.cmbin0 -> 15360 bytes
-rw-r--r--Windows/spice/lib/ngspice/xtradev.cmbin0 -> 39424 bytes
-rw-r--r--Windows/spice/lib/ngspice/xtraevt.cmbin0 -> 20480 bytes
-rw-r--r--Windows/spice/share/man/man1/ngmultidec.1105
-rw-r--r--Windows/spice/share/man/man1/ngnutmeg.183
-rw-r--r--Windows/spice/share/man/man1/ngsconvert.1126
-rw-r--r--Windows/spice/share/man/man1/ngspice.1152
-rw-r--r--Windows/spice/share/ngspice/scripts/ciderinit23
-rw-r--r--Windows/spice/share/ngspice/scripts/devaxis69
-rw-r--r--Windows/spice/share/ngspice/scripts/devload21
-rw-r--r--Windows/spice/share/ngspice/scripts/setplot64
-rw-r--r--Windows/spice/share/ngspice/scripts/spectrum165
-rw-r--r--Windows/spice/share/ngspice/scripts/spinit31
-rw-r--r--Windows/spice/tests/.gitignore8
-rw-r--r--Windows/spice/tests/ChangeLog23
-rw-r--r--Windows/spice/tests/Makefile.am50
-rw-r--r--Windows/spice/tests/Makefile.in644
-rw-r--r--Windows/spice/tests/README28
-rw-r--r--Windows/spice/tests/bsim1/Makefile.am12
-rw-r--r--Windows/spice/tests/bsim1/Makefile.in514
-rw-r--r--Windows/spice/tests/bsim1/test.cir108
-rw-r--r--Windows/spice/tests/bsim2/Makefile.am12
-rw-r--r--Windows/spice/tests/bsim2/Makefile.in514
-rw-r--r--Windows/spice/tests/bsim2/test.cir80
-rw-r--r--Windows/spice/tests/bsim3/Makefile.am5
-rw-r--r--Windows/spice/tests/bsim3/Makefile.in609
-rw-r--r--Windows/spice/tests/bsim3/ac_sim/Makefile.am13
-rw-r--r--Windows/spice/tests/bsim3/ac_sim/Makefile.in514
-rw-r--r--Windows/spice/tests/bsim3/ac_sim/gain-stage.cir17
-rw-r--r--Windows/spice/tests/bsim3/ac_sim/op-amp.cir37
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/Makefile.am28
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/Makefile.in529
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/modelcard.nmos41
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/modelcard.pmos31
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test1.cir21
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test10.cir19
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test11.cir17
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test12.cir17
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test13.cir18
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test14.cir19
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test2.cir21
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test3.cir21
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test4.cir20
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test5.cir22
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test6.cir17
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test7.cir20
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test8.cir19
-rw-r--r--Windows/spice/tests/bsim3/dc_sim/test9.cir19
-rw-r--r--Windows/spice/tests/bsim3/tran_sim/Makefile.am13
-rw-r--r--Windows/spice/tests/bsim3/tran_sim/Makefile.in514
-rw-r--r--Windows/spice/tests/bsim3/tran_sim/comparator.cir40
-rw-r--r--Windows/spice/tests/bsim3/tran_sim/one-shot.cir53
-rw-r--r--Windows/spice/tests/bsim3soidd/Makefile.am20
-rw-r--r--Windows/spice/tests/bsim3soidd/Makefile.in516
-rw-r--r--Windows/spice/tests/bsim3soidd/RampVg2.cir19
-rw-r--r--Windows/spice/tests/bsim3soidd/inv2.cir17
-rw-r--r--Windows/spice/tests/bsim3soidd/lib.h110
-rw-r--r--Windows/spice/tests/bsim3soidd/nmosdd.mod39
-rw-r--r--Windows/spice/tests/bsim3soidd/pmosdd.mod39
-rw-r--r--Windows/spice/tests/bsim3soidd/ring51.cir23
-rw-r--r--Windows/spice/tests/bsim3soidd/t3.cir18
-rw-r--r--Windows/spice/tests/bsim3soidd/t4.cir17
-rw-r--r--Windows/spice/tests/bsim3soidd/t5.cir16
-rw-r--r--Windows/spice/tests/bsim3soifd/Makefile.am20
-rw-r--r--Windows/spice/tests/bsim3soifd/Makefile.in516
-rw-r--r--Windows/spice/tests/bsim3soifd/RampVg2.cir19
-rw-r--r--Windows/spice/tests/bsim3soifd/inv2.cir17
-rw-r--r--Windows/spice/tests/bsim3soifd/lib.h110
-rw-r--r--Windows/spice/tests/bsim3soifd/nmosfd.mod39
-rw-r--r--Windows/spice/tests/bsim3soifd/pmosfd.mod39
-rw-r--r--Windows/spice/tests/bsim3soifd/ring51.cir23
-rw-r--r--Windows/spice/tests/bsim3soifd/t3.cir18
-rw-r--r--Windows/spice/tests/bsim3soifd/t4.cir17
-rw-r--r--Windows/spice/tests/bsim3soifd/t5.cir16
-rw-r--r--Windows/spice/tests/bsim3soipd/Makefile.am20
-rw-r--r--Windows/spice/tests/bsim3soipd/Makefile.in516
-rw-r--r--Windows/spice/tests/bsim3soipd/RampVg2.cir20
-rw-r--r--Windows/spice/tests/bsim3soipd/inv2.cir17
-rw-r--r--Windows/spice/tests/bsim3soipd/lib.h110
-rw-r--r--Windows/spice/tests/bsim3soipd/nmospd.mod40
-rw-r--r--Windows/spice/tests/bsim3soipd/pmospd.mod40
-rw-r--r--Windows/spice/tests/bsim3soipd/ring51.cir26
-rw-r--r--Windows/spice/tests/bsim3soipd/t3.cir18
-rw-r--r--Windows/spice/tests/bsim3soipd/t4.cir18
-rw-r--r--Windows/spice/tests/bsim3soipd/t5.cir16
-rw-r--r--Windows/spice/tests/filters/Makefile.am12
-rw-r--r--Windows/spice/tests/filters/Makefile.in514
-rw-r--r--Windows/spice/tests/filters/lowpass.cir13
-rw-r--r--Windows/spice/tests/general/Makefile.am20
-rw-r--r--Windows/spice/tests/general/Makefile.in521
-rw-r--r--Windows/spice/tests/general/diffpair.cir31
-rw-r--r--Windows/spice/tests/general/fourbitadder.cir79
-rw-r--r--Windows/spice/tests/general/mosamp.cir46
-rw-r--r--Windows/spice/tests/general/mosmem.cir31
-rw-r--r--Windows/spice/tests/general/rc.cir11
-rw-r--r--Windows/spice/tests/general/rca3040.cir34
-rw-r--r--Windows/spice/tests/general/rtlinv.cir24
-rw-r--r--Windows/spice/tests/general/schmitt.cir28
-rw-r--r--Windows/spice/tests/hfet/Makefile.am14
-rw-r--r--Windows/spice/tests/hfet/Makefile.in515
-rw-r--r--Windows/spice/tests/hfet/id_vgs.cir14
-rw-r--r--Windows/spice/tests/hfet/inverter.cir29
-rw-r--r--Windows/spice/tests/jfet/Makefile.am12
-rw-r--r--Windows/spice/tests/jfet/Makefile.in512
-rw-r--r--Windows/spice/tests/jfet/jfet_vds-vgs.cir14
-rw-r--r--Windows/spice/tests/mes/Makefile.am12
-rw-r--r--Windows/spice/tests/mes/Makefile.in512
-rw-r--r--Windows/spice/tests/mes/subth.cir17
-rw-r--r--Windows/spice/tests/mesa/Makefile.am22
-rw-r--r--Windows/spice/tests/mesa/Makefile.in519
-rw-r--r--Windows/spice/tests/mesa/mesa-12.cir23
-rw-r--r--Windows/spice/tests/mesa/mesa.cir16
-rw-r--r--Windows/spice/tests/mesa/mesa11.cir18
-rw-r--r--Windows/spice/tests/mesa/mesa12.cir17
-rw-r--r--Windows/spice/tests/mesa/mesa13.cir16
-rw-r--r--Windows/spice/tests/mesa/mesa14.cir19
-rw-r--r--Windows/spice/tests/mesa/mesa15.cir17
-rw-r--r--Windows/spice/tests/mesa/mesa21.cir19
-rw-r--r--Windows/spice/tests/mesa/mesgout.cir37
-rw-r--r--Windows/spice/tests/mesa/mesinv.cir49
-rw-r--r--Windows/spice/tests/mesa/mesosc.cir41
-rw-r--r--Windows/spice/tests/mos6/Makefile.am14
-rw-r--r--Windows/spice/tests/mos6/Makefile.in515
-rw-r--r--Windows/spice/tests/mos6/mos6inv.cir107
-rw-r--r--Windows/spice/tests/mos6/simpleinv.cir45
-rw-r--r--Windows/spice/tests/polezero/Makefile.am17
-rw-r--r--Windows/spice/tests/polezero/Makefile.in519
-rw-r--r--Windows/spice/tests/polezero/filt_bridge_t.cir13
-rw-r--r--Windows/spice/tests/polezero/filt_multistage.cir14
-rw-r--r--Windows/spice/tests/polezero/filt_rc.cir8
-rw-r--r--Windows/spice/tests/polezero/pz2.cir25
-rw-r--r--Windows/spice/tests/polezero/pzt.cir25
-rw-r--r--Windows/spice/tests/polezero/simplepz.cir8
-rw-r--r--Windows/spice/tests/regression/Makefile.am5
-rw-r--r--Windows/spice/tests/regression/Makefile.in609
-rw-r--r--Windows/spice/tests/regression/lib-processing/Makefile.am13
-rw-r--r--Windows/spice/tests/regression/lib-processing/Makefile.in513
-rw-r--r--Windows/spice/tests/regression/lib-processing/ex1.lib9
-rw-r--r--Windows/spice/tests/regression/lib-processing/ex1a.cir29
-rw-r--r--Windows/spice/tests/regression/lib-processing/ex1b.cir33
-rw-r--r--Windows/spice/tests/regression/lib-processing/ex2.lib28
-rw-r--r--Windows/spice/tests/regression/lib-processing/ex2a.cir33
-rw-r--r--Windows/spice/tests/regression/lib-processing/ex3.lib18
-rw-r--r--Windows/spice/tests/regression/lib-processing/ex3a.cir33
-rw-r--r--Windows/spice/tests/regression/lib-processing/extra3.lib9
-rw-r--r--Windows/spice/tests/regression/parser/Makefile.am12
-rw-r--r--Windows/spice/tests/regression/parser/Makefile.in512
-rw-r--r--Windows/spice/tests/regression/parser/minus-minus.cir36
-rw-r--r--Windows/spice/tests/regression/parser/xpressn-1.cir425
-rw-r--r--Windows/spice/tests/regression/parser/xpressn-2.cir261
-rw-r--r--Windows/spice/tests/regression/subckt-processing/Makefile.am12
-rw-r--r--Windows/spice/tests/regression/subckt-processing/Makefile.in512
-rw-r--r--Windows/spice/tests/regression/subckt-processing/model-scope-5.cir84
-rw-r--r--Windows/spice/tests/resistance/Makefile.am14
-rw-r--r--Windows/spice/tests/resistance/Makefile.in516
-rw-r--r--Windows/spice/tests/resistance/res_array.cir28
-rw-r--r--Windows/spice/tests/resistance/res_partition.cir11
-rw-r--r--Windows/spice/tests/resistance/res_simple.cir10
-rw-r--r--Windows/spice/tests/sensitivity/Makefile.am12
-rw-r--r--Windows/spice/tests/sensitivity/Makefile.in512
-rw-r--r--Windows/spice/tests/sensitivity/diffpair.cir33
-rw-r--r--Windows/spice/tests/transient/Makefile.am12
-rw-r--r--Windows/spice/tests/transient/Makefile.in512
-rw-r--r--Windows/spice/tests/transient/fourbitadder.cir79
-rw-r--r--Windows/spice/tests/transmission/Makefile.am18
-rw-r--r--Windows/spice/tests/transmission/Makefile.in519
-rw-r--r--Windows/spice/tests/transmission/cpl3_4_line.cir36
-rw-r--r--Windows/spice/tests/transmission/cpl_ibm2.cir19
-rw-r--r--Windows/spice/tests/transmission/ltra1_1_line.cir18
-rw-r--r--Windows/spice/tests/transmission/ltra2_2_line.cir23
-rw-r--r--Windows/spice/tests/transmission/txl1_1_line.cir17
-rw-r--r--Windows/spice/tests/transmission/txl2_3_line.cir25
-rw-r--r--Windows/spice/tests/vbic/CEamp.cir27
-rw-r--r--Windows/spice/tests/vbic/FG.cir17
-rw-r--r--Windows/spice/tests/vbic/FO.cir20
-rw-r--r--Windows/spice/tests/vbic/Makefile.am19
-rw-r--r--Windows/spice/tests/vbic/Makefile.in518
-rw-r--r--Windows/spice/tests/vbic/diffamp.cir47
-rw-r--r--Windows/spice/tests/vbic/noise_scale_test.cir27
-rw-r--r--Windows/spice/tests/vbic/temp.cir19
-rw-r--r--Windows/spice/tests/xspice/Makefile.am5
-rw-r--r--Windows/spice/tests/xspice/Makefile.in609
-rw-r--r--Windows/spice/tests/xspice/digital/Makefile.am18
-rw-r--r--Windows/spice/tests/xspice/digital/Makefile.in523
-rw-r--r--Windows/spice/tests/xspice/digital/d_ram-stimulus.txt36
-rw-r--r--Windows/spice/tests/xspice/digital/d_ram.cir24
-rw-r--r--Windows/spice/tests/xspice/digital/d_source-stimulus.txt13
-rw-r--r--Windows/spice/tests/xspice/digital/d_source.cir19
-rw-r--r--Windows/spice/tests/xspice/digital/d_state-stimulus.txt4
-rw-r--r--Windows/spice/tests/xspice/digital/d_state-updn.txt16
-rw-r--r--Windows/spice/tests/xspice/digital/d_state.cir35
-rw-r--r--Windows/spice/tests/xspice/digital/spinit.in3
357 files changed, 36229 insertions, 0 deletions
diff --git a/Windows/spice/ReleaseNotes.txt b/Windows/spice/ReleaseNotes.txt
new file mode 100644
index 00000000..3b02bb95
--- /dev/null
+++ b/Windows/spice/ReleaseNotes.txt
@@ -0,0 +1,27 @@
+Release Notes for ngspice-26:
+
+- New features:
+ + fft command may (optionally) use fftw3 library
+ + add nint() rounding function
+ + usage of 'temper' in behavioral devices
+ + check for soa (safe operating area) in several device models
+ + library processing rewritten completely to enhance ngspice
+ compatibility (.lib)
+ + include file processing rewritten to allow nesting and various
+ absolute and relative path names (.inc)
+ + asinh, acosh, atanh functions
+ + shared ngspice option added: ngspice optionally compiles as
+ a shared object or dynamic link library
+ + use a hash table to massively speed up parsing the netlist
+ + implement a very basic .if/.else block
+ + implement a signed power function `pwr' for controlled sources
+ + implement multiplier `m' in F, G source
+ + apply Area Calculation Method (ACM) to the bsim3v3.3 model
+ + implement `tc1', `tc2' instance parameters
+
+- Bug fixes:
+ + many, many ... please see
+ http://sourceforge.net/p/ngspice/ngspice/ci/master/tree/
+ and check the 'history' button on the upper right.
+ + removed memory leaks
+ \ No newline at end of file
diff --git a/Windows/spice/bin/libfftw3-3.dll b/Windows/spice/bin/libfftw3-3.dll
new file mode 100644
index 00000000..a8f033a1
--- /dev/null
+++ b/Windows/spice/bin/libfftw3-3.dll
Binary files differ
diff --git a/Windows/spice/bin/ngspice.exe b/Windows/spice/bin/ngspice.exe
new file mode 100644
index 00000000..e5841140
--- /dev/null
+++ b/Windows/spice/bin/ngspice.exe
Binary files differ
diff --git a/Windows/spice/bin/vcomp100.dll b/Windows/spice/bin/vcomp100.dll
new file mode 100644
index 00000000..e23321c1
--- /dev/null
+++ b/Windows/spice/bin/vcomp100.dll
Binary files differ
diff --git a/Windows/spice/doc/ANALYSES b/Windows/spice/doc/ANALYSES
new file mode 100644
index 00000000..5b715be9
--- /dev/null
+++ b/Windows/spice/doc/ANALYSES
@@ -0,0 +1,115 @@
+12345678901234567890123456789012345678901234567890123456789012345678901234567890
+
+ANALYSES
+========
+
+This file lists the analyses currently implemented into ngspice.
+
+Table of Contents
+
+ 1 Noise analysis (NOISE)
+ 1.1 Small signal noise
+ 1.2 Transient noise
+ 2 Operating point analysis (OP)
+ 3 Operating point sweep Analysis (DC)
+ 4 Pole-zero analysis (PZ)
+ 5 Small-Signal distortion analysis (DISTO)
+ 6 Small Signal frequency response analysis (AC)
+ 7 Sensitivity analysis (SENS)
+ 8 Transfer function analysis (TF)
+ 9 Transient analysis (TRAN)
+ 10 Periodic steady state analysis (PSS, experimental feature)
+
+
+
+1 Noise analysis (NOISE)
+
+ 1.1 Small signal noise
+
+ The noise analysis does analysis device-generated noise for the given
+ circuit. When provided with an input source and an output port, the analysis
+ calculates the noise contributions of each device (and each noise generator
+ within the device) to the output port voltage. It also calculates the input
+ noise to the circuit, equivalent to the output noise referred to the
+ specified input source. This is done for every frequency point in a specified
+ range - the calculated value of the noise corresponds to the spectral density
+ of the circuit variable viewed as a stationary gaussian stochastic process.
+
+ 1.2 Transient noise
+
+ Time domain noise analysis during transient simulation is enabled by
+ providing voltage (and current) source options with white, 1/f and
+ random telegraph signal noise signals.
+
+
+2 Operating point analysis (OP)
+
+ The operating point analysis determines the dc operating point of the
+ circuit with inductors shorted and capacitors opened.
+
+
+3 Operating point sweep Analysis (DC)
+
+ The operating point sweep analysis determines the values of output
+ variables while one or two specified independent voltage or current source is
+ stepped over a user-specified range and the dc output variables are stored
+ for each sequential source value. Resistance and temperature sweep are
+ included.
+
+
+4 Pole-zero analysis (PZ)
+
+ The pole-zero analysis computes the poles and/or zeros in the small-signal
+ ac transfer function. The program first computes the dc operating point and
+ then determines the linearized, small-signal models for all the nonlinear
+ devices in the circuit. This circuit is then used to find the poles and zeros
+ of the transfer function. Unfortunately this code is (since its inception in
+ spice3) not free of bugs.
+
+
+5 Small-Signal distortion analysis (DISTO)
+
+ The distortion analysis computes steady-state harmonic and intermodulation
+ products for small input signal magnitudes. Not all devices are supported.
+
+
+6 Small Signal frequency response analysis (AC)
+
+ The ac small-signal computes the ac output variables as a function of
+ frequency. The program first computes the dc operating point of the circuit
+ and determines linearized, small-signal models for all of the nonlinear
+ devices in the circuit. The resultant linear circuit is then analyzed over a
+ user-specified range of frequencies.
+
+
+7 Sensitivity analysis (SENS)
+
+ Ngspice will calculate either the DC operating-point sensitivity or the AC
+ small-signal sensitivity of an output variable with respect to all circuit
+ variables, including model parameters. Spice calculates the difference in an
+ output variable (either a node voltage or a branch current) by perturbing
+ each parameter of each device independently.
+
+
+8 Transfer function analysis (TF)
+
+ The (small signal) transfer function analysis computes the dc small-signal
+ value of a transfer function (ratio of output variable to input source),
+ input resistance, and output resistance is also computed as a part of the dc
+ solution.
+
+
+9 Transient analysis (TRAN)
+
+ The transient analysis computes the transient output variables as a
+ function of time over a user-specified time interval. The initial conditions
+ are automatically determined by a dc analysis. All sources which are not time
+ dependent (for example, power supplies) are set to their dc value.
+
+
+10 Periodic steady state analysis (PSS)
+
+ The periodic steady state analysis computes solutions for oscillating
+ circuits. Currently only the autonomous case is implemented.
+
+
diff --git a/Windows/spice/doc/AUTHORS b/Windows/spice/doc/AUTHORS
new file mode 100644
index 00000000..e13a65ad
--- /dev/null
+++ b/Windows/spice/doc/AUTHORS
@@ -0,0 +1,76 @@
+@c This file will be processed with texinfo.
+
+Spice was originally written at The University of California at Berkeley (USA).
+Since then, there have been many people working on the software, most of them
+releasing patches to the original code through the Internet.
+
+
+The following people have contributed in some way:
+
+Vera Albrecht,
+Cecil Aswell,
+Giles C. Billingsley,
+Phil Barker,
+Steven Borley,
+Krzysztof Blaszkowski,
+Stuart Brorson,
+Mansun Chan,
+Wayne A. Christopher,
+Al Davis,
+Glao S. Dezai,
+Jon Engelbert,
+Daniele Foci,
+Henrik Forstén,
+Noah Friedman,
+David A. Gates,
+Alan Gillespie,
+John Heidemann,
+Jeffrey M. Hsu,
+JianHui Huang,
+S. Hwang,
+Chris Inbody,
+Gordon M. Jacobs,
+Min-Chie Jeng,
+Beorn Johnson,
+Stefan Jones,
+Kenneth H. Keller,
+Francesco Lannutti,
+Robert Larice,
+Mathew Lew,
+Robert Lindsell,
+Weidong Liu,
+Kartikeya Mayaram,
+Richard D. McRoberts,
+Manfred Metzger,
+Wolfgang Muees,
+Paolo Nenzi,
+Gary W. Ng,
+Hong June Park,
+Arno Peters,
+Stefano Perticaroli,
+Serban-Mihai Popescu,
+Georg Post,
+Thomas L. Quarles,
+Emmanuel Rouat,
+Jean-Marc Routure,
+Jaijeet S. Roychowdhury,
+Lionel Sainte Cluque,
+Takayasu Sakurai,
+AMAKAWA Shuhei,
+Kanwar Jit Singh,
+Bill Swartz,
+Hitoshi Tanaka,
+Steve Tell,
+Andrew Tuckey,
+Andreas Unger,
+Holger Vogt,
+Dietmar Warning,
+Michael Widlok,
+Charles D.H. Williams,
+Antony Wilson,
+and many others...
+
+If someone helped in the development and has not been inserted in this list
+then this omission was unintentional. If you feel you should be on this list
+then please write to <ngspice-devel@@lists.sourceforge.net>. Do not be shy, we
+would like to make a list as complete as possible.
diff --git a/Windows/spice/doc/BUGS b/Windows/spice/doc/BUGS
new file mode 100644
index 00000000..b338848f
--- /dev/null
+++ b/Windows/spice/doc/BUGS
@@ -0,0 +1,38 @@
+This file contains a list of known but not yet fixed bugs in ngspice.
+===========================================================================
+
+How to submit a bug report:
+
+There are two methods to report a bug you have discovered in ngspice:
+
+ * Bug tracker: This is the preferred method of reporting a bug.
+ Using the tracker on Sourceforge.net site will make your report
+ open by everyone and the chances of finding a fix will increase.
+
+ * ngspice-devel list: If you are a member of this list, you can write
+ directly to the developers' list. Do not subscribe to the list only
+ for sending bug reports.
+
+Before sending a bug report please note: all information you send to the bug
+tracking system or on the mailing lists is public. If you need to send
+sensitive information, send them to a developer directly but still write non
+sensitive data on the bug tracking system to keep track of bug history.
+
+* please refer to the sourceforge bug tracker at
+ http://sourceforge.net/p/ngspice/bugs/
+
+------------------------------------------------------------------------------
+OPEN BUGS:
+------------------------------------------------------------------------------
+* pole-zero analysis
+
+ The pole-zero (.pz) analysis, which still uses the original spice3f5
+ algorithms, does not give correct results for all tested input files.
+ The effort to correct that issue seems to be large.
+
+
+* voltage (and current) controlled switches need better timing
+
+ The controlled switches (SW, CSW), which still stem from the original
+ spice3f5 implementation, sometimes lead to wrong results when on and off
+ ramp times differ considerably.
diff --git a/Windows/spice/doc/COPYING b/Windows/spice/doc/COPYING
new file mode 100644
index 00000000..e266da01
--- /dev/null
+++ b/Windows/spice/doc/COPYING
@@ -0,0 +1,613 @@
+12345678901234567890123456789012345678901234567890123456789012345678901234567890
+Ngspice 26
+Copyright (c) 2014,
+All rights reserved.
+
+
+Foreword:
+The name 'Spice' (Simulation Program with Integrated Circuit Emphasis)
+was originally chosen at the University of California, Berkeley. The
+original Berkeley code is covered under the modified BSD license and
+thus sets the basis for all other code added.
+As Spice is the basis of almost all circuit simulators, the major part of the
+analogue and mixed signals simulation's code is designed to fit with it.
+The *spices (generic name for its forks) are heterogeneous in many points due
+to the work of researchers, electronic designers, software editors, etc.
+The Ngspice team tries to collect work from the different sources and
+contribute new functionalities. Thus, the material we manipulate is
+heterogeneous in licenses. Keeping the licenses as is, but also keep it
+compatible with the new BSD license, is the way to live with that diversity.
+
+Copyleft is a fundamental question in FOSS development. The choice of a
+copylefted contribution, or a non copylefted contribution is an important
+choice that should be respected. Ngspice branch as a whole will not be covered
+by a specific license. The Ngspice team wants to encourage contributions to
+ngspice. We let each new developer choose its position regarding copyleft,
+as we respect the position of the former developers. In order to keep things
+clear ngspice team proposes to follow the following guidelines:
+
+ Each piece of code should be kept under its original contributor's license.
+ As for any project, modifications made in sources covered by a less
+ restrictive license can be covered by a more restrictive license than new BSD.
+ We do not encourage it.
+
+ If you feel to add code in a file under a different license than the rest of
+ the file, please use comments to mark the boundaries of the modification, and
+ edit the comments at the beginning of the file with correct license and
+ copyright information.
+
+ We encourage restrictive licenses to be chosen only for new functionalities,
+ written in distinct files, leading to distinct libraries that link depending
+ on a specific configure flag.
+
+ We encourage non proliferation of licenses (e.g. choosing either LGPL or
+ new BSD). GPL is not suitable for code to be directly linked into ngspice,
+ but may be used in shared object libraries only.
+
+This heterogeneous license status requires some effort to keep track on licenses
+applied. Please take care of knowing which license applies to the code you are
+editing, or conveying and not to commit license infringements, especially to
+GPL and LGPL which are quite restrictive.
+
+On 2007, July 17th spice 3f5 changed from its original license to the new BSD
+license. (http://embedded.eecs.berkeley.edu/pubs/downloads/spice/index.htm)
+
+On 2008, December 1st, tclspice changes license from GPL to LGPLv2, in
+accordance with Multigig Ltd, the copyright holder.
+
+The following table is just a reminder on license status, please don't rely
+on it:
+ Author License Notes
+
+numparam Georg Post LGPL Applies to the code in
+ frontend/numparam
+adms Laurent Lemaitre LGPL Applies to scripts in the
+ spicelib/dev/adms
+tclspice Stefan Jones LGPL TCL integration
+cider U. of California Old BSD Device level simulator
+xspice Georgia Tech. Public D Mixed signals
+spice U. of California New BSD Analog circuit simulation
+
+
+---------------------------------- Cider -----------------------------------
+
+ RESEARCH SOFTWARE AGREEMENT
+
+ This file specifies the terms under which the software and
+ documentation provided with this distribution are provided.
+
+ Software is distributed as is, completely without warranty
+ or service support. The University of California and its employ-
+ ees are not liable for the condition or performance of the
+ software.
+
+ The University does not warrant that it owns the copyright
+ or other proprietary rights to all software and documentation
+ provided under this agreement, notwithstanding any copyright
+ notice, and shall not be liable for any infringement of copyright
+ or proprietary rights brought by third parties against the reci-
+ pient of the software and documentation provided under this
+ agreement.
+
+ THE UNIVERSITY OF CALIFORNIA HEREBY DISCLAIMS ALL IMPLIED
+ WARRANTIES, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY
+ AND FITNESS FOR A PARTICULAR PURPOSE. THE UNIVERSITY IS NOT
+ LIABLE FOR ANY DAMAGES INCURRED BY THE RECIPIENT IN USE OF THE
+ SOFTWARE AND DOCUMENTATION, INCLUDING DIRECT, INDIRECT, SPECIAL,
+ INCIDENTAL, OR CONSEQUENTIAL DAMAGES.
+
+ The University of California grants the recipient the right
+ to modify, copy, and redistribute the software and documentation,
+ both within the recipient's organization and externally, subject
+ to the following restrictions:
+
+
+ (a) The recipient agrees not to charge for the University of
+ California code itself. The recipient may, however, charge
+ for additions, extensions, or support.
+
+ (b) In any product based on the software, the recipient agrees
+ to acknowledge the research group that developed the
+ software. This acknowledgement shall appear in the product
+ documentation.
+
+ (c) The recipient agrees to obey all U.S. Government restric-
+ tions governing redistribution or export of the software and
+ documentation.
+
+
+---------------------------------- Spice3f5 --------------------------------
+
+Copyright (c) 1985-1991 The Regents of the University of California.
+All rights reserved.
+
+Permission is hereby granted, without written agreement and without license
+or royalty fees, to use, copy, modify, and distribute this software and its
+documentation for any purpose, provided that the above copyright notice and
+the following two paragraphs appear in all copies of this software.
+
+IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
+DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
+OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
+CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN
+"AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO PROVIDE
+MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+-------------------------------- Tclspice --------------------------------
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+---------------------------------- Xspice --------------------------------
+THE SOFTWARE PROGRAMS BELOW ARE IN THE PUBLIC DOMAIN AND ARE PROVIDED FREE OF
+ANY CHARGE. THE GEORGIA TECH RESEARCH CORPORATION, THE GEORGIA INSTITUTE OF
+TECHNOLOGY, AND/OR OTHER PARTIES PROVIDE THIS SOFTWARE "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
+ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH THE USER.
+SHOULD THE PROGRAM PROVE DEFECTIVE, THE USER ASSUMES THE ENTIRE COST OF ALL
+NECESSARY SERVICING, REPAIR OR CORRECTION. IN NO EVENT WILL THE GEORGIA TECH
+RESEARCH CORPORATION, THE GEORGIA INSTITUTE OF TECHNOLOGY, AND/OR OTHER PARTIES
+PROVIDING THE PROGRAMS BELOW BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
+INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
+BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS).
diff --git a/Windows/spice/doc/DEVICES b/Windows/spice/doc/DEVICES
new file mode 100644
index 00000000..29c309e2
--- /dev/null
+++ b/Windows/spice/doc/DEVICES
@@ -0,0 +1,854 @@
+DEVICES
+=======
+
+Table of contents
+
+1. Introduction
+2. Linear Devices
+ 2.1 CAP - Linear capacitor
+ 2.2 IND - Linear inductor
+ 2.3 RES - Linear resistor
+3. Distributed Elements
+ 3.1 CPL - Simple Coupled Multiconductor Lines (Kspice)
+ 3.2 LTRA - Lossy Transmission line
+ 3.3 TRA - Transmission line
+ 3.4 TXL - Simple Lossy Transmission Line (Kspice)
+ 3.5 URC - Uniform distributed RC line
+4. Voltage and current sources
+ 4.1 ASRC - Arbitrary Source
+ 4.2 CCCS - Current Controlled Current Source
+ 4.3 CCVS - Current Controlled Voltage Source
+ 4.4 ISRC - Independent Current Source
+ 4.5 VCCS - Voltage Controlled Current Source
+ 4.6 VCVS - Voltage Controlled Voltage Source
+ 4.7 VSRC - Independent Voltage Source
+5. Switches
+ 5.1 CSW - Current controlled switch
+ 5.2 SW - Voltage controlled switch
+6. Diodes
+ 6.1 DIO - Junction Diode
+7. Bipolar devices
+ 7.1 BJT - Bipolar Junction Transistor
+ 7.2 BJT2 - Bipolar Junction Transistor
+ 7.3 VBIC - Bipolar Junction Transistor
+8. FET devices
+ 8.1 JFET - Junction Field Effect transistor
+9. HFET Devices
+ 9.1 HFET1 - Heterostructure Field Effect Transistor Level 1
+ 9.2 HFET2 - Heterostructure Field Effect Transistor Level 2
+10. MES devices
+ 10.1 MES - MESFET model
+ 10.2 MESA - MESFET model (MacSpice3f4)
+11. MOS devices
+ 11.1 MOS1 - Level 1 MOS model
+ 11.2 MOS2 - Level 2 MOS model
+ 11.3 MOS3 - Level 3 MOS model
+ 11.4 MOS6 - Level 6 MOS model
+ 11.5 MOS9 - Level 9 MOS model
+ 11.6 BSIM1 - BSIM model level 1
+ 11.7 BSIM2 - BSIM model level 2
+ 11.8 BSIM3 - BSIM model level 3 vers. 0
+ 11.9 BSIM3 - BSIM model level 3 vers. 1
+ 11.10 BSIM3 - BSIM model level 3 vers. 2
+ 11.11 BSIM3 - BSIM model level 3 vers. 3
+ 11.12 BSIM4 - BSIM model level 4
+ 11.13 HiSIM2 - Hiroshima-University STARC IGFET Model
+ 11.14 HiSIM_HV - Hiroshima-University STARC IGFET High Voltage Model
+12. SOI devices
+ 12.1 BSIM3SOI_FD - SOI model (fully depleted devices)
+ 12.2 BSIM3SOI_DD - SOI Model (dynamic depletion model)
+ 12.3 BSIM3SOI_PD - SOI model (partially depleted devices)
+ 12.4 BSIMSOI - SOI model (partially/full depleted devices)
+ 12.5 SOI3 - STAG SOI3 Model
+13. Verilog-A models
+ 13.1 EKV MOS model
+ 13.2 PSP MOS model
+ 13.3 HICUM0 Bipolar Model
+ 13.4 HICUM2 Bipolar Model
+ 13.5 Mextram Bipolar Model
+14. XSPICE code models
+
+ ------------------
+
+1. Introduction
+
+This file contains the status of devices available in ngspice. This file
+will be updated every time the device specific code is altered or changed to reflect the current status of this important part of the simulator
+
+
+2. Linear Devices
+
+
+ 2.1 CAP - Linear capacitor
+
+ Ver: N/A
+ Class: C
+ Level: 1 (and only)
+ Dir: devices/cap
+ Status:
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - Temperature difference from circuit temperature
+ - Preliminary technology scaling support
+ - Model capacitance
+ - Cj calculation based on relative dielectric constant
+ and insulator thickness
+
+
+ 2.2 IND - Linear Inductor
+
+ Ver: N/A
+ Class: L
+ Level: 1 (and only)
+ Dir: devices/ind
+ Status:
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - Temperature difference from circuit temperature
+ - Preliminary technology scaling support
+ - Model inductance
+ - Inductance calculation for toroids or solenoids
+ on the model line.
+
+ 2.3 RES - Linear resistor
+
+ Ver: N/A
+ Class: R
+ Level: 1 (and only)
+ Dir: devices/res
+ Status:
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - Different value for ac analysis
+ - Temperature difference from circuit temperature
+ - Noiseless resistor
+ - Flicker noise
+ - Preliminary technology scaling support
+
+
+3. Distributed elements
+
+
+ 3.1 CPL - Simple Coupled Multiconductor Lines (Kspice)
+
+ Ver: N/A
+ Class: P
+ Level: 1 (and only)
+ Dir: devices/cpl
+ Status:
+
+ This model comes from swec and kspice. It is not documented, if
+ you have kspice docs, can you write a short description
+ of its use ?
+
+ - Does not implement parallel code switches
+ - Probably a lot of memory leaks
+
+ Enhancements over the original model:
+
+ - Better integrated into ngspice adding CPLask, CPLmAsk and
+ CPLunsetup functions
+
+ 3.2 LTRA - Lossy Transmission line
+
+ Ver: N/A
+ Class: O
+ Level: 1 (and only)
+ Dir: devices/ltra
+ Status:
+
+ - Original spice model.
+ - Does not implement parallel code switches.
+
+ 3.3 TRA - Transmission line
+
+ Ver: N/A
+ Class: T
+ Level: 1 (and only)
+ Dir: devices/tra
+ Status:
+
+ - Original spice model.
+ - Does not implement parallel code switches.
+
+ 3.4 TXL - Simple Lossy Transmission Line (Kspice)
+
+ Ver: N/A
+ Class: Y
+ Level: 1 (and only)
+ Dir: devices/txl
+ Status:
+
+ This model comes from kspice. It is not documented, if
+ you have kspice docs, can you write a short description
+ of its use ?
+
+ There is some code left out from compilation:
+ TXLaccept and TXLfindBr. Any ideas ?
+
+ - Does not implement parallel code switches
+
+
+ 3.5 URC - Uniform distributed RC line
+
+ Ver: N/A
+ Class: U
+ Level: 1 (and only)
+ Dir: devices/urc
+ Status:
+
+ - Original spice model.
+ - Does not implement parallel code switches.
+
+
+4. Voltage and current sources
+
+ 4.1 ASRC - Arbitrary Source
+
+ Ver: N/A
+ Class: B
+ Level: 1 (and only)
+ Dir: devices/asrc
+ Status:
+
+ The arbitrary source code has been corrected with the patch
+ available on the Internet. There is still an issue to fix, the
+ current of current-controlled generators.
+
+ 4.2 CCCS - Current Controlled Current Source
+
+ Ver: N/A
+ Class: F
+ Level: 1 (and only)
+ Dir: devices/cccs
+ Status:
+
+ - Original spice model.
+
+ 4.3 CCVS - Current Controlled Voltage Source
+
+ Ver: N/A
+ Class: H
+ Level: 1 (and only)
+ Dir: devices/ccvs
+ Status:
+
+ - Original spice model.
+
+
+ 4.4 ISRC - Independent Current Source
+
+ Ver: N/A
+ Class: I
+ Level: 1 (and only)
+ Dir: devices/isrc
+ Status:
+
+ This is the original spice device improved by Alan Gillespie
+ with the following features:
+
+ - Source ramping
+ - Check for non-monotonic series in PWL
+
+
+ 4.5 VCCS - Voltage Controlled Current Source
+
+ Ver: N/A
+ Class: G
+ Level: 1 (and only)
+ Dir: devices/vccs
+ Status:
+
+ - Original spice model.
+
+
+4.6 VCVS - Voltage Controlled Voltage Source
+
+ Ver: N/A
+ Class: E
+ Level: 1 (and only)
+ Dir: devices/vcvs
+ Status:
+
+ - Original spice model.
+
+ 4.7 VSRC - Independent Voltage Source
+
+ Ver: N/A
+ Class: V
+ Level: 1 (and only)
+ Dir: devices/vsrc
+ Status:
+
+ This is the original spice device improved by Alan Gillespie
+ with the following features:
+
+ - Source ramping
+ - Check for non-monotonic series in PWL
+
+
+5. Switches
+
+ 5.1 CSW - Current controlled switch
+
+ Ver: N/A
+ Class: W
+ Level: 1 (and only)
+ Dir: devices/csw
+ Status:
+
+ - This model comes from Jon Engelbert.
+
+
+ 5.2 SW - Voltage controlled switch
+
+ Ver: N/A
+ Class: S
+ Level: 1 (and only)
+ Dir: devices/sw
+ Status:
+
+ - This model comes from Jon Engelbert.
+
+
+6. Diodes
+
+ 6.1 DIO - Junction Diode
+
+ Ver: N/A
+ Class: D
+ Level: 1 (and only)
+ Dir: devices/dio
+ Status:
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - Temperature difference from circuit temperature
+ - Forward and reverse knee currents
+ - Periphery (sidewall) effects
+ - Temperature correction of some parameters
+
+
+7. Bipolar devices
+
+ 7.1 BJT - Bipolar Junction Transistor
+
+ Ver: N/A
+ Class: Q
+ Level: 1
+ Dir: devices/bjt
+ Status:
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - Temperature difference from circuit temperature
+ - Different area parameters for collector, base and emitter
+
+ 7.2 BJT2 - Bipolar Junction Transistor
+
+ Ver: N/A
+ Class: Q
+ Level: 2
+ Dir: devices/bjt2
+ Status:
+
+ This is the BJT model written by Alan Gillespie to support lateral
+ devices. The model has been hacked by Dietmar Warning fixing some bugs
+ and adding some features (temp. dependency on resistors).
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - Temperature dependency on rc,rb,re
+ - Temperature difference from circuit temperature
+ - Different area parameters for collector, base and emitter
+
+ 7.3 VBIC - Bipolar Junction Transistor
+
+ Ver: N/A
+ Class: Q
+ Level: 4 & 9
+ Dir: devices/vbic
+ Status:
+
+ This is the Vertical Bipolar InterCompany model in version 1.2. The author
+ of VBIC is Colin McAndrew mcandrew@ieee.org.
+ Spice3 Implementation: Dietmar Warning DAnalyse GmbH
+ Web Site: http://www.designers-guide.com/VBIC/index.html
+
+ Notes: This is the 4 terminals model, without excess phase and thermal
+ network.
+
+
+8. FET devices
+
+ 8.1 JFET - Junction Field Effect transistor
+
+ Ver: N/A
+ Class: J
+ Level: 1
+ Dir: devices/jfet
+ Status:
+
+ This is the original spice JFET model.
+
+ Enhancements over the original model:
+ - Alan Gillespie's modified diode model
+ - Parallel multiplier
+ - Instance temperature as difference for circuit temperature
+
+ 8.2 JFET2 - Junction Field Effect Transistor (PS model)
+
+ Ver: N/A
+ Class: J
+ Level: 2
+ Dir: devices/jfet2
+ Status:
+
+ This is the Parker Skellern model for MESFETs.
+
+ Web Site: http://www.elec.mq.edu.au/cnerf/psmodel.htm
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Instance temperature as difference for circuit temperature
+
+
+9. HFET Devices
+
+ Added code from macspice3f4 HFET1&2 and MESA model
+ Original note:
+ Added device calls for Mesfet models and HFET models
+ provided by Trond Ytterdal as of Nov 98
+
+ 9.1 HFET1 - Heterostructure Field Effect Transistor Level 1
+
+ Ver: N/A
+ Class: Z
+ Level: 5
+ Dir: devices/hfet1
+ Status:
+
+ This is the Heterostructure Field Effect Transistor model from:
+ K. Lee, M. Shur, T. A. Fjeldly and T. Ytterdal
+ "Semiconductor Device Modeling in VLSI",
+ 1993, Prentice Hall, New Jersey
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Instance temperature as difference for circuit temperature
+ - Added pole-zero analysis
+
+
+ 9.2 HFET2 - Heterostructure Field Effect Transistor Level 2
+
+ Ver: N/A
+ Class: Z
+ Level: 6
+ Dir: devices/hfet2
+ Status:
+
+ Simplified version of hfet1
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Instance temperature as difference for circuit temperature
+ - Added pole-zero analysis
+
+
+10. MES devices
+
+ 10.1 MES - MESFET model
+
+ Ver: N/A
+ Class: Z
+ Level: 1
+ Dir: devices/mes
+ Status:
+
+ This is the original spice3 MESFET model (Statz).
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Alan Gillespie junction diodes implementation
+
+
+ Added code from macspice3f4 HFET1&2 and MESA model
+ Original note:
+ Added device calls for Mesfet models and HFET models
+ provided by Trond Ytterdal as of Nov 98
+
+10.2 MESA - MESFET model (MacSpice3f4)
+
+ Ver: N/A
+ Class: Z
+ Level: 2,3,4
+ Dir: devices/mesa
+ Status:
+
+ This is a multilevel model. It contains code for mesa levels
+ 2,3 and 4
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Instance temperature as difference from circuit temperature
+ - Added pole-zero analysis
+
+
+
+11. MOS devices
+
+ 11.1 MOS1 - Level 1 MOS model
+
+ Ver: N/A
+ Class: M
+ Level: 1
+ Dir: devices/mos1
+ Status:
+
+ This is the so-called Schichman-Hodges model.
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Temperature difference from circuit temperature
+
+ 11.2 MOS2 - Level 2 MOS model
+
+ Ver: N/A
+ Class: M
+ Level: 2
+ Dir: devices/mos2
+ Status:
+
+ This is the so-called Grove-Frohman model.
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Temperature difference from circuit temperature
+
+
+ 11.3 MOS3 - Level 3 MOS model
+
+ Ver: N/A
+ Class: M
+ Level: 3
+ Dir: devices/mos3
+ Status:
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Temperature difference from circuit temperature
+
+
+ 11.4 MOS6 - Level 6 MOS model
+
+ Ver: N/A
+ Class: M
+ Level: 6
+ Dir: devices/mos6
+ Status:
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Temperature difference from circuit temperature
+
+
+ 11.5 MOS9 - Level 9 MOS model
+
+ Ver: N/A
+ Class: M
+ Level: 9
+ Dir: devices/mos9
+ Status:
+
+ This is a slightly modified Level 3 MOSFET model.
+ (Whatever the implementer have had in mind.)
+ Not to confuse with Philips level 9.
+ Enhancements over the original model:
+ - Temperature difference from circuit temperature
+
+
+ 11.6 BSIM1 - BSIM model level 1
+
+ Ver: N/A
+ Class: M
+ Level: 4
+ Dir: devices/bsim1
+ Status:
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Noise analysis
+
+ BUGS:
+ Distortion analysis probably does not
+ work with "parallel" devices. Equations
+ are too intricate to deal with. Any one
+ has ideas on the subject ?
+
+
+ 11.7 BSIM2 - BSIM model level 2
+
+ Ver: N/A
+ Class: M
+ Level: 5
+ Dir: devices/bsim2
+ Status:
+
+ Enhancements over the original model:
+ - Parallel multiplier
+ - Noise analysis
+
+
+ 11.8 BSIM3v0 - BSIM model level 3
+
+ Ver: 3.0
+ Class: M
+ Level: 8 & 49, version = 3.0
+ Dir: devices/bsim3v0
+ Status: TO BE TESTED AND IMPROVED
+
+
+ 11.9 BSIM3v1 - BSIM model level 3
+
+ Ver: 3.1
+ Class: M
+ Level: 8 & 49, version = 3.1
+ Dir: devices/bsim3v1
+ Status: TO BE TESTED AND IMPROVED
+
+ This is the BSIM3v3.1 model modified by Serban Popescu.
+ This is level 49 model. It is an implementation that supports
+ "HDIF" and "M" parameters.
+
+
+ 11.10 BSIM3 - BSIM model level 3
+
+ Ver: 3.2.4
+ Class: M
+ Level: 8 & 49, version = 3.2.2, 3.2.3, 3.2.4
+ Dir: devices/bsim3v32 (level 3.2.4)
+ Status: o.k.
+
+ This is another BSIM3 model from Berkeley Device Group.
+ You can find some test netlists with results for this model
+ on its web site.
+
+ Web site: http://www-device.eecs.berkeley.edu/~bsim3
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - delvto, mulu0 instance parameter
+ - ACM Area Calculation Method
+ - Multirevision code (supports all 3v3.2 minor revisions)
+ - NodesetFix
+
+
+ 11.11 BSIM3 - BSIM model level 3
+
+ Ver: 3.3.0
+ Class: M
+ Level: 8 & 49, version = 3.3.0
+ Dir: devices/bsim3 (level 3.3.0)
+ Status: o.k.
+
+ This is the actual BSIM3 model from Berkeley Device Group.
+ You can find some test netlists with results for this model
+ on its web site.
+
+ Web site: http://www-device.eecs.berkeley.edu/~bsim3
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - ACM Area Calculation Method
+ - Multirevision code (supports all 3v3.2 minor revisions)
+ - NodesetFix
+ - Support for Multi-core processors using OpenMP
+
+
+ 11.12 BSIM4 - BSIM model level 4
+
+ Ver: 4.2.0 - 4.6.5
+ Class: M
+ Level: 14 & 54, version = 4.0, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6
+ Dir: devices/bsim4 (level 4.6.5)
+ Status: o.k.
+
+ This is the actual BSIM4 model from Berkeley Device Group.
+ Test are available on its web site.
+
+ Web site: http://www-device.eecs.berkeley.edu/~bsim3/bsim4.html
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - NodesetFix
+ - Support for Multi-core processors using OpenMP
+
+
+ 11.13 HiSIM2 - Hiroshima-university STARC IGFET Model
+
+ Ver: 2.7.0
+ Class: M
+ Level: 61, 68
+ Dir: devices/hisim2
+ Status: TO BE TESTED.
+
+ This is the HiSIM2 model available from Hiroshima University
+ (Ultra-Small Device Engineering Laboratory)
+
+ Web site: http://home.hiroshima-u.ac.jp/usdl/HiSIM.html
+
+
+ 11.14 HiSIM_HV - Hiroshima-University STARC IGFET High Voltage Model
+
+ Ver: 1.2.3
+ Class: M
+ Level: 62, 73
+ Dir: devices/hisimhv
+ Status: TO BE TESTED.
+
+ This is the HiSIM_HV model available from Hiroshima University
+ (Ultra-Small Device Engineering Laboratory)
+
+ Web site: http://home.hiroshima-u.ac.jp/usdl/HiSIM.html
+
+
+12. SOI devices
+
+ 12.1 BSIM3SOI_FD - SOI model (fully depleted devices)
+
+ Ver: 2.1
+ Class: M
+ Level: 55
+ Dir: devices/bsim3soi_fd
+ Status: TO BE TESTED.
+
+ FD model has been integrated.
+ There is a bsim3soifd directory under the test
+ hierarchy. Test circuits come from the bsim3soi
+
+ Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi
+
+
+
+ 12.2 BSIM3SOI_DD - SOI Model (dynamic depletion model)
+
+ Ver: 2.1
+ Class: M
+ Level: 56
+ Dir: devices/bsim3soi_dd
+ Status: TO BE TESTED.
+
+ There is a bsim3soidd directory under the
+ test hierarchy. Test circuits come from bsim3soi
+
+ Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi
+
+
+
+ 12.3 BSIM3SOI_PD - SOI model (partially depleted devices)
+
+ Ver: 2.2.1
+ Class: M
+ Level: 57
+ Dir: devices/bsim3soi_pd
+ Status: TO BE TESTED.
+
+ PD model has been integrated. There is a bsim3soipd directory
+ under the test hierarchy. Test circuits come from the bsim3soi
+
+ Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi
+
+
+
+ 12.4 BSIMSOI - Berkeley SOI model (partially/full depleted devices)
+
+ Ver: 4.3.1
+ Class: M
+ Level: 10 & 58
+ Dir: devices/bsim3soi
+ Status: o.k.
+
+ This is the actual version from Berkeley. This version is
+ backward compatible with its previous versions BSIMSOI3.x.
+ Usable for partially/full depleted devices.
+
+ Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi
+
+ Enhancements over the original model:
+ - Parallel Multiplier
+ - Support for Multi-core processors using OpenMP
+
+
+
+ 12.5 SOI3 - STAG SOI3 Model
+
+ Ver: 2.6
+ Class: M
+ Level: 61
+ Dir: devices/soi3
+ Status: OBSOLETE
+
+
+
+13. Verilog-A models
+
+ Configuring ngspice with ADMS (see Readme.adms) following
+ devices are available:
+
+ 13.1 EKV MOS Model
+
+ Ver: 2.6
+ Level: 44
+ Dir: devices/adms/ekv
+ Status: TO BE TESTED
+
+ EKV version based on a contribution of Ivan Riis Nielsen 11/2006
+
+ Web site at: http://legwww.epfl.ch/ekv/
+ (but EPFL is not publishing any usefull code)
+
+
+ 13.2 PSP MOS Model
+
+ Ver: 102.1
+ Level: 45
+ Dir: devices/adms/psp102
+ Status: TO BE TESTED
+
+ Philips SimKit 2.5.
+
+
+ 13.3 HICUM0 Bipolar Model
+
+ Ver: Level_0 Version_1.12
+ Level: 7
+ Dir: devices/adms/hicum0
+ Status: TO BE TESTED
+
+ A simplified version of HICUM Level2 model for BJT
+ Web site at: http://www.iee.et.tu-dresden.de/iee/eb/hic_new
+
+
+ 13.4 HICUM2 Bipolar Model
+
+ Ver: Level_2 Version_2.22
+ Level: 8
+ Dir: devices/adms/hicum2
+ Status: TO BE TESTED
+
+ Web site at: http://www.iee.et.tu-dresden.de/iee/eb/hic_new/hic_start.html
+
+
+ 13.5 Mextram Bipolar Model
+
+ Ver: 504.6.1
+ Level: 6
+ Dir: devices/adms/mextram
+ Status: TO BE TESTED
+
+ Web site at: http://mextram.ewi.tudelft.nl/ and http://mextram.sourceforge.net/
+
+ 14. XSpice code models, see ngspice manual chapt. 12
diff --git a/Windows/spice/doc/FAQ b/Windows/spice/doc/FAQ
new file mode 100644
index 00000000..e137c93c
--- /dev/null
+++ b/Windows/spice/doc/FAQ
@@ -0,0 +1,376 @@
+ Ngspice F.A.Q.Version 2.0 (ngspice 26 release)
+ Maintained by Paolo Nenzi, Holger Vogt
+ Last update: 02-01-2014
+
+ This document contains the Frequently Asked Questions (and Answers)
+ for ngspice project.
+ __________________________________________________________________________
+
+ Table of Contents
+
+
+ 1. INTRODUCTION AND GENERAL INFORMATION
+ 1.1 What is ngspice?
+ 1.2 What is sharedspice?
+ 1.3 What is tclspice ?
+ 1.4 Why resurrecting Berkeley's Spice?
+ 1.5 What is the project's goal?
+ 1.6 What you are going to do?
+ 1.7 Legal issues
+ 1.8 What mailing lists exist for ngspice?
+ 1.9 Are the mailing lists archived anywhere?
+ 1.10 What newsgroups exist for ngspice?
+ 1.11 Where can I get a copy of ngspice?
+ 1.12 Where should I look on the World Wide Web for ngspice stuff?
+ 1.13 Where should I look on the World Wide Web for Spice documentation?
+
+ 2. DEVELOPMENT
+ 2.1 What is the current version?
+ 2.2 What are the latest features in the current release?
+ 2.3 What does it look like?
+ 2.4 Who are the authors of ngspice?
+ 2.5 How can I report a bug/request for a feature?
+ 2.6 How can I join the development?
+
+ 3. SOLUTIONS TO COMMON MISCELLANEOUS PROBLEMS
+ 3.1 What systems are supported?
+ 3.2 I get errors when I try to compile the source code, why?
+ 3.3 This document didn't answer my question. Where else can I look for
+ an answer?
+
+ 4. ADMINISTRATIVE INFORMATION AND ACKNOWLEDGEMENTS
+ 4.1 Feedback
+ 4.2 Formats in which this FAQ is available
+ 4.3 Authorship and acknowledgements
+ 4.4 Disclaimer and Copyright
+
+
+ ______________________________________________________________________
+
+ 1. INTRODUCTION AND GENERAL INFORMATION
+
+
+
+ 1.1 What is ngspice ?
+
+ Ngspice is a mixed-level/mixed-signal circuit simulator, based on three
+ open source software packages: Spice3f5, Cider1b1 and Xspice, and
+ including many bug fixes and enhancements:
+
+ - Spice3 is a widely used circuit simulator. It was developed by the
+ University of California at Berkeley (UCB), by "a cast of thousand"
+ (as they say) initially under the guide of Donald O. Peterson.
+
+ - Cider is a mixed-level simulator that already includes Spice3f5 and
+ adds a device simulator to it: DSIM. Cider couples the circuit level
+ simulator to the device simulator to provide greater simulation
+ accuracy (at the expense of greater simulation time). Critical
+ devices can be described with technology parameters (numerical
+ models) and non critical ones with the original spice's compact
+ models.
+
+ - Xspice is an extension to Spice3 that provides code modeling support
+ and simulation of digital components through an embedded event
+ driven algorithm.
+
+ The NG prefix has lot of meanings: Next Generation, New Good, etc.
+ Choose or invent the one you prefer. The heart of the project is the
+ ngspice program, with its tremendous advancements.
+
+
+ 1.2 What is sharedspice ?
+
+ Sharedspice is an interface option to ngspice. It compiles the simulator
+ into a shared object (or dynamic link library), providing full control
+ of ngspice to any suitable controlling program (GUI, optimizer,
+ development system, etc., to be provided by the user).
+
+
+ 1.3 What is tclspice ?
+
+ Tclspice is a another interface option of ngspice, providing a tcl/tk
+ interface to the user. Tclspice is both a batch and interactive simulator
+ and a building block for simulator applications. Analyses can be run
+ from a tcl script and vector plotted or post processed using tcl. A small
+ GUI may be built by the user to analyze a circuit or a set of circuits.
+ Tclspice is obtained compiling ngspice activating an additional option.
+
+
+ 1.4 Why resurrecting Berkeley's Spice?
+
+ Berkeley's Spice can be considered the father of most circuit
+ simulators available today. It is an old but still good piece of
+ software, it may not be the fastest or the most reliable but it's
+ free, it's available in source code and most of the electrical
+ simulators inherited it's syntax. Spice3 is based on proven numerical
+ algorithms (most commercial implementations have only strengthened
+ them), implements most of the models for MOSFET submicron design
+ and has a powerful set of analyses. The readily availability of
+ its source code in the past made this simulator the de-facto standard.
+
+
+ 1.5 What is the project's goal?
+
+ Ngspice is both a maintenance and enhancement project. It is a maintenance
+ project because it aims to provide the free EDA community the best spice3
+ simulator available. This means fixing bugs, adding new features but always
+ in the spice3 framework. Achieving compatibility with commercial spice based
+ simulators and provide users the latest devices models are important goals
+ of the project. Improvements in the postprocessing (data handling
+ capabilities) and user interface are other goals.
+
+
+ 1.6 What you are going to do?
+
+ An official roadmap for ngspice was never drawn. Contributions made by
+ developers drive ngspice development and the roadmap is built day by
+ day by developers writing on the lists. Ngspice development activity
+ can be summarized in 3 points:
+
+ + Compatibility: Ngspice should be compatible with commercial products,
+ thus allowing people to use the netlist generated for such tools. As
+ most of the commercial simulators available tracked each other in netlist
+ language, this should not be an impossible task. The most important goal
+ here is to provide a reliable support for model libraries coming from
+ foundries.
+
+ + Compact models: The interest in using ngspice is intimately connected
+ to the available models. To provide the latest models available for
+ active and passive devices is a fundamental goal of the project. In
+ this direction we are integrating ADMS model compiler into ngspice.
+
+ + Documentation: Commercial simulators come with very good manuals
+ containing tutorials, description of models equations, example of
+ use, suggestions, etc. Spice came with little documentation. The
+ Spice3f manual, available on the Internet has been used as the basis
+ for the new manual. It will be constantly improved during ngspice
+ development and integrated with the documentation accompanying Xspice
+ and Cider. The ngspice manual today contains description of all
+ features ngspice is offering. It is however not a tutorial of ngspice
+ usage, but there are now several good ones available on the internet
+ (see http://ngspice.sourceforge.net/tutorials.html).
+
+
+ 1.7 Legal issues
+
+ The ngspice base license is new BSD, as provided by UCB. For some parts
+ of the code other compatible licences apply. Please see file COPYING
+ for details.
+
+
+ 1.8 What mailing lists exist for ngspice?
+
+ There are two general mailing lists dedicated to the ngspice project.
+
+ Users mailing list: <ngspice-users@lists.sourceforge.net>
+ This list is for ngspice users. Examples, problems, bug reports
+ and general discussion on ngspice can be sent here.
+
+ Developers mailing list: <ngspice-devel@lists.sourceforge.net>
+ The list is dedicated to ngspice development. Developers should
+ subscribe here, to follow the program development. May be used
+ to send patches, and technical discussion on ngspice.
+
+ Send an empty message with Subject "help" to the following addresses
+ to get instructions.
+
+ <ngspice-users-request@lists.sourceforge.net>
+ <ngspice-devel-request@lists.sourceforge.net>
+
+ Send an empty message to the following address to Subscribe.
+
+ <ngspice-users-join@lists.sourceforge.net>
+ <ngspice-devel-join@lists.sourceforge.net>
+
+ Documentation about the user interface of
+ these mailing lists can be found at:
+ http://www.gnu.org/software/mailman/mailman-member
+
+
+ 1.9 Are the mailing lists archived anywhere ?
+
+ Yes, the lists are archived. There are two places where to look for
+ archives. The project started on the IEEE Central and South Italy
+ web server and then moved to sourceforge. Sourceforge provides an
+ archiving service that cam be accessed via the summary page:
+
+ http://sourceforge.net/p/ngspice/mailman/
+
+
+
+ 1.10 What newsgroups exist for ngspice?
+
+ There is no ngspice specific newsgroup. Sourceforge offers additional
+ discussion groups for ngspice, please see
+
+ http://sourceforge.net/p/ngspice/discussion/
+
+ ngspice threads may appear on newsgroups dedicated to circuit
+ simulation and electronic design.
+
+
+ 1.11 Where can I get a copy of ngspice?
+
+ You can download ngspice from:
+
+ http://sourceforge.net/projects/ngspice/files/ng-spice-rework/
+
+
+ 1.12 Where should I look on the World Wide Web for ngspice stuff?
+
+ Look at the official Ngpice Web Page:
+
+ http://ngspice.sourceforge.net
+
+
+ 1.13 Where should I look on the World Wide Web for Spice documentation?
+
+ There is a detailed ngspice manual available at:
+ http://ngspice.sourceforge.net/docs.html
+
+ Others docs are assembled at:
+ http://ngspice.sourceforge.net/literature.html
+
+
+
+ 2. DEVELOPMENT
+
+
+ 2.1. What is the current version?
+
+ The latest version released is:
+
+ * ngspice-26 (released on 04/01/2013)
+
+
+ 2.2. What are the latest features in the current release?
+
+- New features:
+ + add temperature coefficients for B source
+ + commands "mdump", "mrdump" to dump matrix to file
+ + allow `time', `temper', and `hertz' in expressions with behavioral R, L, C
+ + Enable ctrl-c to interrupt a simulation also for Windows GUI
+ + tests/bsim4: use the standard CMC model check
+ + implement exit code for command "quit"
+ + .nodeset all = value
+ + memristor code model in extradev
+ + new scalable diode model including tunnel component
+ + variable xtrtol may override the XSPICE reduction of trtol
+ + XSPICE example: delta-sigma converter
+ + XSPICE: new d_source model
+ + new option noopac
+ + bsim3: make additonal parameters accessible with @mxx[par]
+ + enable Mac OS X compilation
+ + option reseries = val
+ + commands "snsave", "snload"
+ + update hisim to version 2.7.0, new qa tests
+ + hisimhv update to version 1.2.3, new qa tests
+ + allow Ctrl-d to quit
+ + jfet model temperature extension, tcv and bex parameter
+ + speed up vector handling by hash table for vector address storage and retrieval
+ + update PSS code
+
+
+- Bug fixes:
+ + many, many ... please see
+ http://ngspice.git.sourceforge.net/git/gitweb.cgi?p=ngspice/ngspice;a=shortlog;pg=0
+ + remove memory leaks
+ + update tclspice for MS Windows
+ + adms3 removed due to licensing issues
+ + Many small bugs
+
+
+
+ 2.3. What does it look like?
+
+ Ngspice, as the original Spice3 (and Xspice and Cider) is a command
+ line simulator, but with a graphics output capability.
+
+
+ 2.4. Who are the authors of ngspice?
+
+ The development is open to anyone who wish to contribute. If the
+ original Spice3 was made with the contribution of "a cast of
+ thousand", ngspice can only increase that number. An incomplete
+ list of contributor makes the "acknowledgements" page of the ngspice
+ manual.
+
+
+ 2.5. How can I report a bug/request for a feature?
+
+ The ngspice summary page (hosted on Sourceforge) has bug-reporting,
+ feature-request and bugs trackers. You can use them or subscribe to
+ mailing lists and post there. The former is preferred since almost
+ it allows to track all necessary actions upon a bug. The web site at
+ http://ngspice.sourceforge.net/bugrep.html will give you more details.
+
+
+ 2.6. How can I join the development?
+
+ To join the development just code the feature you want to add and send
+ your patch in the mailing list. Before you start coding check the
+ latest development release of ngspice from our git repository.
+ It might be that your feature has already been implemented.
+
+ There is no bureaucracy here.
+
+
+
+ 3. SOLUTIONS TO COMMON MISCELLANEOUS PROBLEMS
+
+
+ 3.1. What systems are supported?
+
+ Ngspice is written in C, and uses some GNU extensions, then you need
+ a GNU C compiler and a UNIX environment to compile it. Ngspice can
+ be compiled under Windows using the mingw or cygwin environment as
+ well as MS Visual Studio.
+
+
+ 3.2. I get errors when I try to compile the source code, why?
+
+ This is a one-million-euros question :).
+
+ Write a mail to the user's list describing the problem and providing
+ information on the type of hardware, the flavour of operating system.
+
+
+ 3.3. This document didn't answer my question. Where else can I look
+ for an answer?
+
+ Read old messages from the mailing list archive, search the web site
+ or read the docs. Upgrade to the latest version of ngspice, many
+ problems are fixed in the new versions. If you still can't find an
+ answer, post your question to the mailing lists.
+
+
+
+ 4. ADMINISTRATIVE INFORMATION AND ACKNOWLEDGEMENTS
+
+
+ 4.1. Feedback
+
+ Send your comments about this F.A.Q. to:
+
+ Paolo Nenzi <p.nenzi@ieee.org>.
+
+ Send your comments about ngspice to:
+
+ Paolo Nenzi <p.nenzi@ieee.org>.
+
+
+ 4.2. Formats in which this FAQ is available
+
+ This document is available only in ASCII format in the ngspice source
+ package.
+
+
+ 4.3. Authorship and acknowledgements
+
+ Parts of the questions and answers are originate from Paolo Nenzi.
+
+
+ 4.4. Disclaimer and Copyright
+
+ This document is provided as is. The information in it is not
+ warranted to be correct: you use it at your own risk.
diff --git a/Windows/spice/doc/INSTALL b/Windows/spice/doc/INSTALL
new file mode 100644
index 00000000..23c1f877
--- /dev/null
+++ b/Windows/spice/doc/INSTALL
@@ -0,0 +1,699 @@
+Ngspice installation instructions
+=================================
+
+Table of contents
+
+ 1 Ngspice installation (LINUX)
+ 1.1 Prerequisites
+ 1.2 Install from tarball (e.g. ngspice-26.tar.gz)
+ 1.3 Install from git repository
+ 1.4 Advanced Install
+ 1.4.1 Most useful options
+ 1.4.2 Options Specific to Using Ngspice
+ 1.4.3 Options Useful for Debugging Ngspice
+ 2 Compilers and Options
+ 3 Compiling For Multiple Architectures
+ 4 Installation Names
+ 5 Optional Features
+ 6 Specifying the System Type
+ 7 Sharing Defaults
+ 8 Operation Controls
+ 9 NGSPICE COMPILATION UNDER WINDOWS OS
+ 9.1 How to make ngspice with MINGW and MSYS
+ 9.2 make ngspice with MS Visual Studio 2008
+ 9.3 make ngspice with pure CYGWIN
+ 9.4 ngspice console app with MINGW or CYGWIN
+
+
+This file describes the procedures to install ngspice from sources.
+
+
+1 Ngspice Installation (LINUX, maybe others)
+ ====================
+
+1.1 Prerequisites
+
+ Ngspice is written in C and thus a complete C compilation environment
+ is needed. Almost any LINUX offers a complete C development environment.
+ Ngspice is developed on GNU/Linux with gcc and GNU make.
+
+ The following software must be installed in your system to compile ngspice:
+ bison, flex, and X11 headers and libs.
+
+ If you want to compile the source from the git repository you need
+ additional software: autoconf, automake, libtool, texinfo, readline.
+
+ The following software may be needed when enabling additional features:
+ editline, tcl/tk, adms
+
+ Please have a look at the actual ngspice manual, downloadable at
+ http://ngspice.sourceforge.net/docs.html, which gives you much more
+ information on ngspice and its usage.
+
+
+1.2 Install from tarball (e.g. ngspice-26.tar.gz)
+
+ This covers installation from a release distribution (for example
+ ngspice-26.tar.gz, the so called tar ball).
+
+ After downloading the tar ball to a local directory unpack it using:
+
+ $ tar -zxvf ngspice-26.tar.gz
+
+ Now change directories in to the top-level source directory (where this
+ INSTALL file can be found).
+
+ You should be able to do:
+
+ $ mkdir release
+ $ cd release
+ $ ../configure --with-x --with-readline=yes --disable-debug
+ $ make
+ $ sudo make install
+
+ The default install directory for executables is /usr/local/bin.
+
+ A simple ../configure might be sufficient for a basic ngspice, but the preferred
+ arguments to ../configure are
+ --with-x --with-readline=yes and --disable-debug
+ providing you with a comfortably working ngspice (see section 1.4 for details).
+
+ See the section titled 'Advanced Install' for instructions about additional arguments
+ that can be passed to ../configure to customise the build and installation.
+
+ Do not use the script ./autogen.sh, because it is not required for
+ compiling and installing ngspice from the tarball.
+
+ A fully featured ngspice on LINUX may be obtained with the following commands:
+ $ mkdir release
+ $ cd release
+ $ ../configure --with-x --enable-xspice --disable-debug --enable-cider --with-readline=yes --enable-openmp
+ $ make 2>&1 | tee make.log
+ $ sudo make install
+
+ To remove the executables and libraries from the install directory, you may call
+ $ sudo make uninstall
+
+
+1.3 Install from the git repository
+
+ This section describes how to install from source code taken directly
+ from the git repository. It is intended for those who want to use the most
+ recent enhancements of ngspice and for developers. For user install
+ instructions using source from a released distributions, please see the
+ sections titled 'Install from tarball' and 'Advanced Install'.
+
+ Download ngspice sources from the git repository as described on the sourceforge project page
+ (see http://ngspice.sourceforge.net/download.html and click on the git link)
+
+ Now change directories in to the top-level source directory (where this
+ INSTALL file can be found).
+
+ The project uses the GNU build process. The compile output should go into a separate
+ directory, so to e.g. maintain separate debug and release versions.
+
+ $ ./autogen.sh
+ $ mkdir debug
+ $ cd debug
+ $ ../configure --with-x --with-readline=yes
+ $ make
+ $ sudo make install
+
+ See the section titled 'Advanced Install' for instructions about arguments
+ that can be passed to ./configure to customise the build and installation.
+
+ Preferred arguments to ./configure to obtain a comfortably working ngspice may be
+ --with-readline=yes and --disable-debug (for a smaller and speed optimized
+ executable).
+
+ A fully featured ngspice on LINUX may be obtained with the following commands:
+ $ ./autogen.sh --adms
+ $ mkdir release
+ $ cd release
+ $ ../configure --with-x --enable-xspice --disable-debug --enable-cider --with-readline=yes --enable-openmp --enable-adms
+ $ make 2>&1 | tee make.log
+ $ sudo make install
+
+ If a problem is found with the build process, please submit a report to
+ the ngspice development team. Please provide information about your system
+ and any ./configure arguments you are using, together with any error
+ messages. Ideally you would have tried to fix the problem yourself first.
+ If you have fixed the problem then the development team will love to hear
+ from you.
+
+
+1.4 Advanced Install
+
+ Some extra options can be provided to './configure'. To get all available
+ options do:
+
+ $ ./configure --help
+
+ Some of these options are generic to the GNU build process that is used by
+ Ngspice, other are specific to Ngspice.
+
+ The following sections provide some guidance and descriptions for many,
+ but not all, of these options.
+
+ 1.4.1 Most useful options:
+
+ --enable-adms
+ ADMS is an experimental model compiler that translates
+ Verilog-A compact models into C code that can be compiled into
+ ngspice. This is (as of ngspice-26) still experimental, some
+ features (e.g. noise) are missing. If you want to use it, please
+ refer to the ADMS section on ngspice web site.
+
+ --enable-cider
+ Cider is a mixed-level simulator that couples Spice3 and DSIM
+ to simulate devices from their technological parameters.
+
+ --enable-xspice
+ Enable XSpice enhancements,
+ A mixed signal simulator built upon spice3 with codemodel
+ dynamic loading support. See the ngspice manual for details.
+
+ --with-readline=yes
+ Enable GNU readline support for the command line interface.
+
+ --enable-openmp
+ Compile ngspice for multi-core processors.
+ Parallelization is done by OpenMP, for MOS models in BSIM3.3.0
+ BSIM4.6.0 and and BSOI4 only. See the ngspice manual for details.
+
+ --disable-debug
+ This option will remove the '-g' option passed to the compiler
+ and add -O2 optimisation (instead of default O0).
+ This speeds up simulating significantly, and is recommended for
+ normal use.
+
+
+1.4.2 Options Specific to Using Ngspice
+
+Most of the options now following are not well maintained, are not tested or even maybe obsolete.
+
+ --enable-capbypass
+ Bypass calculation of cbd/cbs in the mosfets if the vbs/vbd
+ voltages are unchanged.
+
+ --enable-cluster
+ Clustering code for distributed simulation. This is a
+ contribution never tested. This code comes from TCLspice
+ implementation and is implemented for transient analysis only.
+
+ --enable-expdevices
+ Enable experimental devices. This option is used by developers
+ to mask devices under development. Almost useless for users.
+
+ --enable-experimental
+ This enables some experimental code. Specifically it enables:
+ * The ability to save and load snapshots: adds
+ interactive keywords 'savesnap' and 'loadsnap'.
+
+ --enable-help
+ Force building nghelp. This is deprecated.
+
+ --enable-ndev
+ Enable NDEV interface, (experimental, needs updating)
+ A TCP/IP interface to external device simulator such as GSS.
+ For more information, please visit the homepage of GSS at
+ http://gss-tcad.sourceforge.net
+
+ --enable-newpred
+ Enable the NEWPRED symbol in the code.
+
+ --enable-newtrunc
+ Enable the newtrunc option
+
+ --enable-nodelimiting
+ Experimental damping scheme
+
+ --enable-nobypass
+ Don't bypass recalculations of slowly changing variables
+
+ --enable-predictor
+ Enable a predictor method for convergence
+
+ --enable-sense2
+ Use spice2 sensitivity analysis
+
+ --enable-xgraph
+ Compile the Xgraph plotting program.
+ Xgraph is a plotting package for X11 and was once very popular.
+
+ --with-editline=yes
+ Enables the use of the BSD editline library (libedit).
+ See http://www.thrysoee.dk/editline/
+
+ --with-tcl=tcldir
+ When configured with this option the tcl module
+ "tclspice" is compiled and installed instead of
+ plain ngspice.
+
+ --with-ngshared
+ This option let you compile ngspice as a shared
+ library or dll, allowing an application controlling
+ ngspice. This option excludes using --with-x or
+ --with-wingui. Useful additional options are
+ --enable-xspice --enable-cider --enable-openmp.
+ No graphics inetrface is provided, this has to be
+ handled by the controlling application.
+
+
+1.4.3 Options Useful for Debugging Ngspice
+
+ --enable-ansi
+ Configure will try to find an option for your compiler so that
+ it expects ansi-C.
+
+--enable-asdebug
+ Debug sensitivity code *ASDEBUG*.
+
+ --enable-blktmsdebug
+ Debug distortion code *BLOCKTIMES*
+
+ --enable-checkergcc
+ Option for compilation with checkergcc.
+
+ --enable-cpdebug
+ Enable ngspice shell code debug.
+
+ --disable-debug
+ This option will remove the '-g' option passed to the compiler.
+ This speeds up compilation a *lot*, and is recommended for
+ normal use.
+
+ --enable-ftedebug
+ Enable ngspice frontend debug.
+
+ --enable-gc
+ Enable the Boehm-Weiser Conservative Garbage Collector.
+
+ --enable-pzdebug
+ Debug pole/zero code.
+
+ --enable-sensdebug
+ Debug sensitivity code *SENSDEBUG*.
+
+ --enable-smltmsdebug
+ Debug distortion code *SMALLTIMES*
+
+ --enable-smoketest
+ Enable smoketest compile.
+
+ --enable-stepdebug
+ Turns on debugging of convergence stepping??
+
+
+2 Compilers and Options
+ =====================
+
+ Some systems require unusual options for compilation or linking that
+ the `configure' script does not know about. You can give `configure'
+ initial values for variables by setting them in the environment. Using
+ a Bourne-compatible shell, you can do that on the command line like
+ this:
+ CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
+
+ Or on systems that have the `env' program, you can do it like this:
+ env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
+
+3 Compiling For Multiple Architectures
+ ====================================
+
+ You can compile the package for more than one kind of computer at the
+ same time, by placing the object files for each architecture in their
+ own directory. To do this, you must use a version of `make' that
+ supports the `VPATH' variable, such as GNU `make'. `cd' to the
+ directory where you want the object files and executables to go and run
+ the `configure' script. `configure' automatically checks for the
+ source code in the directory that `configure' is in and in `..'.
+
+ If you have to use a `make' that does not supports the `VPATH'
+ variable, you have to compile the package for one architecture at a time
+ in the source code directory. After you have installed the package for
+ one architecture, use `make distclean' before reconfiguring for another
+ architecture.
+
+4 Installation Names
+ ==================
+
+ By default, `make install' will install the package's files in
+ `/usr/local/bin', `/usr/local/man', etc. You can specify an
+ installation prefix other than `/usr/local' by giving `configure' the
+ option `--prefix=PATH'.
+
+ You can specify separate installation prefixes for
+ architecture-specific files and architecture-independent files. If you
+ give `configure' the option `--exec-prefix=PATH', the package will use
+ PATH as the prefix for installing programs and libraries.
+ Documentation and other data files will still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+ options like `--bindir=PATH' to specify different values for particular
+ kinds of files. Run `configure --help' for a list of the directories
+ you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+ with an extra prefix or suffix on their names by giving `configure' the
+ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+ When installed on MinGW with MSYS alternative paths are not fully supported.
+ See 'How to make ngspice with MINGW and MSYS' below for details.
+
+
+5 Optional Features
+ =================
+
+ Some packages pay attention to `--enable-FEATURE' options to
+ `configure', where FEATURE indicates an optional part of the package.
+ They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+ is something like `gnu-as' or `x' (for the X Window System). The
+ `README' should mention any `--enable-' and `--with-' options that the
+ package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+ find the X include and library files automatically, but if it doesn't,
+ you can use the `configure' options `--x-includes=DIR' and
+ `--x-libraries=DIR' to specify their locations.
+
+6 Specifying the System Type
+ ==========================
+
+ There may be some features `configure' can not figure out
+ automatically, but needs to determine by the type of host the package
+ will run on. Usually `configure' can figure that out, but if it prints
+ a message saying it can not guess the host type, give it the
+ `--host=TYPE' option. TYPE can either be a short name for the system
+ type, such as `sun4', or a canonical name with three fields:
+ CPU-COMPANY-SYSTEM
+
+ See the file `config.sub' for the possible values of each field. If
+ `config.sub' isn't included in this package, then this package doesn't
+ need to know the host type.
+
+ If you are building compiler tools for cross-compiling, you can also
+ use the `--target=TYPE' option to select the type of system they will
+ produce code for and the `--build=TYPE' option to select the type of
+ system on which you are compiling the package.
+
+7 Sharing Defaults
+ ================
+
+ If you want to set default values for `configure' scripts to share,
+ you can create a site shell script called `config.site' that gives
+ default values for variables like `CC', `cache_file', and `prefix'.
+ `configure' looks for `PREFIX/share/config.site' if it exists, then
+ `PREFIX/etc/config.site' if it exists. Or, you can set the
+ `CONFIG_SITE' environment variable to the location of the site script.
+ A warning: not all `configure' scripts look for a site script.
+
+8 Operation Controls
+ ==================
+
+ `configure' recognizes the following options to control how it
+ operates.
+
+ `--cache-file=FILE'
+ Use and save the results of the tests in FILE instead of
+ `./config.cache'. Set FILE to `/dev/null' to disable caching, for
+ debugging `configure'.
+
+ `--help'
+ Print a summary of the options to `configure', and exit.
+
+ `--quiet'
+ `--silent'
+ `-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+ `--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+ `--version'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+ `configure' also accepts some other, not widely useful, options.
+
+
+
+9 NGSPICE COMPILATION UNDER WINDOWS OS
+ ====================================
+
+9.1 How to make ngspice with MINGW and MSYS
+
+ Creating ngspice with MINGW is a straight forward procedure,
+ if you have MSYS/MINGW installed properly. You will need some enhancements
+ to the standard install (FLEX and BISON have to be made available in MSYS).
+ Some links are given below which describe the procedures.
+
+ Installing from the tarball, e.g. ngspice-26.tar.gz, is now simple: After
+ expanding, you may just run ./compile_min.sh from the ngspice-26 directory.
+
+ The default installation location of ngspice is the Windows path
+ C:\spice. The install path can be altered by passing --prefix=NEWPATH
+ as an argument to ./configure during the build process.
+
+ Put the install path you desire inside "", e.g. "D:/NewSpice". Be
+ careful to use forward slashes "/", not backward slashes "\" (something
+ still to be fixed). Then add --prefix="D:/NewSpice" as an argument to
+ ./configure in the normal way.
+
+ The procedure of compiling a distribution (for example, a tarball from
+ the ngspice website), is as follows:
+
+ $ cd ngspice-26
+ $ mkdir release
+ $ cd release
+ $ ../configure --with-wingui ...and other options
+ $ make
+ $ make install
+
+ The most useful options are:
+ --enable-xspice
+ --enable-cider
+ --disable-debug (-O2 optimization, no debug information)
+
+ A fully featured ngspice on Windows may be obtained with the following commands:
+ $ ./autogen.sh --adms
+ $ mkdir release
+ $ cd release
+ $ ../configure --with-wingui --enable-cider --disable-debug --enable-openmp --enable-xspice --enable-adms
+ $ make install
+
+ However, to compile code extracted from the git repository the procedure is
+ a little different. Firstly install git, e.g. from http://git-scm.com/download/win
+ To obtain ngspice, you may do the following:
+
+ Open the git command window. Go to a directory of your choice, e.g. D:\Spice
+ $ cd /d/Spice
+
+ Issue the command for downloading ngspice:
+ $ git clone git://ngspice.git.sourceforge.net/gitroot/ngspice/ngspice
+
+ This will create directory /ngspice .
+
+ Go to directory ngspice
+ $ cd /d/Spice/ngspice
+ Start compiling, e.g. by calling
+ $ ./autogen.sh --adms
+ $ ./compile_min.sh
+
+ Update the ngspice files:
+ Go to directory ngspice
+ $ cd /d/Spice/ngspice
+ Issue command for update
+ $ git pull
+
+ Instead of calling ./compile_min.sh, you may choose to issue
+ individual commands like:
+ $ cd ngspice
+ $ ./autogen.sh
+ $ mkdir release
+ $ cd release
+ $ ../configure --enable-maintainer-mode --with-wingui ...and other options
+ $ make
+ $ make install
+
+ MINGW and MSYS can be downloaded from http://www.mingw.org/. The making of
+ ngspice and the code models *.cm for XSpice requires installation of BISON
+ and FLEX to MSYS. A typical installation was tested with:
+
+ bison-2.0-MSYS.tar.gz
+ flex-2.5.4a-1-bin.zip
+ libiconv-1.9.2-1-bin.zip
+ libintl-0.14.4-bin.zip
+
+ Bison 2.0 is now superseeded by newer releases (Bison 2.3, see
+ http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=67879)
+
+ The last three are from
+ http://sourceforge.net/project/showfiles.php?group_id=23617.
+
+ Installing from git needs more packages to MSYS in advance:
+ git, automake, autoconf, libtool
+
+ You may also look at
+ http://www.mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite
+ http://www.mingw.org/wiki/MSYS
+ http://www.mingw.org/wiki/HOWTO_Create_an_MSYS_Build_Environment.
+
+ An alternative compiler setup is available at
+ http://tdm-gcc.tdragon.net/
+
+
+9.2 make ngspice with MS Visual Studio 2008
+
+ ngspice may be compiled with MS Visual Studio 2008 or 2010.
+
+ CIDER and XSPICE are included, but the code models for XSPICE
+ (*.cm) are not (yet) made. You may however use the code models
+ created with MINGW (which in fact are dlls), as e.g. found in
+ the ngspice binary distribution our made as described in 9.1.
+
+ There is currently no installation procedure provided, you may
+ however install the executable manually as described in the
+ installation tree below.
+
+ The directory (visualc) with its files
+ vngspice.sln (project starter) and
+ vngspice.vcproj (project contents)
+ allows to compile and link ngspice with MS Visual Studio 2008.
+ Newer Visual Studio versions will translate the project files
+ into their compatible format (tested with MS Visual Studio 2010).
+
+ /visualc/include contains a dedicated config.h file. It contains the
+ preprocessor definitions required to properly compile the code.
+ strings.h has been necessary during setting up the project.
+
+ Install Microsoft Visual Studio 2008 C++ . The
+ MS VS 2008 C++ Express Edition (which is available at no cost from
+ http://www.microsoft.com/express/product/default.aspx) is adequate.
+
+ Goto /ngspice/visualc.
+
+ Start MS Visual Studio 2008 by double click onto vngspice.sln.
+
+ After MS Visual Studio has opened up, select debug or release version
+ by checking 'Erstellen' , 'Konfigurations-Manager' 'Debug' or 'Release'.
+
+ Start making ngspice (called vngspice.exe) by selecting 'Erstellen' and
+ 'vngspice neu erstellen'.
+
+ Object files will be created and stored in visualc/debug or visualc/release.
+ The executable will be stored to visualc/debug/bin or visualc/release/bin.
+
+ An installation tree (as provided with MINGW make install) and also used by
+ vngspice is (maybe created manually):
+
+ C:\Spice\
+ bin\
+ ngspice.exe
+ nghelp.exe
+ ngmakeidx.exe
+ ngnutmeg.exe
+ cmpp.exe
+ lib\
+ spice\
+ analog.cm
+ digital.cm
+ spice2poly.cm
+ extradev.cm
+ extravt.cm
+ share\
+ info\
+ dir
+ ngspice.info
+ ngspice.info-1
+ ..
+ ngspice.info-10
+ man\
+ man1\
+ ngmultidec.1
+ ngnutmeg.1
+ ngsconvert.1
+ ngspice.1
+ ngspice\
+ helpdir\
+ ngspice.idx
+ ngspice.txt
+ scripts\
+ ciderinit
+ devaxis
+ devload
+ setplot
+ spectrum
+ spinit
+
+ If you intend to install vngspice into another directory, e.g. D:\MySpice,
+ you have to edit /visualc/include/config.h and alter the entries:
+ #define NGSPICEBINDIR "C:/Spice/bin"
+ #define NGSPICEDATADIR "C:/Spice/share/ngspice"
+ to
+ #define NGSPICEBINDIR "D:/MySpice/bin"
+ #define NGSPICEDATADIR "D:/MySpice/share/ngspice"
+
+ If the code model files *.cm are not available, you will get warning messages,
+ but you may use ngspice in the normal way (of course without XSPICE extensions).
+
+
+
+9.3 make ngspice with pure CYGWIN
+
+ If you don't have libdl.a you may need to link libcygwin.a
+ to libdl.a symbolically.
+
+ for example:
+
+ $ cd /lib
+ $ ln -s libcygwin.a libdl.a.
+
+ The procedure of compiling is the same as Linux.
+
+
+9.4 ngspice console app with MINGW or CYGWIN
+
+ Omitting the configure flag --with-wingui will yield a console ngspice.
+ You then will not have any graphics interface. In CYGWIN you may add --with-x
+ for the X11 graphics (not available in mingw). A typical configure command
+ may look like
+ ./configure --enable-adms --enable-xspice --enable-cider --enable-openmp
+ --disable-debug CFLAGS=-m32 LDFLAGS=-m32 prefix=C:/Spice
+ tested with TDM mingw.
+
+
+
+10 NGSPICE COMPILATION UNDER MAC OS X
+ ==================================
+
+10.1 Use precompiled binary package
+ 1. Install an X11 interface (like Xquartz)
+ 2. Install the downloaded NGSPICE package
+ 3. Open a terminal window and start using NGSPICE
+
+10.2 Compile NGSPICE manually from a tarball
+ 1. Install an X11 interface (like Xquartz)
+ 2. Install MacPorts from http://www.macports.org
+ 3. Execute this command:
+ sudo port install bison flex ncurses xorg-libXaw
+ 4. Configure NGSPICE invoking "./configure". A complete set of feature is:
+ ./configure --enable-cider --enable-xspice --enable-openmp --enable-pss --enable-debug=no
+ 5. Compile NGSPICE invoking "make"
+ 6. Install NGSPICE invoking "make install" or "sudo make install"
+
+10.3 Compile NGSPICE manually from git
+ 1. Install an X11 interface (like Xquartz)
+ 2. Install MacPorts from http://www.macports.org
+ 3. Execute this command:
+ sudo port install automake autoconf libtool bison flex ncurses xorg-libXaw
+ 4. Execute this command:
+ ./autogen.sh or ./autogen.sh --adms (if you want to enable ADMS)
+ 5. Configure NGSPICE invoking "./configure". A complete set of feature is:
+ ./configure --enable-cider --enable-xspice --enable-openmp --enable-pss --enable-debug=no
+ ./configure --enable-adms --enable-cider --enable-xspice --enable-openmp --enable-pss --enable-debug=no (if you want to enable ADMS)
+ 6. Compile NGSPICE invoking "make"
+ 7. Install NGSPICE invoking "make install" or "sudo make install"
diff --git a/Windows/spice/doc/NEWS b/Windows/spice/doc/NEWS
new file mode 100644
index 00000000..dcbf695a
--- /dev/null
+++ b/Windows/spice/doc/NEWS
@@ -0,0 +1,578 @@
+Ngspice-26, Jan 4th, 2014
+============
+
+- New features:
+ + fft command may (optionally) use fftw3 library
+ + add nint() rounding function
+ + usage of 'temper' in behavioral devices
+ + check for soa (safe operating area) in several device models
+ + library processing rewritten completely to enhance ngspice
+ compatibility (.lib)
+ + include file processing rewritten to allow nesting and various
+ absolute and relative path names (.inc)
+ + asinh, acosh, atanh functions
+ + shared ngspice option added: ngspice optionally compiles as
+ a shared object or dynamic link library
+ + use a hash table to massively speed up parsing the netlist
+ + implement a very basic .if/.else block
+ + implement a signed power function `pwr' for controlled sources
+ + implement multiplier `m' in F, G source
+ + apply Area Calculation Method (ACM) to the bsim3v3.3 model
+ + implement `tc1', `tc2' instance parameters
+
+- Bug fixes:
+ + many, many ... please see
+ http://sourceforge.net/p/ngspice/ngspice/ci/master/tree/
+ and check the 'history' button on the upper right.
+ + removed memory leaks
+
+
+Ngspice-25, Jan 4th, 2013
+============
+
+- New features:
+ + add temperature coefficients for B source
+ + commands "mdump", "mrdump" to dump matrix to file
+ + allow `time', `temper', and `hertz' in expressions with behavioral R, L, C
+ + Enable ctrl-c to interrupt a simulation also for Windows GUI
+ + tests/bsim4: use the standard CMC model qa check
+ + implement exit code for command "quit"
+ + .nodeset all = value
+ + memristor code model in extradev
+ + new scalable diode model including tunnel component
+ + variable xtrtol may override the XSPICE reduction of trtol
+ + XSPICE example: delta-sigma converter
+ + XSPICE: new d_source model
+ + new option noopac
+ + bsim3: make additonal parameters accessible with @mxx[par]
+ + enable Mac OS X compilation
+ + option reseries = val
+ + commands "snsave", "snload"
+ + update hisim to version 2.7.0, new qa tests
+ + hisimhv update to version 1.2.3, new qa tests
+ + allow Ctrl-d to quit
+ + jfet model temperature extension, tcv and bex parameter
+ + speed up vector handling by hash table for vector address storage and retrieval
+ + update PSS code
+
+
+- Bug fixes:
+ + many, many ... please see
+ http://ngspice.git.sourceforge.net/git/gitweb.cgi?p=ngspice/ngspice;a=shortlog;pg=0
+ + remove memory leaks
+ + update tclspice for MS Windows
+ + adms3 removed due to licensing issues
+
+
+Ngspice-24, Jan 29th, 2012
+============
+
+- New features:
+ + .csparam allows to tranfer a param into a vector in .control ... .endc
+ + functions floor and ceil
+ + syntax Gxxx n1 n2 TABLE {expression} = (x0, y0) (x1, y1) (x2, y2)
+ + syntax Gxxx n1 n2 value={equation} or Exxx n1 n2 value={equation}
+ + variable strict_errorhandling to exit ngspice with exit code 1
+ if any error occurs during circuit parsing
+ + command altermod allows reading from file
+ + command "devhelp" to show available devices and describe device parameters
+ + command "inventory" to print the number of istances of each device.
+ + function cph(vec) delivers phase from a vector without jumps at +-PI
+ + enable 64 bit compilation in MS Visual Studio
+ + --adms3 flag to compile with (experimental) adms code
+ + still very experimental pss code
+ + command 'remcirc' to remove a circuit from the list
+ + command 'wrdata' aknowledges appendwrite and prints complex variables
+ + allow comment lines inside of command files
+ + path variable NGSPICE_INPUT
+ + 'Filesource' code model
+
+- Bug fixes:
+ + More on prototypes, type casts, reordering of functions, compiler warnings
+ + fix a numerical problem in the hisim2 and hisimhv models
+ + plot i(vdd) from a loaded rawfile
+ + fix the guard for device generated internal nodes (via CKTmkVolt())
+ + reduce memory leaks for command 'reset'
+ + parameter processing for nested .subckt
+ + bsim4/b4noi.c: correct init the correlated noise slot in noiseDens and lnNdens vector
+ + Many small bugs
+
+Ngspice-23, June 5th, 2011
+============
+
+- New features:
+ + Reduction of trtol to 1 only if 'A' devices in the circuit and xspice is enabled
+ + command wrs2p to write a s-parameter file using Touchstone vers. 1 format
+ + d_source d_state d_ram, test cases for those xspice codemodels
+ + transient noise simulation added to independent voltage and current sources
+ + Random telegraph noise added to independent voltage and current sources
+ + 'time = nnn' in stop command added
+ + random voltage generator option trrandom to independent voltage and current sources
+ + ngspice build possible in a separate directory (e.g. in ng-spice-rework/release)
+ + update FIND .. WHEN measurements
+ + diode & bjt temperature model update with tlev and tlevc
+ + merge bsim3v1a code with bsim3v0 and bsim3v1s code with bsim3v1
+ + bjt2: removed - all GP extensions of this model are now in the bjt model
+ + HiSIM_HV model vers. 1.2.1 added
+ + bsim3v32: delvto and mulu0 as instance parameters
+ + Replace HiSIM1 by HiSIM_2.5.1_Release_20110407
+
+- Bug fixes:
+ + More on prototypes, type casts, reordering of functions, compiler warnings
+ + allow models like 2N2904 or 2SK136 also in subcircuits
+ + fix sensitvity calculation (for the dc-2+.cir testcase)
+ + allow multiple call to setup w/ correct node collapsing
+ + Many small bugs
+
+Ngspice-22, Sept 26th, 2010
+============
+
+- New features:
+ + OpenMP multicore support for BSIM3, BSIM4, and BSIMSOI4
+ + reinstate {$var} expansion in interactive interpreter
+ + .TITLE line added
+ + update to 'spectrum' script
+ + par('expression') in .four, .plot, .print, .meas, .save commands
+ + command 'option' for use in spinit, .spiceinit, and in scripts
+ + adms procedure updated
+ + new random number generator, random functions sunif() and sgauss()
+ + ngspice manual updated
+
+- Bug fixes:
+ + Major code cleanup to reduce compiler/linker warnings: ansi function prototypes,
+ void/char pointers to named pointers, explicit type casts and many more
+ + Many small bugs
+
+
+Ng-spice-rework-21, Jun3, 13th 2010
+============
+
+- Updated Devices: BSIMSOI 4.3.1
+
+- New features:
+ + Compatibility: C, L, R, devices and E, G sources with expressions
+ Variables HERTZ, TIME, TEMPER added
+ + E, G sources with pwl function
+ + New manual
+ + Plotting with Gnuplot,
+ + Writing wrdata for simple text table to file
+ + .measure improved
+ + transmission line models improved
+
+- Bug fixes:
+ + Many small bugs, memory leaks, memory overflows
+
+Ng-spice-rework-20, November, 16th 2009
+============
+
+Ngspice release 20 is the second release of the simulator in 2009.
+
+- Fixes: model names starting with a number (1n4001) are now correctly parsed.
+ The .global command has been reinstated (it was previously disabled) and
+ error messages now display the corresponding line numberin the input deck.
+- New Features: .measure command for transient, ac and dc analyses (still not
+ complete, e.g. DERIV is missing).
+- Devices: Updated BISM4 model to revision 4.6.5. Added PWL (PieceWise Linear)
+ functionality for B (arbitrary generator) sources.
+
+
+Ng-spice-rework-19, April, 23rd 2009
+============
+
+Ngspice release 19 came early after release 18. It reveals an important work
+in compile scripts, many bug fixes in memory management, interface, and work in device models.
+
+- Compile scripts: tclspice and ADMS compiling fixes. Architecture compiling
+ fixes for SunOS, MS Visual Studio, MINGW, Cygwin.
+- Memory management: fixed memory leaks, modifies memory management for
+ MS Windows, integration of espice bugfixes and enhancements, bug fixes in
+ plots and cli interface.
+- Rework of BSim models, integration of EPFL-EKV model V2.63, ADMS models
+ mextram, hicum0, hicum2.
+
+
+Ng-spice-rework-18
+============
+
+Rework-18 is introduces several new features into ngspice. This is a major
+release that comes after more than three years. During the silent years
+ngspice developers worked in CVS to stabilize and introduce new features
+into the simulator.
+
+- Tclspice simulator library has been merged with ngspice. Now you can
+ compile ngapice or tclspice by asserting a configure switch. See README.tcl
+- New options have been introduced: brief, listing, autostop and scale
+- Support for .lib file has been introduced. This allows the use of
+ third party model libraries in ngspice.
+- .measure statements: avg, integ, rms, max, min, delay, param
+- .global statements t support for global nodes whose name is not expanded
+ when flattening the netlist.
+- .func macros for inlining functions into netlists.
+- Improved the numparam library to support fully parametrized netlists.
+- BSIM model binning.
+- new multi-input gate VCVS using XSPICE extensions.
+
+
+Ng-spice-rework-17
+============
+
+This is a bug fix release. Previous release tarball did not included
+an include file necessary for compiling numparam library.
+
+
+Ng-spice-rework-16
+============
+
+Rework-16 comes out after almost one year of CVS development (from
+15-fixedRC3). This release improves ngspice in three ways:
+
+- Bug fixing: most of the bugs that affected rework-15 have been fixed,
+ thus ngspice is more stable, especially the xspice extension, the
+ subcircuit (X devices) handling and the numparam library.
+
+- New features: netlist syntax has been expandend allowing for end-of-line
+ comments. A ".global" card has beed added to define global nodes, i.e.
+ nodes that are not expanded in subcircuits. It is possible to define TC
+ for resistors on the instance line. The editline library can be used
+ instead of readline (no more GPL license violation).
+
+- Porting: ngspice now works (with xspice extension) on Windows using
+ MINGW/MSYS.
+
+
+Ng-spice-rework-15
+============
+
+Rework-15 release is a giant leap forward for ngspice. It incorporates
+many (read most) of the improvements implemented in tclspice during the
+two years long "sleep" of ngspice and adds many others. The incomplete
+list of new features incorporated are:
+
+ - Xspice simulator (with codemodel dynamic loading support):
+ a mixed signal simulator built upon spice3.
+
+ - Cider simulator:
+ a mixed level simulator built upon spice3.
+
+ - Numparam library:
+ a library that allows for parameter substitution at netlist level.
+
+ - Improved models:
+ Diode model includes periphery effects and high level of injection effects,
+ BJT and BJT2 enhanced.
+ BSIM3 now includes ACM.
+ BSIM4 implementation corrected.
+
+ -New models:
+ VBIC (3 Terminals, no excess phase and thermal network),
+ HiSIM.
+
+ - Frontend leaks closed.
+ Now frontend works as it should.
+
+ - Many new example file.
+
+ - Xgraph plotting program included.
+
+
+Ng-spice-rework-14
+============
+
+This is a major release in terms of bug-fixes. Some enhancements
+have been included: BSIM4 model and support for EKV model. The
+source code for the latter must be obtained from EKV web site
+(see DEVICE for more info). To enable EKV support you have
+to obtain the code first and then use the configure switch
+"--enable-ekv".
+
+The spice code contains an option to debug frontend code, now
+this is available in configure as "--enable-ftedebug".
+
+
+
+Ng-spice-rework-13
+============
+
+This is a major release in terms of fixes and enhancements.
+A garbage collector support has been added. If the configuration
+script detects that you have installed GC (Bohem-Weiser conservative
+garbage collector), it will use it. Some memory leaks have been
+fixed too.
+
+Enhancements to the code comes from Alan's contribute code, a
+description of improvements follows (extracted form Alan's mail):
+
+Output File Format Changes -
+
+ (NOTE: Do not rely on this, we may revert to the old format
+ in the next release).
+
+ Text mode .OP results even though "rawfile" written.
+
+ Internal device nodes are not saved to "rawfile" (reduces
+ file size). Optionally, these internal nodes can be replaced
+ by device currents and saved.
+
+
+DC Convergence Enhancements -
+
+ "Source-Stepping" algorithm modified with a "Dynamic" step size.
+ After each successful step, the node voltages are saved, the
+ source-factor is increased by the step-factor, and the step-factor
+ is increased (for the next step). If the step fails, i.e. the
+ circuit does not converge, the source-factor is set to the value
+ from the previous successful step, the previously stored node
+ voltages are restored, the step-factor is reduced, the source
+ factor is increased by this smaller step-factor, and convergence
+ is attempted again.
+
+ Same thing done for "Gmin-stepping" algorithm.
+
+ "Gshunt" option added. This sets the "diagGmin" variable used in
+ the gmin-stepping algorithm to a non-zero value for the final
+ solution. (Normally this is set to zero for the final solution).
+ This helps for circuits with floating nodes (and for some others
+ too).
+
+ The Gmin implementation across the substrate diodes of MOS1, MOS2,
+ MOS3, MOS6 and BSIM3 devices, and across BJT base-emitter and
+ base-collector diodes, was incorrect. Correcting this dramatically
+ improved DC convergence. (I think this also affects BSIM1 and 2
+ but I haven't fixed them yet !)
+
+ The gm, gmb and gds calculations in the MOS3 model were all wrong.
+ The device equations were fixed, leading to much improved
+ convergence.
+
+ The Vcrit value used for diode voltage limiting was calculated
+ without taking into account the device area (and in some cases
+ without using the temperature corrected saturation current).
+ This could cause floating point overflows, especially in device
+ models designed to be scaled by a small area, e.g. 2u by 2u diodes
+ (area=4e-12). This is now fixed for Diode, BJT, MOS1, MOS2, and
+ MOS3 models.
+
+ The diode voltage limiting was modified to add negative voltage
+ limiting. Negative diode voltages are now limited to 3*Vdp-10,
+ where Vdp is the voltage from the previous iteration. If Vdp is
+ positive, then the voltage is limited to -10V. This prevents some
+ more floating point overflows. (Actually, I'm still playing with
+ the best values for this).
+
+ The Spice3 "fix" for the MOS3 gds discontinuity between the
+ linear and saturated regions only works if the VMAX parameter
+ is non-zero. A "tweak" has been added for the VMAX=0 case.
+
+
+Transient Convergence Enhancements -
+
+ Temperature correction of various diode capacitances was implemented
+ slightly incorrectly, leading to capacitance discontinuities in
+ simulations at temperatures other than nominal. This affected the
+ Diode and MOS3 models.
+
+ A mistake in the implementation of the MOS3 source-bulk capacitance
+ model resulted in a charge storage discontinuity. This has been fixed.
+
+ The level 2 MOSFET model seems to calculate Von and Vth values for
+ the threshold and subthreshold values respectively, but then uses
+ Vbin to calculate the Vdsat voltage used to find the drain current.
+ However, a jump statement uses Von to decide that the device is in
+ the "cutoff" region, which means that when this jump allows the
+ drain current to be calculated, Vdsat can already be well above
+ zero. This leads to a discontinuity of drain current with respect
+ to gate voltage. The code is now modified to use Vbin for the jump
+ decision. It looks like the code should actually use Vth as the
+ threshold voltage, but since other SPICE simulators follow the
+ original Berkeley code, this was left alone.
+
+
+New Model Parameters -
+
+ A device multiplier instance parameter "M" (i.e. M devices in
+ parallel) was added to the MOS1,2,3 and BSIM3 mosfet models.
+
+
+Input Read-in and Checking -
+
+ Numbers beginning with a + sign got the input routine confused.
+ Fixed now.
+
+ Attempts to nodeset (or .IC) non-existent nodes are flagged with a
+ warning.
+
+ PWL statements on Voltage or Current sources are now checked for
+ "non-increasing" time-points at the start of the simulation.
+ Previously each time-point was checked as it was reached during
+ the simulation, which could be very annoying if you made a mistake
+ which caused the simulation to fail after hours of run-time.
+
+ A check which was performed at the end of each sub-circuit expansion
+ was moved to the top level. This check makes sure that all sub-circuits
+ have been defined, but in its original position, it meant that if a
+ sub-circuit included ANY .MODEL statements at all, then ALL the models
+ called in that sub-circuit must also be defined within that
+ sub-circuit. Now SPICE behaves as expected, i.e. a subcircuit may
+ define its own models, but may also use models defined at any level
+ above.
+
+
+Miscellaneous Fixes/Enhancements -
+
+ MOS devices reported only half of the Meyer capacitances, and did not
+ include overlap capacitances, when reporting to the .OP printout, or
+ when storing device capacitances to the "rawfile".
+
+ The ideal switch devices had no time-step control to stop their
+ controlling voltages/currents overshooting the switching thresholds.
+ The time-step control has been modified to use the last two time
+ points to estimate if the next one will move the controlling
+ voltage/current past a switching threshold. If this looks likely,
+ then the time-step is reduced.
+
+ The "rawfile" writing routines have been modified to print the
+ "reference value" to the console during the simulation. This lets
+ the user see exactly how far and how fast the simulation is
+ proceeding.
+
+ .OP printout tidied up a lot to make the printout clearer.
+
+ Analysis order changed to fix a "feature" where, if you ask for
+ a .OP and a .TRAN in the same simulation, the node voltages
+ printed out correspond to the .OP, but the device data was from
+ the last timepoint of the .TRAN
+
+
+Etc. -
+
+ There are other minor bug fixes, and changes to reduce compiler
+ warnings. There are probably some more significant fixes which
+ I've forgotten :-)
+
+
+Ng-spice-rework-12
+============
+Arno did a great work this summer!
+The pole-zero analysis has been corrected. The error was introduced
+in an attempt to eliminate compiler warnings. The source has been
+reworked and info file have been updated. As you may see, a new dir
+called "spicelib" has been created, another step toward the separation
+of the simulator from the frontend.
+
+Ng-spice-rework-11
+============
+
+Resistor code (device) has been modified to conform to spice3 device
+coding standard.
+A new step function (U2) has been introduced.
+Documentation updated.
+
+Ng-spice-rework-10
+============
+
+Added BSIM4 model and closed a couple of serious bugs. Added DEVICES
+file to distribution. This file contains the status of device models
+in this simulator. Read it, this file can save you a lot of time.
+
+Ng-spice-rework-9
+============
+
+Thanks to Arno Peters now all device models are dynamically loaded on
+demand. They are linked as shared libraries. The next step is the
+dlopen() one which will make possible to link devices without any
+recompilation.
+
+
+
+Ng-spice-rework-8
+============
+
+Applied Arno's patch.
+
+From his mail message:
+
+Hi Paolo,
+
+I have prepared a source cleaning patch.
+
+Features:
+
+ + patches don't get polluted with differences between automatically
+ generated Makefile.am files. Usually these make up the biggest part
+ of the patches. This allows me to read the patch on the mailing
+ list instead of sifting through 90% redundant and irrelevant changes.
+
+ + the shell script autogen.sh automatically regenerates the required
+ files if the user has automake, autoconf and libtool installed.
+
+ + this feature is only valuable to developers, not to end users.
+
+
+Usage of this patch, once incorporated:
+
+ # create a working tree to work from
+ cp -a ng-spice-rework-x ng-spice
+
+ [ Changes made to ng-spice ]
+
+ # clean up all the automatically generated files
+ cd ng-spice; make maintainer-clean
+
+ # extract the differences
+ diff -ruN ng-spice-rework-x ng-spice > my.patch
+
+ [ Patch sent to ng-spice mailing list or you ]
+
+ # incorporate changes into the tree
+ cd ng-spice-rework-x; patch -p1 < my.patch
+
+ # update the automatically generated files
+ cd ng-spice-rework-x; sh autogen.sh
+
+
+
+
+Ng-spice-rework-7 (22 Mar 2000)
+============
+
+Bug fix release
+
+
+
+Ng-spice-rework-6 (29 Jan 2000)
+============
+
+This porting includes:
+
+1) BSIM3V3.1 model as level 49. This is the version modified by Serban
+Popescu which understands the M parameter and implements HDIF.
+
+2) BSIM3V3.2 model al Level 50. This is the standard Berkeley version.
+
+3) Now the resistor model can accepts two different values for DC and
+AC resistance.
+
+
+
+Ng-spice-rework-5 and 5_2 (Jan 2000)
+============
+
+Internal development release, buggy and not working.
+
+Ng-spice-rework-4 (22/12/99)
+============
+
+This porting includes a new feature:
+
+1) dynamically loading of some device code as an experimental feature
+for the future GPL simulator. Thanks to Arno Peters and Manu Rouat.
+
+2) Patched the following bug (thanks to Andrew Tuckey for having
+supplied the patch).
+
+ * Wsw (current controlled switch) in subckt, parsing bug.
+ * scale factor in arbitrary source.
+ * bug in noise analysis.
+ * save segmentation faults.
+
+
diff --git a/Windows/spice/doc/README b/Windows/spice/doc/README
new file mode 100644
index 00000000..f5dfecc5
--- /dev/null
+++ b/Windows/spice/doc/README
@@ -0,0 +1,54 @@
+README for NGSPICE
+==================
+
+Ngspice is a mixed-level/mixed-signal circuit simulator. Its code
+is based on three open source software packages: Spice3f5, Cider1b1
+and Xspice.
+
+Spice3 does not need any introduction, is the most popular circuit
+simulator. In over 30 years of its life Spice3 has become a de-facto
+standard for simulating circuits.
+
+Cider couples Spice3f5 circuit level simulator to DSIM device simulator
+to provide greater simulation accuracy of critical devices. DSIM
+devices are described in terms of their structures and materials.
+
+Xspice is an extension to Spice3C1 that provides code modelling support
+and simulation of digital components through an embedded event driven
+algorithm.
+
+Ngspice is, anyway, much more than the simple sum of the packages
+above, as many people contributed to the project with their experience,
+their bug fixes and their improvements. If you are interested, browse
+the site and discover what ngspice offers and what needs. If you think
+you can help, join the development team.
+
+Ngspice is an ongoing project, growing everyday from users contributions,
+suggestions and reports. What we will be able to do depends mostly on
+user interests, contributions and feedback.
+
+
+MAILING LISTS:
+-------------
+
+ There are two mailing lists dedicated to the use and development of ngspice.
+
+ * ngspice-users@lists.sourceforge.net:
+ This list is the list for the users of the ngspice simulator.
+
+ * ngspice-devel@lists.sourceforge.net:
+ ngspice development issues. Developers and "want to be" developers should
+ subscribe here.
+
+ To subscribe the list(s), send a message to:
+ <ngspice-users-subscribe@lists.sourceforge.net>
+ <ngspice-devel-subscribe@lists.sourceforge.net>
+
+
+
+WEB SITEs:
+--------
+
+This project is hosted on Sourceforge.net.
+The home page is http://ngspice.sourceforge.net
+The summary page is http://sourceforge.net/projects/ngspice
diff --git a/Windows/spice/doc/ngspice26-manual.pdf b/Windows/spice/doc/ngspice26-manual.pdf
new file mode 100644
index 00000000..4bd5b091
--- /dev/null
+++ b/Windows/spice/doc/ngspice26-manual.pdf
Binary files differ
diff --git a/Windows/spice/examples/Monte_Carlo/MC_2_circ.sp b/Windows/spice/examples/Monte_Carlo/MC_2_circ.sp
new file mode 100644
index 00000000..bacd07b9
--- /dev/null
+++ b/Windows/spice/examples/Monte_Carlo/MC_2_circ.sp
@@ -0,0 +1,109 @@
+Circuit to perform Monte Carlo simulation in ngspice
+* 25 stage Ring-Osc. using inverters with BSIM3
+
+vin in out dc 0.5 pulse 0.5 0 0.1n 5n 1 1 1
+vdd dd 0 dc 3.3
+vss ss 0 dc 0
+ve sub 0 dc 0
+vpe well 0 dc 3.3
+
+.subckt inv1 dd ss sub well in out
+mn1 out in ss sub n1 w=2u l=0.35u as=3p ad=3p ps=4u pd=4u
+mp1 out in dd well p1 w=4u l=0.35u as=7p ad=7p ps=6u pd=6u
+.ends inv1
+
+.subckt inv5 dd ss sub well in out
+xinv1 dd ss sub well in 1 inv1
+xinv2 dd ss sub well 1 2 inv1
+xinv3 dd ss sub well 2 3 inv1
+xinv4 dd ss sub well 3 4 inv1
+xinv5 dd ss sub well 4 out inv1
+.ends inv5
+
+xinv1 dd ss sub well in out5 inv5
+xinv2 dd ss sub well out5 out10 inv5
+xinv3 dd ss sub well out10 out15 inv5
+xinv4 dd ss sub well out15 out20 inv5
+xinv5 dd ss sub well out20 out inv5
+xinv11 dd 0 sub well out buf inv1
+* output is buf
+cout buf ss 0.2pF
+*
+.options noacct
+
+* The following model parameters are varying statistically:
+* vth0, u0, tox
+* see the AGAUSS function used to define the parameter
+* the deviation is 10%, just for example, not measured
+
+********************************************************************************
+.model n1 nmos
++level=8
++version=3.3.0
++tnom=27.0
++nch=2.498e+17 tox=AGAUSS(9e-09, 9e-09, 10) xj=1.00000e-07
++lint=9.36e-8 wint=1.47e-7
++vth0=AGAUSS(.6322,.6322,10) k1=.756 k2=-3.83e-2 k3=-2.612
++dvt0=2.812 dvt1=0.462 dvt2=-9.17e-2
++nlx=3.52291e-08 w0=1.163e-6
++k3b=2.233
++vsat=86301.58 ua=6.47e-9 ub=4.23e-18 uc=-4.706281e-11
++rdsw=650 u0=AGAUSS(388.3203,388.3203,10) wr=1
++a0=.3496967 ags=.1 b0=0.546 b1=1
++dwg=-6.0e-09 dwb=-3.56e-09 prwb=-.213
++keta=-3.605872e-02 a1=2.778747e-02 a2=.9
++voff=-6.735529e-02 nfactor=1.139926 cit=1.622527e-04
++cdsc=-2.147181e-05
++cdscb=0 dvt0w=0 dvt1w=0 dvt2w=0
++cdscd=0 prwg=0
++eta0=1.0281729e-02 etab=-5.042203e-03
++dsub=.31871233
++pclm=1.114846 pdiblc1=2.45357e-03 pdiblc2=6.406289e-03
++drout=.31871233 pscbe1=5000000 pscbe2=5e-09 pdiblcb=-.234
++pvag=0 delta=0.01
++wl=0 ww=-1.420242e-09 wwl=0
++wln=0 wwn=.2613948 ll=1.300902e-10
++lw=0 lwl=0 lln=.316394 lwn=0
++kt1=-.3 kt2=-.051
++at=22400
++ute=-1.48
++ua1=3.31e-10 ub1=2.61e-19 uc1=-3.42e-10
++kt1l=0 prt=764.3
++noimod=2
++af=1.075e+00 kf=9.670e-28 ef=1.056e+00
++noia=1.130e+20 noib=7.530e+04 noic=-8.950e-13
+**** PMOS ***
+.model p1 pmos
++level=8
++version=3.3.0
++tnom=27.0
++nch=3.533024e+17 tox=AGAUSS(9e-09,9e-09,10) xj=1.00000e-07
++lint=6.23e-8 wint=1.22e-7
++vth0=AGAUSS(-.6732829,-.6732829,10) k1=.8362093 k2=-8.606622e-02 k3=1.82
++dvt0=1.903801 dvt1=.5333922 dvt2=-.1862677
++nlx=1.28e-8 w0=2.1e-6
++k3b=-0.24 prwg=-0.001 prwb=-0.323
++vsat=103503.2 ua=1.39995e-09 ub=1.e-19 uc=-2.73e-11
++rdsw=460 u0=AGAUSS(138.7609,138.7609,10)
++a0=.4716551 ags=0.12
++keta=-1.871516e-03 a1=.3417965 a2=0.83
++voff=-.074182 nfactor=1.54389 cit=-1.015667e-03
++cdsc=8.937517e-04
++cdscb=1.45e-4 cdscd=1.04e-4
++dvt0w=0.232 dvt1w=4.5e6 dvt2w=-0.0023
++eta0=6.024776e-02 etab=-4.64593e-03
++dsub=.23222404
++pclm=.989 pdiblc1=2.07418e-02 pdiblc2=1.33813e-3
++drout=.3222404 pscbe1=118000 pscbe2=1e-09
++pvag=0
++kt1=-0.25 kt2=-0.032 prt=64.5
++at=33000
++ute=-1.5
++ua1=4.312e-9 ub1=6.65e-19 uc1=0
++kt1l=0
++noimod=2
++af=9.970e-01 kf=2.080e-29 ef=1.015e+00
++noia=1.480e+18 noib=3.320e+03 noic=1.770e-13
+.end
+
+.end
diff --git a/Windows/spice/examples/Monte_Carlo/MC_2_control.sp b/Windows/spice/examples/Monte_Carlo/MC_2_control.sp
new file mode 100644
index 00000000..9b9f3606
--- /dev/null
+++ b/Windows/spice/examples/Monte_Carlo/MC_2_control.sp
@@ -0,0 +1,43 @@
+* Perform Monte Carlo simulation in ngspice
+* script for use with 25 stage Ring-Osc. BSIM3
+* circuit is in MC_2_circ.sp
+* edit 'set sourcepath' for your path to circuit file
+* start script by 'ngspice -o MC_2_control.log MC_2_control.sp'
+*
+.control
+ save buf $ we just need output vector buf, save memory by more than 10x
+ let mc_runs = 100 $ number of runs for monte carlo
+ let run = 1 $ number of the actual run
+
+* Where to find the circuit netlist file MC_2_circ.sp
+ set sourcepath = ( D:\Spice_general\ngspice\examples\Monte_Carlo )
+
+* create file for frequency information
+ echo Monte Carlo, frequency of R.O. > MC_frequ.log
+
+* run the simulation loop
+ dowhile run <= mc_runs
+ * without the reset switch there is some strange drift
+ * towards lower and lower frequencies
+ reset
+ set run ="$&run" $ create a variable from the vector
+ set rndseed = $run $ set the rnd seed value to the loop index
+ source MC_2_circ.sp $ load the circuit, including model data
+ tran 15p 200n 0
+ write mc_ring{$run}.out buf $ write each sim output to its own rawfile
+ linearize buf $ lienarize buf to allow fft
+ fft buf $ run fft on vector buf
+ let buf2=db(mag(buf))
+ * find the frequency where buf has its maximum of the fft signal
+ meas sp fft_max MAX_AT buf2 from=0.1G to=0.7G
+ print fft_max >> MC_frequ.log $ print frequency to file
+ destroy all $ delete all output vectors
+ remcirc $ delete circuit
+ let run = run + 1 $ increase loop counter
+ end
+
+ quit
+
+.endc
+
+.end
diff --git a/Windows/spice/examples/Monte_Carlo/MC_ring.sp b/Windows/spice/examples/Monte_Carlo/MC_ring.sp
new file mode 100644
index 00000000..58e5c141
--- /dev/null
+++ b/Windows/spice/examples/Monte_Carlo/MC_ring.sp
@@ -0,0 +1,251 @@
+Perform Monte Carlo simulation in ngspice
+* 25 stage Ring-Osc. BSIM3
+
+vin in out dc 0.5 pulse 0.5 0 0.1n 5n 1 1 1
+vdd dd 0 dc 3.3
+vss ss 0 dc 0
+ve sub 0 dc 0
+vpe well 0 dc 3.3
+
+.subckt inv1 dd ss sub well in out
+mn1 out in ss sub n1 w=2u l=0.35u as=3p ad=3p ps=4u pd=4u
+mp1 out in dd well p1 w=4u l=0.35u as=7p ad=7p ps=6u pd=6u
+.ends inv1
+
+.subckt inv5 dd ss sub well in out
+xinv1 dd ss sub well in 1 inv1
+xinv2 dd ss sub well 1 2 inv1
+xinv3 dd ss sub well 2 3 inv1
+xinv4 dd ss sub well 3 4 inv1
+xinv5 dd ss sub well 4 out inv1
+.ends inv5
+
+xinv1 dd ss sub well in out5 inv5
+xinv2 dd ss sub well out5 out10 inv5
+xinv3 dd ss sub well out10 out15 inv5
+xinv4 dd ss sub well out15 out20 inv5
+xinv5 dd ss sub well out20 out inv5
+xinv11 dd 0 sub well out buf inv1
+cout buf ss 0.2pF
+*
+.options noacct
+.control
+ save buf $ we just need buf, save memory by more than 10x
+ let mc_runs = 10 $ number of runs for monte carlo
+ let run = 0 $ number of actual run
+ set curplot = new $ create a new plot
+ set curplottitle = "Transient outputs"
+ set plot_out = $curplot $ store its name to 'plot_out'
+ set curplot = new $ create a new plot
+ set curplottitle = "FFT outputs"
+ set plot_fft = $curplot $ store its name to 'plot_fft'
+ set curplot = new $ create a new plot
+ set curplottitle = "Oscillation frequency"
+ set max_fft = $curplot $ store its name to 'max_fft'
+ let mc_runsp = mc_runs + 1
+ let maxffts = unitvec(mc_runsp) $ vector for storing max measure results
+ let halfffts = unitvec(mc_runsp)$ vector for storing measure results at -40dB rising
+*
+* define distributions for random numbers:
+* unif: uniform distribution, deviation relativ to nominal value
+* aunif: uniform distribution, deviation absolut
+* gauss: Gaussian distribution, deviation relativ to nominal value
+* agauss: Gaussian distribution, deviation absolut
+ define unif(nom, var) (nom + (nom*var) * sunif(0))
+ define aunif(nom, avar) (nom + avar * sunif(0))
+ define gauss(nom, var, sig) (nom + (nom*var)/sig * sgauss(0))
+ define agauss(nom, avar, sig) (nom + avar/sig * sgauss(0))
+*
+* We want to vary the model parameters vth0, u0, tox, lint, and wint
+* of the BSIM3 model for the NMOS and PMOS transistors.
+* We may obtain the nominal values (nom) by manually extracting them from
+* the parameter set. Here we get them automatically and store them into
+* variables. This has the advantage that you may change the parameter set
+* without having to look up the values again.
+ set n1vth0=@n1[vth0]
+ set n1u0=@n1[u0]
+ set n1tox=@n1[tox]
+ set n1lint=@n1[lint]
+ set n1wint=@n1[wint]
+ set p1vth0=@p1[vth0]
+ set p1u0=@p1[u0]
+ set p1tox=@p1[tox]
+ set p1lint=@p1[lint]
+ set p1wint=@p1[wint]
+*
+* run the simulation loop
+ dowhile run <= mc_runs
+ * without the reset switch there is some strange drift
+ * towards lower and lower frequencies
+ reset
+ * run=0 simulates with nominal parameters
+ if run > 0
+ altermod @n1[vth0]=gauss($n1vth0, 0.1, 3)
+ altermod @n1[u0]=gauss($n1u0, 0.05, 3)
+ altermod @n1[tox]=gauss($n1tox, 0.1, 3)
+ altermod @n1[lint]=gauss($n1lint, 0.1, 3)
+ altermod @n1[wint]=gauss($n1wint, 0.1, 3)
+ altermod @p1[vth0]=gauss($p1vth0, 0.1, 3)
+ altermod @p1[u0]=gauss($p1u0, 0.1, 3)
+ altermod @p1[tox]=gauss($p1tox, 0.1, 3)
+ altermod @p1[lint]=gauss($p1lint, 0.1, 3)
+ altermod @p1[wint]=gauss($p1wint, 0.1, 3)
+ end
+ tran 15p 50n 0
+* select stop and step so that number of data points after linearization is not too
+* close to 8192, which would yield varying number of line length and thus scale for fft.
+*
+* We have to figure out what to do if a single simulation will not converge.
+* Is there a variable which may be set if there is no convergence?
+* Then we might skip this run and continue with a new run. It does not exist for now.
+* So we have to rely on the robustness of the following steps not leading
+* to a seg fault if the tran data are missing.
+*
+ set run ="$&run" $ create a variable from the vector
+ set mc_runs ="$&mc_runs" $ create a variable from the vector
+ echo simulation run no. $run of $mc_runs
+ * save the linearized data for having equal time scales for all runs
+ linearize buf $ linearize only buf, no other vectors needed
+ set dt = $curplot $ store the current plot to dt (tran i+1)
+ setplot $plot_out $ make 'plt_out' the active plot
+ * firstly save the time scale once to become the default scale
+ if run=0
+ let time={$dt}.time
+ end
+ let vout{$run}={$dt}.buf $ store the output vector to plot 'plot_out'
+ setplot $dt $ go back to the previous plot (tran i+1)
+ fft buf $ run fft on vector buf
+ let buf2=db(mag(buf))
+ * find the frequency where buf has its maximum of the fft signal
+ meas sp fft_max MAX_AT buf2 from=0.1G to=0.7G
+ * find the frequency where buf is -40dB at rising fft signal
+ meas sp fft_40 WHEN buf2=-40 RISE=1 from=0.1G to=0.7G
+ * store the fft vector
+ set dt = $curplot $ store the current plot to dt (spec i)
+ setplot $plot_fft $ make 'plot_fft' the active plot
+ if run=0
+ let frequency={$dt}.frequency
+ end
+ let fft{$run}={$dt}.buf $ store the output vector to plot 'plot_fft'
+ * store the measured value
+ setplot $max_fft $ make 'max_fft' the active plot
+ let maxffts[{$run}]={$dt}.fft_max
+ let halfffts[{$run}]={$dt}.fft_40
+* setplot $plot_out
+* The following command does not work here. Why not? Probably not a real copy.
+* destroy $dt $ save memory, we don't need this plot (spec) any more
+ setplot $dt $ go back to the previous plot
+ let run = run + 1
+ end
+***** plotting **********************************************************
+* plot {$plot_out}.allv
+ plot {$plot_out}.vout0 $ just plot the tran output with nominal parameters
+* setplot $plot_fft
+* plot db(mag(ally)) xlimit .1G 1G ylimit -80 10
+ plot db(mag({$plot_fft}.ally)) xlimit .1G 1G ylimit -80 10
+*
+* create a histogram from vector maxffts
+ setplot $max_fft $ make 'max_fft' the active plot
+ set startfreq=400MEG
+ set bin_size=5MEG
+ set bin_count=20
+ compose xvec start=$startfreq step=$bin_size lin=$bin_count $ requires variables as parameters
+ settype frequency xvec
+ let bin_count=$bin_count $ create a vector from the variable
+ let yvec=unitvec(bin_count) $ requires vector as parameter
+ let startfreq=$startfreq
+ let bin_size=$bin_size
+ * put data into the correct bins
+ let run = 0
+ dowhile run < mc_runs
+ set run = "$&run" $ create a variable from the vector
+ let val = maxffts[{$run}]
+ let part = 0
+ * Check if val fits into a bin. If yes, raise bin by 1
+ dowhile part < bin_count
+ if ((val < (startfreq + (part+1)*bin_size)) & (val > (startfreq + part*bin_size)))
+ let yvec[part] = yvec[part] + 1
+ break
+ end
+ let part = part + 1
+ end
+ let run = run + 1
+ end
+ * plot the histogram
+ set plotstyle=combplot
+ plot yvec-1 vs xvec $ subtract 1 because with started with unitvec containing ones
+* calculate jitter
+ let diff40 = (vecmax(halfffts) - vecmin(halfffts))*1e-6
+ echo
+ echo Max. jitter is "$&diff40" MHz
+ rusage
+.endc
+********************************************************************************
+.model n1 nmos
++level=8
++version=3.3.0
++tnom=27.0
++nch=2.498e+17 tox=9e-09 xj=1.00000e-07
++lint=9.36e-8 wint=1.47e-7
++vth0=.6322 k1=.756 k2=-3.83e-2 k3=-2.612
++dvt0=2.812 dvt1=0.462 dvt2=-9.17e-2
++nlx=3.52291e-08 w0=1.163e-6
++k3b=2.233
++vsat=86301.58 ua=6.47e-9 ub=4.23e-18 uc=-4.706281e-11
++rdsw=650 u0=388.3203 wr=1
++a0=.3496967 ags=.1 b0=0.546 b1=1
++dwg=-6.0e-09 dwb=-3.56e-09 prwb=-.213
++keta=-3.605872e-02 a1=2.778747e-02 a2=.9
++voff=-6.735529e-02 nfactor=1.139926 cit=1.622527e-04
++cdsc=-2.147181e-05
++cdscb=0 dvt0w=0 dvt1w=0 dvt2w=0
++cdscd=0 prwg=0
++eta0=1.0281729e-02 etab=-5.042203e-03
++dsub=.31871233
++pclm=1.114846 pdiblc1=2.45357e-03 pdiblc2=6.406289e-03
++drout=.31871233 pscbe1=5000000 pscbe2=5e-09 pdiblcb=-.234
++pvag=0 delta=0.01
++wl=0 ww=-1.420242e-09 wwl=0
++wln=0 wwn=.2613948 ll=1.300902e-10
++lw=0 lwl=0 lln=.316394 lwn=0
++kt1=-.3 kt2=-.051
++at=22400
++ute=-1.48
++ua1=3.31e-10 ub1=2.61e-19 uc1=-3.42e-10
++kt1l=0 prt=764.3
++noimod=2
++af=1.075e+00 kf=9.670e-28 ef=1.056e+00
++noia=1.130e+20 noib=7.530e+04 noic=-8.950e-13
+**** PMOS ***
+.model p1 pmos
++level=8
++version=3.3.0
++tnom=27.0
++nch=3.533024e+17 tox=9e-09 xj=1.00000e-07
++lint=6.23e-8 wint=1.22e-7
++vth0=-.6732829 k1=.8362093 k2=-8.606622e-02 k3=1.82
++dvt0=1.903801 dvt1=.5333922 dvt2=-.1862677
++nlx=1.28e-8 w0=2.1e-6
++k3b=-0.24 prwg=-0.001 prwb=-0.323
++vsat=103503.2 ua=1.39995e-09 ub=1.e-19 uc=-2.73e-11
++rdsw=460 u0=138.7609
++a0=.4716551 ags=0.12
++keta=-1.871516e-03 a1=.3417965 a2=0.83
++voff=-.074182 nfactor=1.54389 cit=-1.015667e-03
++cdsc=8.937517e-04
++cdscb=1.45e-4 cdscd=1.04e-4
++dvt0w=0.232 dvt1w=4.5e6 dvt2w=-0.0023
++eta0=6.024776e-02 etab=-4.64593e-03
++dsub=.23222404
++pclm=.989 pdiblc1=2.07418e-02 pdiblc2=1.33813e-3
++drout=.3222404 pscbe1=118000 pscbe2=1e-09
++pvag=0
++kt1=-0.25 kt2=-0.032 prt=64.5
++at=33000
++ute=-1.5
++ua1=4.312e-9 ub1=6.65e-19 uc1=0
++kt1l=0
++noimod=2
++af=9.970e-01 kf=2.080e-29 ef=1.015e+00
++noia=1.480e+18 noib=3.320e+03 noic=1.770e-13
+.end
diff --git a/Windows/spice/examples/Monte_Carlo/MonteCarlo.sp b/Windows/spice/examples/Monte_Carlo/MonteCarlo.sp
new file mode 100644
index 00000000..608dc4cf
--- /dev/null
+++ b/Windows/spice/examples/Monte_Carlo/MonteCarlo.sp
@@ -0,0 +1,68 @@
+* Effecting a Monte Carlo calculation in ngspice
+V1 N001 0 AC 1 DC 0
+R1 N002 N001 141
+*
+C1 OUT 0 1e-09
+L1 OUT 0 10e-06
+C2 N002 0 1e-09
+L2 N002 0 10e-06
+L3 N003 N002 40e-06
+C3 OUT N003 250e-12
+*
+R2 0 OUT 141
+.control
+ let mc_runs = 5
+ let run = 0
+ set curplot=new $ create a new plot
+ set scratch=$curplot $ store its name to 'scratch'
+ setplot $scratch $ make 'scratch' the active plot
+ let bwh=unitvec(mc_runs) $ create a vector in plot 'scratch' to store bandwidth data
+
+* define distributions for random numbers:
+* unif: uniform distribution, deviation relativ to nominal value
+* aunif: uniform distribution, deviation absolut
+* gauss: Gaussian distribution, deviation relativ to nominal value
+* agauss: Gaussian distribution, deviation absolut
+* limit: if unif. distributed value >=0 then add +avar to nom, else -avar
+ define unif(nom, rvar) (nom + (nom*rvar) * sunif(0))
+ define aunif(nom, avar) (nom + avar * sunif(0))
+ define gauss(nom, rvar, sig) (nom + (nom*rvar)/sig * sgauss(0))
+ define agauss(nom, avar, sig) (nom + avar/sig * sgauss(0))
+* define limit(nom, avar) (nom + ((sgauss(0) ge 0) ? avar : -avar))
+ define limit(nom, avar) (nom + ((sgauss(0) >= 0) ? avar : -avar))
+*
+*
+ dowhile run < mc_runs $ loop starts here
+*
+* alter c1 = unif(1e-09, 0.1)
+* alter c1 = aunif(1e-09, 100e-12)
+* alter c1 = gauss(1e-09, 0.1, 3)
+* alter c1 = agauss(1e-09, 100e-12, 3)
+*
+ alter c1 = unif(1e-09, 0.1)
+ alter l1 = unif(10e-06, 0.1)
+ alter c2 = unif(1e-09, 0.1)
+ alter l2 = unif(10e-06, 0.1)
+ alter l3 = unif(40e-06, 0.1)
+ alter c3 = limit(250e-12, 25e-12)
+*
+ ac oct 100 250K 10Meg
+*
+* measure bandwidth at -10 dB
+ meas ac bw trig vdb(out) val=-10 rise=1 targ vdb(out) val=-10 fall=1
+*
+ set run ="$&run" $ create a variable from the vector
+ set dt = $curplot $ store the current plot to dt
+ setplot $scratch $ make 'scratch' the active plot
+ let vout{$run}={$dt}.v(out) $ store the output vector to plot 'scratch'
+ let bwh[run]={$dt}.bw $ store bw to vector bwh in plot 'scratch'
+ setplot $dt $ go back to the previous plot
+ let run = run + 1
+ end $ loop ends here
+*
+ plot db({$scratch}.allv)
+ echo
+ print {$scratch}.bwh
+.endc
+
+.end
diff --git a/Windows/spice/examples/Monte_Carlo/OpWien.sp b/Windows/spice/examples/Monte_Carlo/OpWien.sp
new file mode 100644
index 00000000..91b45d08
--- /dev/null
+++ b/Windows/spice/examples/Monte_Carlo/OpWien.sp
@@ -0,0 +1,87 @@
+OPWIEN.CIR - OPAMP WIEN-BRIDGE OSCILLATOR
+* http://www.ecircuitcenter.com/circuits/opwien/opwien.htm
+* single simulation run
+* 2 resistors and 2 capacitors of Wien bridge a varied statistically
+* number of variations: varia
+
+* Simulation time
+.param ttime=12000m
+.param varia=100
+.param ttime10 = 'ttime/varia'
+
+* nominal resistor and capacitor values
+.param res = 10k
+.param cn = 16NF
+
+* CURRENT PULSE TO START OSCILLATIONS
+IS 0 3 dc 0 PWL(0US 0MA 10US 0.1MA 40US 0.1MA 50US 0MA 10MS 0MA)
+*
+* RC TUNING
+VR2 r2 0 dc 0 trrandom (2 'ttime10' 0 1) $ Gauss controlling voltage
+*
+*VR2 r2 0 dc 0 trrandom (1 'ttime10' 0 3) $ Uniform within -3 3
+*
+* If Gauss, factor 0.033 is 10% equivalent to 3 sigma
+* if uniform, uniform between +/- 10%
+R2 4 6 R = 'res + 0.033 * res*V(r2)' $ behavioral resistor
+*R2 4 6 'res' $ constant R
+
+VC2 c2 0 dc 0 trrandom (2 'ttime10' 0 1)
+*C2 6 3'cn' $ constant C
+C2 6 3 C = 'cn + 0.033 * cn*V(c2)' $ behavioral capacitor
+
+VR1 r1 0 dc 0 trrandom (2 'ttime10' 0 1)
+*VR1 r1 0 dc 0 trrandom (1 'ttime10' 0 3)
+R1 3 0 R = 'res + 0.033 * res*V(r1)'
+*R1 3 0 'res'
+
+VC1 c1 0 dc 0 trrandom (2 'ttime10' 0 1)
+C1 3 0 C = 'cn + 0.033 * cn*V(c2)'
+*C1 3 0 'cn'
+
+* NON-INVERTING OPAMP
+R10 0 2 10K
+R11 2 5 18K
+XOP 3 2 4 OPAMP1
+* AMPLITUDE STABILIZATION
+R12 5 4 5K
+D1 5 4 D1N914
+D2 4 5 D1N914
+*
+.model D1N914 D(Is=0.1p Rs=16 CJO=2p Tt=12n Bv=100 Ibv=0.4n)
+*
+* OPAMP MACRO MODEL, SINGLE-POLE
+* connections: non-inverting input
+* | inverting input
+* | | output
+* | | |
+.SUBCKT OPAMP1 1 2 6
+* INPUT IMPEDANCE
+RIN 1 2 10MEG
+* DC GAIN (100K) AND POLE 1 (100HZ)
+EGAIN 3 0 1 2 100K
+RP1 3 4 1K
+CP1 4 0 1.5915UF
+* OUTPUT BUFFER AND RESISTANCE
+EBUFFER 5 0 4 0 1
+ROUT 5 6 10
+.ENDS
+*
+* ANALYSIS
+.TRAN 0.05MS 'ttime'
+*
+* VIEW RESULTS
+.control
+option noinit
+run
+plot V(4) 5*V(r1) 5*V(r2) 5*V(c1) 5*V(c2)
+linearize v(4)
+fft v(4)
+let v4mag = mag(v(4))
+plot v4mag
+plot v4mag xlimit 500 1500
+*wrdata histo v4mag
+rusage
+.endc
+
+.END
diff --git a/Windows/spice/examples/TransImpedanceAmp/README b/Windows/spice/examples/TransImpedanceAmp/README
new file mode 100644
index 00000000..ea5c249d
--- /dev/null
+++ b/Windows/spice/examples/TransImpedanceAmp/README
@@ -0,0 +1,41 @@
+This directory holds a SPICE netlist with SPICE2 POLY constructs in
+controlled sources as typically found in vendor models. The circuit
+is just a two-stage transimpedance amp using an AD8009,
+along with some slow components (AD780 and OP177A) to set bias
+points. Vendor models are used for all active components.
+Successfully running this test shows that you have successfully built
+the XSpice stuff with the POLY codemodel, and that you should be able
+to simulate SPICE netlists with embedded vendor models.
+
+To run this netlist, just do the following:
+
+[localhost]# ngspice
+ngspice 1 -> source output.net
+ngspice 2 -> run
+ngspice 3 -> plot Vout2
+
+(Note that when you read in the netlist, you will get a bunch of
+warnings saying stuff like:
+
+Warning -- Level not specified on line "()"
+Using level 1.
+
+Also, ngspice will complain about:
+
+Error on line 50 : r:u101:1 u101:40 0 1e3 tc=7e-6
+ unknown parameter (tc)
+Error on line 283 : .temp 0 25 50 75 100
+ Warning: .TEMP card obsolete - use .options TEMP and TNOM
+
+You can ignore all this stuff . . . .)
+
+You should get a pop-up window showing two square pulses (the second
+smaller than the first) with a little bit of overshoot on the rising
+and falling edges.
+
+This stuff was done as an adjunct to work on the gEDA project.
+Information about gEDA is available at http://geda.seul.org/ .
+Please direct all questions/suggestions/bugs/complaints about XSpice
+extensions to ngspice to Stuart Brorson -- mailto:sdb@cloud9.net.
+
+6.23.2002 -- SDB.
diff --git a/Windows/spice/examples/TransImpedanceAmp/output.net b/Windows/spice/examples/TransImpedanceAmp/output.net
new file mode 100644
index 00000000..d6eb355f
--- /dev/null
+++ b/Windows/spice/examples/TransImpedanceAmp/output.net
@@ -0,0 +1,454 @@
+*********************************************************
+* Spice file generated by gnetlist *
+* spice-SDB version 3.30.2003 by SDB -- *
+* provides advanced spice netlisting capability. *
+* Documentation at http://www.brorson.com/gEDA/SPICE/ *
+*********************************************************
+* Command stuff
+.options gmin=1e-9
+.options method=gear
+.options abstol=1e-11
+* .ac dec 10 10MegHz 10 Ghz
+* Remainder of file
+R112 0 6 1Meg
+R111 0 8 10Meg
+R110 0 7 1Meg
+Rref2in 11 VU780out 25000
+Rref2fb VU2bias+ 11 33
+C201 0 9 1uF
+C202 10 0 1uF
+XU200 0 11 10 9 VU2bias+ OP177A
+R202 10 +5V 22
+R201 -5V 9 22
+Rref1in VU100in- VU780out 9130
+Rref1fb VU1bias+ VU100in- 33
+XU101 +5V 7 0 6 VU780out 8 AD780A
+* AD780A SPICE Macromodel 5/93, Rev. A
+* AAG / PMI
+*
+* This version of the AD780 voltage reference model simulates the worst case
+* parameters of the 'A' grade. The worst case parameters used
+* correspond to those in the data sheet.
+*
+* Copyright 1993 by Analog Devices, Inc.
+*
+* Refer to "README.DOC" file for License Statement. Use of this model
+* indicates your acceptance with the terms and provisions in the License Statement.
+*
+* NODE NUMBERS
+* VIN
+* | TEMP
+* | | GND
+* | | | TRIM
+* | | | | VOUT
+* | | | | | RANGE
+* | | | | | |
+.SUBCKT AD780A 2 3 4 5 6 8
+*
+* BANDGAP REFERENCE
+*
+I1 4 40 DC 1.21174E-3
+R1 40 4 1E3 TC=7E-6
+EN 10 40 42 0 1
+G1 4 10 2 4 4.85668E-9
+F1 4 10 POLY(2) VS1 VS2 (0,2.42834E-5,3.8E-5)
+Q1 2 10 11 QT
+I2 11 4 DC 12.84E-6
+R2 11 3 1E3
+I3 3 4 DC 0
+*
+* NOISE VOLTAGE GENERATOR
+*
+VN1 41 0 DC 2
+DN1 41 42 DEN
+DN2 42 43 DEN
+VN2 0 43 DC 2
+*
+* INTERNAL OP AMP
+*
+G2 4 12 10 20 1.93522E-4
+R3 12 4 2.5837E9
+C1 12 4 6.8444E-11
+D1 12 13 DX
+V1 2 13 DC 1.2
+*
+* SECONDARY POLE @ 508 kHz
+*
+G3 4 14 12 4 1E-6
+R4 14 4 1E6
+C2 14 4 3.1831E-13
+*
+* OUTPUT STAGE
+*
+ISY 2 4 6.8282E-4
+FSY 2 4 V1 -1
+RSY 2 4 500E3
+*
+G4 4 15 14 4 25E-6
+R5 15 4 40E3
+Q2 4 15 16 QP
+I4 2 16 DC 100E-6
+Q3 4 16 18 QP
+R6 18 23 15
+R7 16 21 150E3
+R8 2 17 34.6
+Q4 17 16 19 QN
+R9 21 20 6.46E3
+R10 20 4 6.1E3
+R11 20 5 53E3
+R12 20 8 15.6E3
+I5 5 4 DC 0
+I6 8 4 DC 0
+VS1 21 19 DC 0
+VS2 23 21 DC 0
+L1 21 6 1E-7
+*
+* OUTPUT CURRENT LIMIT
+*
+FSC 15 4 VSC 1
+VSC 2 22 DC 0
+QSC 22 2 17 QN
+*
+.MODEL QT NPN(level=1 IS=1.68E-16 BF=1E4)
+.MODEL QN NPN(level=1 IS=1E-15 BF=1E3)
+.MODEL QP PNP(level=1 IS=1E-15 BF=1E3)
+.MODEL DX D(IS=1E-15)
+.MODEL DEN D(IS=1E-12 RS=2.425E+05 AF=1 KF=6.969E-16)
+.ENDS AD780A
+C101 0 U100V- 1uF
+C102 U100V+ 0 1uF
+XU100 0 VU100in- U100V+ U100V- VU1bias+ OP177A
+* OP177A SPICE Macro-model 12/90, Rev. B
+* JCB / PMI
+*
+* Revision History:
+* REV. B
+* Re-ordered subcircuit call out nodes to put the
+* output node last.
+* Changed Ios from 1E-9 to 0.5E-9
+* Added F1 and F2 to fix short circuit current limit.
+*
+*
+* This version of the OP-177 model simulates the worst case
+* parameters of the 'A' grade. The worst case parameters
+* used correspond to those in the data book.
+*
+*
+* Copyright 1990 by Analog Devices, Inc.
+*
+* Refer to "README.DOC" file for License Statement. Use of this model
+* indicates your acceptance with the terms and provisions in the License Statement.
+*
+* Node assignments
+* non-inverting input
+* | inverting input
+* | | positive supply
+* | | | negative supply
+* | | | | output
+* | | | | |
+.SUBCKT OP177A 1 2 99 50 39
+*
+* INPUT STAGE & POLE AT 6 MHZ
+*
+R1 2 3 5E11
+R2 1 3 5E11
+R3 5 97 0.0606
+R4 6 97 0.0606
+CIN 1 2 4E-12
+C2 5 6 218.9E-9
+I1 4 51 1
+IOS 1 2 0.5E-9
+EOS 9 10 POLY(1) 30 33 10E-6 1
+Q1 5 2 7 QX
+Q2 6 9 8 QX
+R5 7 4 0.009
+R6 8 4 0.009
+D1 2 1 DX
+D2 1 2 DX
+EN 10 1 12 0 1
+GN1 0 2 15 0 1
+GN2 0 1 18 0 1
+*
+EREF 98 0 33 0 1
+EPLUS 97 0 99 0 1
+ENEG 51 0 50 0 1
+*
+* VOLTAGE NOISE SOURCE WITH FLICKER NOISE
+*
+DN1 11 12 DEN
+DN2 12 13 DEN
+VN1 11 0 DC 2
+VN2 0 13 DC 2
+*
+* CURRENT NOISE SOURCE WITH FLICKER NOISE
+*
+DN3 14 15 DIN
+DN4 15 16 DIN
+VN3 14 0 DC 2
+VN4 0 16 DC 2
+*
+* SECOND CURRENT NOISE SOURCE
+*
+DN5 17 18 DIN
+DN6 18 19 DIN
+VN5 17 0 DC 2
+VN6 0 19 DC 2
+*
+* FIRST GAIN STAGE
+*
+R7 20 98 1
+G1 98 20 5 6 119.8
+D3 20 21 DX
+D4 22 20 DX
+E1 97 21 POLY(1) 97 33 -2.4 1
+E2 22 51 POLY(1) 33 51 -2.4 1
+*
+* GAIN STAGE & DOMINANT POLE AT 0.127 HZ
+*
+R8 23 98 1.253E9
+C3 23 98 1E-9
+G2 98 23 20 33 33.3E-6
+V1 97 24 1.8
+V2 25 51 1.8
+D5 23 24 DX
+D6 25 23 DX
+*
+* NEGATIVE ZERO AT -4MHZ
+*
+R9 26 27 1
+C4 26 27 -39.75E-9
+R10 27 98 1E-6
+E3 26 98 23 33 1E6
+*
+* COMMON-MODE GAIN NETWORK WITH ZERO AT 63 HZ
+*
+R13 30 31 1
+L2 31 98 2.52E-3
+G4 98 30 3 33 0.316E-6
+D7 30 97 DX
+D8 51 30 DX
+*
+* POLE AT 2 MHZ
+*
+R14 32 98 1
+C5 32 98 79.5E-9
+G5 98 32 27 33 1
+*
+* OUTPUT STAGE
+*
+R15 33 97 1
+R16 33 51 1
+GSY 99 50 POLY(1) 99 50 0.725E-3 0.0425E-3
+F1 34 0 V3 1
+F2 0 34 V4 1
+R17 34 99 400
+R18 34 50 400
+L3 34 39 2E-7
+G6 37 50 32 34 2.5E-3
+G7 38 50 34 32 2.5E-3
+G8 34 99 99 32 2.5E-3
+G9 50 34 32 50 2.5E-3
+V3 35 34 6.8
+V4 34 36 4.4
+D9 32 35 DX
+D10 36 32 DX
+D11 99 37 DX
+D12 99 38 DX
+D13 50 37 DY
+D14 50 38 DY
+*
+* MODELS USED
+*
+.MODEL QX NPN(level=1 BF=333.3E6)
+.MODEL DX D(IS=1E-15)
+.MODEL DY D(IS=1E-15 BV=50)
+.MODEL DEN D(IS=1E-12, RS=14.61K, KF=2E-17, AF=1)
+.MODEL DIN D(IS=1E-12, RS=7.55E-6, KF=3E-15, AF=1)
+.ENDS
+R102 U100V+ +5V 22
+R101 -5V U100V- 22
+R98 0 VU2bias+ 1K
+R99 0 VU1bias+ 1K
+C95 VU2bias+ 0 100pF
+* C96 0 5 1uF
+* C97 4 0 1uF
+Cphotodiode 0 Vinput 0.9pF
+C99 0 VU1bias+ 100pF
+R25 Vout2 2 250
+C24 Vout1 VU1in- 1pF
+R24 VU1in- 1 150
+* C21 0 3 1uF
+Cc Vout2 VU2in- 1pF
+Rc Vout1 VU2in- 10
+RL 0 Vout2 50
+.TEMP 0 25 50 75 100
+C12 2 0 1.5pF
+C11 0 V2- .01uF
+C10 V2+ 0 .01uF
+R13 +5V V2+ 5
+R12 V2- -5V 5
+R26 2 VU2in- 150
+R11 Vout2 VU2in- 180
+XU2 VU2bias+ VU2in- V2+ V2- Vout2 AD8009an
+XU1 VU1bias+ VU1in- V1+ V1- Vout1 AD8009an
+***** AD8009 SPICE model Rev B SMR/ADI 8-21-97
+
+* Copyright 1997 by Analog Devices, Inc.
+
+* Refer to "README.DOC" file for License Statement. Use of this model
+* indicates your acceptance with the terms and provisions in the License Statement.
+
+* rev B of this model corrects a problem in the output stage that would not
+* correctly reflect the output current to the voltage supplies
+
+* This model will give typical performance characteristics
+* for the following parameters;
+
+* closed loop gain and phase vs bandwidth
+* output current and voltage limiting
+* offset voltage (is static, will not vary with vcm)
+* ibias (again, is static, will not vary with vcm)
+* slew rate and step response performance
+* (slew rate is based on 10-90% of step response)
+* current on output will be reflected to the supplies
+* vnoise, referred to the input
+* inoise, referred to the input
+
+* distortion is not characterized
+
+* Node assignments
+* non-inverting input
+* | inverting input
+* | | positive supply
+* | | | negative supply
+* | | | | output
+* | | | | |
+.SUBCKT AD8009an 1 2 99 50 28
+
+* input stage *
+
+q1 50 3 5 qp1
+q2 99 5 4 qn1
+q3 99 3 6 qn2
+q4 50 6 4 qp2
+i1 99 5 1.625e-3
+i2 6 50 1.625e-3
+cin1 1 98 2.6e-12
+cin2 2 98 1e-12
+v1 4 2 0
+
+* input error sources *
+
+eos 3 1 poly(1) 20 98 2e-3 1
+fbn 2 98 poly(1) vnoise3 50e-6 1e-3
+fbp 1 98 poly(1) vnoise3 50e-6 1e-3
+
+* slew limiting stage *
+
+fsl 98 16 v1 1
+dsl1 98 16 d1
+dsl2 16 98 d1
+dsl3 16 17 d1
+dsl4 17 16 d1
+rsl 17 18 0.22
+vsl 18 98 0
+
+* gain stage *
+
+f1 98 7 vsl 2
+rgain 7 98 2.5e5
+cgain 7 98 1.25e-12
+dcl1 7 8 d1
+dcl2 9 7 d1
+vcl1 99 8 1.83
+vcl2 9 50 1.83
+
+gcm 98 7 poly(2) 98 0 30 0 0 1e-5 1e-5
+
+* second pole *
+
+epole 14 98 7 98 1
+rpole 14 15 1
+cpole 15 98 2e-10
+
+* reference stage *
+
+eref 98 0 poly(2) 99 0 50 0 0 0.5 0.5
+
+ecmref 30 0 poly(2) 1 0 2 0 0 0.5 0.5
+
+* vnoise stage *
+
+rnoise1 19 98 4.6e-3
+vnoise1 19 98 0
+vnoise2 21 98 0.53
+dnoise1 21 19 dn
+
+fnoise1 20 98 vnoise1 1
+rnoise2 20 98 1
+
+* inoise stage *
+
+rnoise3 22 98 8.18e-6
+vnoise3 22 98 0
+vnoise4 24 98 0.575
+dnoise2 24 22 dn
+
+fnoise2 23 98 vnoise3 1
+rnoise4 23 98 1
+
+* buffer stage *
+
+gbuf 98 13 15 98 1e-2
+rbuf 98 13 1e2
+
+* output current reflected to supplies *
+
+fcurr 98 40 voc 1
+vcur1 26 98 0
+vcur2 98 27 0
+dcur1 40 26 d1
+dcur2 27 40 d1
+
+* output stage *
+
+vo1 99 90 0
+vo2 91 50 0
+fout1 0 99 poly(2) vo1 vcur1 -9.27e-3 1 -1
+fout2 50 0 poly(2) vo2 vcur2 -9.27e-3 1 -1
+gout1 90 10 13 99 0.5
+gout2 91 10 13 50 0.5
+rout1 10 90 2
+rout2 10 91 2
+voc 10 28 0
+rout3 28 98 1e6
+dcl3 13 11 d1
+dcl4 12 13 d1
+vcl3 11 10 -0.445
+vcl4 10 12 -0.445
+
+.model qp1 pnp(level=1)
+.model qp2 pnp(level=1)
+.model qn1 npn(level=1)
+.model qn2 npn(level=1)
+.model d1 d()
+.model dn d(af=1 kf=1e-8)
+.ends
+R6 1 Vout1 250
+C3 1 0 1.5pF
+V3 VU1in- Vinput DC 0V
+* .INCLUDE /home/sdb/OpticalReceiver/Simulation.cmd
+R5 -5V Vout1 1K
+I1 0 Vinput AC 1 PWL (0ns 0mA 1nS 0mA 1.01nS 1mA 10nS 1mA 10.01nS 0mA 20nS 0mA 20.01nS .1mA 30nS .1mA 30.01nS 0mA)
+R4 V1- -5V 5
+C2 0 V1- .01uF
+V2 -5V 0 DC -5V
+R2 VU1in- Vout1 180
+V1 +5V 0 DC 5V
+C1 V1+ 0 .01uF
+R1 +5V V1+ 5
+* When run, this SPICE file should output a square waveform
+* with a little overshoot
+.tran 0.05ns 40ns
+.plot tran Vout2
+.END
diff --git a/Windows/spice/examples/TransmissionLines/cpl1_4_line.sp b/Windows/spice/examples/TransmissionLines/cpl1_4_line.sp
new file mode 100644
index 00000000..7c46b655
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/cpl1_4_line.sp
@@ -0,0 +1,63 @@
+MOSdriver -- 6.3inch 4 lossy line CPL model -- C load
+
+m1 1 2 6 1 mp1p0 w = 36.0u l=1.0u
+m2 1 3 7 1 mp1p0 w = 36.0u l=1.0u
+m3 1 4 8 1 mp1p0 w = 36.0u l=1.0u
+m4 1 10 5 1 mp1p0 w = 36.0u l=1.0u
+m5 1 11 13 1 mp1p0 w = 36.0u l=1.0u
+m6 1 12 13 1 mp1p0 w = 36.0u l=1.0u
+
+m7 0 2 6 0 mn0p9 w = 18.0u l=0.9u
+m8 0 3 7 0 mn0p9 w = 18.0u l=0.9u
+m9 0 4 8 0 mn0p9 w = 18.0u l=0.9u
+m10 0 10 5 0 mn0p9 w = 18.0u l=0.9u
+m11 14 11 13 0 mn0p9 w = 18.0u l=0.9u
+m12 0 12 14 0 mn0p9 w = 18.0u l=0.9u
+
+*
+CN5 5 0 0.025398e-12
+CN6 6 0 0.007398e-12
+CN7 7 0 0.007398e-12
+CN8 8 0 0.007398e-12
+CN9 9 0 0.097398e-12
+CN10 10 0 0.007398e-12
+CN11 11 0 0.003398e-12
+CN12 12 0 0.004398e-12
+CN13 13 0 0.008398e-12
+CN14 14 0 0.005398e-12
+
+*
+P1 5 6 7 8 0 9 10 11 12 0 pline
+
+*
+*
+vdd 1 0 DC 5.0
+v3 3 0 DC 5.0
+*
+VS1 2 0 PULSE ( 0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS)
+VS2 4 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+*
+.control
+TRAN 0.2N 47.9N 0 0.05N
+plot V(5) V(6) V(7) V(8) V(9) V(10) V(11) V(12)
+.endc
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55 LAMBDA=0.00 CGSO=0 CGDO=0
++CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61 LAMBDA=0.00 CGSO=0 CGDO=0
++CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL PLINE cpl
++R=0.03 0 0 0
++ 0.03 0 0
++ 0.03 0
++ 0.03
++L=9e-9 5.4e-9 0 0
++ 9e-9 5.4e-9 0
++ 9e-9 5.4e-9
++ 9e-9
++G=0 0 0 0 0 0 0 0 0 0
++C=3.5e-13 -3e-14 0 0
++ 3.5e-13 -3e-14 0
++ 3.5e-13 -3e-14
++ 3.5e-13
++length=6.3
+.END
diff --git a/Windows/spice/examples/TransmissionLines/cpl2_2_line.sp b/Windows/spice/examples/TransmissionLines/cpl2_2_line.sp
new file mode 100644
index 00000000..713e3334
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/cpl2_2_line.sp
@@ -0,0 +1,46 @@
+MOSdriver -- 24inch 2 lossy lines CPL model -- C load
+
+m1 0 268 299 0 mn0p9 w = 18.0u l=1.0u
+m2 299 267 748 0 mn0p9 w = 18.0u l=1.0u
+m3 0 168 648 0 mn0p9 w = 18.0u l=0.9u
+m4 1 268 748 1 mp1p0 w = 36.0u l=1.0u
+m5 1 267 748 1 mp1p0 w = 36.0u l=1.0u
+m6 1 168 648 1 mp1p0 w = 36.0u l=1.0u
+*
+CN648 648 0 0.025398e-12
+CN651 651 0 0.007398e-12
+CN748 748 0 0.025398e-12
+CN751 751 0 0.009398e-12
+CN299 299 0 0.005398e-12
+*
+P1 648 748 0 651 751 0 PLINE
+*
+vdd 1 0 DC 5.0
+VK 267 0 DC 5.0
+*
+*VS 168 0 PWL 4 15.9N 0.0 16.1n 5.0 31.9n 5.0 32.1n 0.0
+*VS 268 0 PWL 4 15.9N 0.0 16.1n 5.0 31.9n 5.0 32.1n 0.0
+*
+VS1 168 0 PULSE (0 5 15.9N 0.2N 0.2N 15.8N 60N)
+VS2 268 0 PULSE (0 5 15.9N 0.2N 0.2N 15.8N 60N)
+*
+.control
+TRAN 0.2N 47.9NS 0 1N
+plot v(648) v(651) v(751)
+.endc
+*
+.MODEL PLINE CPL
++R=0.2 0
++ 0.2
++L=9.13e-9 3.3e-9
++ 9.13e-9
++G=0 0 0
++C=3.65e-13 -9e-14
++ 3.65e-13
++length=24
+******************* MODEL SPECIFICATION **********************
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55 LAMBDA=0.00 CGSO=0 CGDO=0
++ CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61 LAMBDA=0.00 CGSO=0 CGDO=0
++ CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.END
diff --git a/Windows/spice/examples/TransmissionLines/cpl3_4_line.sp b/Windows/spice/examples/TransmissionLines/cpl3_4_line.sp
new file mode 100644
index 00000000..d5715481
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/cpl3_4_line.sp
@@ -0,0 +1,37 @@
+6.3inch 4 lossy lines CPL model -- R load
+
+Ra 1 2 1K
+Rb 0 3 1K
+Rc 0 4 1K
+Rd 0 5 1K
+Re 6 0 1Meg
+Rf 7 0 1Meg
+Rg 8 0 1Meg
+Rh 9 0 1Meg
+*
+P1 2 3 4 5 0 6 7 8 9 0 LOSSYMODE
+*
+*
+VS1 1 0 PWL(15.9NS 0.0 16.1Ns 5.0 31.9Ns 5.0 32.1Ns 0.0)
+*
+.control
+TRAN 0.2NS 50NS 0 0.05N
+PLOT V(1) V(2) V(6) V(7) V(8) V(9)
+.endc
+.MODEL LOSSYMODE CPL
++R=0.3 0 0 0
++ 0.3 0 0
++ 0.3 0
++ 0.3
++L=9e-9 5.4e-9 0 0
++ 9e-9 5.4e-9 0
++ 9e-9 5.4e-9
++ 9e-9
++G=0 0 0 0 0 0 0 0 0 0
++C=3.5e-13 -3e-14 0 0
++ 3.5e-13 -3e-14 0
++ 3.5e-13 -3e-14
++ 3.5e-13
++length=6.3
+
+.END
diff --git a/Windows/spice/examples/TransmissionLines/cpl4_txl_2_line.sp b/Windows/spice/examples/TransmissionLines/cpl4_txl_2_line.sp
new file mode 100644
index 00000000..986c9b63
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/cpl4_txl_2_line.sp
@@ -0,0 +1,378 @@
+BJTdriver -- 2in st. lin -- 20in coupled line CPL -- 2in st line -- DiodeCircuit
+
+* This unclassified circuit is from Raytheon, courtesy Gerry Marino.
+*
+* _______
+* -------- 2in _________________ 2in | |
+* | BJT |______| |______|Diode|
+* | |------| |------| |
+* | Drvr | line | 2-wire | line |rcvr.|
+* -------- | coupled | |_____|
+* | transmission |
+* |-/\/\/\/\----| line |-------\/\/\/\/\----|
+* | 50ohms | | 50ohms |
+* | | | |
+* Ground ----------------- Ground
+*
+*
+* Each inch of the lossy line is modelled by 10 LRC lumps in the
+* Raytheon model.
+
+* The line parameters (derived from the Raytheon input file) are:
+* L = 9.13nH per inch
+* C = 3.65pF per inch
+* R = 0.2 ohms per inch
+* K = 0.482 [coupling coefficient; K = M/sqrt(L1*L2)]
+* Cc = 1.8pF per inch
+*
+* coupled ltra model generated using the standalone program
+* multi_decomp
+
+* the circuit
+*tran 0.1ns 60ns
+
+v1 1 0 0v pulse(0 4 1ns 1ns 1ns 20ns 40ns)
+*v1 1 0 4v pulse(4 0 1ns 1ns 1ns 20ns 40ns)
+vcc 10 0 5v
+
+* series termination
+*x1 1 oof 10 bjtdrvr
+*rseries oof 2 50
+
+x1 1 2 10 bjtdrvr
+rt1 3 0 50
+
+
+* convolution model
+x2 2 3 4 5 conv2wetcmodel
+
+* rlc segments model
+*x2 2 3 4 5 rlc2wetcmodel
+
+x3 4 dioload
+rt2 5 0 50
+
+
+
+.model qmodn npn(bf=100 rb=100 cje=0.09375pF cjc=0.28125pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpd npn(bf=100 rb=100 cje=0.08187pF cjc=0.2525pF is=1e-12
++pe=0.5 pc=0.5)
+.model qmodpdmine npn(bf=100 rb=100 cje=0.08187pF cjc=0.05pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model dmod1 d(n=2.25 is=1.6399e-4 bv=10)
+
+.model dmod2 d
+
+.model dmod d(vj=0.3v)
+
+.model diod1 d(tt=0.75ns vj=0.6 rs=909 bv=10)
+
+.model diod2 d(tt=0.5ns vj=0.3 rs=100 bv=10)
+
+.options acct reltol=1e-3 abstol=1e-12
+.control
+tran 0.1ns 60ns 0 0.35N
+plot v(2) v(4) v(5)
+.endc
+
+* bjt driver - 19=input, 268=output, 20=vcc; wierd node numbers from
+* the Raytheon file
+
+.subckt bjtdrvr 19 268 20
+q1 22 18 13 qmodn
+q2 18 16 13 qmodn
+qd2 21 9 0 qmodn
+q4 14 14 0 qmodn
+q3 16 15 14 qmodpd
+q5 8 13 17 qmodn
+q6 25 12 0 qmodn
+q7 6 17 0 qmodpd
+qd1 26 10 0 qmodn
+q8 7 11 10 qmodn
+*q10 268 17 0 qmodpd
+q10 268 17 0 qmodpdmine
+q9 7 10 268 qmodn
+
+d1 0 19 dmod1
+d2 18 19 dmod2
+d3 13 19 dmod
+dq1 18 22 dmod
+dq2 16 18 dmod
+d502 9 21 dmod
+dq3 15 16 dmod
+d10 24 8 dmod
+d4 15 6 dmod
+dq6 12 25 dmod
+dq7 17 6 dmod
+dd1 17 10 dmod
+d7 11 6 dmod
+dd2 17 26 dmod
+d9 23 6 dmod
+dq8 11 7 dmod
+d501 17 268 dmod
+dq9 10 7 dmod
+d14 20 27 dmod
+d8 0 268 dmod
+
+r1 18 20 6k
+r2 22 20 2.2k
+r4 0 13 7k
+rd1 9 13 2k
+rd2 21 13 3k
+r3 16 20 10k
+r5 15 20 15k
+r9 0 17 4k
+r6 24 20 750
+r10 12 17 2k
+r12 24 11 1.5k
+r11 25 17 3k
+r15 23 20 10k
+r13 0 10 15k
+r14 7 27 12
+
+.ends bjtdrvr
+
+* subckt dioload - diode load: input=28, output=4, vcc=5
+
+.subckt dioload 28
+*comment out everything in dioload except d5 and r503, and watch
+* the difference in results obtained between a tran 0.1ns 20ns and
+* a tran 0.01ns 20ns
+vccint 5 0 5v
+
+c1 28 0 5pF
+r503 0 4 5.55
+r4 0 28 120k
+r5 1 5 7.5k
+
+d5 4 28 diod2
+d1 1 28 diod1
+d4 2 0 diod1
+d3 3 2 diod1
+d2 1 3 diod1
+.ends dioload
+
+* subckt rlclump - one RLC lump of the lossy line
+
+.subckt rlclump 1 2
+*r1 1 3 0.02
+*c1 3 0 0.365pF
+*l1 3 2 0.913nH
+
+l1 1 3 0.913nH
+c1 2 0 0.365pF
+r1 3 2 0.02
+
+*r1 1 3 0.01
+*c1 3 0 0.1825pF
+*l1 3 4 0.4565nH
+*r2 4 5 0.01
+*c2 5 0 0.1825pF
+*l2 5 2 0.4565nH
+
+*c1 1 0 0.365pF
+*l1 1 2 0.913nH
+.ends lump
+
+.subckt rlconeinch 1 2
+x1 1 3 rlclump
+x2 3 4 rlclump
+x3 4 5 rlclump
+x4 5 6 rlclump
+x5 6 7 rlclump
+x6 7 8 rlclump
+x7 8 9 rlclump
+x8 9 10 rlclump
+x9 10 11 rlclump
+x10 11 2 rlclump
+.ends rlconeinch
+
+.subckt rlctwoinch 1 2
+x1 1 3 rlconeinch
+x2 3 2 rlconeinch
+.ends rlctwoinch
+
+.subckt rlcfourinch 1 2
+x1 1 3 rlconeinch
+x2 3 4 rlconeinch
+x3 4 5 rlconeinch
+x4 5 2 rlconeinch
+.ends rlcfourinch
+
+.subckt rlcfiveinch 1 2
+x1 1 3 rlconeinch
+x2 3 4 rlconeinch
+x3 4 5 rlconeinch
+x4 5 6 rlconeinch
+x5 6 2 rlconeinch
+.ends rlcfiveinch
+
+.subckt rlctwentyrlcfourinch 1 2
+x1 1 3 rlcfiveinch
+x2 3 4 rlcfiveinch
+x3 4 5 rlcfiveinch
+x4 5 6 rlcfiveinch
+x5 6 2 rlcfourinch
+.ends rlctwentyrlcfourinch
+
+.subckt rlclumpstub A B C D
+x1 A int1 rlcfiveinch
+x2 int1 int2 rlcfiveinch
+x3 int2 1 rlcfiveinch
+x4 1 2 rlcfourinch
+x5 1 int3 rlcfiveinch
+x6 int3 B rlconeinch
+x7 2 C rlcfiveinch
+x8 2 D rlcfourinch
+.ends rlclumpstub
+
+.subckt ltrastub A B C D
+yy1 A 0 1 0 ylline15in
+yy2 1 0 B 0 ylline6in
+yy3 1 0 2 0 ylline4in
+yy4 2 0 C 0 ylline5in
+yy5 2 0 D 0 ylline4in
+.ends ltrastub
+
+*modelling using R and lossless lines
+
+*5 segments per inch
+.model yllfifth txl r=0 g=0 l=9.13e-9 c=3.65e-12 length=0.2
+
+.subckt xlump 1 2
+y1 1 0 3 0 yllfifth
+r1 2 3 0.04
+.ends xlump
+
+.subckt xoneinch 1 2
+x1 1 3 xlump
+x2 3 4 xlump
+x3 4 5 xlump
+x4 5 6 xlump
+x5 6 2 xlump
+*x5 6 7 xlump
+*x6 7 8 xlump
+*x7 8 9 xlump
+*x8 9 10 xlump
+*x9 10 11 xlump
+*x10 11 2 xlump
+.ends xoneinch
+
+.subckt xFourinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 2 xoneinch
+.ends xfourinch
+
+.subckt xfiveinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 6 xoneinch
+x5 6 2 xoneinch
+.ends xfiveinch
+
+.subckt xlumpstub A B C D
+x1 A int1 xfiveinch
+x2 int1 int2 xfiveinch
+x3 int2 1 xfiveinch
+x4 1 2 xfourinch
+x5 1 int3 xfiveinch
+x6 int3 B xoneinch
+x7 2 C xfiveinch
+x8 2 D xfourinch
+.ends xlumpstub
+
+* modelling a 2 wire coupled system using RLC lumps
+* 10 segments per inch
+*
+* 1---xxxxx----2
+* 3---xxxxx----4
+
+.subckt rlc2wlump 1 3 2 4
+l1 1 5 0.913nH
+c1 2 0 0.365pF
+r1 5 2 0.02
+l2 3 6 0.913nH
+c2 4 0 0.365pF
+r2 6 4 0.02
+cmut 2 4 0.18pF
+k12 l1 l2 0.482
+.ends rlc2wlump
+
+.subckt rlc2woneinch 1 2 3 4
+x1 1 2 5 6 rlc2wlump
+x2 5 6 7 8 rlc2wlump
+x3 7 8 9 10 rlc2wlump
+x4 9 10 11 12 rlc2wlump
+x5 11 12 13 14 rlc2wlump
+x6 13 14 15 16 rlc2wlump
+x7 15 16 17 18 rlc2wlump
+x8 17 18 19 20 rlc2wlump
+x9 19 20 21 22 rlc2wlump
+x10 21 22 3 4 rlc2wlump
+.ends rlc2woneinch
+
+.subckt rlc2wfiveinch 1 2 3 4
+x1 1 2 5 6 rlc2woneinch
+x2 5 6 7 8 rlc2woneinch
+x3 7 8 9 10 rlc2woneinch
+x4 9 10 11 12 rlc2woneinch
+x5 11 12 3 4 rlc2woneinch
+.ends rlc2wfiveinch
+
+.subckt rlc2wtwentyinch 1 2 3 4
+x1 1 2 5 6 rlc2wfiveinch
+x2 5 6 7 8 rlc2wfiveinch
+x3 7 8 9 10 rlc2wfiveinch
+x4 9 10 3 4 rlc2wfiveinch
+.ends rlc2wtwentyinch
+
+.subckt rlc2wetcmodel 1 2 3 4
+x1 1 5 rlctwoinch
+x2 5 2 6 4 rlc2wtwentyinch
+x3 6 3 rlctwoinch
+.ends rlc2wetcmodel
+
+* Subcircuit conv2wtwentyinch
+* conv2wtwentyinch is a subcircuit that models a 2-conductor transmission line with
+* the following parameters: l=9.13e-09, c=3.65e-12, r=0.2, g=0,
+* inductive_coeff_of_coupling k=0.482, inter-line capacitance cm=1.8e-12,
+* length=20. Derived parameters are: lm=4.40066e-09, ctot=5.45e-12.
+*
+* It is important to note that the model is a simplified one - the
+* following assumptions are made: 1. The self-inductance l, the
+* self-capacitance ctot (note: not c), the series resistance r and the
+* parallel capacitance g are the same for all lines, and 2. Each line
+* is coupled only to the two lines adjacent to it, with the same
+* coupling parameters cm and lm. The first assumption imply that edge
+* effects have to be neglected. The utility of these assumptions is
+* that they make the sL+R and sC+G matrices symmetric, tridiagonal and
+* Toeplitz, with useful consequences.
+*
+* It may be noted that a symmetric two-conductor line will be
+* accurately represented by this model.
+
+* swec model
+.model plines cpl
++R=0.2 0
++ 0.2
++L=9.13e-9 4.4e-9
++ 9.13e-9
++G=0 0 0
++C=5.45e-12 -1.8e-12
++ 5.45e-12
++length=20
+
+.model yconvtwoinch txl r=0.2 g=0 l=9.13e-9 c=3.65e-12 length=2.0
+.subckt conv2wetcmodel 1 2 3 4
+y1 1 0 5 0 yconvtwoinch
+p2 5 2 0 6 4 0 plines
+y2 6 0 3 0 yconvtwoinch
+.ends conv2wetcmodel
+
+.end
diff --git a/Windows/spice/examples/TransmissionLines/cpl_ibm1.sp b/Windows/spice/examples/TransmissionLines/cpl_ibm1.sp
new file mode 100644
index 00000000..1077d00e
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/cpl_ibm1.sp
@@ -0,0 +1,82 @@
+6-line coupled multiconductor with ECL drivers
+vemm mm 0 DC -0.4
+vepp pp 0 DC 0.4
+vein_left lin 0 PULSE (-0.4 0.4 0N 1N 1N 7N 200N)
+vein_right rin 0 PULSE (-0.4 0.4 2N 1N 1N 7N 200N)
+
+* upper 2 lines
+x1 lin 0 1 1outn ECL
+x2 mm 0 2 2outn ECL
+x7 7 0 7r 7routn ECL
+x8 8 0 8r 8routn ECL
+
+c7r 7r 0 0.1P
+c8r 8r 0 0.1P
+
+* lower 2 lines
+x11 pp 0 11 11outn ECL
+x12 rin 0 12 12outn ECL
+x5 5 0 5l 5loutn ECL
+x6 6 0 6l 6loutn ECL
+
+c5l 5l 0 0.1P
+c6l 6l 0 0.1P
+
+p1 1 2 3 4 5 6 0 7 8 9 10 11 12 0 pline
+
+.model pline cpl
++C = 0.900000P -0.657947P -0.0767356P -0.0536544P -0.0386514P -0.0523990P
++ 1.388730P -0.607034P -0.0597635P -0.0258851P -0.0273442P
++ 1.39328P -0.625675P -0.0425551P -0.0319791P
++ 1.07821P -0.255048P -0.0715824P
++ 1.06882P -0.692091P
++ 0.900000P
++L = 0.868493E-7 0.781712E-7 0.748428E-7 0.728358E-7 0.700915E-7 0.692178E-7
++ 0.866074E-7 0.780613E-7 0.748122E-7 0.711591E-7 0.701023E-7
++ 0.865789E-7 0.781095E-7 0.725431E-7 0.711986E-7
++ 0.867480E-7 0.744242E-7 0.725826E-7
++ 0.868022E-7 0.782377E-7
++ 0.868437E-7
++R = 0.2 0 0 0 0 0
++ 0.2 0 0 0 0
++ 0.2 0 0 0
++ 0.2 0 0
++ 0.2 0
++ 0.2
++G = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++
++length = 2
+
+*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+.SUBCKT ECL EIN GND 9 8
+* Input-GND-OUTP-OUTN
+RIN 1 2 0.077K
+REF 5 6 0.077K
+R1 7 N 1.0K
+R2 P 3 0.4555K
+R3 P 4 0.4555K
+R4 8 N 0.615K
+R5 9 N 0.615K
+RL1 8 GND 0.093K
+RL2 9 GND 0.093K
+LIN EIN 1 0.01U
+LREF 5 GND 0.01U
+CIN 1 GND 0.68P
+CL1 8 GND 1P
+CL2 9 GND 1P
+Q1 3 2 7 JCTRAN
+Q2 4 6 7 JCTRAN
+Q3 P 3 8 JCTRAN
+Q4 P 4 9 JCTRAN
+VEP P GND DC 1.25
+VEN N GND DC -3
+.ENDS ECL
+
+.control
+TRAN 0.1N 20N
+plot V(3) V(5) V(8) V(11) V(12)
+.endc
+.MODEL JCTRAN NPN BF=150 VAF=20 IS=4E-17 RB=300 RC=100 CJE=30F CJC=30F
++ CJS=40F VJE=0.6 VJC=0.6 VJS=0.6 MJE=0.5 MJC=0.5
++ MJS=0.5 TF=16P TR=1N
+.END
diff --git a/Windows/spice/examples/TransmissionLines/cpl_ibm2.sp b/Windows/spice/examples/TransmissionLines/cpl_ibm2.sp
new file mode 100644
index 00000000..8aeff85d
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/cpl_ibm2.sp
@@ -0,0 +1,22 @@
+Simple coupled transmissionlines
+VES IN 0 PULSE (0 1 0N 1.5N 1.5N 4.5N 200N)
+R1 IN V1 50
+R2 V2 0 10
+p1 V1 V2 0 V3 V4 0 cpl1
+.model cpl1 cpl
++R = 0.5 0
++ 0.5
++L = 247.3e-9 31.65e-9
++ 247.3e-9
++C = 31.4e-12 -2.45e-12
++ 31.4e-12
++G = 0 0 0
++length = 0.3048
+*length = 0.6096
+R3 V3 0 100
+R4 V4 0 100
+.control
+TRAN 0.1N 20N
+plot v(in) v(v1) v(v3)
+.endc
+.END
diff --git a/Windows/spice/examples/TransmissionLines/cpl_ibm3.sp b/Windows/spice/examples/TransmissionLines/cpl_ibm3.sp
new file mode 100644
index 00000000..0a0d5e22
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/cpl_ibm3.sp
@@ -0,0 +1,70 @@
+Mixed single and coupled transmission lines
+c1g 1 0 1P
+l11a 1 1a 6e-9
+r1a7 1a 7 0.025K
+rin6 in 6 0.075K
+l67 6 7 10e-9
+c7g 7 0 1P
+P2 1 7 0 2 8 0 PLINE
+.MODEL PLINE CPL
++R = 2.25 0
++ 2.25
++L = 0.6e-6 0.05e-6
++ 0.6e-6
++G = 0 0 0
++C = 1.2e-9 -0.11e-9
++ 1.2e-9
++length = 0.03
+c2g 2 0 0.5P
+r2g 2 0 0.05K
+r23 2 3 0.025K
+l34 3 4 5e-9
+c4g 4 0 2P
+l89 8 9 10e-9
+c9g 9 0 1P
+Y1 9 0 10 0 txline
+.model txline txl R = 1 L =0.6e-6 G = 0 C= 1.0e-9 length=0.04
+l1011 10 11 10e-9
+c11g 11 0 0.5P
+r11g 11 0 0.05K
+r1112 11 12 0.025K
+l1213 12 13 5e-9
+c13g 13 0 2P
+r1116 11 16 0.025K
+l1617 16 17 5e-9
+c17g 17 0 2P
+P1 4 2 13 17 0 5 14 15 18 0 PLINE1
+
+.MODEL PLINE1 CPL
++R = 3.5 0 0 0
++ 3.5 0 0
++ 3.5 0
++ 3.5
++L =
++1e-6 0.11e-6 0.03e-6 0
++ 1e-6 0.11e-6 0.03e-6
++ 1e-6 0.11e-6
++ 1e-6
++G = 0 0 0 0 0 0 0 0 0 0
++C =
++1.5e-9 -0.17e-9 -0.03e-9 0
++ 1.5e-9 -0.17e-9 -0.03e-9
++ 1.5e-9 -0.17e-9
++ 1.5e-9
++length = 0.02
+
+D1 5 0 dmod
+D2 14 0 dmod
+D3 15 0 dmod
+D4 18 0 dmod
+
+.model dmod d
+
+VES in 0 PULSE (0 5 0 1.1ns 0.1ns 0.9ns 200ns)
+
+.control
+TRAN 0.2N 10.0N
+plot v(3) v(6) v(7) v(8) v(11) v(15)
+.endc
+
+.END
diff --git a/Windows/spice/examples/TransmissionLines/ltra1_1_line.sp b/Windows/spice/examples/TransmissionLines/ltra1_1_line.sp
new file mode 100644
index 00000000..2d9c93bb
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra1_1_line.sp
@@ -0,0 +1,19 @@
+MOSdriver -- lossy line LTRA model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+o1 2 0 3 0 lline
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.control
+TRAN 0.2N 47N 0 0.1N
+plot v(2) v(3) ylimit -0.5 5
+.endc
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.model lline ltra rel=1 r=12.45 g=0 l=8.972e-9 c=0.468e-12
++len=16 steplimit compactrel=1.0e-3 compactabs=1.0e-14
+.end
diff --git a/Windows/spice/examples/TransmissionLines/ltra1_4_line.sp b/Windows/spice/examples/TransmissionLines/ltra1_4_line.sp
new file mode 100644
index 00000000..8d30a757
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra1_4_line.sp
@@ -0,0 +1,144 @@
+MOSdriver -- 6.3inch 4 lossy line LTRA model -- C load
+
+m1 1 2 6 1 mp1p0 w = 36.0u l=1.0u
+m2 1 3 7 1 mp1p0 w = 36.0u l=1.0u
+m3 1 4 8 1 mp1p0 w = 36.0u l=1.0u
+m4 1 10 5 1 mp1p0 w = 36.0u l=1.0u
+m5 1 11 13 1 mp1p0 w = 36.0u l=1.0u
+m6 1 12 13 1 mp1p0 w = 36.0u l=1.0u
+
+m7 0 2 6 0 mn0p9 w = 18.0u l=0.9u
+m8 0 3 7 0 mn0p9 w = 18.0u l=0.9u
+m9 0 4 8 0 mn0p9 w = 18.0u l=0.9u
+m10 0 10 5 0 mn0p9 w = 18.0u l=0.9u
+m11 14 11 13 0 mn0p9 w = 18.0u l=0.9u
+m12 0 12 14 0 mn0p9 w = 18.0u l=0.9u
+
+
+*
+CN5 5 0 0.025398e-12
+CN6 6 0 0.007398e-12
+CN7 7 0 0.007398e-12
+CN8 8 0 0.007398e-12
+CN9 9 0 0.097398e-12
+CN10 10 0 0.007398e-12
+CN11 11 0 0.003398e-12
+CN12 12 0 0.004398e-12
+CN13 13 0 0.008398e-12
+CN14 14 0 0.005398e-12
+
+*
+* Subcircuit test
+* test is a subcircuit that models a 4-conductor transmission line with
+* the following parameters: l=9e-09, c=2.9e-13, r=0.3, g=0,
+* inductive_coeff_of_coupling k=0.6, inter-line capacitance cm=3e-14,
+* length=6.3. Derived parameters are: lm=5.4e-09, ctot=3.5e-13.
+*
+* It is important to note that the model is a simplified one - the
+* following assumptions are made: 1. The self-inductance l, the
+* self-capacitance ctot (note: not c), the series resistance r and the
+* parallel capacitance g are the same for all lines, and 2. Each line
+* is coupled only to the two lines adjacent to it, with the same
+* coupling parameters cm and lm. The first assumption implies that edge
+* effects have to be neglected. The utility of these assumptions is
+* that they make the sL+R and sC+G matrices symmetric, tridiagonal and
+* Toeplitz, with useful consequences (see "Efficient Transient
+* Simulation of Lossy Interconnect", by J.S. Roychowdhury and
+* D.O Pederson, Proc. DAC 91).
+
+* It may be noted that a symmetric two-conductor line is
+* represented accurately by this model.
+
+* Subckt node convention:
+*
+* |--------------------------|
+* 1-----| |-----n+1
+* 2-----| |-----n+2
+* : | n-wire multiconductor | :
+* : | line | :
+* n-1-----|(node 0=common gnd plane) |-----2n-1
+* n-----| |-----2n
+* |--------------------------|
+
+
+* Lossy line models
+.model mod1_test ltra rel=1.2 nocontrol r=0.3 l=2.62616456193e-10 g=0 c=3.98541019688e-13 len=6.3
+.model mod2_test ltra rel=1.2 nocontrol r=0.3 l=5.662616446e-09 g=0 c=3.68541019744e-13 len=6.3
+.model mod3_test ltra rel=1.2 nocontrol r=0.3 l=1.23373835171e-08 g=0 c=3.3145898046e-13 len=6.3
+.model mod4_test ltra rel=1.2 nocontrol r=0.3 l=1.7737383521e-08 g=0 c=3.01458980439e-13 len=6.3
+
+* subcircuit m_test - modal transformation network for test
+.subckt m_test 1 2 3 4 5 6 7 8
+v1 9 0 0v
+v2 10 0 0v
+v3 11 0 0v
+v4 12 0 0v
+f1 0 5 v1 0.371748033738
+f2 0 5 v2 -0.601500954587
+f3 0 5 v3 0.601500954587
+f4 0 5 v4 -0.371748036544
+f5 0 6 v1 0.60150095443
+f6 0 6 v2 -0.371748035044
+f7 0 6 v3 -0.371748030937
+f8 0 6 v4 0.601500957402
+f9 0 7 v1 0.601500954079
+f10 0 7 v2 0.37174803072
+f11 0 7 v3 -0.371748038935
+f12 0 7 v4 -0.601500955482
+f13 0 8 v1 0.371748035626
+f14 0 8 v2 0.601500956073
+f15 0 8 v3 0.601500954504
+f16 0 8 v4 0.371748032386
+e1 13 9 5 0 0.371748033909
+e2 14 13 6 0 0.601500954587
+e3 15 14 7 0 0.601500955639
+e4 1 15 8 0 0.371748036664
+e5 16 10 5 0 -0.60150095443
+e6 17 16 6 0 -0.371748035843
+e7 18 17 7 0 0.371748032386
+e8 2 18 8 0 0.601500957319
+e9 19 11 5 0 0.601500955131
+e10 20 19 6 0 -0.371748032169
+e11 21 20 7 0 -0.371748037896
+e12 3 21 8 0 0.601500954513
+e13 22 12 5 0 -0.371748035746
+e14 23 22 6 0 0.60150095599
+e15 24 23 7 0 -0.601500953534
+e16 4 24 8 0 0.371748029317
+.ends m_test
+
+* Subckt test
+.subckt test 1 2 3 4 5 6 7 8
+x1 1 2 3 4 9 10 11 12 m_test
+o1 9 0 13 0 mod1_test
+o2 10 0 14 0 mod2_test
+o3 11 0 15 0 mod3_test
+o4 12 0 16 0 mod4_test
+x2 5 6 7 8 13 14 15 16 m_test
+.ends test
+*
+x1 5 6 7 8 9 10 11 12 test
+*
+*
+vdd 1 0 PULSE (0 5 0Ns 0.1Ns 0.1Ns 600Ns 800Ns)
+v3 3 0 PULSE (0 5 0Ns 0.1Ns 0.1Ns 600Ns 800Ns)
+
+.model mn0p9 nmos LEVEL=1 vto=0.8V kp=48u gamma=0.3 phi=0.55 lambda=0.00
++ PHI=0.55 LAMBDA=0.00 CGSO=0 CGDO=0 CGBO=0
++ CJ=0 CJSW=0 TOX=18000N NSUB=1E16 LD=0.0U
+
+.model mp1p0 pmos vto=-0.8V kp=21u gamma=0.45 phi=0.61 lambda=0.00
++ PHI=0.61 LAMBDA=0.00 CGSO=0 CGDO=0 CGBO=0
++ CJ=0 CJSW=0 TOX=18000N NSUB=3E16 LD=0.0U
+
+VS1 2 0 PULSE (0 5 15.9Ns 0.2Ns 0.2Ns 15.8Ns 32Ns)
+VS2 4 0 PULSE (0 5 15.9Ns 0.2Ns 0.2Ns 15.8Ns 32Ns)
+
+.control
+TRAN 0.1N 47.9N
+plot v(5) v(6) v(7) v(8) v(9) v(10) v(11) v(12)
+.endc
+*
+
+.END
+
diff --git a/Windows/spice/examples/TransmissionLines/ltra2_2_line.sp b/Windows/spice/examples/TransmissionLines/ltra2_2_line.sp
new file mode 100644
index 00000000..2a4ceaa7
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra2_2_line.sp
@@ -0,0 +1,24 @@
+MOSdriver -- 2 lossy lines LTRA model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+m1 0 3 4 0 mn0p9 w = 18.0u l=0.9u
+m2 1 3 4 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+CN4 4 0 0.025398e-12
+CN5 5 0 0.007398e-12
+o1 2 0 3 0 lline
+o2 4 0 5 0 lline
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.control
+TRAN 0.2N 47N 0 0.1N
+plot v(2) v(3) v(4) v(5)
+.endc
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.model lline ltra rel=1 r=12.45 g=0 l=8.972e-9 c=0.468e-12
++len=16 steplimit compactrel=1.0e-3 compactabs=1.0e-14
+.end
diff --git a/Windows/spice/examples/TransmissionLines/ltra3_2_line.sp b/Windows/spice/examples/TransmissionLines/ltra3_2_line.sp
new file mode 100644
index 00000000..1a756520
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra3_2_line.sp
@@ -0,0 +1,98 @@
+MOSdriver -- 24inch 2 lossy lines LTRA model -- C load
+
+m1 0 268 299 0 mn0p9 w = 18.0u l=1.0u
+m2 299 267 748 0 mn0p9 w = 18.0u l=1.0u
+m3 0 168 648 0 mn0p9 w = 18.0u l=0.9u
+m4 1 268 748 1 mp1p0 w = 36.0u l=1.0u
+m5 1 267 748 1 mp1p0 w = 36.0u l=1.0u
+m6 1 168 648 1 mp1p0 w = 36.0u l=1.0u
+
+*
+CN648 648 0 0.025398e-12
+CN651 651 0 0.007398e-12
+CN748 748 0 0.025398e-12
+CN751 751 0 0.009398e-12
+CN299 299 0 0.005398e-12
+*
+* Subcircuit test
+* test is a subcircuit that models a 2-conductor transmission line with
+* the following parameters: l=9.13e-09, c=2.75e-13, r=0.2, g=0,
+* inductive_coeff_of_coupling k=0.36144, inter-line capacitance cm=9e-14,
+* length=24. Derived parameters are: lm=3.29995e-09, ctot=3.65e-13.
+*
+* It is important to note that the model is a simplified one - the
+* following assumptions are made: 1. The self-inductance l, the
+* self-capacitance ctot (note: not c), the series resistance r and the
+* parallel capacitance g are the same for all lines, and 2. Each line
+* is coupled only to the two lines adjacent to it, with the same
+* coupling parameters cm and lm. The first assumption implies that edge
+* effects have to be neglected. The utility of these assumptions is
+* that they make the sL+R and sC+G matrices symmetric, tridiagonal and
+* Toeplitz, with useful consequences (see "Efficient Transient
+* Simulation of Lossy Interconnect", by J.S. Roychowdhury and
+* D.O Pederson, Proc. DAC 91).
+
+* It may be noted that a symmetric two-conductor line is
+* represented accurately by this model.
+
+* Subckt node convention:
+*
+* |--------------------------|
+* 1-----| |-----n+1
+* 2-----| |-----n+2
+* : | n-wire multiconductor | :
+* : | line | :
+* n-1-----|(node 0=common gnd plane) |-----2n-1
+* n-----| |-----2n
+* |--------------------------|
+
+
+* Lossy line models
+.model mod1_test ltra rel=1.2 nocontrol r=0.2 l=5.83005279316e-09 g=0 c=4.55000000187e-13 len=24
+.model mod2_test ltra rel=1.2 nocontrol r=0.2 l=1.24299471863e-08 g=0 c=2.75000000373e-13 len=24
+
+* subcircuit m_test - modal transformation network for test
+.subckt m_test 1 2 3 4
+v1 5 0 0v
+v2 6 0 0v
+f1 0 3 v1 0.707106779721
+f2 0 3 v2 -0.707106782652
+f3 0 4 v1 0.707106781919
+f4 0 4 v2 0.707106780454
+e1 7 5 3 0 0.707106780454
+e2 1 7 4 0 0.707106782652
+e3 8 6 3 0 -0.707106781919
+e4 2 8 4 0 0.707106779721
+.ends m_test
+
+* Subckt test
+.subckt test 1 2 3 4
+x1 1 2 5 6 m_test
+o1 5 0 7 0 mod1_test
+o2 6 0 8 0 mod2_test
+x2 3 4 7 8 m_test
+.ends test
+*
+x1 648 748 651 751 test
+*
+*
+vdd 1 0 DC 5.0
+VK 267 0 DC 5.0
+*
+VS1 168 0 PULSE (0 5 15.9N 0.2N 0.2N 15.8N 60N)
+VS2 268 0 PULSE (0 5 15.9N 0.2N 0.2N 15.8N 60N)
+*
+.control
+TRAN 0.2N 47.9NS
+PLOT v(648) v(651) v(751)
+.endc
+*
+.model mn0p9 nmos LEVEL=1 vto=0.8V kp=48u gamma=0.3 phi=0.55 lambda=0.0
++ PHI=0.55 LAMBDA=0.00 CGSO=0 CGDO=0 CGBO=0
++ CJ=0 CJSW=0 TOX=18000N NSUB=1E16 LD=0.0U
+
+.model mp1p0 pmos LEVEL=1 vto=-0.8V kp=21u gamma=0.45 phi=0.61 lambda=0.0
++ PHI=0.61 LAMBDA=0.00 CGSO=0 CGDO=0 CGBO=0
++ CJ=0 CJSW=0 TOX=18000N NSUB=3E16 LD=0.0U
+
+.END
diff --git a/Windows/spice/examples/TransmissionLines/ltra4_1_line.sp b/Windows/spice/examples/TransmissionLines/ltra4_1_line.sp
new file mode 100644
index 00000000..8dc8ada6
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra4_1_line.sp
@@ -0,0 +1,239 @@
+ BJTdriver -- 24inch lossy line LTRA model -- DiodeCircuit
+
+* This unclassified circuit is from Raytheon, courtesy Gerry Marino.
+* It consists of a BJT driver connected by a 24 inch lossy line to a
+* passive load consisting mostly of diodes. Each inch
+* of the lossy line is modelled by 10 LRC lumps in the Raytheon
+* model.
+
+* The line parameters (derived from the Raytheon input file) are:
+* L = 9.13nH per inch
+* C = 3.65pF per inch
+* R = 0.2 ohms per inch
+
+* the circuit
+
+v1 1 0 0v pulse(0 4 1ns 1ns 1ns 20ns 40ns)
+
+vcc 10 0 5v
+*rseries 1 2 5
+x1 1 2 10 bjtdrvr
+*t1 2 0 3 0 z0=50.0136 td=4.38119ns rel=10
+o2 2 0 3 0 lline1
+*x2 2 3 oneinch
+*x2 100 101 twentyfourinch
+*x2 100 101 xtwentyfourinch
+vtest1 2 100 0
+vtest2 101 3 0
+x3 3 4 10 dioload
+*rl 3 0 5
+*dl 0 3 diod2
+
+.model lline1 ltra rel=1 r=0.2 g=0 l=9.13e-9 c=3.65e-12 len=24 steplimit
+
+.model qmodn npn(bf=100 rb=100 cje=0.09375pF cjc=0.28125pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpd npn(bf=100 rb=100 cje=0.08187pF cjc=0.2525pF is=1e-12
++pe=0.5 pc=0.5)
+.model qmodpdmine npn(bf=100 rb=100 cje=0.08187pF cjc=0.05pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model dmod1 d(n=2.25 is=1.6399e-4 bv=10)
+
+.model dmod2 d
+
+.model dmod d(vj=0.3v)
+
+.model diod1 d(tt=0.75ns vj=0.6 rs=909 bv=10)
+
+.model diod2 d(tt=0.5ns vj=0.3 rs=100 bv=10)
+
+.options acct
++reltol=1e-3 abstol=1e-14
+.control
+tran 0.1ns 60ns
+plot v(1) v(2) v(3)
+.endc
+
+* bjt driver - 19=input, 268=output, 20=vcc; wierd node numbers from
+* the Raytheon file
+
+.subckt bjtdrvr 19 268 20
+q1 22 18 13 qmodn
+q2 18 16 13 qmodn
+qd2 21 9 0 qmodn
+q4 14 14 0 qmodn
+q3 16 15 14 qmodpd
+q5 8 13 17 qmodn
+q6 25 12 0 qmodn
+q7 6 17 0 qmodpd
+qd1 26 10 0 qmodn
+q8 7 11 10 qmodn
+q10 268 17 0 qmodpdmine
+*q10 268 17 0 qmodpd
+q9 7 10 268 qmodn
+
+d1 0 19 dmod1
+d2 18 19 dmod2
+d3 13 19 dmod
+dq1 18 22 dmod
+dq2 16 18 dmod
+d502 9 21 dmod
+dq3 15 16 dmod
+d10 24 8 dmod
+d4 15 6 dmod
+dq6 12 25 dmod
+dq7 17 6 dmod
+dd1 17 10 dmod
+d7 11 6 dmod
+dd2 17 26 dmod
+d9 23 6 dmod
+dq8 11 7 dmod
+d501 17 268 dmod
+dq9 10 7 dmod
+d14 20 27 dmod
+d8 0 268 dmod
+
+r1 18 20 6k
+r2 22 20 2.2k
+r4 0 13 7k
+rd1 9 13 2k
+rd2 21 13 3k
+r3 16 20 10k
+r5 15 20 15k
+r9 0 17 4k
+r6 24 20 750
+r10 12 17 2k
+r12 24 11 1.5k
+r11 25 17 3k
+r15 23 20 10k
+r13 0 10 15k
+r14 7 27 12
+
+.ends bjtdrvr
+
+* subckt dioload - diode load: input=28, output=4, vcc=5
+
+.subckt dioload 28 4 5
+*comment out everything in dioload except d5 and r503, and watch
+* the difference in results obtained between a tran 0.1ns 20ns and
+* a tran 0.01ns 20ns
+c1 28 0 5pF
+r503 0 4 5.55
+r4 0 28 120k
+r5 1 5 7.5k
+
+d5 4 28 diod2
+d1 1 28 diod1
+d4 2 0 diod1
+d3 3 2 diod1
+d2 1 3 diod1
+.ends dioload
+
+* subckt lump - one RLC lump of the lossy line
+
+*10 segments per inch
+.subckt lump 1 2
+*r1 1 3 0.02
+*c1 3 0 0.365pF
+*l1 3 2 0.913nH
+
+l1 1 3 0.913nH
+c1 2 0 0.365pF
+r1 3 2 0.02
+
+*r1 1 3 0.01
+*c1 3 0 0.1825pF
+*l1 3 4 0.4565nH
+*r2 4 5 0.01
+*c2 5 0 0.1825pF
+*l2 5 2 0.4565nH
+
+*c1 1 0 0.365pF
+*l1 1 2 0.913nH
+.ends lump
+
+.subckt oneinch 1 2
+x1 1 3 lump
+x2 3 4 lump
+x3 4 5 lump
+x4 5 6 lump
+x5 6 7 lump
+x6 7 8 lump
+x7 8 9 lump
+x8 9 10 lump
+x9 10 11 lump
+x10 11 2 lump
+.ends oneinch
+
+.subckt fourinch 1 2
+x1 1 3 oneinch
+x2 3 4 oneinch
+x3 4 5 oneinch
+x4 5 2 oneinch
+.ends fourinch
+
+.subckt fiveinch 1 2
+x1 1 3 oneinch
+x2 3 4 oneinch
+x3 4 5 oneinch
+x4 5 6 oneinch
+x5 6 2 oneinch
+.ends fiveinch
+
+.subckt twentyfourinch 1 2
+x1 1 3 fiveinch
+x2 3 4 fiveinch
+x3 4 5 fiveinch
+x4 5 6 fiveinch
+x5 6 2 fourinch
+.ends twentyfourinch
+
+*modelling using R and lossless lines
+*5 segments per inch
+.model llfifth ltra nocontrol noprint rel=10 r=0 g=0 l=9.13e-9
++c=3.65e-12 len=0.2 steplimit quadinterp
+.subckt xlump 1 2
+o1 1 0 3 0 llfifth
+r1 2 3 0.04
+.ends xlump
+
+.subckt xoneinch 1 2
+x1 1 3 xlump
+x2 3 4 xlump
+x3 4 5 xlump
+x4 5 6 xlump
+x5 6 2 xlump
+*x5 6 7 xlump
+*x6 7 8 xlump
+*x7 8 9 xlump
+*x8 9 10 xlump
+*x9 10 11 xlump
+*x10 11 2 xlump
+.ends xoneinch
+
+.subckt xfourinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 2 xoneinch
+.ends xfourinch
+
+.subckt xfiveinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 6 xoneinch
+x5 6 2 xoneinch
+.ends xfiveinch
+
+.subckt xtwentyfourinch 1 2
+x1 1 3 xfiveinch
+x2 3 4 xfiveinch
+x3 4 5 xfiveinch
+x4 5 6 xfiveinch
+x5 6 2 xfourinch
+.ends xtwentyfourinch
+
+.end
diff --git a/Windows/spice/examples/TransmissionLines/ltra5_1_line.sp b/Windows/spice/examples/TransmissionLines/ltra5_1_line.sp
new file mode 100644
index 00000000..35459404
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra5_1_line.sp
@@ -0,0 +1,530 @@
+ Example 3 for interconnect simulation
+
+* From neug1, Mosaic aluminum lines. 2um thick, 11um wide. Assuming
+* 10um above the ground.
+* Material: aluminum; resistivity (sigma) = 2.74uohm-cm = 2.74e-8 ohm-m
+* Dielectric: SiO2, dielectric constant (epsilon) =3.7
+* epsilon0 = 8.85e-12 MKS units
+* mu0 = 4e-7*PI
+* speed of light in free space = 1/sqrt(mu0*epsilon0) = 2.9986e8 MKS units
+*
+* Line parameter calculations:
+* capacitance: parallel plate
+* C = epsilon*epsilon0 * A / l
+* C = 3.7*8.85e-12 * 11e-6 * 1(metre) / 10e-6 = 36.02e-12 F/m
+* + 30% = 46.8e-12 F/m = 0.468pF/cm
+*
+* C_freespace = 46.8e-12/epsilon = 12.65e-12 F/m
+* speed of light in free space v0 = 2.9986e8 = 1/sqrt(L0*C0)
+* => L0 = 1/C0*v0^2
+* L0 = 1/(12.65e-12 * 8.9916e16) = 1/113.74e4 = 0.008792e-4 H/m
+* = 0.8792 uH/m = 8.792nH/cm
+*
+* R = rho * l / A = 2.74e-8 * 1 / (11e-6*2e-6) = 1245.45 ohms/m
+* = 12.45ohms/cm
+*
+* transmission line parameters:
+* nominal z0 = sqrt(L/C) = 137 ohms
+* td = sqrt(LC) = 64.14e-12 secs/cm = 0.064ns/cm
+*
+*
+
+
+vcc vcc 0 5
+
+v1 1 0 0v pulse(0 5 0.1ns 0.1ns 0.1ns 1ns 100ns)
+rs 1 2 10
+xdrv 1 2 vcc bjtdrvr
+xrcv 3 4 vcc bjtdrvr
+xrcv 3 4 vcc dioload
+d1 3 vcc diod
+d2 0 3 diod
+cl 3 0 1pF
+o1 2 0 3 0 lline
+*x1 2 3 sixteencm
+x1 2 3 xonecm
+
+.model diod d
+.model lline ltra rel=1.8 r=12.45 g=0 l=8.792e-9 c=0.468e-12 len=16 steplimit
+
+.control
+* 1cm
+* 2cm
+* 4cm
+* 6cm
+* 8cm
+* 10cm
+* 12cm
+*tran 0.001ns 15ns 0 0.1ns
+* 24cm
+tran 0.001ns 10ns 0 0.1ns
+* onecm10
+*tran 0.001ns 10ns 0 0.01ns
+plot v(1) v(2) v(3)
+.endc
+
+
+* 1. define the subckt r10 to be one tenth of the resistance per cm.
+* 2. define the subckt onecm to be one of onecm10 (modelled using
+* 10 segments), onecm8, onecm4, onecm2 and lump1. Then use
+* the subckts onecm, fourcm, fivecm, tencm, twelvecm,
+* twentyfourcm in the circuit. The line is modelled as rlc segments.
+* 3. define the subckt xonecm to be one of xonecm10, xonecm8,
+* xonecm4, xonecm2 and xlump1. Use the subckts xonecm,
+* xfourcm, xfivecm, xtencm, xtwelvecm, xtwentyfourcm in the
+* circuit. The line will be modelled as r-lossless lumps.
+
+.subckt xonecm 1 2
+*x1 1 2 xlump1
+x1 1 2 xonecm4
+.ends xonecm
+
+.subckt onecm 1 2
+*x1 1 2 lump1
+x1 1 2 onecm4
+.ends onecm
+
+.subckt r10 1 2
+r1 1 2 1.245
+.ends r10
+
+* ECL driver and diode receiver models - from Raytheon
+
+.model qmodn npn(bf=100 rb=100 cje=0.09375pF cjc=0.28125pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpd npn(bf=100 rb=100 cje=0.08187pF cjc=0.2525pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpdmine npn(bf=100 rb=100 cje=0.08187pF cjc=0.05pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model dmod1 d(n=2.25 is=1.6399e-4 bv=10)
+
+.model dmod2 d
+
+.model dmod d(vj=0.3v)
+
+.model diod1 d(tt=0.75ns vj=0.6 rs=909 bv=10)
+
+.model diod2 d(tt=0.5ns vj=0.3 rs=100 bv=10)
+
+* bjt driver - 19=input, 268=output, 20=vcc; wierd node numbers from
+* the Raytheon file
+
+.subckt bjtdrvr 19 268 20
+q1 22 18 13 qmodn
+q2 18 16 13 qmodn
+qd2 21 9 0 qmodn
+q4 14 14 0 qmodn
+q3 16 15 14 qmodpd
+q5 8 13 17 qmodn
+q6 25 12 0 qmodn
+q7 6 17 0 qmodpd
+qd1 26 10 0 qmodn
+q8 7 11 10 qmodn
+q10 268 17 0 qmodpdmine
+*q10 268 17 0 qmodpd
+q9 7 10 268 qmodn
+
+d1 0 19 dmod1
+d2 18 19 dmod2
+d3 13 19 dmod
+dq1 18 22 dmod
+dq2 16 18 dmod
+d502 9 21 dmod
+dq3 15 16 dmod
+d10 24 8 dmod
+d4 15 6 dmod
+dq6 12 25 dmod
+dq7 17 6 dmod
+dd1 17 10 dmod
+d7 11 6 dmod
+dd2 17 26 dmod
+d9 23 6 dmod
+dq8 11 7 dmod
+d501 17 268 dmod
+dq9 10 7 dmod
+d14 20 27 dmod
+d8 0 268 dmod
+
+r1 18 20 6k
+r2 22 20 2.2k
+r4 0 13 7k
+rd1 9 13 2k
+rd2 21 13 3k
+r3 16 20 10k
+r5 15 20 15k
+r9 0 17 4k
+r6 24 20 750
+r10 12 17 2k
+r12 24 11 1.5k
+r11 25 17 3k
+r15 23 20 10k
+r13 0 10 15k
+r14 7 27 12
+
+.ends bjtdrvr
+
+* subckt dioload - diode load: input=28, output=4, vcc=5
+
+.subckt dioload 28 4 5
+c1 28 0 5pF
+r503 0 4 5.55
+r400 0 28 120k
+r500 1 5 7.5k
+
+d5 4 28 diod2
+d1 1 28 diod1
+d4 2 0 diod1
+d3 3 2 diod1
+d2 1 3 diod1
+.ends dioload
+
+* End ECL driver and Diode receiver models from Raytheon
+
+*10 segments per cm
+.subckt lump10 1 2
+l1 1 3 0.0.8792nH
+c1 2 0 0.0468pF
+x1 3 2 r10
+.ends lump10
+
+*1 segment per cm
+.subckt lump1 1 2
+l1 1 3 8.792nH
+c1 2 0 0.468pF
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 8 r10
+x6 8 9 r10
+x7 9 10 r10
+x8 10 11 r10
+x9 11 12 r10
+x10 12 2 r10
+.ends lump1
+
+*2 segments per cm
+.subckt lump2 1 2
+l1 1 3 4.396nH
+c1 2 0 0.234pF
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 2 r10
+.ends lump2
+
+*4 segments per cm
+.subckt lump4 1 2
+l1 1 3 2.198nH
+c1 2 0 0.117pF
+x1 3 4 r10
+x2 4 5 r10
+x3 5 2 r10
+x4 5 2 r10
+.ends lump4
+
+*8 segments per cm
+.subckt lump8 1 2
+l1 1 3 1.099nH
+c1 2 0 0.0585pF
+x1 3 4 r10
+x2 4 2 r10
+x3 4 2 r10
+x4 4 2 r10
+x5 4 2 r10
+.ends lump8
+
+.subckt onecm10 1 2
+x1 1 3 lump10
+x2 3 4 lump10
+x3 4 5 lump10
+x4 5 6 lump10
+x5 6 7 lump10
+x6 7 8 lump10
+x7 8 9 lump10
+x8 9 10 lump10
+x9 10 11 lump10
+x10 11 2 lump10
+.ends onecm10
+
+.subckt onecm8 1 2
+x1 1 3 lump8
+x2 3 4 lump8
+x3 4 5 lump8
+x4 5 6 lump8
+x5 6 7 lump8
+x6 7 8 lump8
+x7 8 9 lump8
+x8 9 2 lump8
+.ends onecm8
+
+.subckt onecm4 1 2
+x1 1 3 lump4
+x2 3 4 lump4
+x3 4 5 lump4
+x4 5 2 lump4
+.ends onecm4
+
+.subckt onecm2 1 2
+x1 1 3 lump2
+x2 3 2 lump2
+.ends onecm2
+
+.subckt twocm 1 2
+x1 1 3 onecm
+x2 3 2 onecm
+.ends twocm
+
+.subckt threecm 1 2
+x1 1 3 onecm
+x2 3 4 onecm
+x3 4 2 onecm
+.ends threecm
+
+.subckt fourcm 1 2
+x1 1 3 onecm
+x2 3 4 onecm
+x3 4 5 onecm
+x4 5 2 onecm
+.ends fourcm
+
+.subckt fivecm 1 2
+x1 1 3 onecm
+x2 3 4 onecm
+x3 4 5 onecm
+x4 5 6 onecm
+x5 6 2 onecm
+.ends fivecm
+
+.subckt sixcm 1 2
+x1 1 3 fivecm
+x2 3 2 onecm
+.ends sixcm
+
+.subckt sevencm 1 2
+x1 1 3 sixcm
+x2 3 2 onecm
+.ends sevencm
+
+.subckt eightcm 1 2
+x1 1 3 sevencm
+x2 3 2 onecm
+.ends eightcm
+
+.subckt ninecm 1 2
+x1 1 3 eightcm
+x2 3 2 onecm
+.ends ninecm
+
+.subckt tencm 1 2
+x1 1 3 fivecm
+x2 3 2 fivecm
+.ends tencm
+
+.subckt elevencm 1 2
+x1 1 3 tencm
+x2 3 2 onecm
+.ends elevencm
+
+.subckt twelvecm 1 2
+x1 1 3 tencm
+x2 3 4 onecm
+x3 4 2 onecm
+.ends twelvecm
+
+.subckt sixteencm 1 2
+x1 1 3 eightcm
+x2 3 2 eightcm
+.ends sixteencm
+
+.subckt twentyfourcm 1 2
+x1 1 3 twelvecm
+x2 3 2 twelvecm
+.ends twentyfourcm
+
+
+*modelling using R and lossless lines
+* 10 segments per cm
+.model lless10 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9
++c=0.468e-12 len=0.1 steplimit quadinterp
+
+* 8 segments per cm
+.model lless8 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9
++c=0.468e-12 len=0.125 steplimit quadinterp
+
+* 4 segments per cm
+.model lless4 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9
++c=0.468e-12 len=0.25 steplimit quadinterp
+
+* 2 segments per cm
+.model lless2 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9
++c=0.468e-12 len=0.5 steplimit quadinterp
+
+* 1 segment per cm
+.model lless1 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9
++c=0.468e-12 len=1 steplimit quadinterp
+
+*10 segments per cm
+.subckt xlump10 1 2
+o1 1 0 3 0 lless10
+x1 3 2 r10
+.ends xlump10
+
+*1 segment per cm
+.subckt xlump1 1 2
+o1 1 0 3 0 lless1
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 8 r10
+x6 8 9 r10
+x7 9 10 r10
+x8 10 11 r10
+x9 11 12 r10
+x10 12 2 r10
+.ends xlump1
+
+*2 segments per cm
+.subckt xlump2 1 2
+o1 1 0 3 0 lless2
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 2 r10
+.ends xlump2
+
+*4 segments per cm
+.subckt xlump4 1 2
+o1 1 0 3 0 lless4
+x1 3 4 r10
+x2 4 5 r10
+x3 5 2 r10
+x4 5 2 r10
+.ends xlump4
+
+*8 segments per cm
+.subckt xlump8 1 2
+o1 1 0 3 0 lless8
+x1 3 4 r10
+x2 4 2 r10
+x3 4 2 r10
+x4 4 2 r10
+x5 4 2 r10
+.ends xlump8
+
+.subckt xonecm10 1 2
+x1 1 3 xlump10
+x2 3 4 xlump10
+x3 4 5 xlump10
+x4 5 6 xlump10
+x5 6 7 xlump10
+x6 7 8 xlump10
+x7 8 9 xlump10
+x8 9 10 xlump10
+x9 10 11 xlump10
+x10 11 2 xlump10
+.ends xonecm10
+
+.subckt xonecm8 1 2
+x1 1 3 xlump8
+x2 3 4 xlump8
+x3 4 5 xlump8
+x4 5 6 xlump8
+x5 6 7 xlump8
+x6 7 8 xlump8
+x7 8 9 xlump8
+x8 9 2 xlump8
+.ends xonecm8
+
+.subckt xonecm4 1 2
+x1 1 3 xlump4
+x2 3 4 xlump4
+x3 4 5 xlump4
+x4 5 2 xlump4
+.ends xonecm4
+
+.subckt xonecm2 1 2
+x1 1 3 xlump2
+x2 3 2 xlump2
+.ends xonecm2
+
+
+.subckt xtwocm 1 2
+x1 1 3 xonecm
+x2 3 2 xonecm
+.ends xtwocm
+
+.subckt xthreecm 1 2
+x1 1 3 xonecm
+x2 3 4 xonecm
+x3 4 2 xonecm
+.ends xthreecm
+
+.subckt xfourcm 1 2
+x1 1 3 xonecm
+x2 3 4 xonecm
+x3 4 5 xonecm
+x4 5 2 xonecm
+.ends xfourcm
+
+.subckt xfivecm 1 2
+x1 1 3 xonecm
+x2 3 4 xonecm
+x3 4 5 xonecm
+x4 5 6 xonecm
+x5 6 2 xonecm
+.ends xfivecm
+
+.subckt xsixcm 1 2
+x1 1 3 xfivecm
+x2 3 2 xonecm
+.ends xsixcm
+
+.subckt xsevencm 1 2
+x1 1 3 xsixcm
+x2 3 2 xonecm
+.ends xsevencm
+
+.subckt xeightcm 1 2
+x1 1 3 xsevencm
+x2 3 2 xonecm
+.ends xeightcm
+
+.subckt xninecm 1 2
+x1 1 3 xeightcm
+x2 3 2 xonecm
+.ends xninecm
+
+.subckt xtencm 1 2
+x1 1 3 xfivecm
+x2 3 2 xfivecm
+.ends xtencm
+
+.subckt xelevencm 1 2
+x1 1 3 xtencm
+x2 3 2 xonecm
+.ends xelevencm
+
+.subckt xtwelvecm 1 2
+x1 1 3 xtencm
+x2 3 4 xonecm
+x3 4 2 xonecm
+.ends xtwelvecm
+
+.subckt xsixteencm 1 2
+x1 1 3 xeightcm
+x2 3 2 xeightcm
+.ends xsixteencm
+
+.subckt xtwentyfourcm 1 2
+x1 1 3 xtwelvecm
+x2 3 2 xtwelvecm
+.ends xtwentyfourcm
+
+.end
diff --git a/Windows/spice/examples/TransmissionLines/ltra6_2_line.sp b/Windows/spice/examples/TransmissionLines/ltra6_2_line.sp
new file mode 100644
index 00000000..45279129
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra6_2_line.sp
@@ -0,0 +1,394 @@
+BJTdriver -- 2in st. lin -- 20in coupled line LTRA -- 2in st line -- DiodeCircuit
+
+* This unclassified circuit is from Raytheon, courtesy Gerry Marino.
+*
+* _______
+* -------- 2in _________________ 2in | |
+* | BJT |______| |______|Diode|
+* | |------| |------| |
+* | Drvr | line | 2-wire | line |rcvr.|
+* -------- | coupled | |_____|
+* | transmission |
+* |-/\/\/\/\----| line |-------\/\/\/\/\----|
+* | 50ohms | | 50ohms |
+* | | | |
+* Ground ----------------- Ground
+*
+*
+* Each inch of the lossy line is modelled by 10 LRC lumps in the
+* Raytheon model.
+
+* The line parameters (derived from the Raytheon input file) are:
+* L = 9.13nH per inch
+* C = 3.65pF per inch
+* R = 0.2 ohms per inch
+* K = 0.482 [coupling coefficient; K = M/sqrt(L1*L2)]
+* Cc = 1.8pF per inch
+*
+* coupled ltra model generated using the standalone program
+* multi_decomp
+
+* the circuit
+
+v1 1 0 0v pulse(0 4 1ns 1ns 1ns 20ns 40ns)
+
+vcc 10 0 5v
+
+* series termination
+*x1 1 oof 10 bjtdrvr
+*rseries oof 2 50
+
+x1 1 2 10 bjtdrvr
+rt1 3 0 50
+
+
+* convolution model
+x2 2 3 4 5 conv2wetcmodel
+
+* rlc segments model
+*x2 2 3 4 5 rlc2wetcmodel
+
+x3 4 dioload
+rt2 5 0 50
+
+
+
+.model qmodn npn(bf=100 rb=100 cje=0.09375pF cjc=0.28125pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpd npn(bf=100 rb=100 cje=0.08187pF cjc=0.2525pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpdmine npn(bf=100 rb=100 cje=0.08187pF cjc=0.05pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model dmod1 d(n=2.25 is=1.6399e-4 bv=10)
+
+.model dmod2 d
+
+.model dmod d(vj=0.3v)
+
+.model diod1 d(tt=0.75ns vj=0.6 rs=909 bv=10)
+
+.model diod2 d(tt=0.5ns vj=0.3 rs=100 bv=10)
+
+.options acct reltol=1e-3 abstol=1e-12
+.control
+tran 0.1ns 60ns
+plot v(2) v(4) v(5)
+.endc
+
+* bjt driver - 19=input, 268=output, 20=vcc; wierd node numbers from
+* the Raytheon file
+
+.subckt bjtdrvr 19 268 20
+q1 22 18 13 qmodn
+q2 18 16 13 qmodn
+qd2 21 9 0 qmodn
+q4 14 14 0 qmodn
+q3 16 15 14 qmodpd
+q5 8 13 17 qmodn
+q6 25 12 0 qmodn
+q7 6 17 0 qmodpd
+qd1 26 10 0 qmodn
+q8 7 11 10 qmodn
+*q10 268 17 0 qmodpd
+q10 268 17 0 qmodpdmine
+q9 7 10 268 qmodn
+
+d1 0 19 dmod1
+d2 18 19 dmod2
+d3 13 19 dmod
+dq1 18 22 dmod
+dq2 16 18 dmod
+d502 9 21 dmod
+dq3 15 16 dmod
+d10 24 8 dmod
+d4 15 6 dmod
+dq6 12 25 dmod
+dq7 17 6 dmod
+dd1 17 10 dmod
+d7 11 6 dmod
+dd2 17 26 dmod
+d9 23 6 dmod
+dq8 11 7 dmod
+d501 17 268 dmod
+dq9 10 7 dmod
+d14 20 27 dmod
+d8 0 268 dmod
+
+r1 18 20 6k
+r2 22 20 2.2k
+r4 0 13 7k
+rd1 9 13 2k
+rd2 21 13 3k
+r3 16 20 10k
+r5 15 20 15k
+r9 0 17 4k
+r6 24 20 750
+r10 12 17 2k
+r12 24 11 1.5k
+r11 25 17 3k
+r15 23 20 10k
+r13 0 10 15k
+r14 7 27 12
+
+.ends bjtdrvr
+
+* subckt dioload - diode load: input=28, output=4, vcc=5
+
+.subckt dioload 28
+*comment out everything in dioload except d5 and r503, and watch
+* the difference in results obtained between a tran 0.1ns 20ns and
+* a tran 0.01ns 20ns
+vccint 5 0 5v
+
+c1 28 0 5pF
+r503 0 4 5.55
+r4 0 28 120k
+r5 1 5 7.5k
+
+d5 4 28 diod2
+d1 1 28 diod1
+d4 2 0 diod1
+d3 3 2 diod1
+d2 1 3 diod1
+.ends dioload
+
+* subckt rlclump - one RLC lump of the lossy line
+
+.subckt rlclump 1 2
+*r1 1 3 0.02
+*c1 3 0 0.365pF
+*l1 3 2 0.913nH
+
+l1 1 3 0.913nH
+c1 2 0 0.365pF
+r1 3 2 0.02
+
+*r1 1 3 0.01
+*c1 3 0 0.1825pF
+*l1 3 4 0.4565nH
+*r2 4 5 0.01
+*c2 5 0 0.1825pF
+*l2 5 2 0.4565nH
+
+*c1 1 0 0.365pF
+*l1 1 2 0.913nH
+.ends lump
+
+.subckt rlconeinch 1 2
+x1 1 3 rlclump
+x2 3 4 rlclump
+x3 4 5 rlclump
+x4 5 6 rlclump
+x5 6 7 rlclump
+x6 7 8 rlclump
+x7 8 9 rlclump
+x8 9 10 rlclump
+x9 10 11 rlclump
+x10 11 2 rlclump
+.ends rlconeinch
+
+.subckt rlctwoinch 1 2
+x1 1 3 rlconeinch
+x2 3 2 rlconeinch
+.ends rlctwoinch
+
+.subckt rlcfourinch 1 2
+x1 1 3 rlconeinch
+x2 3 4 rlconeinch
+x3 4 5 rlconeinch
+x4 5 2 rlconeinch
+.ends rlcfourinch
+
+.subckt rlcfiveinch 1 2
+x1 1 3 rlconeinch
+x2 3 4 rlconeinch
+x3 4 5 rlconeinch
+x4 5 6 rlconeinch
+x5 6 2 rlconeinch
+.ends rlcfiveinch
+
+.subckt rlctwentyrlcfourinch 1 2
+x1 1 3 rlcfiveinch
+x2 3 4 rlcfiveinch
+x3 4 5 rlcfiveinch
+x4 5 6 rlcfiveinch
+x5 6 2 rlcfourinch
+.ends rlctwentyrlcfourinch
+
+.subckt rlclumpstub A B C D
+x1 A int1 rlcfiveinch
+x2 int1 int2 rlcfiveinch
+x3 int2 1 rlcfiveinch
+x4 1 2 rlcfourinch
+x5 1 int3 rlcfiveinch
+x6 int3 B rlconeinch
+x7 2 C rlcfiveinch
+x8 2 D rlcfourinch
+.ends rlclumpstub
+
+.subckt ltrastub A B C D
+o1 A 0 1 0 lline15in
+o2 1 0 B 0 lline6in
+o3 1 0 2 0 lline4in
+o4 2 0 C 0 lline5in
+o5 2 0 D 0 lline4in
+.ends ltrastub
+
+*modelling using R and lossless lines
+
+*5 segments per inch
+.model llfifth ltra nocontrol rel=10 r=0 g=0 l=9.13e-9
++c=3.65e-12 len=0.2 steplimit quadinterp
+
+.subckt xlump 1 2
+o1 1 0 3 0 llfifth
+r1 2 3 0.04
+.ends xlump
+
+.subckt xoneinch 1 2
+x1 1 3 xlump
+x2 3 4 xlump
+x3 4 5 xlump
+x4 5 6 xlump
+x5 6 2 xlump
+*x5 6 7 xlump
+*x6 7 8 xlump
+*x7 8 9 xlump
+*x8 9 10 xlump
+*x9 10 11 xlump
+*x10 11 2 xlump
+.ends xoneinch
+
+.subckt xFourinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 2 xoneinch
+.ends xfourinch
+
+.subckt xfiveinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 6 xoneinch
+x5 6 2 xoneinch
+.ends xfiveinch
+
+.subckt xlumpstub A B C D
+x1 A int1 xfiveinch
+x2 int1 int2 xfiveinch
+x3 int2 1 xfiveinch
+x4 1 2 xfourinch
+x5 1 int3 xfiveinch
+x6 int3 B xoneinch
+x7 2 C xfiveinch
+x8 2 D xfourinch
+.ends xlumpstub
+
+* modelling a 2 wire coupled system using RLC lumps
+* 10 segments per inch
+*
+* 1---xxxxx----2
+* 3---xxxxx----4
+
+.subckt rlc2wlump 1 3 2 4
+l1 1 5 0.913nH
+c1 2 0 0.365pF
+r1 5 2 0.02
+l2 3 6 0.913nH
+c2 4 0 0.365pF
+r2 6 4 0.02
+cmut 2 4 0.18pF
+k12 l1 l2 0.482
+.ends rlc2wlump
+
+.subckt rlc2woneinch 1 2 3 4
+x1 1 2 5 6 rlc2wlump
+x2 5 6 7 8 rlc2wlump
+x3 7 8 9 10 rlc2wlump
+x4 9 10 11 12 rlc2wlump
+x5 11 12 13 14 rlc2wlump
+x6 13 14 15 16 rlc2wlump
+x7 15 16 17 18 rlc2wlump
+x8 17 18 19 20 rlc2wlump
+x9 19 20 21 22 rlc2wlump
+x10 21 22 3 4 rlc2wlump
+.ends rlc2woneinch
+
+.subckt rlc2wfiveinch 1 2 3 4
+x1 1 2 5 6 rlc2woneinch
+x2 5 6 7 8 rlc2woneinch
+x3 7 8 9 10 rlc2woneinch
+x4 9 10 11 12 rlc2woneinch
+x5 11 12 3 4 rlc2woneinch
+.ends rlc2wfiveinch
+
+.subckt rlc2wtwentyinch 1 2 3 4
+x1 1 2 5 6 rlc2wfiveinch
+x2 5 6 7 8 rlc2wfiveinch
+x3 7 8 9 10 rlc2wfiveinch
+x4 9 10 3 4 rlc2wfiveinch
+.ends rlc2wtwentyinch
+
+.subckt rlc2wetcmodel 1 2 3 4
+x1 1 5 rlctwoinch
+x2 5 2 6 4 rlc2wtwentyinch
+x3 6 3 rlctwoinch
+.ends rlc2wetcmodel
+
+* Subcircuit conv2wtwentyinch
+* conv2wtwentyinch is a subcircuit that models a 2-conductor transmission line with
+* the following parameters: l=9.13e-09, c=3.65e-12, r=0.2, g=0,
+* inductive_coeff_of_coupling k=0.482, inter-line capacitance cm=1.8e-12,
+* length=20. Derived parameters are: lm=4.40066e-09, ctot=5.45e-12.
+*
+* It is important to note that the model is a simplified one - the
+* following assumptions are made: 1. The self-inductance l, the
+* self-capacitance ctot (note: not c), the series resistance r and the
+* parallel capacitance g are the same for all lines, and 2. Each line
+* is coupled only to the two lines adjacent to it, with the same
+* coupling parameters cm and lm. The first assumption imply that edge
+* effects have to be neglected. The utility of these assumptions is
+* that they make the sL+R and sC+G matrices symmetric, tridiagonal and
+* Toeplitz, with useful consequences.
+*
+* It may be noted that a symmetric two-conductor line will be
+* accurately represented by this model.
+
+* Lossy line models
+.model mod1_conv2wtwentyinch ltra rel=1.2 nocontrol r=0.2 l=4.72933999088e-09 g=0 c=7.25000000373e-12 len=20
+.model mod2_conv2wtwentyinch ltra rel=1.2 nocontrol r=0.2 l=1.35306599818e-08 g=0 c=3.65000000746e-12 len=20
+
+* subcircuit m_conv2wtwentyinch - modal transformation network for conv2wtwentyinch
+.subckt m_conv2wtwentyinch 1 2 3 4
+v1 5 0 0v
+v2 6 0 0v
+f1 0 3 v1 0.707106779721
+f2 0 3 v2 -0.707106782652
+f3 0 4 v1 0.707106781919
+f4 0 4 v2 0.707106780454
+e1 7 5 3 0 0.707106780454
+e2 1 7 4 0 0.707106782652
+e3 8 6 3 0 -0.707106781919
+e4 2 8 4 0 0.707106779721
+.ends m_conv2wtwentyinch
+
+* Subckt conv2wtwentyinch
+.subckt conv2wtwentyinch 1 2 3 4
+x1 1 2 5 6 m_conv2wtwentyinch
+o1 5 0 7 0 mod1_conv2wtwentyinch
+o2 6 0 8 0 mod2_conv2wtwentyinch
+x2 3 4 7 8 m_conv2wtwentyinch
+.ends conv2wtwentyinch
+
+.model convtwoinch ltra r=0.2 l=9.13e-9 c=3.65e-12 len=2.0 rel=1.2 nocontrol
+.subckt conv2wetcmodel 1 2 3 4
+o1 1 0 5 0 convtwoinch
+x1 5 2 6 4 conv2wtwentyinch
+o2 6 0 3 0 convtwoinch
+.ends conv2wetcmodel
+
+.end
diff --git a/Windows/spice/examples/TransmissionLines/ltra7_4_line.sp b/Windows/spice/examples/TransmissionLines/ltra7_4_line.sp
new file mode 100644
index 00000000..7be4615a
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/ltra7_4_line.sp
@@ -0,0 +1,113 @@
+6.3inch 4 lossy lines LTRA model -- R load
+
+Ra 1 2 1K
+Rb 0 3 1K
+Rc 0 4 1K
+Rd 0 5 1K
+Re 6 0 1Meg
+Rf 7 0 1Meg
+Rg 8 0 1Meg
+Rh 9 0 1Meg
+
+
+*
+* Subcircuit test
+* test is a subcircuit that models a 4-conductor transmission line with
+* the following parameters: l=9e-09, c=2.9e-13, r=0.3, g=0,
+* inductive_coeff_of_coupling k=0.6, inter-line capacitance cm=3e-14,
+* length=6.3. Derived parameters are: lm=5.4e-09, ctot=3.5e-13.
+*
+* It is important to note that the model is a simplified one - the
+* following assumptions are made: 1. The self-inductance l, the
+* self-capacitance ctot (note: not c), the series resistance r and the
+* parallel capacitance g are the same for all lines, and 2. Each line
+* is coupled only to the two lines adjacent to it, with the same
+* coupling parameters cm and lm. The first assumption implies that edge
+* effects have to be neglected. The utility of these assumptions is
+* that they make the sL+R and sC+G matrices symmetric, tridiagonal and
+* Toeplitz, with useful consequences (see "Efficient Transient
+* Simulation of Lossy Interconnect", by J.S. Roychowdhury and
+* D.O Pederson, Proc. DAC 91).
+
+* It may be noted that a symmetric two-conductor line is
+* represented accurately by this model.
+
+* Subckt node convention:
+*
+* |--------------------------|
+* 1-----| |-----n+1
+* 2-----| |-----n+2
+* : | n-wire multiconductor | :
+* : | line | :
+* n-1-----|(node 0=common gnd plane) |-----2n-1
+* n-----| |-----2n
+* |--------------------------|
+
+
+* Lossy line models
+.model mod1_test ltra rel=1.2 nocontrol r=0.3 l=2.62616456193e-10 g=0 c=3.98541019688e-13 len=6.3
+.model mod2_test ltra rel=1.2 nocontrol r=0.3 l=5.662616446e-09 g=0 c=3.68541019744e-13 len=6.3
+.model mod3_test ltra rel=1.2 nocontrol r=0.3 l=1.23373835171e-08 g=0 c=3.3145898046e-13 len=6.3
+.model mod4_test ltra rel=1.2 nocontrol r=0.3 l=1.7737383521e-08 g=0 c=3.01458980439e-13 len=6.3
+
+* subcircuit m_test - modal transformation network for test
+.subckt m_test 1 2 3 4 5 6 7 8
+v1 9 0 0v
+v2 10 0 0v
+v3 11 0 0v
+v4 12 0 0v
+f1 0 5 v1 0.371748033738
+f2 0 5 v2 -0.601500954587
+f3 0 5 v3 0.601500954587
+f4 0 5 v4 -0.371748036544
+f5 0 6 v1 0.60150095443
+f6 0 6 v2 -0.371748035044
+f7 0 6 v3 -0.371748030937
+f8 0 6 v4 0.601500957402
+f9 0 7 v1 0.601500954079
+f10 0 7 v2 0.37174803072
+f11 0 7 v3 -0.371748038935
+f12 0 7 v4 -0.601500955482
+f13 0 8 v1 0.371748035626
+f14 0 8 v2 0.601500956073
+f15 0 8 v3 0.601500954504
+f16 0 8 v4 0.371748032386
+e1 13 9 5 0 0.371748033909
+e2 14 13 6 0 0.601500954587
+e3 15 14 7 0 0.601500955639
+e4 1 15 8 0 0.371748036664
+e5 16 10 5 0 -0.60150095443
+e6 17 16 6 0 -0.371748035843
+e7 18 17 7 0 0.371748032386
+e8 2 18 8 0 0.601500957319
+e9 19 11 5 0 0.601500955131
+e10 20 19 6 0 -0.371748032169
+e11 21 20 7 0 -0.371748037896
+e12 3 21 8 0 0.601500954513
+e13 22 12 5 0 -0.371748035746
+e14 23 22 6 0 0.60150095599
+e15 24 23 7 0 -0.601500953534
+e16 4 24 8 0 0.371748029317
+.ends m_test
+
+* Subckt test
+.subckt test 1 2 3 4 5 6 7 8
+x1 1 2 3 4 9 10 11 12 m_test
+o1 9 0 13 0 mod1_test
+o2 10 0 14 0 mod2_test
+o3 11 0 15 0 mod3_test
+o4 12 0 16 0 mod4_test
+x2 5 6 7 8 13 14 15 16 m_test
+.ends test
+*
+x1 2 3 4 5 6 7 8 9 test
+*
+*
+VS1 1 0 PWL(15.9NS 0.0 16.1Ns 5.0 31.9Ns 5.0 32.1Ns 0.0)
+
+.control
+TRAN 0.2NS 50NS
+plot v(1) v(2) v(6) v(7) v(8) v(9)
+.endc
+*
+.END
diff --git a/Windows/spice/examples/TransmissionLines/txl1_1_line.sp b/Windows/spice/examples/TransmissionLines/txl1_1_line.sp
new file mode 100644
index 00000000..fdbec1ae
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/txl1_1_line.sp
@@ -0,0 +1,18 @@
+MOSdriver -- lossy line TXL model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+y1 2 0 3 0 ymod
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.control
+TRAN 0.2N 47N 0 0.1N
+plot v(2) v(3) ylimit -0.5 5
+.endc
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL ymod txl R=12.45 L=8.972e-9 G=0 C=0.468e-12 length=16
+.end
diff --git a/Windows/spice/examples/TransmissionLines/txl2_3_line.sp b/Windows/spice/examples/TransmissionLines/txl2_3_line.sp
new file mode 100644
index 00000000..41b54996
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/txl2_3_line.sp
@@ -0,0 +1,26 @@
+MOSdriver -- 3 lossy lines TXL model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+m1 0 3 4 0 mn0p9 w = 18.0u l=0.9u
+m2 1 3 4 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+CN4 4 0 0.025398e-12
+CN5 5 0 0.007398e-12
+CN6 6 0 0.007398e-12
+CN7 168 0 0.007398e-12
+y1 2 0 3 0 ymod
+y2 4 0 5 0 ymod
+y3 6 0 168 0 ymod
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.control
+TRAN 0.2N 47N 0 0.1N
+plot v(2) v(3) v(4) v(5) v(6)
+.endc
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL ymod txl R=12.45 L=8.972e-9 G=0 C=0.468e-12 length=16
+.end
diff --git a/Windows/spice/examples/TransmissionLines/txl3_1_line.sp b/Windows/spice/examples/TransmissionLines/txl3_1_line.sp
new file mode 100644
index 00000000..466c2591
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/txl3_1_line.sp
@@ -0,0 +1,236 @@
+ BJTdriver -- 24inch lossy line TXL model -- DiodeCircuit
+
+* This unclassified circuit is from Raytheon, courtesy Gerry Marino.
+* It consists of a BJT driver connected by a 24 inch lossy line to a
+* passive load consisting mostly of diodes. Each inch
+* of the lossy line is modelled by 10 LRC lumps in the Raytheon
+* model.
+
+* The line parameters (derived from the Raytheon input file) are:
+* L = 9.13nH per inch
+* C = 3.65pF per inch
+* R = 0.2 ohms per inch
+
+* the circuit
+v1 1 0 0v pulse(0 4 1ns 1ns 1ns 20ns 40ns)
+vcc 10 0 5v
+*rseries 1 2 5
+x1 1 2 10 bjtdrvr
+*t1 2 0 3 0 z0=50.0136 td=4.38119ns rel=10
+y2 2 0 3 0 ymod1
+*x2 2 3 oneinch
+*x2 100 101 twentyfourinch
+*x2 100 101 xtwentyfourinch
+vtest1 2 100 0
+vtest2 101 3 0
+x3 3 4 10 dioload
+*rl 3 0 5
+*dl 0 3 diod2
+
+.model ymod1 txl r=0.2 g=0 l=9.13e-9 c=3.65e-12 length=24
+
+.model qmodn npn(bf=100 rb=100 cje=0.09375pF cjc=0.28125pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpd npn(bf=100 rb=100 cje=0.08187pF cjc=0.2525pF is=1e-12
++pe=0.5 pc=0.5)
+.model qmodpdmine npn(bf=100 rb=100 cje=0.08187pF cjc=0.05pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model dmod1 d(n=2.25 is=1.6399e-4 bv=10)
+
+.model dmod2 d
+
+.model dmod d(vj=0.3v)
+
+.model diod1 d(tt=0.75ns vj=0.6 rs=909 bv=10)
+
+.model diod2 d(tt=0.5ns vj=0.3 rs=100 bv=10)
+
+.options acct
++reltol=1e-3 abstol=1e-14
+.control
+tran 0.1ns 60ns 0 0.5ns
+plot v(1) v(2) v(3)
+.endc
+
+* bjt driver - 19=input, 268=output, 20=vcc; wierd node numbers from
+* the Raytheon file
+
+.subckt bjtdrvr 19 268 20
+q1 22 18 13 qmodn
+q2 18 16 13 qmodn
+qd2 21 9 0 qmodn
+q4 14 14 0 qmodn
+q3 16 15 14 qmodpd
+q5 8 13 17 qmodn
+q6 25 12 0 qmodn
+q7 6 17 0 qmodpd
+qd1 26 10 0 qmodn
+q8 7 11 10 qmodn
+q10 268 17 0 qmodpdmine
+*q10 268 17 0 qmodpd
+q9 7 10 268 qmodn
+
+d1 0 19 dmod1
+d2 18 19 dmod2
+d3 13 19 dmod
+dq1 18 22 dmod
+dq2 16 18 dmod
+d502 9 21 dmod
+dq3 15 16 dmod
+d10 24 8 dmod
+d4 15 6 dmod
+dq6 12 25 dmod
+dq7 17 6 dmod
+dd1 17 10 dmod
+d7 11 6 dmod
+dd2 17 26 dmod
+d9 23 6 dmod
+dq8 11 7 dmod
+d501 17 268 dmod
+dq9 10 7 dmod
+d14 20 27 dmod
+d8 0 268 dmod
+
+r1 18 20 6k
+r2 22 20 2.2k
+r4 0 13 7k
+rd1 9 13 2k
+rd2 21 13 3k
+r3 16 20 10k
+r5 15 20 15k
+r9 0 17 4k
+r6 24 20 750
+r10 12 17 2k
+r12 24 11 1.5k
+r11 25 17 3k
+r15 23 20 10k
+r13 0 10 15k
+r14 7 27 12
+
+.ends bjtdrvr
+
+* subckt dioload - diode load: input=28, output=4, vcc=5
+
+.subckt dioload 28 4 5
+*comment out everything in dioload except d5 and r503, and watch
+* the difference in results obtained between a tran 0.1ns 20ns and
+* a tran 0.01ns 20ns
+c1 28 0 5pF
+r503 0 4 5.55
+r4 0 28 120k
+r5 1 5 7.5k
+
+d5 4 28 diod2
+d1 1 28 diod1
+d4 2 0 diod1
+d3 3 2 diod1
+d2 1 3 diod1
+.ends dioload
+
+* subckt lump - one RLC lump of the lossy line
+
+*10 segments per inch
+.subckt lump 1 2
+*r1 1 3 0.02
+*c1 3 0 0.365pF
+*l1 3 2 0.913nH
+
+l1 1 3 0.913nH
+c1 2 0 0.365pF
+r1 3 2 0.02
+
+*r1 1 3 0.01
+*c1 3 0 0.1825pF
+*l1 3 4 0.4565nH
+*r2 4 5 0.01
+*c2 5 0 0.1825pF
+*l2 5 2 0.4565nH
+
+*c1 1 0 0.365pF
+*l1 1 2 0.913nH
+.ends lump
+
+.subckt oneinch 1 2
+x1 1 3 lump
+x2 3 4 lump
+x3 4 5 lump
+x4 5 6 lump
+x5 6 7 lump
+x6 7 8 lump
+x7 8 9 lump
+x8 9 10 lump
+x9 10 11 lump
+x10 11 2 lump
+.ends oneinch
+
+.subckt fourinch 1 2
+x1 1 3 oneinch
+x2 3 4 oneinch
+x3 4 5 oneinch
+x4 5 2 oneinch
+.ends fourinch
+
+.subckt fiveinch 1 2
+x1 1 3 oneinch
+x2 3 4 oneinch
+x3 4 5 oneinch
+x4 5 6 oneinch
+x5 6 2 oneinch
+.ends fiveinch
+
+.subckt twentyfourinch 1 2
+x1 1 3 fiveinch
+x2 3 4 fiveinch
+x3 4 5 fiveinch
+x4 5 6 fiveinch
+x5 6 2 fourinch
+.ends twentyfourinch
+
+*modelling using R and lossless lines
+*5 segments per inch
+.model ymod2 txl r=0 g=0 l=9.13e-9 c=3.65e-12 length=0.2
+.subckt xlump 1 2
+y1 1 0 3 0 ymod2
+r1 2 3 0.04
+.ends xlump
+
+.subckt xoneinch 1 2
+x1 1 3 xlump
+x2 3 4 xlump
+x3 4 5 xlump
+x4 5 6 xlump
+x5 6 2 xlump
+*x5 6 7 xlump
+*x6 7 8 xlump
+*x7 8 9 xlump
+*x8 9 10 xlump
+*x9 10 11 xlump
+*x10 11 2 xlump
+.ends xoneinch
+
+.subckt xfourinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 2 xoneinch
+.ends xfourinch
+
+.subckt xfiveinch 1 2
+x1 1 3 xoneinch
+x2 3 4 xoneinch
+x3 4 5 xoneinch
+x4 5 6 xoneinch
+x5 6 2 xoneinch
+.ends xfiveinch
+
+.subckt xtwentyfourinch 1 2
+x1 1 3 xfiveinch
+x2 3 4 xfiveinch
+x3 4 5 xfiveinch
+x4 5 6 xfiveinch
+x5 6 2 xfourinch
+.ends xtwentyfourinch
+
+.end
diff --git a/Windows/spice/examples/TransmissionLines/txl4_1_line.sp b/Windows/spice/examples/TransmissionLines/txl4_1_line.sp
new file mode 100644
index 00000000..91586479
--- /dev/null
+++ b/Windows/spice/examples/TransmissionLines/txl4_1_line.sp
@@ -0,0 +1,523 @@
+ Example 3 for interconnect simulation
+
+* From neug1, Mosaic aluminum lines. 2um thick, 11um wide. Assuming
+* 10um above the ground.
+* Material: aluminum; resistivity (sigma) = 2.74uohm-cm = 2.74e-8 ohm-m
+* Dielectric: SiO2, dielectric constant (epsilon) =3.7
+* epsilon0 = 8.85e-12 MKS units
+* mu0 = 4e-7*PI
+* speed of light in free space = 1/sqrt(mu0*epsilon0) = 2.9986e8 MKS units
+*
+* Line parameter calculations:
+* capacitance: parallel plate
+* C = epsilon*epsilon0 * A / l
+* C = 3.7*8.85e-12 * 11e-6 * 1(metre) / 10e-6 = 36.02e-12 F/m
+* + 30% = 46.8e-12 F/m = 0.468pF/cm
+*
+* C_freespace = 46.8e-12/epsilon = 12.65e-12 F/m
+* speed of light in free space v0 = 2.9986e8 = 1/sqrt(L0*C0)
+* => L0 = 1/C0*v0^2
+* L0 = 1/(12.65e-12 * 8.9916e16) = 1/113.74e4 = 0.008792e-4 H/m
+* = 0.8792 uH/m = 8.792nH/cm
+*
+* R = rho * l / A = 2.74e-8 * 1 / (11e-6*2e-6) = 1245.45 ohms/m
+* = 12.45ohms/cm
+*
+* transmission line parameters:
+* nominal z0 = sqrt(L/C) = 137 ohms
+* td = sqrt(LC) = 64.14e-12 secs/cm = 0.064ns/cm
+*
+*
+
+
+vcc vcc 0 5
+v1 1 0 0v pulse(0 5 0.1ns 0.1ns 0.1ns 1ns 100ns)
+rs 1 2 10
+xdrv 1 2 vcc bjtdrvr
+xrcv 3 4 vcc bjtdrvr
+xrcv 3 4 vcc dioload
+d1 3 vcc diod
+d2 0 3 diod
+cl 3 0 1pF
+y1 2 0 3 0 yline
+*x1 2 3 sixteencm
+x1 2 3 xonecm
+
+.model diod d
+.model yline txl r=12.45 g=0 l=8.792e-9 c=0.468e-12 length=16
+
+.control
+* 1cm
+* 2cm
+* 4cm
+* 6cm
+* 8cm
+* 10cm
+* 12cm
+*tran 0.001ns 15ns 0 0.1ns
+* 24cm
+tran 0.001ns 10ns 0 0.1ns
+* onecm10
+*tran 0.001ns 10ns 0 0.01ns
+plot v(1) v(2) v(3)
+.endc
+
+
+* 1. define the subckt r10 to be one tenth of the resistance per cm.
+* 2. define the subckt onecm to be one of onecm10 (modelled using
+* 10 segments), onecm8, onecm4, onecm2 and lump1. Then use
+* the subckts onecm, fourcm, fivecm, tencm, twelvecm,
+* twentyfourcm in the circuit. The line is modelled as rlc segments.
+* 3. define the subckt xonecm to be one of xonecm10, xonecm8,
+* xonecm4, xonecm2 and xlump1. Use the subckts xonecm,
+* xfourcm, xfivecm, xtencm, xtwelvecm, xtwentyfourcm in the
+* circuit. The line will be modelled as r-lossless lumps.
+
+.subckt xonecm 1 2
+*x1 1 2 xlump1
+x1 1 2 xonecm4
+.ends xonecm
+
+.subckt onecm 1 2
+*x1 1 2 lump1
+x1 1 2 onecm4
+.ends onecm
+
+.subckt r10 1 2
+r1 1 2 1.245
+.ends r10
+
+* ECL driver and diode receiver models - from Raytheon
+
+.model qmodn npn(bf=100 rb=100 cje=0.09375pF cjc=0.28125pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model qmodpd npn(bf=100 rb=100 cje=0.08187pF cjc=0.2525pF is=1e-12
++pe=0.5 pc=0.5)
+.model qmodpdmine npn(bf=100 rb=100 cje=0.08187pF cjc=0.05pF is=1e-12
++pe=0.5 pc=0.5)
+
+.model dmod1 d(n=2.25 is=1.6399e-4 bv=10)
+
+.model dmod2 d
+
+.model dmod d(vj=0.3v)
+
+.model diod1 d(tt=0.75ns vj=0.6 rs=909 bv=10)
+
+.model diod2 d(tt=0.5ns vj=0.3 rs=100 bv=10)
+
+* bjt driver - 19=input, 268=output, 20=vcc; wierd node numbers from
+* the Raytheon file
+
+.subckt bjtdrvr 19 268 20
+q1 22 18 13 qmodn
+q2 18 16 13 qmodn
+qd2 21 9 0 qmodn
+q4 14 14 0 qmodn
+q3 16 15 14 qmodpd
+q5 8 13 17 qmodn
+q6 25 12 0 qmodn
+q7 6 17 0 qmodpd
+qd1 26 10 0 qmodn
+q8 7 11 10 qmodn
+q10 268 17 0 qmodpdmine
+*q10 268 17 0 qmodpd
+q9 7 10 268 qmodn
+
+d1 0 19 dmod1
+d2 18 19 dmod2
+d3 13 19 dmod
+dq1 18 22 dmod
+dq2 16 18 dmod
+d502 9 21 dmod
+dq3 15 16 dmod
+d10 24 8 dmod
+d4 15 6 dmod
+dq6 12 25 dmod
+dq7 17 6 dmod
+dd1 17 10 dmod
+d7 11 6 dmod
+dd2 17 26 dmod
+d9 23 6 dmod
+dq8 11 7 dmod
+d501 17 268 dmod
+dq9 10 7 dmod
+d14 20 27 dmod
+d8 0 268 dmod
+
+r1 18 20 6k
+r2 22 20 2.2k
+r4 0 13 7k
+rd1 9 13 2k
+rd2 21 13 3k
+r3 16 20 10k
+r5 15 20 15k
+r9 0 17 4k
+r6 24 20 750
+r10 12 17 2k
+r12 24 11 1.5k
+r11 25 17 3k
+r15 23 20 10k
+r13 0 10 15k
+r14 7 27 12
+
+.ends bjtdrvr
+
+* subckt dioload - diode load: input=28, output=4, vcc=5
+
+.subckt dioload 28 4 5
+c1 28 0 5pF
+r503 0 4 5.55
+r400 0 28 120k
+r500 1 5 7.5k
+
+d5 4 28 diod2
+d1 1 28 diod1
+d4 2 0 diod1
+d3 3 2 diod1
+d2 1 3 diod1
+.ends dioload
+
+* End ECL driver and Diode receiver models from Raytheon
+
+*10 segments per cm
+.subckt lump10 1 2
+l1 1 3 0.0.8792nH
+c1 2 0 0.0468pF
+x1 3 2 r10
+.ends lump10
+
+*1 segment per cm
+.subckt lump1 1 2
+l1 1 3 8.792nH
+c1 2 0 0.468pF
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 8 r10
+x6 8 9 r10
+x7 9 10 r10
+x8 10 11 r10
+x9 11 12 r10
+x10 12 2 r10
+.ends lump1
+
+*2 segments per cm
+.subckt lump2 1 2
+l1 1 3 4.396nH
+c1 2 0 0.234pF
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 2 r10
+.ends lump2
+
+*4 segments per cm
+.subckt lump4 1 2
+l1 1 3 2.198nH
+c1 2 0 0.117pF
+x1 3 4 r10
+x2 4 5 r10
+x3 5 2 r10
+x4 5 2 r10
+.ends lump4
+
+*8 segments per cm
+.subckt lump8 1 2
+l1 1 3 1.099nH
+c1 2 0 0.0585pF
+x1 3 4 r10
+x2 4 2 r10
+x3 4 2 r10
+x4 4 2 r10
+x5 4 2 r10
+.ends lump8
+
+.subckt onecm10 1 2
+x1 1 3 lump10
+x2 3 4 lump10
+x3 4 5 lump10
+x4 5 6 lump10
+x5 6 7 lump10
+x6 7 8 lump10
+x7 8 9 lump10
+x8 9 10 lump10
+x9 10 11 lump10
+x10 11 2 lump10
+.ends onecm10
+
+.subckt onecm8 1 2
+x1 1 3 lump8
+x2 3 4 lump8
+x3 4 5 lump8
+x4 5 6 lump8
+x5 6 7 lump8
+x6 7 8 lump8
+x7 8 9 lump8
+x8 9 2 lump8
+.ends onecm8
+
+.subckt onecm4 1 2
+x1 1 3 lump4
+x2 3 4 lump4
+x3 4 5 lump4
+x4 5 2 lump4
+.ends onecm4
+
+.subckt onecm2 1 2
+x1 1 3 lump2
+x2 3 2 lump2
+.ends onecm2
+
+.subckt twocm 1 2
+x1 1 3 onecm
+x2 3 2 onecm
+.ends twocm
+
+.subckt threecm 1 2
+x1 1 3 onecm
+x2 3 4 onecm
+x3 4 2 onecm
+.ends threecm
+
+.subckt fourcm 1 2
+x1 1 3 onecm
+x2 3 4 onecm
+x3 4 5 onecm
+x4 5 2 onecm
+.ends fourcm
+
+.subckt fivecm 1 2
+x1 1 3 onecm
+x2 3 4 onecm
+x3 4 5 onecm
+x4 5 6 onecm
+x5 6 2 onecm
+.ends fivecm
+
+.subckt sixcm 1 2
+x1 1 3 fivecm
+x2 3 2 onecm
+.ends sixcm
+
+.subckt sevencm 1 2
+x1 1 3 sixcm
+x2 3 2 onecm
+.ends sevencm
+
+.subckt eightcm 1 2
+x1 1 3 sevencm
+x2 3 2 onecm
+.ends eightcm
+
+.subckt ninecm 1 2
+x1 1 3 eightcm
+x2 3 2 onecm
+.ends ninecm
+
+.subckt tencm 1 2
+x1 1 3 fivecm
+x2 3 2 fivecm
+.ends tencm
+
+.subckt elevencm 1 2
+x1 1 3 tencm
+x2 3 2 onecm
+.ends elevencm
+
+.subckt twelvecm 1 2
+x1 1 3 tencm
+x2 3 4 onecm
+x3 4 2 onecm
+.ends twelvecm
+
+.subckt sixteencm 1 2
+x1 1 3 eightcm
+x2 3 2 eightcm
+.ends sixteencm
+
+.subckt twentyfourcm 1 2
+x1 1 3 twelvecm
+x2 3 2 twelvecm
+.ends twentyfourcm
+
+
+*modelling using R and lossless lines
+* 10 segments per cm
+.model yless10 txl r=0 g=0 l=8.792e-9 c=0.468e-12 length=0.1
+
+* 8 segments per cm
+.model yless8 txl r=0 g=0 l=8.792e-9 c=0.468e-12 length=0.125
+
+* 4 segments per cm
+.model yless4 txl r=0 g=0 l=8.792e-9 c=0.468e-12 length=0.25
+
+* 2 segments per cm
+.model yless2 txl r=0 g=0 l=8.792e-9 c=0.468e-12 length=0.5
+
+* 1 segment per cm
+.model yless1 txl r=0 g=0 l=8.792e-9 c=0.468e-12 length=1
+
+*10 segments per cm
+.subckt xlump10 1 2
+y1 1 0 3 0 yless10
+x1 3 2 r10
+.ends xlump10
+
+*1 segment per cm
+.subckt xlump1 1 2
+y1 1 0 3 0 yless1
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 8 r10
+x6 8 9 r10
+x7 9 10 r10
+x8 10 11 r10
+x9 11 12 r10
+x10 12 2 r10
+.ends xlump1
+
+*2 segments per cm
+.subckt xlump2 1 2
+y1 1 0 3 0 yless2
+x1 3 4 r10
+x2 4 5 r10
+x3 5 6 r10
+x4 6 7 r10
+x5 7 2 r10
+.ends xlump2
+
+*4 segments per cm
+.subckt xlump4 1 2
+y1 1 0 3 0 yless4
+x1 3 4 r10
+x2 4 5 r10
+x3 5 2 r10
+x4 5 2 r10
+.ends xlump4
+
+*8 segments per cm
+.subckt xlump8 1 2
+y1 1 0 3 0 yless8
+x1 3 4 r10
+x2 4 2 r10
+x3 4 2 r10
+x4 4 2 r10
+x5 4 2 r10
+.ends xlump8
+
+.subckt xonecm10 1 2
+x1 1 3 xlump10
+x2 3 4 xlump10
+x3 4 5 xlump10
+x4 5 6 xlump10
+x5 6 7 xlump10
+x6 7 8 xlump10
+x7 8 9 xlump10
+x8 9 10 xlump10
+x9 10 11 xlump10
+x10 11 2 xlump10
+.ends xonecm10
+
+.subckt xonecm8 1 2
+x1 1 3 xlump8
+x2 3 4 xlump8
+x3 4 5 xlump8
+x4 5 6 xlump8
+x5 6 7 xlump8
+x6 7 8 xlump8
+x7 8 9 xlump8
+x8 9 2 xlump8
+.ends xonecm8
+
+.subckt xonecm4 1 2
+x1 1 3 xlump4
+x2 3 4 xlump4
+x3 4 5 xlump4
+x4 5 2 xlump4
+.ends xonecm4
+
+.subckt xonecm2 1 2
+x1 1 3 xlump2
+x2 3 2 xlump2
+.ends xonecm2
+
+
+.subckt xtwocm 1 2
+x1 1 3 xonecm
+x2 3 2 xonecm
+.ends xtwocm
+
+.subckt xthreecm 1 2
+x1 1 3 xonecm
+x2 3 4 xonecm
+x3 4 2 xonecm
+.ends xthreecm
+
+.subckt xfourcm 1 2
+x1 1 3 xonecm
+x2 3 4 xonecm
+x3 4 5 xonecm
+x4 5 2 xonecm
+.ends xfourcm
+
+.subckt xfivecm 1 2
+x1 1 3 xonecm
+x2 3 4 xonecm
+x3 4 5 xonecm
+x4 5 6 xonecm
+x5 6 2 xonecm
+.ends xfivecm
+
+.subckt xsixcm 1 2
+x1 1 3 xfivecm
+x2 3 2 xonecm
+.ends xsixcm
+
+.subckt xsevencm 1 2
+x1 1 3 xsixcm
+x2 3 2 xonecm
+.ends xsevencm
+
+.subckt xeightcm 1 2
+x1 1 3 xsevencm
+x2 3 2 xonecm
+.ends xeightcm
+
+.subckt xninecm 1 2
+x1 1 3 xeightcm
+x2 3 2 xonecm
+.ends xninecm
+
+.subckt xtencm 1 2
+x1 1 3 xfivecm
+x2 3 2 xfivecm
+.ends xtencm
+
+.subckt xelevencm 1 2
+x1 1 3 xtencm
+x2 3 2 xonecm
+.ends xelevencm
+
+.subckt xtwelvecm 1 2
+x1 1 3 xtencm
+x2 3 4 xonecm
+x3 4 2 xonecm
+.ends xtwelvecm
+
+.subckt xsixteencm 1 2
+x1 1 3 xeightcm
+x2 3 2 xeightcm
+.ends xsixteencm
+
+.subckt xtwentyfourcm 1 2
+x1 1 3 xtwelvecm
+x2 3 2 xtwelvecm
+.ends xtwentyfourcm
+
+.end
diff --git a/Windows/spice/examples/cider/bicmos/bicmos.lib b/Windows/spice/examples/cider/bicmos/bicmos.lib
new file mode 100644
index 00000000..cc1eb20d
--- /dev/null
+++ b/Windows/spice/examples/cider/bicmos/bicmos.lib
@@ -0,0 +1,127 @@
+.MODEL M_NPN nbjt level=2
++ title TWO-DIMENSIONAL NUMERICAL POLYSILICON EMITTER BIPOLAR TRANSISTOR
++ * Since, we are only simulating half of a device, we double the unit width
++ * 1.0 um emitter length
++ options defw=2.0u
++ output dc.debug stat
++
++ *x.mesh w=2.5 n=5
++ x.mesh w=2.0 h.e=0.05 h.m=0.2 r=1.5
++ x.mesh w=0.5 h.s=0.05 h.m=0.1 r=1.5
++
++ y.mesh l=-0.2 n=1
++ y.mesh l= 0.0 n=5
++ y.mesh w=0.10 h.e=0.002 h.m=0.01 r=1.5
++ y.mesh w=0.15 h.s=0.002 h.m=0.01 r=1.5
++ y.mesh w=0.35 h.s=0.01 h.m=0.2 r=1.5
++ y.mesh w=0.40 h.e=0.05 h.m=0.2 r=1.5
++ y.mesh w=0.30 h.s=0.05 h.m=0.1 r=1.5
++
++ domain num=1 material=1 x.l=2.0 y.h=0.0
++ domain num=2 material=2 x.h=2.0 y.h=0.0
++ domain num=3 material=3 y.l=0.0
++ material num=1 polysilicon
++ material num=2 oxide
++ material num=3 silicon
++
++ elec num=1 x.l=0.0 x.h=0.0 y.l=1.1 y.h=1.3
++ elec num=2 x.l=0.0 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=3 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=-0.2
++
++ doping gauss n.type conc=3e20 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=0.0
++ + char.l=0.047 lat.rotate
++ doping gauss p.type conc=1e19 x.l=0.0 x.h=5.0 y.l=-0.2 y.h=0.0
++ + char.l=0.094 lat.rotate
++ doping unif n.type conc=1e16 x.l=0.0 x.h=5.0 y.l=0.0 y.h=1.3
++ doping gauss n.type conc=5e19 x.l=0.0 x.h=5.0 y.l=1.3 y.h=1.3
++ + char.l=0.100 lat.rotate
++
++ method ac=direct itlim=10
++ models bgn srh auger conctau concmob fieldmob
+
+.MODEL M_NMOS_1 numos
++ output dc.debug stat
++ title 1.0um NMOS Device
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.4 h.s=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.4 h.e=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1.0 x.h=2.0 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=2.5 x.h=3.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1.0 x.h=2.0 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=3.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=3.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=3.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1.0 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=2.0 x.h=3.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=2.05 x.h=3.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob fieldmob surfmob srh auger conctau bgn ^aval
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_1 numos
++ title 1.0um PMOS Device
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.4 h.s=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.4 h.e=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1.0 x.h=2.0 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=2.5 x.h=3.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1.0 x.h=2.0 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=3.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=3.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=3.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1.0 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=2.0 x.h=3.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=2.05 x.h=3.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob fieldmob surfmob srh auger conctau bgn ^aval
++ method ac=direct itlim=10 onec
diff --git a/Windows/spice/examples/cider/bicmos/bicmpd.cir b/Windows/spice/examples/cider/bicmos/bicmpd.cir
new file mode 100644
index 00000000..8096b49b
--- /dev/null
+++ b/Windows/spice/examples/cider/bicmos/bicmpd.cir
@@ -0,0 +1,26 @@
+BiCMOS Pulldown Circuit
+
+VSS 2 0 0v
+
+VIN 3 2 0v (PULSE 0.0v 4.2v 0ns 1ns 1ns 9ns 20ns)
+
+M1 8 3 5 11 M_NMOS_1 W=4u L=1u
+VD 4 8 0v
+VBK 11 2 0v
+
+Q1 10 7 9 M_NPN AREA=8
+VC 4 10 0v
+VB 5 7 0v
+VE 9 2 0v
+
+CL 4 6 1pF
+VL 6 2 0v
+
+.IC V(10)=5.0v V(7)=0.0v
+.TRAN 0.1ns 5ns 0ns 0.1ns
+.PLOT TRAN I(VIN)
+
+.include bicmos.lib
+
+.OPTIONS ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/bjt/astable.cir b/Windows/spice/examples/cider/bjt/astable.cir
new file mode 100644
index 00000000..bdb4a8a8
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/astable.cir
@@ -0,0 +1,34 @@
+Astable multivibrator
+
+vin 5 0 dc 0 pulse(0 5 0 1us 1us 100us 100us)
+vcc 6 0 5.0
+rc1 6 1 1k
+rc2 6 2 1k
+rb1 6 3 30k
+rb2 5 4 30k
+c1 1 4 150pf
+c2 2 3 150pf
+q1 1 3 0 qmod area = 100p
+q2 2 4 0 qmod area = 100p
+
+.option acct bypass=1
+.tran 0.05us 8us 0us 0.05us
+.print tran v(1) v(2) v(3) v(4)
+
+.model qmod nbjt level=1
++ x.mesh node=1 loc=0.0
++ x.mesh node=61 loc=3.0
++ region num=1 material=1
++ material num=1 silicon nbgnn=1e17 nbgnp=1e17
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++ doping unif n.type conc=1e17 x.l=0.0 x.h=1.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.5
++ doping unif n.type conc=1e15 x.l=0.0 x.h=3.0
++ models bgnw srh conctau auger concmob fieldmob
++ options base.length=1.0 base.depth=1.25
+
+.end
diff --git a/Windows/spice/examples/cider/bjt/colposc.cir b/Windows/spice/examples/cider/bjt/colposc.cir
new file mode 100644
index 00000000..bd4d31fa
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/colposc.cir
@@ -0,0 +1,33 @@
+Colpitt's Oscillator Circuit
+
+r1 1 0 1
+q1 2 1 3 qmod area = 100p
+vcc 4 0 5
+rl 4 2 750
+c1 2 3 500p
+c2 4 3 4500p
+l1 4 2 5uH
+re 3 6 4.65k
+vee 6 0 dc -15 pwl 0 -15 1e-9 -10
+
+.tran 30n 12u
+.print tran v(2)
+
+.model qmod nbjt level=1
++ x.mesh node=1 loc=0.0
++ x.mesh node=61 loc=3.0
++ region num=1 material=1
++ material num=1 silicon nbgnn=1e17 nbgnp=1e17
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++ doping unif n.type conc=1e17 x.l=0.0 x.h=1.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.5
++ doping unif n.type conc=1e15 x.l=0.0 x.h=3.0
++ models bgnw srh conctau auger concmob fieldmob
++ options base.length=1.0 base.depth=1.25
+
+.options acct bypass=1
+.end
diff --git a/Windows/spice/examples/cider/bjt/ecp.cir b/Windows/spice/examples/cider/bjt/ecp.cir
new file mode 100644
index 00000000..6fb2bda9
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/ecp.cir
@@ -0,0 +1,57 @@
+Emitter Coupled Pair
+
+VCC 1 0 5v
+VEE 2 0 0v
+RCP 1 11 10k
+RCN 1 21 10k
+VBBP 12 0 3v AC 1
+VBBN 22 0 3v
+IEE 13 2 0.1mA
+Q1 11 12 13 M_NPN AREA=8
+Q2 21 22 13 M_NPN AREA=8
+
+.DC VBBP 2.75v 3.25001v 10mv
+.PRINT V(21) V(11)
+
+.MODEL M_NPN nbjt level=2
++ title TWO-DIMENSIONAL NUMERICAL POLYSILICON EMITTER BIPOLAR TRANSISTOR
++ * Since, we are only simulating half of a device, we double the unit width
++ * 1.0 um emitter length
++ options defw=2.0u
++
++ *x.mesh w=2.5 n=5
++ x.mesh w=2.0 h.e=0.05 h.m=0.2 r=1.5
++ x.mesh w=0.5 h.s=0.05 h.m=0.1 r=1.5
++
++ y.mesh l=-0.2 n=1
++ y.mesh l= 0.0 n=5
++ y.mesh w=0.10 h.e=0.002 h.m=0.01 r=1.5
++ y.mesh w=0.15 h.s=0.002 h.m=0.01 r=1.5
++ y.mesh w=0.35 h.s=0.01 h.m=0.2 r=1.5
++ y.mesh w=0.40 h.e=0.05 h.m=0.2 r=1.5
++ y.mesh w=0.30 h.s=0.05 h.m=0.1 r=1.5
++
++ domain num=1 material=1 x.l=2.0 y.h=0.0
++ domain num=2 material=2 x.h=2.0 y.h=0.0
++ domain num=3 material=3 y.l=0.0
++ material num=1 polysilicon
++ material num=2 oxide
++ material num=3 silicon
++
++ elec num=1 x.l=0.0 x.h=0.0 y.l=1.1 y.h=1.3
++ elec num=2 x.l=0.0 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=3 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=-0.2
++
++ doping gauss n.type conc=3e20 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=0.0
++ + char.l=0.047 lat.rotate
++ doping gauss p.type conc=1e19 x.l=0.0 x.h=5.0 y.l=-0.2 y.h=0.0
++ + char.l=0.094 lat.rotate
++ doping unif n.type conc=1e16 x.l=0.0 x.h=5.0 y.l=0.0 y.h=1.3
++ doping gauss n.type conc=5e19 x.l=0.0 x.h=5.0 y.l=1.3 y.h=1.3
++ + char.l=0.100 lat.rotate
++
++ method ac=direct itlim=10
++ models bgn srh auger conctau concmob fieldmob
+
+.OPTIONS ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/bjt/invchain.cir b/Windows/spice/examples/cider/bjt/invchain.cir
new file mode 100644
index 00000000..92c6fad8
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/invchain.cir
@@ -0,0 +1,38 @@
+4 Stage RTL Inverter Chain
+
+vin 1 0 dc 0v pwl 0ns 0v 1ns 5v
+vcc 12 0 dc 5.0v
+rc1 12 3 2.5k
+rb1 1 2 8k
+q1 3 2 0 qmod area = 100p
+rb2 3 4 8k
+rc2 12 5 2.5k
+q2 5 4 0 qmod area = 100p
+rb3 5 6 8k
+rc3 12 7 2.5k
+q3 7 6 0 qmod area = 100p
+rb4 7 8 8k
+rc4 12 9 2.5k
+q4 9 8 0 qmod area = 100p
+
+.print tran v(3) v(5) v(9)
+.tran 1e-9 10e-9
+
+.model qmod nbjt level=1
++ x.mesh node=1 loc=0.0
++ x.mesh node=61 loc=3.0
++ region num=1 material=1
++ material num=1 silicon nbgnn=1e17 nbgnp=1e17
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++ doping unif n.type conc=1e17 x.l=0.0 x.h=1.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.5
++ doping unif n.type conc=1e15 x.l=0.0 x.h=3.0
++ models bgnw srh conctau auger concmob fieldmob
++ options base.length=1.0 base.depth=1.25
+
+.option acct bypass=1
+.end
diff --git a/Windows/spice/examples/cider/bjt/meclgate.cir b/Windows/spice/examples/cider/bjt/meclgate.cir
new file mode 100644
index 00000000..33542d5d
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/meclgate.cir
@@ -0,0 +1,74 @@
+Motorola MECL III ECL gate
+*.dc vin -2.0 0 0.02
+.tran 0.2ns 20ns
+vee 22 0 -6.0
+vin 1 0 pulse -0.8 -1.8 0.2ns 0.2ns 0.2ns 10ns 20ns
+rs 1 2 50
+q1 4 2 6 qmod area = 100p
+q2 4 3 6 qmod area = 100p
+q3 5 7 6 qmod area = 100p
+q4 0 8 7 qmod area = 100p
+
+d1 8 9 dmod
+d2 9 10 dmod
+
+rp1 3 22 50k
+rc1 0 4 100
+rc2 0 5 112
+re 6 22 380
+r1 7 22 2k
+r2 0 8 350
+r3 10 22 1958
+
+q5 0 5 11 qmod area = 100p
+q6 0 4 12 qmod area = 100p
+
+rp2 11 22 560
+rp3 12 22 560
+
+q7 13 12 15 qmod area = 100p
+q8 14 16 15 qmod area = 100p
+
+re2 15 22 380
+rc3 0 13 100
+rc4 0 14 112
+
+q9 0 17 16 qmod area = 100p
+
+r4 16 22 2k
+r5 0 17 350
+d3 17 18 dmod
+d4 18 19 dmod
+r6 19 22 1958
+
+q10 0 14 20 qmod area = 100p
+q11 0 13 21 qmod area = 100p
+
+rp4 20 22 560
+rp5 21 22 560
+
+.model dmod d rs=40 tt=0.1ns cjo=0.9pf n=1 is=1e-14 eg=1.11 vj=0.8 m=0.5
+
+.model qmod nbjt level=1
++ x.mesh node=1 loc=0.0
++ x.mesh node=10 loc=0.9
++ x.mesh node=20 loc=1.1
++ x.mesh node=30 loc=1.4
++ x.mesh node=40 loc=1.6
++ x.mesh node=61 loc=3.0
++ region num=1 material=1
++ material num=1 silicon nbgnn=1e17 nbgnp=1e17
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++ doping unif n.type conc=1e17 x.l=0.0 x.h=1.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.5
++ doping unif n.type conc=1e15 x.l=0.0 x.h=3.0
++ models bgnw srh conctau auger concmob fieldmob
++ options base.length=1.0 base.depth=1.25
+
+.options acct bypass=1
+.print tran v(12) v(21)
+.end
diff --git a/Windows/spice/examples/cider/bjt/pebjt.lib b/Windows/spice/examples/cider/bjt/pebjt.lib
new file mode 100644
index 00000000..afbdb36c
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/pebjt.lib
@@ -0,0 +1,71 @@
+**
+* Numerical models for a
+* polysilicon emitter complementary bipolar process.
+* The default device size is 1um by 10um (LxW)
+**
+
+.model M_NPN nbjt level=1
++ title One-Dimensional Numerical Bipolar
++ options base.depth=0.15 base.area=0.1 base.length=1.0 defa=10p
++ x.mesh loc=-0.2 n=1
++ x.mesh loc=0.0 n=51
++ x.mesh wid=0.15 h.e=0.0001 h.m=.004 r=1.2
++ x.mesh wid=1.15 h.s=0.0001 h.m=.004 r=1.2
++ domain num=1 material=1 x.l=0.0
++ domain num=2 material=2 x.h=0.0
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ material num=2 polysilicon
++ mobility mat=2 concmod=ct fieldmod=ct
++ doping gauss n.type conc=3e20 x.l=-0.2 x.h=0.0 char.len=0.047
++ doping gauss p.type conc=5e18 x.l=-0.2 x.h=0.0 char.len=0.100
++ doping unif n.type conc=1e16 x.l=0.0 x.h=1.3
++ doping gauss n.type conc=5e19 x.l=1.3 x.h=1.3 char.len=0.100
++ models bgn srh auger conctau concmob fieldmob ^aval
++ method devtol=1e-12 ac=direct itlim=15
+
+.model M_NPSUB numd level=1
++ title One-Dimensional Numerical Collector-Substrate Diode
++ options defa=10p
++ x.mesh loc=1.3 n=1
++ x.mesh loc=2.0 n=101
++ domain num=1 material=1
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ doping gauss n.type conc=5e19 x.l=1.3 x.h=1.3 char.len=0.100
++ doping unif p.type conc=1e15 x.l=0.0 x.h=2.0
++ models bgn srh auger conctau concmob fieldmob ^aval
++ method devtol=1e-12 itlim=10
+
+.model M_PNP nbjt level=1
++ title One-Dimensional Numerical Bipolar
++ options base.depth=0.2 base.area=0.1 base.length=1.0 defa=10p
++ x.mesh loc=-0.2 n=1
++ x.mesh loc=0.0 n=51
++ x.mesh wid=0.20 h.e=0.0001 h.m=.004 r=1.2
++ x.mesh wid=1.10 h.s=0.0001 h.m=.004 r=1.2
++ domain num=1 material=1 x.l=0.0
++ domain num=2 material=2 x.h=0.0
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ material num=2 polysilicon
++ mobility mat=2 concmod=ct fieldmod=ct
++ doping gauss p.type conc=3e20 x.l=-0.2 x.h=0.0 char.len=0.047
++ doping gauss n.type conc=5e17 x.l=-0.2 x.h=0.0 char.len=0.200
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.3
++ doping gauss p.type conc=5e19 x.l=1.3 x.h=1.3 char.len=0.100
++ models bgn srh auger conctau concmob fieldmob ^aval
++ method devtol=1e-12 ac=direct itlim=15
+
+.model M_PNSUB numd level=1
++ title One-Dimensional Numerical Collector-Substrate Diode
++ options defa=10p
++ x.mesh loc=1.3 n=1
++ x.mesh loc=2.0 n=101
++ domain num=1 material=1
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ doping gauss p.type conc=5e19 x.l=1.3 x.h=1.3 char.len=0.100
++ doping unif n.type conc=1e15 x.l=0.0 x.h=2.0
++ models bgn srh auger conctau concmob fieldmob ^aval
++ method devtol=1e-12 itlim=10
diff --git a/Windows/spice/examples/cider/bjt/pz.cir b/Windows/spice/examples/cider/bjt/pz.cir
new file mode 100644
index 00000000..ad3ee675
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/pz.cir
@@ -0,0 +1,16 @@
+PZ Analysis of a Common Emitter Amplifier
+
+Vcc 1 0 5v
+Vee 2 0 0v
+
+Vin 3 0 0.7838 AC 1
+RS 3 4 1K
+Q1 5 4 2 M_NPN AREA=4 SAVE
+RL 1 5 2.5k
+CL 5 0 0.1pF
+
+.INCLUDE pebjt.lib
+
+.PZ 3 0 5 0 vol pz
+
+.END
diff --git a/Windows/spice/examples/cider/bjt/rtlinv.cir b/Windows/spice/examples/cider/bjt/rtlinv.cir
new file mode 100644
index 00000000..f45eb983
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/rtlinv.cir
@@ -0,0 +1,29 @@
+RTL inverter
+
+vin 1 0 dc 1 pwl 0 4 1ns 0
+vcc 12 0 dc 5.0
+rc1 12 3 2.5k
+rb1 1 2 8k
+q1 3 2 0 qmod area = 100p
+
+.option acct bypass=1
+.tran 0.5n 5n
+.print tran v(2) v(3)
+
+.model qmod nbjt level=1
++ x.mesh node=1 loc=0.0
++ x.mesh node=61 loc=3.0
++ region num=1 material=1
++ material num=1 silicon nbgnn=1e17 nbgnp=1e17
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++ doping unif n.type conc=1e17 x.l=0.0 x.h=1.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.5
++ doping unif n.type conc=1e15 x.l=0.0 x.h=3.0
++ models bgnw srh conctau auger concmob fieldmob
++ options base.length=1.0 base.depth=1.25
+
+.end
diff --git a/Windows/spice/examples/cider/bjt/vco.cir b/Windows/spice/examples/cider/bjt/vco.cir
new file mode 100644
index 00000000..d1b1a058
--- /dev/null
+++ b/Windows/spice/examples/cider/bjt/vco.cir
@@ -0,0 +1,45 @@
+Voltage controlled oscillator
+
+rc1 7 5 1k
+rc2 7 6 1k
+
+q5 7 7 5 qmod area = 100p
+q6 7 7 6 qmod area = 100p
+
+q3 7 5 2 qmod area = 100p
+q4 7 6 1 qmod area = 100p
+
+ib1 2 0 .5ma
+ib2 1 0 .5ma
+cb1 2 0 1pf
+cb2 1 0 1pf
+
+q1 5 1 3 qmod area = 100p
+q2 6 2 4 qmod area = 100p
+
+c1 3 4 .1uf
+
+is1 3 0 dc 2.5ma pulse 2.5ma 0.5ma 0 1us 1us 50ms
+is2 4 0 1ma
+vcc 7 0 10
+
+.model qmod nbjt level=1
++ x.mesh node=1 loc=0.0
++ x.mesh node=61 loc=3.0
++ region num=1 material=1
++ material num=1 silicon nbgnn=1e17 nbgnp=1e17
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++ doping unif n.type conc=1e17 x.l=0.0 x.h=1.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.5
++ doping unif n.type conc=1e15 x.l=0.0 x.h=3.0
++ models bgnw srh conctau auger concmob fieldmob
++ options base.length=1.0 base.depth=1.25
+
+.option acct bypass=1
+.tran 3us 600us 0 3us
+.print tran v(4)
+.end
diff --git a/Windows/spice/examples/cider/diode/diode.cir b/Windows/spice/examples/cider/diode/diode.cir
new file mode 100644
index 00000000..e0ace324
--- /dev/null
+++ b/Windows/spice/examples/cider/diode/diode.cir
@@ -0,0 +1,35 @@
+One-Dimensional Diode Simulation
+
+* Several simulations are performed by this file.
+* They are:
+* 1. An operating point at 0.7v forward bias.
+* 2. An ac analysis at 0.7v forward bias.
+* 3. The forward and reverse bias characteristics from -3v to 2v.
+
+Vpp 1 0 0.7v (PWL 0ns 3.0v 0.01ns -6.0v) (AC 1v)
+Vnn 2 0 0v
+D1 1 2 M_PN AREA=100
+
+.model M_PN numd level=1
++ ***************************************
++ *** One-Dimensional Numerical Diode ***
++ ***************************************
++ options defa=1p
++ x.mesh loc=0.0 n=1
++ x.mesh loc=1.3 n=201
++ domain num=1 material=1
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ doping gauss p.type conc=1e20 x.l=0.0 x.h=0.0 char.l=0.100
++ doping unif n.type conc=1e16 x.l=0.0 x.h=1.3
++ doping gauss n.type conc=5e19 x.l=1.3 x.h=1.3 char.l=0.100
++ models bgn aval srh auger conctau concmob fieldmob
++ method ac=direct
+
+.option acct bypass=0 abstol=1e-18 itl2=100
+.op
+.ac dec 10 100kHz 10gHz
+.dc Vpp -3.0v 2.0001v 50mv
+.print i(Vpp)
+
+.END
diff --git a/Windows/spice/examples/cider/diode/diotran.cir b/Windows/spice/examples/cider/diode/diotran.cir
new file mode 100644
index 00000000..110d2550
--- /dev/null
+++ b/Windows/spice/examples/cider/diode/diotran.cir
@@ -0,0 +1,31 @@
+Diode Reverse Recovery
+
+* This file simulates reverse recovery of a diode as it switched from an
+* on to off state.
+
+Vpp 1 0 0.7v (PWL 0ns 3.0v 0.1ns 3.0v 0.11ns -6.0v) (AC 1v)
+Vnn 2 0 0v
+R1 1 3 1k
+D1 3 2 M_PN area=100
+
+.MODEL M_PN numd level=1
++ ***************************************
++ *** One-Dimensional Numerical Diode ***
++ ***************************************
++ options defa=1p
++ x.mesh loc=0.0 n=1
++ x.mesh loc=1.3 n=201
++ domain num=1 material=1
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ doping gauss p.type conc=3e20 x.l=0.0 x.h=0.0 char.l=0.100
++ doping unif n.type conc=1e16 x.l=0.0 x.h=1.3
++ doping gauss n.type conc=5e19 x.l=1.3 x.h=1.3 char.l=0.100
++ models bgn aval srh auger conctau concmob fieldmob
++ method ac=direct
+
+.option acct bypass=1 abstol=1e-15 itl2=100
+.tran 0.001ns 1.0ns
+.print i(Vpp)
+
+.END
diff --git a/Windows/spice/examples/cider/diode/pindiode.cir b/Windows/spice/examples/cider/diode/pindiode.cir
new file mode 100644
index 00000000..1eb18b42
--- /dev/null
+++ b/Windows/spice/examples/cider/diode/pindiode.cir
@@ -0,0 +1,42 @@
+TWO-DIMENSIONAL PIN-DIODE CIRCUIT
+
+VIN 1 0 0.0v (PWL 0ns 0.8v 1ns -50.0v)
+L1 1 2 0.5uH
+VD 2 3 0.0v
+D1 3 0 M_PIN AREA=200 IC.FILE="OP.0.d1"
+VRC 2 4 0.0v
+R1 4 5 100
+C1 5 0 1.0nF
+
+.MODEL M_PIN NUMD LEVEL=2
++ options defw=1000u
++ x.mesh n=1 l=0.0
++ x.mesh n=2 l=0.2
++ x.mesh n=4 l=0.4
++ x.mesh n=8 l=0.6
++ x.mesh n=13 l=1.0
++
++ y.mesh n=1 l=0.0
++ y.mesh n=9 l=4.0
++ y.mesh n=24 l=10.0
++ y.mesh n=29 l=15.0
++ y.mesh n=34 l=20.0
++
++ domain num=1 material=1
++ material num=1 silicon tn=20ns tp=20ns
++
++ electrode num=1 x.l=0.6 x.h=1.0 y.h=0.0
++ electrode num=2 y.l=20.0
++
++ doping gauss p.type conc=1.0e20 char.len=1.076 x.l=0.75 x.h=1.1 y.h=0.0
++ + lat.rotate ratio=0.1
++ doping unif n.type conc=1.0e14
++ doping gauss n.type conc=1.0e20 char.len=1.614 x.l=-0.1 x.h=1.1 y.l=20.0
++
++ models bgn srh auger conctau concmob fieldmob
+
+.OPTION ACCT BYPASS=1
+.TRAN 1NS 100NS
+.PRINT TRAN v(3) I(VIN)
+
+.END
diff --git a/Windows/spice/examples/cider/jfet/jfet.cir b/Windows/spice/examples/cider/jfet/jfet.cir
new file mode 100644
index 00000000..e3f00536
--- /dev/null
+++ b/Windows/spice/examples/cider/jfet/jfet.cir
@@ -0,0 +1,36 @@
+Two-dimensional Junction Field-Effect Transistor (JFET)
+
+VDD 1 0 0.5V
+VGG 2 0 -1.0v AC 1V
+VSS 3 0 0.0V
+QJ1 1 2 3 M_NJF AREA=1
+
+.MODEL M_NJF NBJT LEVEL=2
++ options jfet defw=10.0um
++ output dc.debug phin phip equ.psi vac.psi
++ x.mesh w=0.2 h.e=0.001 r=1.8
++ x.mesh w=0.8 h.s=0.001 h.m=0.1 r=2.0
++ x.mesh w=0.8 h.e=0.001 h.m=0.1 r=2.0
++ x.mesh w=0.2 h.s=0.001 r=1.8
++ y.mesh w=0.2 h.e=0.01 r=1.8
++ y.mesh w=0.8 h.s=0.01 h.m=0.1 r=1.8
++
++ domain num=1 mat=1
++ material num=1 silicon
++
++ elec num=1 x.l=0.0 x.h=0.0 y.l=0.0 y.h=1.0
++ elec num=2 x.l=0.5 x.h=1.5 y.l=0.0 y.h=0.0
++ elec num=3 x.l=2.0 x.h=2.0 y.l=0.0 y.h=1.0
++
++ doping unif n.type conc=3.0e15
++ doping unif p.type conc=2.0e17 x.l=0.2 x.h=1.8 y.h=0.2
++
++ models bgn srh auger conctau concmob fieldmob ^aval
+
+.option acct bypass=1 temp=27
+*.op
+.dc vgg 0.0 -2.0001 -0.1
+*.ac dec 10 1k 100g
+.print i(vnn)
+
+.end
diff --git a/Windows/spice/examples/cider/mos/bootinv.cir b/Windows/spice/examples/cider/mos/bootinv.cir
new file mode 100644
index 00000000..4c2ea40d
--- /dev/null
+++ b/Windows/spice/examples/cider/mos/bootinv.cir
@@ -0,0 +1,59 @@
+NMOS Enhancement-Load Bootstrap Inverter
+
+Vdd 1 0 5.0v
+Vss 2 0 0.0v
+
+Vin 5 0 0.0v PWL (0.0ns 5.0v) (1ns 0.0v) (10ns 0.0v) (11ns 5.0v)
++ (20ns 5.0v) (21ns 0.0v) (30ns 0.0v) (31ns 5.0v)
+M1 1 1 3 2 M_NMOS w=5u
+M2 1 3 4 4 M_NMOS w=5u
+M3 4 5 2 2 M_NMOS w=5u
+CL 4 0 0.1pf
+CB 3 4 0.1pf
+
+.model M_NMOS numos
++ x.mesh l=0.0 n=1
++ x.mesh l=0.6 n=4
++ x.mesh l=0.7 n=5
++ x.mesh l=1.0 n=7
++ x.mesh l=1.2 n=11
++ x.mesh l=3.2 n=21
++ x.mesh l=3.4 n=25
++ x.mesh l=3.7 n=27
++ x.mesh l=3.8 n=28
++ x.mesh l=4.4 n=31
++
++ y.mesh l=-.05 n=1
++ y.mesh l=0.0 n=5
++ y.mesh l=.05 n=9
++ y.mesh l=0.3 n=14
++ y.mesh l=2.0 n=19
++
++ region num=1 material=1 y.l=0.0
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 init elec major
++ mobility material=1 init elec minor
++ mobility material=1 init hole major
++ mobility material=1 init hole minor
++
++ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7
++ material num=2 oxide
++
++ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0
++ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1
++ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0
++ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0
++
++ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05
++ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2
++ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2
++
++ models concmob fieldmob
++ method ac=direct onec
+
+.tran 0.2ns 40ns
+.print v(4)
+.options acct bypass=1 method=gear
+.end
diff --git a/Windows/spice/examples/cider/mos/charge.cir b/Windows/spice/examples/cider/mos/charge.cir
new file mode 100644
index 00000000..845a14a8
--- /dev/null
+++ b/Windows/spice/examples/cider/mos/charge.cir
@@ -0,0 +1,57 @@
+MOS charge pump
+
+vin 4 0 dc 0v pulse 0 5 15ns 5ns 5ns 50ns 100ns
+vdd 5 6 dc 0v pulse 0 5 25ns 5ns 5ns 50ns 100ns
+vbb 0 7 dc 0v pulse 0 5 0ns 5ns 5ns 50ns 100ns
+rd 6 2 10k
+m1 5 4 3 7 mmod w=100um
+vs 3 2 0
+vc 2 1 0
+c2 1 0 10pf
+
+.ic v(3)=1.0
+.tran 2ns 200ns
+.options acct bypass=1
+.print tran v(1) v(2)
+
+.model mmod numos
++ x.mesh n=1 l=0
++ x.mesh n=3 l=0.4
++ x.mesh n=7 l=0.6
++ x.mesh n=15 l=1.4
++ x.mesh n=19 l=1.6
++ x.mesh n=21 l=2.0
++
++ y.mesh n=1 l=0
++ y.mesh n=4 l=0.015
++ y.mesh n=8 l=0.05
++ y.mesh n=12 l=0.25
++ y.mesh n=14 l=0.35
++ y.mesh n=17 l=0.5
++ y.mesh n=21 l=1.0
++
++ region num=1 material=1 y.l=0.015
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++
++ region num=2 material=2 y.h=0.015 x.l=0.5 x.h=1.5
++ material num=2 oxide
++
++ elec num=1 ix.l=18 ix.h=21 iy.l=4 iy.h=4
++ elec num=2 ix.l=5 ix.h=17 iy.l=1 iy.h=1
++ elec num=3 ix.l=1 ix.h=4 iy.l=4 iy.h=4
++ elec num=4 ix.l=1 ix.h=21 iy.l=21 iy.h=21
++
++ doping unif n.type conc=1e18 x.l=0.0 x.h=0.5 y.l=0.015 y.h=0.25
++ doping unif n.type conc=1e18 x.l=1.5 x.h=2.0 y.l=0.015 y.h=0.25
++ doping unif p.type conc=1e15 x.l=0.0 x.h=2.0 y.l=0.015 y.h=1.0
++ doping unif p.type conc=1.3e17 x.l=0.5 x.h=1.5 y.l=0.015 y.h=0.05
++
++ models concmob fieldmob
++ method onec
+
+.end
diff --git a/Windows/spice/examples/cider/mos/cmosinv.cir b/Windows/spice/examples/cider/mos/cmosinv.cir
new file mode 100644
index 00000000..8f153cc7
--- /dev/null
+++ b/Windows/spice/examples/cider/mos/cmosinv.cir
@@ -0,0 +1,115 @@
+CMOS Inverter
+
+Vdd 1 0 5.0v
+Vss 2 0 0.0v
+
+X1 1 2 3 4 INV
+
+Vin 3 0 2.5v
+
+.SUBCKT INV 1 2 3 4
+* Vdd Vss Vin Vout
+M1 14 13 15 16 M_PMOS w=6.0u
+M2 24 23 25 26 M_NMOS w=3.0u
+
+Vgp 3 13 0.0v
+Vdp 4 14 0.0v
+Vsp 1 15 0.0v
+Vbp 1 16 0.0v
+
+Vgn 3 23 0.0v
+Vdn 4 24 0.0v
+Vsn 2 25 0.0v
+Vbn 2 26 0.0v
+.ENDS INV
+
+.model M_NMOS numos
++ x.mesh l=0.0 n=1
++ x.mesh l=0.6 n=4
++ x.mesh l=0.7 n=5
++ x.mesh l=1.0 n=7
++ x.mesh l=1.2 n=11
++ x.mesh l=3.2 n=21
++ x.mesh l=3.4 n=25
++ x.mesh l=3.7 n=27
++ x.mesh l=3.8 n=28
++ x.mesh l=4.4 n=31
++
++ y.mesh l=-.05 n=1
++ y.mesh l=0.0 n=5
++ y.mesh l=.05 n=9
++ y.mesh l=0.3 n=14
++ y.mesh l=2.0 n=19
++
++ region num=1 material=1 y.l=0.0
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++
++ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7
++ material num=2 oxide
++
++ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0
++ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1
++ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0
++ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0
++
++ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05
++ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2
++ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2
++
++ models concmob fieldmob bgn srh conctau
++ method ac=direct onec
+
+.model M_PMOS numos
++ x.mesh l=0.0 n=1
++ x.mesh l=0.6 n=4
++ x.mesh l=0.7 n=5
++ x.mesh l=1.0 n=7
++ x.mesh l=1.2 n=11
++ x.mesh l=3.2 n=21
++ x.mesh l=3.4 n=25
++ x.mesh l=3.7 n=27
++ x.mesh l=3.8 n=28
++ x.mesh l=4.4 n=31
++
++ y.mesh l=-.05 n=1
++ y.mesh l=0.0 n=5
++ y.mesh l=.05 n=9
++ y.mesh l=0.3 n=14
++ y.mesh l=2.0 n=19
++
++ region num=1 material=1 y.l=0.0
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++
++ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7
++ material num=2 oxide
++
++ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0
++ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1
++ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0
++ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0
++
++ doping unif n.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0
++ doping unif p.type conc=3e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05
++ doping unif p.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2
++ doping unif p.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2
++
++ models concmob fieldmob bgn srh conctau
++ method ac=direct onec
+
+*.tran 0.1ns 5ns
+*.op
+.dc Vin 0.0v 5.001v 0.05v
+.print v(4)
+.options acct bypass=1 method=gear
+.end
diff --git a/Windows/spice/examples/cider/mos/nmosinv.cir b/Windows/spice/examples/cider/mos/nmosinv.cir
new file mode 100644
index 00000000..ac49c754
--- /dev/null
+++ b/Windows/spice/examples/cider/mos/nmosinv.cir
@@ -0,0 +1,55 @@
+Resistive load NMOS inverter
+vin 1 0 pwl 0 0.0 2ns 5
+vdd 3 0 dc 5.0
+rd 3 2 2.5k
+m1 2 1 4 5 mmod w=10um
+cl 2 0 2pf
+vb 5 0 0
+vs 4 0 0
+
+.model mmod numos
++ x.mesh l=0.0 n=1
++ x.mesh l=0.6 n=4
++ x.mesh l=0.7 n=5
++ x.mesh l=1.0 n=7
++ x.mesh l=1.2 n=11
++ x.mesh l=3.2 n=21
++ x.mesh l=3.4 n=25
++ x.mesh l=3.7 n=27
++ x.mesh l=3.8 n=28
++ x.mesh l=4.4 n=31
++
++ y.mesh l=-.05 n=1
++ y.mesh l=0.0 n=5
++ y.mesh l=.05 n=9
++ y.mesh l=0.3 n=14
++ y.mesh l=2.0 n=19
++
++ region num=1 material=1 y.l=0.0
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++
++ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7
++ material num=2 oxide
++
++ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0
++ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1
++ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0
++ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0
++
++ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05
++ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2
++ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2
++
++ models concmob fieldmob
++ method ac=direct onec
+
+.tran 0.2ns 30ns
+.options acct bypass=1
+.print tran v(1) v(2)
+.end
diff --git a/Windows/spice/examples/cider/mos/pass.cir b/Windows/spice/examples/cider/mos/pass.cir
new file mode 100644
index 00000000..a58c8a5f
--- /dev/null
+++ b/Windows/spice/examples/cider/mos/pass.cir
@@ -0,0 +1,59 @@
+Turnoff transient of pass transistor
+
+M1 11 2 3 4 mmod w=20um
+Cs 1 0 6.0pF
+Cl 3 0 6.0pF
+R1 3 6 200k
+Vin 6 0 dc 0
+Vdrn 1 11 dc 0
+Vg 2 0 dc 5 pwl 0 5 0.1n 0 1 0
+Vb 4 0 dc 0.0
+
+.tran 0.05ns 0.2ns 0.0ns 0.05ns
+.print tran v(1) i(Vdrn)
+.ic v(1)=0 v(3)=0
+.option acct bypass=1
+
+.model mmod numos
++ x.mesh l=0.0 n=1
++ x.mesh l=0.6 n=4
++ x.mesh l=0.7 n=5
++ x.mesh l=1.0 n=7
++ x.mesh l=1.2 n=11
++ x.mesh l=3.2 n=21
++ x.mesh l=3.4 n=25
++ x.mesh l=3.7 n=27
++ x.mesh l=3.8 n=28
++ x.mesh l=4.4 n=31
++
++ y.mesh l=-.05 n=1
++ y.mesh l=0.0 n=5
++ y.mesh l=.05 n=9
++ y.mesh l=0.3 n=14
++ y.mesh l=2.0 n=19
++
++ region num=1 material=1 y.l=0.0
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++
++ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7
++ material num=2 oxide
++
++ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0
++ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1
++ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0
++ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0
++
++ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05
++ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2
++ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2
++
++ models concmob fieldmob
++ method ac=direct onec
+
+.end
diff --git a/Windows/spice/examples/cider/mos/ringosc.cir b/Windows/spice/examples/cider/mos/ringosc.cir
new file mode 100644
index 00000000..0f313320
--- /dev/null
+++ b/Windows/spice/examples/cider/mos/ringosc.cir
@@ -0,0 +1,122 @@
+CMOS Ring Oscillator
+
+Vdd 1 0 5.0v
+Vss 2 0 0.0v
+
+X1 1 2 3 4 INV
+X2 1 2 4 5 INV
+X3 1 2 5 3 INV
+*X4 1 2 6 7 INV
+*X5 1 2 7 8 INV
+*X6 1 2 8 9 INV
+*X7 1 2 9 3 INV
+
+.IC V(3)=0.0v V(4)=2.5v V(5)=5.0v
+* V(6)=0.0v V(7)=5.0v V(8)=0.0v V(9)=5.0v
+
+Vin 3 0 2.5v
+
+.SUBCKT INV 1 2 3 4
+* Vdd Vss Vin Vout
+M1 14 13 15 16 M_PMOS w=6.0u
+M2 24 23 25 26 M_NMOS w=3.0u
+
+Vgp 3 13 0.0v
+Vdp 4 14 0.0v
+Vsp 1 15 0.0v
+Vbp 1 16 0.0v
+
+Vgn 3 23 0.0v
+Vdn 4 24 0.0v
+Vsn 2 25 0.0v
+Vbn 2 26 0.0v
+.ENDS INV
+
+.model M_NMOS numos
++ x.mesh l=0.0 n=1
++ x.mesh l=0.6 n=4
++ x.mesh l=0.7 n=5
++ x.mesh l=1.0 n=7
++ x.mesh l=1.2 n=11
++ x.mesh l=3.2 n=21
++ x.mesh l=3.4 n=25
++ x.mesh l=3.7 n=27
++ x.mesh l=3.8 n=28
++ x.mesh l=4.4 n=31
++
++ y.mesh l=-.05 n=1
++ y.mesh l=0.0 n=5
++ y.mesh l=.05 n=9
++ y.mesh l=0.3 n=14
++ y.mesh l=2.0 n=19
++
++ region num=1 material=1 y.l=0.0
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++
++ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7
++ material num=2 oxide
++
++ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0
++ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1
++ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0
++ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0
++
++ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0
++ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05
++ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2
++ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2
++
++ models concmob fieldmob bgn srh conctau
++ method ac=direct onec
+
+.model M_PMOS numos
++ x.mesh l=0.0 n=1
++ x.mesh l=0.6 n=4
++ x.mesh l=0.7 n=5
++ x.mesh l=1.0 n=7
++ x.mesh l=1.2 n=11
++ x.mesh l=3.2 n=21
++ x.mesh l=3.4 n=25
++ x.mesh l=3.7 n=27
++ x.mesh l=3.8 n=28
++ x.mesh l=4.4 n=31
++
++ y.mesh l=-.05 n=1
++ y.mesh l=0.0 n=5
++ y.mesh l=.05 n=9
++ y.mesh l=0.3 n=14
++ y.mesh l=2.0 n=19
++
++ region num=1 material=1 y.l=0.0
++ material num=1 silicon
++ mobility material=1 concmod=sg fieldmod=sg
++ mobility material=1 elec major
++ mobility material=1 elec minor
++ mobility material=1 hole major
++ mobility material=1 hole minor
++
++ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7
++ material num=2 oxide
++
++ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0
++ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1
++ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0
++ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0
++
++ doping unif n.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0
++ doping unif p.type conc=3e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05
++ doping unif p.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2
++ doping unif p.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2
++
++ models concmob fieldmob bgn srh conctau
++ method ac=direct onec
+
+.tran 0.1ns 5ns
+.print v(4)
+.options acct bypass=1 method=gear
+.end
diff --git a/Windows/spice/examples/cider/parallel/BICMOS.LIB b/Windows/spice/examples/cider/parallel/BICMOS.LIB
new file mode 100644
index 00000000..606570ca
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/BICMOS.LIB
@@ -0,0 +1,931 @@
+**
+* BICMOS.LIB: Library of models used in the 1.0 um CBiCMOS process
+* Contains CIDER input descriptions as well as matching
+* SPICE models for some of the CIDER models.
+**
+
+**
+* One-dimensional models for a
+* polysilicon emitter complementary bipolar process.
+* The default device size is 1um by 1um (LxW)
+**
+
+.model M_NPN1D nbjt level=1
++ title One-Dimensional Numerical Bipolar
++ options base.depth=0.15 base.area=0.1 base.length=0.5 defa=1p
++ x.mesh loc=-0.2 n=1
++ x.mesh loc=0.0 n=51
++ x.mesh wid=0.15 h.e=0.0001 h.m=.004 r=1.2
++ x.mesh wid=1.15 h.s=0.0001 h.m=.004 r=1.2
++ domain num=1 material=1 x.l=0.0
++ domain num=2 material=2 x.h=0.0
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ material num=2 polysilicon
++ mobility mat=2 concmod=ct fieldmod=ct
++ doping gauss n.type conc=3e20 x.l=-0.2 x.h=0.0 char.len=0.047
++ doping gauss p.type conc=5e18 x.l=-0.2 x.h=0.0 char.len=0.100
++ doping unif n.type conc=1e16 x.l=0.0 x.h=1.3
++ doping gauss n.type conc=5e19 x.l=1.3 x.h=1.3 char.len=0.100
++ models bgn srh auger conctau concmob fieldmob
++ method devtol=1e-12 ac=direct itlim=15
+
+.model M_PNP1D nbjt level=1
++ title One-Dimensional Numerical Bipolar
++ options base.depth=0.2 base.area=0.1 base.length=0.5 defa=1p
++ x.mesh loc=-0.2 n=1
++ x.mesh loc=0.0 n=51
++ x.mesh wid=0.20 h.e=0.0001 h.m=.004 r=1.2
++ x.mesh wid=1.10 h.s=0.0001 h.m=.004 r=1.2
++ domain num=1 material=1 x.l=0.0
++ domain num=2 material=2 x.h=0.0
++ material num=1 silicon
++ mobility mat=1 concmod=ct fieldmod=ct
++ material num=2 polysilicon
++ mobility mat=2 concmod=ct fieldmod=ct
++ doping gauss p.type conc=3e20 x.l=-0.2 x.h=0.0 char.len=0.047
++ doping gauss n.type conc=5e17 x.l=-0.2 x.h=0.0 char.len=0.200
++ doping unif p.type conc=1e16 x.l=0.0 x.h=1.3
++ doping gauss p.type conc=5e19 x.l=1.3 x.h=1.3 char.len=0.100
++ models bgn srh auger conctau concmob fieldmob
++ method devtol=1e-12 ac=direct itlim=15
+
+**
+* Two-dimensional models for a
+* polysilicon emitter complementary bipolar process.
+* The default device size is 1um by 1um (LxW)
+**
+
+.MODEL M_NPNS nbjt level=2
++ title TWO-DIMENSIONAL NUMERICAL POLYSILICON EMITTER BIPOLAR TRANSISTOR
++ * Since half the device is simulated, double the unit width to get
++ * 1.0 um emitter. Use a small mesh for this model.
++ options defw=2.0u
++ output stat
++
++ x.mesh w=2.0 h.e=0.02 h.m=0.5 r=2.0
++ x.mesh w=0.5 h.s=0.02 h.m=0.2 r=2.0
++
++ y.mesh l=-0.2 n=1
++ y.mesh l= 0.0 n=5
++ y.mesh w=0.10 h.e=0.004 h.m=0.05 r=2.5
++ y.mesh w=0.15 h.s=0.004 h.m=0.02 r=2.5
++ y.mesh w=1.05 h.s=0.02 h.m=0.1 r=2.5
++
++ domain num=1 material=1 x.l=2.0 y.h=0.0
++ domain num=2 material=2 x.h=2.0 y.h=0.0
++ domain num=3 material=3 y.l=0.0
++ material num=1 polysilicon
++ material num=2 oxide
++ material num=3 silicon
++
++ elec num=1 x.l=0.0 x.h=0.0 y.l=1.1 y.h=1.3
++ elec num=2 x.l=0.0 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=3 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=-0.2
++
++ doping gauss n.type conc=3e20 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=0.0
++ + char.l=0.047 lat.rotate
++ doping gauss p.type conc=5e18 x.l=0.0 x.h=5.0 y.l=-0.2 y.h=0.0
++ + char.l=0.100 lat.rotate
++ doping gauss p.type conc=1e20 x.l=0.0 x.h=0.5 y.l=-0.2 y.h=0.0
++ + char.l=0.100 lat.rotate ratio=0.7
++ doping unif n.type conc=1e16 x.l=0.0 x.h=5.0 y.l=0.0 y.h=1.3
++ doping gauss n.type conc=5e19 x.l=0.0 x.h=5.0 y.l=1.3 y.h=1.3
++ + char.l=0.100 lat.rotate
++
++ method ac=direct itlim=10
++ models bgn srh auger conctau concmob fieldmob
+
+.MODEL M_NPN nbjt level=2
++ title TWO-DIMENSIONAL NUMERICAL POLYSILICON EMITTER BIPOLAR TRANSISTOR
++ * Since half the device is simulated, double the unit width to get
++ * 1.0 um emitter length. Uses a finer mesh in the X direction.
++ options defw=2.0u
++ output stat
++
++ x.mesh w=0.5 h.e=0.075 h.m=0.2 r=2.0
++ x.mesh w=0.75 h.s=0.075 h.m=0.2 r=2.0
++ x.mesh w=0.75 h.e=0.05 h.m=0.2 r=1.5
++ x.mesh w=0.5 h.s=0.05 h.m=0.1 r=1.5
++
++ y.mesh l=-0.2 n=1
++ y.mesh l= 0.0 n=5
++ y.mesh w=0.10 h.e=0.003 h.m=0.01 r=1.5
++ y.mesh w=0.15 h.s=0.003 h.m=0.02 r=1.5
++ y.mesh w=0.35 h.s=0.02 h.m=0.2 r=1.5
++ y.mesh w=0.40 h.e=0.05 h.m=0.2 r=1.5
++ y.mesh w=0.30 h.s=0.05 h.m=0.1 r=1.5
++
++ domain num=1 material=1 x.l=2.0 y.h=0.0
++ domain num=2 material=2 x.h=2.0 y.h=0.0
++ domain num=3 material=3 y.l=0.0
++ material num=1 polysilicon
++ material num=2 oxide
++ material num=3 silicon
++
++ elec num=1 x.l=0.0 x.h=0.0 y.l=1.1 y.h=1.3
++ elec num=2 x.l=0.0 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=3 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=-0.2
++
++ doping gauss n.type conc=3e20 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=0.0
++ + char.l=0.047 lat.rotate
++ doping gauss p.type conc=5e18 x.l=0.0 x.h=5.0 y.l=-0.2 y.h=0.0
++ + char.l=0.100 lat.rotate
++ doping gauss p.type conc=1e20 x.l=0.0 x.h=0.5 y.l=-0.2 y.h=0.0
++ + char.l=0.100 lat.rotate ratio=0.7
++ doping unif n.type conc=1e16 x.l=0.0 x.h=5.0 y.l=0.0 y.h=1.3
++ doping gauss n.type conc=5e19 x.l=0.0 x.h=5.0 y.l=1.3 y.h=1.3
++ + char.l=0.100 lat.rotate
++
++ method ac=direct itlim=10
++ models bgn srh auger conctau concmob fieldmob
+
+.MODEL M_PNPS nbjt level=2
++ title TWO-DIMENSIONAL NUMERICAL POLYSILICON EMITTER BIPOLAR TRANSISTOR
++ * Since half the device is simulated, double the unit width to get
++ * 1.0 um emitter length. Use a small mesh for this model.
++ options defw=2.0u
++ output stat
++
++ x.mesh w=2.0 h.e=0.02 h.m=0.5 r=2.0
++ x.mesh w=0.5 h.s=0.02 h.m=0.2 r=2.0
++
++ y.mesh l=-0.2 n=1
++ y.mesh l= 0.0 n=5
++ y.mesh w=0.12 h.e=0.004 h.m=0.05 r=2.5
++ y.mesh w=0.28 h.s=0.004 h.m=0.02 r=2.5
++ y.mesh w=1.05 h.s=0.02 h.m=0.1 r=2.5
++
++ domain num=1 material=1 x.l=2.0 y.h=0.0
++ domain num=2 material=2 x.h=2.0 y.h=0.0
++ domain num=3 material=3 y.l=0.0
++ material num=1 polysilicon
++ material num=2 oxide
++ material num=3 silicon
++
++ elec num=1 x.l=0.0 x.h=0.0 y.l=1.1 y.h=1.3
++ elec num=2 x.l=0.0 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=3 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=-0.2
++
++ doping gauss p.type conc=3e20 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=0.0
++ + char.l=0.047 lat.rotate
++ doping gauss n.type conc=5e17 x.l=0.0 x.h=5.0 y.l=-0.2 y.h=0.0
++ + char.l=0.200 lat.rotate
++ doping gauss n.type conc=1e20 x.l=0.0 x.h=0.5 y.l=-0.2 y.h=0.0
++ + char.l=0.100 lat.rotate ratio=0.7
++ doping unif p.type conc=1e16 x.l=0.0 x.h=5.0 y.l=0.0 y.h=1.3
++ doping gauss p.type conc=5e19 x.l=0.0 x.h=5.0 y.l=1.3 y.h=1.3
++ + char.l=0.100 lat.rotate
++
++ method ac=direct itlim=10
++ models bgn srh auger conctau concmob fieldmob
+
+.MODEL M_PNP nbjt level=2
++ title TWO-DIMENSIONAL NUMERICAL POLYSILICON EMITTER BIPOLAR TRANSISTOR
++ * Since half the device is simulated, double the unit width to get
++ * 1.0 um emitter length. Uses a finer mesh in the X direction.
++ options defw=2.0u
++ output stat
++
++ x.mesh w=0.5 h.e=0.075 h.m=0.2 r=2.0
++ x.mesh w=0.75 h.s=0.075 h.m=0.2 r=2.0
++ x.mesh w=0.75 h.e=0.05 h.m=0.2 r=1.5
++ x.mesh w=0.5 h.s=0.05 h.m=0.1 r=1.5
++
++ y.mesh l=-0.2 n=1
++ y.mesh l= 0.0 n=5
++ y.mesh w=0.12 h.e=0.003 h.m=0.01 r=1.5
++ y.mesh w=0.28 h.s=0.003 h.m=0.02 r=1.5
++ y.mesh w=0.20 h.s=0.02 h.m=0.2 r=1.5
++ y.mesh w=0.40 h.e=0.05 h.m=0.2 r=1.5
++ y.mesh w=0.30 h.s=0.05 h.m=0.1 r=1.5
++
++ domain num=1 material=1 x.l=2.0 y.h=0.0
++ domain num=2 material=2 x.h=2.0 y.h=0.0
++ domain num=3 material=3 y.l=0.0
++ material num=1 polysilicon
++ material num=2 oxide
++ material num=3 silicon
++
++ elec num=1 x.l=0.0 x.h=0.0 y.l=1.1 y.h=1.3
++ elec num=2 x.l=0.0 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=3 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=-0.2
++
++ doping gauss p.type conc=3e20 x.l=2.0 x.h=3.0 y.l=-0.2 y.h=0.0
++ + char.l=0.047 lat.rotate
++ doping gauss n.type conc=5e17 x.l=0.0 x.h=5.0 y.l=-0.2 y.h=0.0
++ + char.l=0.200 lat.rotate
++ doping gauss n.type conc=1e20 x.l=0.0 x.h=0.5 y.l=-0.2 y.h=0.0
++ + char.l=0.100 lat.rotate ratio=0.7
++ doping unif p.type conc=1e16 x.l=0.0 x.h=5.0 y.l=0.0 y.h=1.3
++ doping gauss p.type conc=5e19 x.l=0.0 x.h=5.0 y.l=1.3 y.h=1.3
++ + char.l=0.100 lat.rotate
++
++ method ac=direct itlim=10
++ models bgn srh auger conctau concmob fieldmob
+
+**
+* Two-dimensional models for a
+* complementary MOS process.
+* Device models for 1um, 2um, 3um, 4um, 5um, 10um and 50um are provided.
+**
+
+.MODEL M_NMOS_1 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.4 h.s=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.4 h.e=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=2 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=2.5 x.h=3.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=2 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=3.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=3.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=3.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=2 x.h=3.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=2.05 x.h=3.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_NMOS_2 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.005 h.m=0.2 r=2.0
++ x.mesh w=0.9 h.e=0.005 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=3 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=3.5 x.h=4.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=3 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=4.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=4.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=4.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=3 x.h=4.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=3.05 x.h=4.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_NMOS_3 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=1.4 h.s=0.005 h.m=0.3 r=2.0
++ x.mesh w=1.4 h.e=0.005 h.m=0.3 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=4 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=4.5 x.h=5.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=4 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=5.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=5.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=5.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=4 x.h=5.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=4.05 x.h=5.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_NMOS_4 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=1.9 h.s=0.005 h.m=0.4 r=2.0
++ x.mesh w=1.9 h.e=0.005 h.m=0.4 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=5 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=5.5 x.h=6.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=5 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=6.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=6.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=6.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=5 x.h=6.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=5.05 x.h=6.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_NMOS_5 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=2.4 h.s=0.005 h.m=0.5 r=2.0
++ x.mesh w=2.4 h.e=0.005 h.m=0.5 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=6 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=6.5 x.h=7.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=6 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=7.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=7.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=7.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=6 x.h=7.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=6.05 x.h=7.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_NMOS_10 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=4.9 h.s=0.005 h.m=1 r=2.0
++ x.mesh w=4.9 h.e=0.005 h.m=1 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=11 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=11.5 x.h=12.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=11 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=12.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=12.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=12.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=11 x.h=12.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=11.05 x.h=12.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_NMOS_50 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=24.9 h.s=0.005 h.m=5 r=2.0
++ x.mesh w=24.9 h.e=0.005 h.m=5 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=51 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=51.5 x.h=52.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=51 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=52.1 y.l=2.0 y.h=2.0
++
++ doping gauss p.type conc=1.0e17 x.l=-0.1 x.h=52.1 y.l=0.0
++ + char.l=0.30
++ doping unif p.type conc=5.0e15 x.l=-0.1 x.h=52.1 y.l=0.0 y.h=2.1
++ doping gauss n.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss n.type conc=4e17 x.l=51 x.h=52.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss n.type conc=1e20 x.l=51.05 x.h=52.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=4.10
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_1 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.4 h.s=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.4 h.e=0.005 h.m=0.1 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=2 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=2.5 x.h=3.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=2 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=3.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=3.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=3.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=2 x.h=3.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=2.05 x.h=3.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_2 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.005 h.m=0.2 r=2.0
++ x.mesh w=0.9 h.e=0.005 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=3 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=3.5 x.h=4.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=3 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=4.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=4.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=4.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=3 x.h=4.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=3.05 x.h=4.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_3 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=1.4 h.s=0.005 h.m=0.3 r=2.0
++ x.mesh w=1.4 h.e=0.005 h.m=0.3 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=4 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=4.5 x.h=5.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=4 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=5.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=5.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=5.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=4 x.h=5.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=4.05 x.h=5.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_4 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=1.9 h.s=0.005 h.m=0.4 r=2.0
++ x.mesh w=1.9 h.e=0.005 h.m=0.4 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=5 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=5.5 x.h=6.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=5 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=6.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=6.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=6.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=5 x.h=6.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=5.05 x.h=6.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_5 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=2.4 h.s=0.005 h.m=0.5 r=2.0
++ x.mesh w=2.4 h.e=0.005 h.m=0.5 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=6 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=6.5 x.h=7.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=6 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=7.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=7.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=7.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=6 x.h=7.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=6.05 x.h=7.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_10 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=4.9 h.s=0.005 h.m=1 r=2.0
++ x.mesh w=4.9 h.e=0.005 h.m=1 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=11 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=11.5 x.h=12.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=11 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=12.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=12.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=12.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=11 x.h=12.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=11.05 x.h=12.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+.MODEL M_PMOS_50 numos
++ output stat
++
++ x.mesh w=0.9 h.e=0.020 h.m=0.2 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=24.9 h.s=0.005 h.m=5 r=2.0
++ x.mesh w=24.9 h.e=0.005 h.m=5 r=2.0
++ x.mesh w=0.2 h.e=0.005 h.m=0.02 r=2.0
++ x.mesh w=0.9 h.s=0.020 h.m=0.2 r=2.0
++
++ y.mesh l=-.0200 n=1
++ y.mesh l=0.0 n=6
++ y.mesh w=0.15 h.s=0.0001 h.max=.02 r=2.0
++ y.mesh w=0.45 h.s=0.02 h.max=0.2 r=2.0
++ y.mesh w=1.40 h.s=0.20 h.max=0.4 r=2.0
++
++ region num=1 material=1 y.h=0.0
++ region num=2 material=2 y.l=0.0
++ interface dom=2 nei=1 x.l=1 x.h=51 layer.width=0.0
++ material num=1 oxide
++ material num=2 silicon
++
++ elec num=1 x.l=51.5 x.h=52.1 y.l=0.0 y.h=0.0
++ elec num=2 x.l=1 x.h=51 iy.l=1 iy.h=1
++ elec num=3 x.l=-0.1 x.h=0.5 y.l=0.0 y.h=0.0
++ elec num=4 x.l=-0.1 x.h=52.1 y.l=2.0 y.h=2.0
++
++ doping gauss n.type conc=1.0e17 x.l=-0.1 x.h=52.1 y.l=0.0
++ + char.l=0.30
++ doping unif n.type conc=5.0e15 x.l=-0.1 x.h=52.1 y.l=0.0 y.h=2.1
++ doping gauss p.type conc=4e17 x.l=-0.1 x.h=1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=-0.1 x.h=0.95 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++ doping gauss p.type conc=4e17 x.l=51 x.h=52.1 y.l=0.0 y.h=0.0
++ + char.l=0.16 lat.rotate ratio=0.65
++ doping gauss p.type conc=1e20 x.l=51.05 x.h=52.1 y.l=0.0 y.h=0.08
++ + char.l=0.03 lat.rotate ratio=0.65
++
++ contact num=2 workf=5.29
++ models concmob surfmob transmob fieldmob srh auger conctau bgn
++ method ac=direct itlim=10 onec
+
+**
+* BSIM1 NMOS and PMOS 1.0 \um models.
+* Gummel-Poon bipolar models.
+**
+.model M_NSIM_1 nmos level=4
++vfb= -1.1908
++phi= .8399
++k1= 1.5329
++k2= 193.7322m
++eta= 2m
++muz= 746.0
++u0= 90.0m
++x2mz= 10.1429
++x2e= -2.5m
++x3e= 0.2m
++x2u0= -10.0m
++mus= 975.0
++u1= .20
++x2ms= 0.0
++x2u1= 0.0
++x3ms= 10
++x3u1= 5.0m
++tox=2.00000e-02
++cgdo=2.0e-10
++cgso=2.0e-10
++cgbo=0.0
++temp= 27
++vdd= 7.0
++xpart
++n0= 1.5686
++nb= 94.6392m
++nd=0.00000e+00
++rsh=30.0 cj=7.000e-004 cjsw=4.20e-010
++js=1.00e-008 pb=0.700e000
++pbsw=0.8000e000 mj=0.5 mjsw=0.33
++wdf=0 dell=0.20u
+
+.model M_PSIM_1 pmos level=4
++vfb= -1.3674
++phi= .8414
++k1= 1.5686
++k2= 203m
++eta= 2m
++muz= 340.0
++u0= 35.0m
++x2mz= 6.0
++x2e= 0.0
++x3e= -0.2m
++x2u0= -15.0m
++mus= 440.0
++u1= .38
++x2ms= 0.0
++x2u1= 0.0
++x3ms= -20
++x3u1= -10.0m
++tox=2.00000e-02
++cgdo=2.0e-10
++cgso=2.0e-10
++cgbo=0.0
++temp= 27
++vdd= 5.0
++xpart
++n0= 1.5686
++nb= 94.6392m
++nd=0.00000e+00
++rsh=80.0 cj=7.000e-004 cjsw=4.20e-010
++js=1.00e-008 pb=0.700e000
++pbsw=0.8000e000 mj=0.5 mjsw=0.33
++wdf=0 dell=0.17u
+
+.model M_GNPN npn
++ is=1.3e-16
++ nf=1.00 bf=262.5 ikf=25mA vaf=20v
++ nr=1.00 br=97.5 ikr=0.5mA var=1.8v
++ rc=20.0
++ re=0.09
++ rb=15.0
++ ise=4.0e-16 ne=2.1
++ isc=7.2e-17 nc=2.0
++ tf=9.4ps itf=26uA xtf=0.5
++ tr=10ns
++ cje=89.44fF vje=0.95 mje=0.5
++ cjc=12.82fF vjc=0.73 mjc=0.49
+
+.model M_GPNP pnp
++ is=5.8e-17
++ nf=1.001 bf=96.4 ikf=12mA vaf=29v
++ nr=1.0 br=17.3 ikr=0.2mA var=2.0v
++ rc=50.0
++ re=0.17
++ rb=20.0
++ ise=6.8e-17 ne=2.0
++ isc=9.0e-17 nc=2.1
++ tf=27.4ps itf=26uA xtf=0.5
++ tr=10ns
++ cje=55.36fF vje=0.95 mje=0.58
++ cjc=11.80fF vjc=0.72 mjc=0.46
diff --git a/Windows/spice/examples/cider/parallel/bicmpd.cir b/Windows/spice/examples/cider/parallel/bicmpd.cir
new file mode 100644
index 00000000..be26e40d
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/bicmpd.cir
@@ -0,0 +1,26 @@
+BICMOS INVERTER PULLDOWN CIRCUIT
+
+VSS 2 0 0V
+
+VIN 3 2 0V (PULSE 0.0V 4.2V 0NS 1NS 1NS 9NS 20NS)
+
+M1 8 3 5 11 M_NMOS_1 W=4U L=1U
+VD 4 8 0V
+VBK 11 2 0V
+
+Q1 10 7 9 M_NPNS AREA=8
+VC 4 10 0V
+VB 5 7 0V
+VE 9 2 0V
+
+CL 4 6 1PF
+VL 6 2 0V
+
+.IC V(10)=5.0V V(7)=0.0V
+.TRAN 0.1NS 5NS 0NS 0.1NS
+.PLOT TRAN I(VIN)
+
+.INCLUDE BICMOS.LIB
+
+.OPTIONS ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/parallel/bicmpu.cir b/Windows/spice/examples/cider/parallel/bicmpu.cir
new file mode 100644
index 00000000..7067ce14
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/bicmpu.cir
@@ -0,0 +1,24 @@
+BICMOS INVERTER PULLUP CIRCUIT
+
+VDD 1 0 5.0V
+VSS 2 0 0.0V
+
+VIN 3 0 0.75V
+
+VC 1 11 0.0V
+VB 5 15 0.0V
+
+Q1 11 15 4 M_NPNS AREA=8
+M1 5 3 1 1 M_PMOS_1 W=10U L=1U
+
+CL 4 0 5.0PF
+
+.IC V(4)=0.75V V(5)=0.0V
+
+.INCLUDE BICMOS.LIB
+
+.TRAN 0.5NS 4.0NS
+.PRINT TRAN V(3) V(4)
+
+.OPTION ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/parallel/clkfeed.cir b/Windows/spice/examples/cider/parallel/clkfeed.cir
new file mode 100644
index 00000000..d0a06f15
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/clkfeed.cir
@@ -0,0 +1,34 @@
+SWITCHED CURRENT CELL - CLOCK FEEDTHROUGH
+
+VDD 1 0 5.0V
+VSS 2 0 0.0V
+
+IIN 13 0 0.0
+VIN 13 3 0.0
+VL 4 0 2.5V
+VCK 6 0 5.0V PULSE 5.0V 0.0V 5.0NS 5NS 5NS 20NS 50NS
+
+M1 3 3 2 2 M_NMOS_5 W=5U L=5U
+M2 4 5 2 2 M_NMOS_5 W=10U L=5U
+M3 23 26 25 22 M_NMOS_5 W=5U L=5U
+RLK1 3 0 100G
+RLK2 5 0 100G
+VD 3 23 0.0V
+VG 6 26 0.0V
+VS 5 25 0.0V
+VB 2 22 0.0V
+
+M4 7 7 1 1 M_PMOS_IDEAL W=100U L=1U
+M5 3 7 1 1 M_PMOS_IDEAL W=100U L=1U
+M6 4 7 1 1 M_PMOS_IDEAL W=200U L=1U
+IREF 7 0 50UA
+
+****** MODELS ******
+.MODEL M_PMOS_IDEAL PMOS VTO=-1.0V KP=100U
+
+.INCLUDE BICMOS.LIB
+
+.TRAN 0.1NS 50NS
+
+.OPTIONS ACCT BYPASS=1 METHOD=GEAR
+.END
diff --git a/Windows/spice/examples/cider/parallel/cmosamp.cir b/Windows/spice/examples/cider/parallel/cmosamp.cir
new file mode 100644
index 00000000..f88115b5
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/cmosamp.cir
@@ -0,0 +1,29 @@
+CMOS 2-STAGE OPERATIONAL AMPLIFIER
+
+VDD 1 0 2.5V
+VSS 2 0 -2.5V
+
+IBIAS 9 0 100UA
+
+VPL 3 0 0.0V AC 0.5V
+VMI 4 0 0.0V AC 0.5V 180
+
+M1 6 3 5 5 M_PMOS_1 W=15U L=1U
+M2 7 4 5 5 M_PMOS_1 W=15U L=1U
+M3 6 6 2 2 M_NMOS_1 W=7.5U L=1U
+M4 7 6 2 2 M_NMOS_1 W=7.5U L=1U
+M5 8 7 2 2 M_NMOS_1 W=15U L=1U
+M6 9 9 1 1 M_PMOS_1 W=15U L=1U
+M7 5 9 1 1 M_PMOS_1 W=15U L=1U
+M8 8 9 1 1 M_PMOS_1 W=15U L=1U
+
+*CC 7 8 0.1PF
+
+.INCLUDE BICMOS.LIB
+
+*.OP
+*.AC DEC 10 1K 100G
+.DC VPL -5MV 5MV 0.1MV
+
+.OPTIONS ACCT BYPASS=1 METHOD=GEAR
+.END
diff --git a/Windows/spice/examples/cider/parallel/eclinv.cir b/Windows/spice/examples/cider/parallel/eclinv.cir
new file mode 100644
index 00000000..a63c1c14
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/eclinv.cir
@@ -0,0 +1,30 @@
+ECL INVERTER
+*** (FROM MEINERZHAGEN ET AL.)
+
+VCC 1 0 0.0V
+VEE 2 0 -5.2V
+
+VIN 3 0 -1.25V
+VRF 4 0 -1.25V
+
+*** INPUT STAGE
+Q1 5 3 9 M_NPNS AREA=8
+Q2 6 4 9 M_NPNS AREA=8
+R1 1 5 662
+R2 1 6 662
+R3 9 2 2.65K
+
+*** OUTPUT BUFFERS
+Q3 1 5 7 M_NPNS AREA=8
+Q4 1 6 8 M_NPNS AREA=8
+R4 7 2 4.06K
+R5 8 2 4.06K
+
+*** MODEL LIBRARY
+.INCLUDE BICMOS.LIB
+
+.DC VIN -2.00 0.001 0.05
+.PLOT DC V(7) V(8)
+
+.OPTIONS ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/parallel/ecpal.cir b/Windows/spice/examples/cider/parallel/ecpal.cir
new file mode 100644
index 00000000..4485a442
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/ecpal.cir
@@ -0,0 +1,19 @@
+EMITTER COUPLED PAIR WITH ACTIVE LOAD
+
+VCC 1 0 5V
+VEE 2 0 0V
+VINP 4 0 2.99925V AC 0.5V
+VINM 7 0 3V AC 0.5V 180
+IEE 5 2 0.1MA
+Q1 3 4 5 M_NPNS AREA=8
+Q2 6 7 5 M_NPNS AREA=8
+Q3 3 3 1 M_PNPS AREA=8
+Q4 6 3 1 M_PNPS AREA=8
+
+.AC DEC 10 10K 100G
+.PLOT AC VDB(6)
+
+.INCLUDE BICMOS.LIB
+
+.OPTIONS ACCT RELTOL=1E-6
+.END
diff --git a/Windows/spice/examples/cider/parallel/foobar b/Windows/spice/examples/cider/parallel/foobar
new file mode 100644
index 00000000..1e5e7b73
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/foobar
@@ -0,0 +1,10 @@
+\section*{BICMPD Benchmark}
+\section*{BICMPU Benchmark}
+\section*{CLKFEED Benchmark}
+\section*{CMOSAMP Benchmark}
+\section*{ECLINV Benchmark}
+\section*{ECPAL Benchmark}
+\section*{GMAMP Benchmark}
+\section*{LATCH Benchmark}
+\section*{PPEF Benchmarks}
+\section*{RINGOSC Benchmarks}
diff --git a/Windows/spice/examples/cider/parallel/gmamp.cir b/Windows/spice/examples/cider/parallel/gmamp.cir
new file mode 100644
index 00000000..e570beca
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/gmamp.cir
@@ -0,0 +1,34 @@
+BICMOS 3-STAGE AMPLIFIER
+*** IN GRAY & MEYER, 3RD ED. P.266, PROB. 3.12, 8.19
+
+VDD 1 0 5.0V
+VSS 2 0 0.0V
+
+*** VOLTAGE INPUT
+*VIN 13 0 0.0V AC 1V
+*CIN 13 3 1UF
+
+*** CURRENT INPUT
+IIN 3 0 0.0 AC 1.0
+
+M1 4 3 2 2 M_NMOS_1 W=300U L=1U
+M2 7 7 2 2 M_NMOS_1 W=20U L=1U
+
+Q1 6 5 4 M_NPNS AREA=40
+Q2 5 5 7 M_NPNS AREA=40
+Q3 1 6 8 M_NPNS AREA=40
+
+RL1 1 4 1K
+RL2 1 6 10K
+RB1 1 5 10K
+RL3 8 2 1K
+RF1 3 8 30K
+
+*** NUMERICAL MODEL LIBRARY ***
+.INCLUDE BICMOS.LIB
+
+.AC DEC 10 100KHZ 100GHZ
+.PLOT AC VDB(8)
+
+.OPTIONS ACCT BYPASS=1 KEEPOPINFO
+.END
diff --git a/Windows/spice/examples/cider/parallel/latch.cir b/Windows/spice/examples/cider/parallel/latch.cir
new file mode 100644
index 00000000..3ad63335
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/latch.cir
@@ -0,0 +1,46 @@
+STATIC LATCH
+*** IC=1MA, RE6=3K
+*** SPICE ORIGINAL 1-7-80, CIDER REVISED 4-16-93
+
+*** BIAS CIRCUIT
+*** RESISTORS
+RCC2 6 8 3.33K
+REE2 9 0 200
+*** TRANSISTORS
+Q1 6 8 4 M_NPN1D AREA=8
+Q2 8 4 9 M_NPN1D AREA=8
+
+*** MODELS
+.INCLUDE BICMOS.LIB
+
+*** SOURCES
+VCC 6 0 5V
+VREF 3 0 2.5V
+VRSET 1 0 PULSE(2V 3V 0.1NS 0.1NS 0.1NS 0.9NS 4NS)
+VSET 7 0 PULSE(2V 3V 2.1NS 0.1NS 0.1NS 0.9NS 4NS)
+
+*** LATCH
+X1 1 2 3 4 5 6 ECLNOR2
+X2 5 7 3 4 2 6 ECLNOR2
+
+*** SUBCIRCUITS
+.SUBCKT ECLNOR2 1 2 3 4 5 6
+** RESISTORS
+RS 6 11 520
+RC2 11 10 900
+RE4 12 0 200
+RE6 5 0 6K
+** TRANSISTORS
+Q1 9 1 8 M_NPN1D AREA=8
+Q2 9 2 8 M_NPN1D AREA=8
+Q3 11 3 8 M_NPN1D AREA=8
+Q4 8 4 12 M_NPN1D AREA=8
+Q5 10 10 9 M_NPN1D AREA=8
+Q6 6 9 5 M_NPN1D AREA=8
+.ENDS ECLNOR2
+
+*** CONTROL CARDS
+.TRAN 0.01NS 8NS
+.PRINT TRAN V(1) V(7) V(5) V(2)
+.OPTIONS ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/parallel/ppef.1d.cir b/Windows/spice/examples/cider/parallel/ppef.1d.cir
new file mode 100644
index 00000000..8690c665
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/ppef.1d.cir
@@ -0,0 +1,25 @@
+PUSH-PULL EMITTER FOLLOWER - ONE-DIMENSIONAL MODELS
+
+VCC 1 0 5.0V
+VEE 2 0 -5.0V
+
+VIN 3 0 0.0V (SIN 0.0V 0.1V 1KHZ) AC 1
+VBU 13 3 0.7V
+VBL 3 23 0.7V
+
+RL 4 44 50
+VLD 44 0 0V
+
+Q1 5 13 4 M_NPN1D AREA=40
+Q2 4 5 1 M_PNP1D AREA=200
+
+Q3 6 23 4 M_PNP1D AREA=100
+Q4 4 6 2 M_NPN1D AREA=80
+
+.INCLUDE BICMOS.LIB
+
+.TRAN 0.01MS 1.00001MS 0US 0.01MS
+.PLOT TRAN V(4)
+
+.OPTIONS ACCT BYPASS=1 TEMP=26.85OC RELTOL=1E-5
+.END
diff --git a/Windows/spice/examples/cider/parallel/ppef.2d.cir b/Windows/spice/examples/cider/parallel/ppef.2d.cir
new file mode 100644
index 00000000..07fa10fb
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/ppef.2d.cir
@@ -0,0 +1,25 @@
+PUSH-PULL EMITTER FOLLOWER - TWO-DIMENSIONAL MODELS
+
+VCC 1 0 5.0V
+VEE 2 0 -5.0V
+
+VIN 3 0 0.0V (SIN 0.0V 0.1V 1KHZ) AC 1
+VBU 13 3 0.7V
+VBL 3 23 0.7V
+
+RL 4 44 50
+VLD 44 0 0V
+
+Q1 5 13 4 M_NPNS AREA=40
+Q2 4 5 1 M_PNPS AREA=200
+
+Q3 6 23 4 M_PNPS AREA=100
+Q4 4 6 2 M_NPNS AREA=80
+
+.INCLUDE BICMOS.LIB
+
+.TRAN 0.01MS 1.00001MS 0US 0.01MS
+.PLOT TRAN V(4)
+
+.OPTIONS ACCT BYPASS=1 TEMP=26.85OC RELTOL=1E-5
+.END
diff --git a/Windows/spice/examples/cider/parallel/readme b/Windows/spice/examples/cider/parallel/readme
new file mode 100644
index 00000000..077c78f6
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/readme
@@ -0,0 +1,3 @@
+This directory contains the additional CIDER parallel-version benchmarks
+used in the thesis "Design-Oriented Mixed-Level Circuit and Device Simulation"
+by David A. Gates.
diff --git a/Windows/spice/examples/cider/parallel/ringosc.1u.cir b/Windows/spice/examples/cider/parallel/ringosc.1u.cir
new file mode 100644
index 00000000..2304c4eb
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/ringosc.1u.cir
@@ -0,0 +1,39 @@
+CMOS RING OSCILLATOR - 1UM DEVICES
+
+VDD 1 0 5.0V
+VSS 2 0 0.0V
+
+X1 1 2 3 4 INV
+X2 1 2 4 5 INV
+X3 1 2 5 6 INV
+X4 1 2 6 7 INV
+X5 1 2 7 8 INV
+X6 1 2 8 9 INV
+X7 1 2 9 3 INV
+
+.IC V(3)=0.0V V(4)=2.5V V(5)=5.0V
++ V(6)=0.0V V(7)=5.0V V(8)=0.0V V(9)=5.0V
+
+.SUBCKT INV 1 2 3 4
+* VDD VSS VIN VOUT
+M1 14 13 15 16 M_PMOS_1 W=6.0U
+M2 24 23 25 26 M_NMOS_1 W=3.0U
+
+VGP 3 13 0.0V
+VDP 4 14 0.0V
+VSP 1 15 0.0V
+VBP 1 16 0.0V
+
+VGN 3 23 0.0V
+VDN 4 24 0.0V
+VSN 2 25 0.0V
+VBN 2 26 0.0V
+.ENDS INV
+
+.INCLUDE BICMOS.LIB
+
+.TRAN 0.1NS 1NS
+.PRINT TRAN V(3) V(4) V(5)
+
+.OPTIONS ACCT BYPASS=1 METHOD=GEAR
+.END
diff --git a/Windows/spice/examples/cider/parallel/ringosc.2u.cir b/Windows/spice/examples/cider/parallel/ringosc.2u.cir
new file mode 100644
index 00000000..c79885ab
--- /dev/null
+++ b/Windows/spice/examples/cider/parallel/ringosc.2u.cir
@@ -0,0 +1,114 @@
+CMOS RING OSCILLATOR - 2UM DEVICES
+
+VDD 1 0 5.0V
+VSS 2 0 0.0V
+
+X1 1 2 3 4 INV
+X2 1 2 4 5 INV
+X3 1 2 5 6 INV
+X4 1 2 6 7 INV
+X5 1 2 7 8 INV
+X6 1 2 8 9 INV
+X7 1 2 9 3 INV
+
+.IC V(3)=0.0V V(4)=2.5V V(5)=5.0V V(6)=0.0V
++ V(7)=5.0V V(8)=0.0V V(9)=5.0V
+
+.SUBCKT INV 1 2 3 4
+* VDD VSS VIN VOUT
+M1 14 13 15 16 M_PMOS W=6.0U
+M2 24 23 25 26 M_NMOS W=3.0U
+
+VGP 3 13 0.0V
+VDP 4 14 0.0V
+VSP 1 15 0.0V
+VBP 1 16 0.0V
+
+VGN 3 23 0.0V
+VDN 4 24 0.0V
+VSN 2 25 0.0V
+VBN 2 26 0.0V
+.ENDS INV
+
+.MODEL M_NMOS NUMOS
++ X.MESH L=0.0 N=1
++ X.MESH L=0.6 N=4
++ X.MESH L=0.7 N=5
++ X.MESH L=1.0 N=7
++ X.MESH L=1.2 N=11
++ X.MESH L=3.2 N=21
++ X.MESH L=3.4 N=25
++ X.MESH L=3.7 N=27
++ X.MESH L=3.8 N=28
++ X.MESH L=4.4 N=31
++
++ Y.MESH L=-.05 N=1
++ Y.MESH L=0.0 N=5
++ Y.MESH L=.05 N=9
++ Y.MESH L=0.3 N=14
++ Y.MESH L=2.0 N=19
++
++ REGION NUM=1 MATERIAL=1 Y.L=0.0
++ MATERIAL NUM=1 SILICON
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++
++ REGION NUM=2 MATERIAL=2 Y.H=0.0 X.L=0.7 X.H=3.7
++ MATERIAL NUM=2 OXIDE
++
++ ELEC NUM=1 X.L=3.8 X.H=4.4 Y.L=0.0 Y.H=0.0
++ ELEC NUM=2 X.L=0.7 X.H=3.7 IY.L=1 IY.H=1
++ ELEC NUM=3 X.L=0.0 X.H=0.6 Y.L=0.0 Y.H=0.0
++ ELEC NUM=4 X.L=0.0 X.H=4.4 Y.L=2.0 Y.H=2.0
++
++ DOPING UNIF P.TYPE CONC=2.5E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=2.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=0.05
++ DOPING UNIF N.TYPE CONC=1E20 X.L=0.0 X.H=1.1 Y.L=0.0 Y.H=0.2
++ DOPING UNIF N.TYPE CONC=1E20 X.L=3.3 X.H=4.4 Y.L=0.0 Y.H=0.2
++
++ MODELS CONCMOB FIELDMOB BGN SRH CONCTAU
++ METHOD AC=DIRECT ONEC
++ OUTPUT ^ALL.DEBUG
+
+.MODEL M_PMOS NUMOS
++ X.MESH L=0.0 N=1
++ X.MESH L=0.6 N=4
++ X.MESH L=0.7 N=5
++ X.MESH L=1.0 N=7
++ X.MESH L=1.2 N=11
++ X.MESH L=3.2 N=21
++ X.MESH L=3.4 N=25
++ X.MESH L=3.7 N=27
++ X.MESH L=3.8 N=28
++ X.MESH L=4.4 N=31
++
++ Y.MESH L=-.05 N=1
++ Y.MESH L=0.0 N=5
++ Y.MESH L=.05 N=9
++ Y.MESH L=0.3 N=14
++ Y.MESH L=2.0 N=19
++
++ REGION NUM=1 MATERIAL=1 Y.L=0.0
++ MATERIAL NUM=1 SILICON
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++
++ REGION NUM=2 MATERIAL=2 Y.H=0.0 X.L=0.7 X.H=3.7
++ MATERIAL NUM=2 OXIDE
++
++ ELEC NUM=1 X.L=3.8 X.H=4.4 Y.L=0.0 Y.H=0.0
++ ELEC NUM=2 X.L=0.7 X.H=3.7 IY.L=1 IY.H=1
++ ELEC NUM=3 X.L=0.0 X.H=0.6 Y.L=0.0 Y.H=0.0
++ ELEC NUM=4 X.L=0.0 X.H=4.4 Y.L=2.0 Y.H=2.0
++
++ DOPING UNIF N.TYPE CONC=1E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=2.0
++ DOPING UNIF P.TYPE CONC=3E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=0.05
++ DOPING UNIF P.TYPE CONC=1E20 X.L=0.0 X.H=1.1 Y.L=0.0 Y.H=0.2
++ DOPING UNIF P.TYPE CONC=1E20 X.L=3.3 X.H=4.4 Y.L=0.0 Y.H=0.2
++
++ MODELS CONCMOB FIELDMOB BGN SRH CONCTAU
++ METHOD AC=DIRECT ONEC
++ OUTPUT ^ALL.DEBUG
+
+.TRAN 0.1NS 5.0NS
+.PRINT V(4)
+.OPTIONS ACCT BYPASS=1 METHOD=GEAR
+.END
diff --git a/Windows/spice/examples/cider/resistor/gaasres.cir b/Windows/spice/examples/cider/resistor/gaasres.cir
new file mode 100644
index 00000000..c35d0ddc
--- /dev/null
+++ b/Windows/spice/examples/cider/resistor/gaasres.cir
@@ -0,0 +1,30 @@
+Gallium Arsenide Resistor
+
+* This transient simulation demonstrates the effects of velocity overshoot
+* and velocity saturation at high lateral electric fields.
+* Do not try to do DC analysis of this resistor. It will not converge
+* because of the peculiar characteristics of the GaAs velocity-field
+* relation. In some cases, problems can arise in transient simulation
+* as well.
+
+VPP 1 0 1v PWL 0s 0.0v 10s 1v
+VNN 2 0 0.0v
+D1 1 2 M_RES AREA=1
+
+.MODEL M_RES numd level=1
++ options resistor defa=1p
++ x.mesh loc=0.0 num=1
++ x.mesh loc=1.0 num=101
++ domain num=1 material=1
++ material num=1 gaas
++ doping unif n.type conc=2.5e16
++ models fieldmob srh auger conctau
++ method ac=direct
+
+*.OP
+*.DC VPP 0.0v 10.01v 0.1v
+.TRAN 1s 10.001s 0s 0.1s
+.PRINT I(VPP)
+
+.OPTION ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/resistor/sires.cir b/Windows/spice/examples/cider/resistor/sires.cir
new file mode 100644
index 00000000..45e2aa12
--- /dev/null
+++ b/Windows/spice/examples/cider/resistor/sires.cir
@@ -0,0 +1,26 @@
+Silicon Resistor
+
+* This simulation demonstrates the effects of velocity saturation at
+* high lateral electric fields.
+
+VPP 1 0 10v PWL 0s 0.0v 100s 10v
+VNN 2 0 0.0v
+D1 1 2 M_RES AREA=1
+
+.MODEL M_RES numd level=1
++ options resistor defa=1p
++ x.mesh loc=0.0 num=1
++ x.mesh loc=1.0 num=101
++ domain num=1 material=1
++ material num=1 silicon
++ doping unif n.type conc=2.5e16
++ models bgn srh conctau auger concmob fieldmob
++ method ac=direct
+
+*.OP
+.DC VPP 0.0v 10.01v 0.1v
+*.TRAN 1s 100.001s 0s 0.2s
+.PRINT I(VPP)
+
+.OPTION ACCT BYPASS=1 RELTOL=1e-12
+.END
diff --git a/Windows/spice/examples/cider/serial/astable.cir b/Windows/spice/examples/cider/serial/astable.cir
new file mode 100644
index 00000000..c04c6bba
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/astable.cir
@@ -0,0 +1,30 @@
+ASTABLE MULTIVIBRATOR
+
+VIN 5 0 DC 0 PULSE(0 5 0 1US 1US 100US 100US)
+VCC 6 0 5.0
+RC1 6 1 1K
+RC2 6 2 1K
+RB1 6 3 30K
+RB2 5 4 30K
+C1 1 4 150PF
+C2 2 3 150PF
+Q1 1 3 0 QMOD AREA = 100P
+Q2 2 4 0 QMOD AREA = 100P
+
+.OPTION ACCT BYPASS=1
+.TRAN 0.05US 8US 0US 0.05US
+.PRINT TRAN V(1) V(2) V(3) V(4)
+
+.MODEL QMOD NBJT LEVEL=1
++ X.MESH NODE=1 LOC=0.0
++ X.MESH NODE=61 LOC=3.0
++ REGION NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON NBGNN=1E17 NBGNP=1E17
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++ DOPING UNIF N.TYPE CONC=1E17 X.L=0.0 X.H=1.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=1.5
++ DOPING UNIF N.TYPE CONC=1E15 X.L=0.0 X.H=3.0
++ MODELS BGNW SRH CONCTAU AUGER CONCMOB FIELDMOB
++ OPTIONS BASE.LENGTH=1.0 BASE.DEPTH=1.25
+
+.END
diff --git a/Windows/spice/examples/cider/serial/charge.cir b/Windows/spice/examples/cider/serial/charge.cir
new file mode 100644
index 00000000..c4c689b6
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/charge.cir
@@ -0,0 +1,53 @@
+MOS CHARGE PUMP
+
+VIN 4 0 DC 0V PULSE 0 5 15NS 5NS 5NS 50NS 100NS
+VDD 5 6 DC 0V PULSE 0 5 25NS 5NS 5NS 50NS 100NS
+VBB 0 7 DC 0V PULSE 0 5 0NS 5NS 5NS 50NS 100NS
+RD 6 2 10K
+M1 5 4 3 7 MMOD W=100UM
+VS 3 2 0
+VC 2 1 0
+C2 1 0 10PF
+
+.IC V(3)=1.0
+.TRAN 2NS 200NS
+.OPTIONS ACCT BYPASS=1
+.PRINT TRAN V(1) V(2)
+
+.MODEL MMOD NUMOS
++ X.MESH N=1 L=0
++ X.MESH N=3 L=0.4
++ X.MESH N=7 L=0.6
++ X.MESH N=15 L=1.4
++ X.MESH N=19 L=1.6
++ X.MESH N=21 L=2.0
++
++ Y.MESH N=1 L=0
++ Y.MESH N=4 L=0.015
++ Y.MESH N=8 L=0.05
++ Y.MESH N=12 L=0.25
++ Y.MESH N=14 L=0.35
++ Y.MESH N=17 L=0.5
++ Y.MESH N=21 L=1.0
++
++ REGION NUM=1 MATERIAL=1 Y.L=0.015
++ MATERIAL NUM=1 SILICON
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++
++ REGION NUM=2 MATERIAL=2 Y.H=0.015 X.L=0.5 X.H=1.5
++ MATERIAL NUM=2 OXIDE
++
++ ELEC NUM=1 IX.L=18 IX.H=21 IY.L=4 IY.H=4
++ ELEC NUM=2 IX.L=5 IX.H=17 IY.L=1 IY.H=1
++ ELEC NUM=3 IX.L=1 IX.H=4 IY.L=4 IY.H=4
++ ELEC NUM=4 IX.L=1 IX.H=21 IY.L=21 IY.H=21
++
++ DOPING UNIF N.TYPE CONC=1E18 X.L=0.0 X.H=0.5 Y.L=0.015 Y.H=0.25
++ DOPING UNIF N.TYPE CONC=1E18 X.L=1.5 X.H=2.0 Y.L=0.015 Y.H=0.25
++ DOPING UNIF P.TYPE CONC=1E15 X.L=0.0 X.H=2.0 Y.L=0.015 Y.H=1.0
++ DOPING UNIF P.TYPE CONC=1.3E17 X.L=0.5 X.H=1.5 Y.L=0.015 Y.H=0.05
++
++ MODELS CONCMOB FIELDMOB
++ METHOD ONEC
+
+.END
diff --git a/Windows/spice/examples/cider/serial/colposc.cir b/Windows/spice/examples/cider/serial/colposc.cir
new file mode 100644
index 00000000..b7d14ce9
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/colposc.cir
@@ -0,0 +1,29 @@
+COLPITT'S OSCILLATOR CIRCUIT
+
+R1 1 0 1
+Q1 2 1 3 QMOD AREA = 100P
+VCC 4 0 5
+RL 4 2 750
+C1 2 3 500P
+C2 4 3 4500P
+L1 4 2 5UH
+RE 3 6 4.65K
+VEE 6 0 DC -15 PWL 0 -15 1E-9 -10
+
+.TRAN 30N 12U
+.PRINT TRAN V(2)
+
+.MODEL QMOD NBJT LEVEL=1
++ X.MESH NODE=1 LOC=0.0
++ X.MESH NODE=61 LOC=3.0
++ REGION NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON NBGNN=1E17 NBGNP=1E17
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++ DOPING UNIF N.TYPE CONC=1E17 X.L=0.0 X.H=1.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=1.5
++ DOPING UNIF N.TYPE CONC=1E15 X.L=0.0 X.H=3.0
++ MODELS BGNW SRH CONCTAU AUGER CONCMOB FIELDMOB
++ OPTIONS BASE.LENGTH=1.0 BASE.DEPTH=1.25
+
+.OPTIONS ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/serial/dbridge.cir b/Windows/spice/examples/cider/serial/dbridge.cir
new file mode 100644
index 00000000..052ae4f0
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/dbridge.cir
@@ -0,0 +1,30 @@
+DIODE BRIDGE RECTIFIER
+
+VLINE 3 4 0.0V SIN 0V 10V 60HZ
+VGRND 2 0 0.0V
+D1 3 1 M_PN AREA=100
+D2 4 1 M_PN AREA=100
+D3 2 3 M_PN AREA=100
+D4 2 4 M_PN AREA=100
+RL 1 2 1.0K
+
+.MODEL M_PN NUMD LEVEL=1
++ ***************************************
++ *** ONE-DIMENSIONAL NUMERICAL DIODE ***
++ ***************************************
++ OPTIONS DEFA=1P
++ X.MESH LOC=0.0 N=1
++ X.MESH LOC=30.0 N=201
++ DOMAIN NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON
++ MOBILITY MAT=1 CONCMOD=CT FIELDMOD=CT
++ DOPING GAUSS P.TYPE CONC=1E20 X.L=0.0 X.H=0.0 CHAR.L=1.0
++ DOPING UNIF N.TYPE CONC=1E14 X.L=0.0 X.H=30.0
++ DOPING GAUSS N.TYPE CONC=5E19 X.L=30.0 X.H=30.0 CHAR.L=2.0
++ MODELS BGN ^AVAL SRH AUGER CONCTAU CONCMOB FIELDMOB
++ METHOD AC=DIRECT
+
+.OPTION ACCT BYPASS=1 METHOD=GEAR
+.TRAN 0.5MS 50MS
+.PRINT I(VLINE)
+.END
diff --git a/Windows/spice/examples/cider/serial/invchain.cir b/Windows/spice/examples/cider/serial/invchain.cir
new file mode 100644
index 00000000..c05513a0
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/invchain.cir
@@ -0,0 +1,34 @@
+4 STAGE RTL INVERTER CHAIN
+
+VIN 1 0 DC 0V PWL 0NS 0V 1NS 5V
+VCC 12 0 DC 5.0V
+RC1 12 3 2.5K
+RB1 1 2 8K
+Q1 3 2 0 QMOD AREA = 100P
+RB2 3 4 8K
+RC2 12 5 2.5K
+Q2 5 4 0 QMOD AREA = 100P
+RB3 5 6 8K
+RC3 12 7 2.5K
+Q3 7 6 0 QMOD AREA = 100P
+RB4 7 8 8K
+RC4 12 9 2.5K
+Q4 9 8 0 QMOD AREA = 100P
+
+.PRINT TRAN V(3) V(5) V(9)
+.TRAN 1E-9 10E-9
+
+.MODEL QMOD NBJT LEVEL=1
++ X.MESH NODE=1 LOC=0.0
++ X.MESH NODE=61 LOC=3.0
++ REGION NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON NBGNN=1E17 NBGNP=1E17
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++ DOPING UNIF N.TYPE CONC=1E17 X.L=0.0 X.H=1.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=1.5
++ DOPING UNIF N.TYPE CONC=1E15 X.L=0.0 X.H=3.0
++ MODELS BGNW SRH CONCTAU AUGER CONCMOB FIELDMOB
++ OPTIONS BASE.LENGTH=1.0 BASE.DEPTH=1.25
+
+.OPTION ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/serial/meclgate.cir b/Windows/spice/examples/cider/serial/meclgate.cir
new file mode 100644
index 00000000..7f5e88ba
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/meclgate.cir
@@ -0,0 +1,70 @@
+MOTOROLA MECL III ECL GATE
+*.DC VIN -2.0 0 0.02
+.TRAN 0.2NS 20NS
+VEE 22 0 -6.0
+VIN 1 0 PULSE -0.8 -1.8 0.2NS 0.2NS 0.2NS 10NS 20NS
+RS 1 2 50
+Q1 4 2 6 QMOD AREA = 100P
+Q2 4 3 6 QMOD AREA = 100P
+Q3 5 7 6 QMOD AREA = 100P
+Q4 0 8 7 QMOD AREA = 100P
+
+D1 8 9 DMOD
+D2 9 10 DMOD
+
+RP1 3 22 50K
+RC1 0 4 100
+RC2 0 5 112
+RE 6 22 380
+R1 7 22 2K
+R2 0 8 350
+R3 10 22 1958
+
+Q5 0 5 11 QMOD AREA = 100P
+Q6 0 4 12 QMOD AREA = 100P
+
+RP2 11 22 560
+RP3 12 22 560
+
+Q7 13 12 15 QMOD AREA = 100P
+Q8 14 16 15 QMOD AREA = 100P
+
+RE2 15 22 380
+RC3 0 13 100
+RC4 0 14 112
+
+Q9 0 17 16 QMOD AREA = 100P
+
+R4 16 22 2K
+R5 0 17 350
+D3 17 18 DMOD
+D4 18 19 DMOD
+R6 19 22 1958
+
+Q10 0 14 20 QMOD AREA = 100P
+Q11 0 13 21 QMOD AREA = 100P
+
+RP4 20 22 560
+RP5 21 22 560
+
+.MODEL DMOD D RS=40 TT=0.1NS CJO=0.9PF N=1 IS=1E-14 EG=1.11 VJ=0.8 M=0.5
+
+.MODEL QMOD NBJT LEVEL=1
++ X.MESH NODE=1 LOC=0.0
++ X.MESH NODE=10 LOC=0.9
++ X.MESH NODE=20 LOC=1.1
++ X.MESH NODE=30 LOC=1.4
++ X.MESH NODE=40 LOC=1.6
++ X.MESH NODE=61 LOC=3.0
++ REGION NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON NBGNN=1E17 NBGNP=1E17
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++ DOPING UNIF N.TYPE CONC=1E17 X.L=0.0 X.H=1.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=1.5
++ DOPING UNIF N.TYPE CONC=1E15 X.L=0.0 X.H=3.0
++ MODELS BGNW SRH CONCTAU AUGER CONCMOB FIELDMOB
++ OPTIONS BASE.LENGTH=1.0 BASE.DEPTH=1.25
+
+.OPTIONS ACCT BYPASS=1
+.PRINT TRAN V(12) V(21)
+.END
diff --git a/Windows/spice/examples/cider/serial/nmosinv.cir b/Windows/spice/examples/cider/serial/nmosinv.cir
new file mode 100644
index 00000000..b6fa11ab
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/nmosinv.cir
@@ -0,0 +1,51 @@
+RESISTIVE LOAD NMOS INVERTER
+VIN 1 0 PWL 0 0.0 2NS 5
+VDD 3 0 DC 5.0
+RD 3 2 2.5K
+M1 2 1 4 5 MMOD W=10UM
+CL 2 0 2PF
+VB 5 0 0
+VS 4 0 0
+
+.MODEL MMOD NUMOS
++ X.MESH L=0.0 N=1
++ X.MESH L=0.6 N=4
++ X.MESH L=0.7 N=5
++ X.MESH L=1.0 N=7
++ X.MESH L=1.2 N=11
++ X.MESH L=3.2 N=21
++ X.MESH L=3.4 N=25
++ X.MESH L=3.7 N=27
++ X.MESH L=3.8 N=28
++ X.MESH L=4.4 N=31
++
++ Y.MESH L=-.05 N=1
++ Y.MESH L=0.0 N=5
++ Y.MESH L=.05 N=9
++ Y.MESH L=0.3 N=14
++ Y.MESH L=2.0 N=19
++
++ REGION NUM=1 MATERIAL=1 Y.L=0.0
++ MATERIAL NUM=1 SILICON
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++
++ REGION NUM=2 MATERIAL=2 Y.H=0.0 X.L=0.7 X.H=3.7
++ MATERIAL NUM=2 OXIDE
++
++ ELEC NUM=1 X.L=3.8 X.H=4.4 Y.L=0.0 Y.H=0.0
++ ELEC NUM=2 X.L=0.7 X.H=3.7 IY.L=1 IY.H=1
++ ELEC NUM=3 X.L=0.0 X.H=0.6 Y.L=0.0 Y.H=0.0
++ ELEC NUM=4 X.L=0.0 X.H=4.4 Y.L=2.0 Y.H=2.0
++
++ DOPING UNIF P.TYPE CONC=2.5E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=2.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=0.05
++ DOPING UNIF N.TYPE CONC=1E20 X.L=0.0 X.H=1.1 Y.L=0.0 Y.H=0.2
++ DOPING UNIF N.TYPE CONC=1E20 X.L=3.3 X.H=4.4 Y.L=0.0 Y.H=0.2
++
++ MODELS CONCMOB FIELDMOB
++ METHOD AC=DIRECT ONEC
+
+.TRAN 0.2NS 30NS
+.OPTIONS ACCT BYPASS=1
+.PRINT TRAN V(1) V(2)
+.END
diff --git a/Windows/spice/examples/cider/serial/pass.cir b/Windows/spice/examples/cider/serial/pass.cir
new file mode 100644
index 00000000..a15a6f61
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/pass.cir
@@ -0,0 +1,55 @@
+TURNOFF TRANSIENT OF PASS TRANSISTOR
+
+M1 11 2 3 4 MMOD W=20UM
+CS 1 0 6.0PF
+CL 3 0 6.0PF
+R1 3 6 200K
+VIN 6 0 DC 0
+VDRN 1 11 DC 0
+VG 2 0 DC 5 PWL 0 5 0.1N 0 1 0
+VB 4 0 DC 0.0
+
+.TRAN 0.05NS 0.2NS 0.0NS 0.05NS
+.PRINT TRAN V(1) I(VDRN)
+.IC V(1)=0 V(3)=0
+.OPTION ACCT BYPASS=1
+
+.MODEL MMOD NUMOS
++ X.MESH L=0.0 N=1
++ X.MESH L=0.6 N=4
++ X.MESH L=0.7 N=5
++ X.MESH L=1.0 N=7
++ X.MESH L=1.2 N=11
++ X.MESH L=3.2 N=21
++ X.MESH L=3.4 N=25
++ X.MESH L=3.7 N=27
++ X.MESH L=3.8 N=28
++ X.MESH L=4.4 N=31
++
++ Y.MESH L=-.05 N=1
++ Y.MESH L=0.0 N=5
++ Y.MESH L=.05 N=9
++ Y.MESH L=0.3 N=14
++ Y.MESH L=2.0 N=19
++
++ REGION NUM=1 MATERIAL=1 Y.L=0.0
++ MATERIAL NUM=1 SILICON
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++
++ REGION NUM=2 MATERIAL=2 Y.H=0.0 X.L=0.7 X.H=3.7
++ MATERIAL NUM=2 OXIDE
++
++ ELEC NUM=1 X.L=3.8 X.H=4.4 Y.L=0.0 Y.H=0.0
++ ELEC NUM=2 X.L=0.7 X.H=3.7 IY.L=1 IY.H=1
++ ELEC NUM=3 X.L=0.0 X.H=0.6 Y.L=0.0 Y.H=0.0
++ ELEC NUM=4 X.L=0.0 X.H=4.4 Y.L=2.0 Y.H=2.0
++
++ DOPING UNIF P.TYPE CONC=2.5E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=2.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=4.4 Y.L=0.0 Y.H=0.05
++ DOPING UNIF N.TYPE CONC=1E20 X.L=0.0 X.H=1.1 Y.L=0.0 Y.H=0.2
++ DOPING UNIF N.TYPE CONC=1E20 X.L=3.3 X.H=4.4 Y.L=0.0 Y.H=0.2
++
++ MODELS CONCMOB FIELDMOB
++ METHOD AC=DIRECT ONEC
+
+.END
diff --git a/Windows/spice/examples/cider/serial/pullup.cir b/Windows/spice/examples/cider/serial/pullup.cir
new file mode 100644
index 00000000..a4d7a4d1
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/pullup.cir
@@ -0,0 +1,67 @@
+BICMOS INVERTER PULLUP CIRCUIT
+
+VDD 1 0 5.0V
+VSS 2 0 0.0V
+
+VIN 3 0 0.75V
+
+VC 1 11 0.0V
+VB 5 15 0.0V
+
+Q1 11 15 4 M_NPN AREA=4
+M1 5 3 1 1 M_PMOS W=20U L=2U AD=30P AS=30P PD=21U PS=21U
+
+CL 4 0 5.0PF
+
+.IC V(4)=0.75V V(5)=0.0V
+
+.MODEL M_PMOS PMOS VTO=-0.8 UO=250 TOX=25N NSUB=5E16
++ UCRIT=10K UEXP=.15 VMAX=50K NEFF=2 XJ=.02U
++ LD=.15U CGSO=.1N CGDO=.1N CJ=.12M MJ=0.5
++ CJSW=0.3N MJSW=0.5 LEVEL=2
+
+.MODEL M_NPN NBJT LEVEL=2
++ TITLE TWO-DIMENSIONAL NUMERICAL POLYSILICON EMITTER BIPOLAR TRANSISTOR
++ $ SINCE ONLY HALF THE DEVICE IS SIMULATED, DOUBLE THE UNIT WIDTH TO GET
++ $ 1.0 UM EMITTER.
++ OPTIONS DEFW=2.0U
++ OUTPUT STATISTICS
++
++ X.MESH W=2.0 H.E=0.02 H.M=0.5 R=2.0
++ X.MESH W=0.5 H.S=0.02 H.M=0.2 R=2.0
++
++ Y.MESH L=-0.2 N=1
++ Y.MESH L= 0.0 N=5
++ Y.MESH W=0.10 H.E=0.004 H.M=0.05 R=2.5
++ Y.MESH W=0.15 H.S=0.004 H.M=0.02 R=2.5
++ Y.MESH W=1.05 H.S=0.02 H.M=0.1 R=2.5
++
++ DOMAIN NUM=1 MATERIAL=1 X.L=2.0 Y.H=0.0
++ DOMAIN NUM=2 MATERIAL=2 X.H=2.0 Y.H=0.0
++ DOMAIN NUM=3 MATERIAL=3 Y.L=0.0
++ MATERIAL NUM=1 POLYSILICON
++ MATERIAL NUM=2 OXIDE
++ MATERIAL NUM=3 SILICON
++
++ ELEC NUM=1 X.L=0.0 X.H=0.0 Y.L=1.1 Y.H=1.3
++ ELEC NUM=2 X.L=0.0 X.H=0.5 Y.L=0.0 Y.H=0.0
++ ELEC NUM=3 X.L=2.0 X.H=3.0 Y.L=-0.2 Y.H=-0.2
++
++ DOPING GAUSS N.TYPE CONC=3E20 X.L=2.0 X.H=3.0 Y.L=-0.2 Y.H=0.0
++ + CHAR.L=0.047 LAT.ROTATE
++ DOPING GAUSS P.TYPE CONC=5E18 X.L=0.0 X.H=5.0 Y.L=-0.2 Y.H=0.0
++ + CHAR.L=0.100 LAT.ROTATE
++ DOPING GAUSS P.TYPE CONC=1E20 X.L=0.0 X.H=0.5 Y.L=-0.2 Y.H=0.0
++ + CHAR.L=0.100 LAT.ROTATE RATIO=0.7
++ DOPING UNIF N.TYPE CONC=1E16 X.L=0.0 X.H=5.0 Y.L=0.0 Y.H=1.3
++ DOPING GAUSS N.TYPE CONC=5E19 X.L=0.0 X.H=5.0 Y.L=1.3 Y.H=1.3
++ + CHAR.L=0.100 LAT.ROTATE
++
++ METHOD AC=DIRECT ITLIM=10
++ MODELS BGN SRH AUGER CONCTAU CONCMOB FIELDMOB
+
+.TRAN 0.5NS 4.0NS
+.PRINT TRAN V(3) V(4)
+
+.OPTION ACCT BYPASS=1
+.END
diff --git a/Windows/spice/examples/cider/serial/readme b/Windows/spice/examples/cider/serial/readme
new file mode 100644
index 00000000..08f29304
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/readme
@@ -0,0 +1,3 @@
+This directory contains the CIDER serial-version benchmarks used in the
+thesis "Design-Oriented Mixed-Level Circuit and Device Simulation" by
+David A. Gates.
diff --git a/Windows/spice/examples/cider/serial/recovery.cir b/Windows/spice/examples/cider/serial/recovery.cir
new file mode 100644
index 00000000..cd33be1e
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/recovery.cir
@@ -0,0 +1,40 @@
+DIODE REVERSE RECOVERY
+
+VPP 1 0 0.0V (PULSE 1.0V -1.0V 1NS 1PS 1PS 20NS 40NS)
+VNN 2 0 0.0V
+RS 1 3 1.0
+LS 3 4 0.5UH
+DT 4 2 M_PIN AREA=1
+
+.MODEL M_PIN NUMD LEVEL=2
++ OPTIONS DEFW=100U
++ X.MESH N=1 L=0.0
++ X.MESH N=2 L=0.2
++ X.MESH N=4 L=0.4
++ X.MESH N=8 L=0.6
++ X.MESH N=13 L=1.0
++
++ Y.MESH N=1 L=0.0
++ Y.MESH N=9 L=4.0
++ Y.MESH N=24 L=10.0
++ Y.MESH N=29 L=15.0
++ Y.MESH N=34 L=20.0
++
++ DOMAIN NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON TN=20NS TP=20NS
++
++ ELECTRODE NUM=1 X.L=0.6 X.H=1.0 Y.L=0.0 Y.H=0.0
++ ELECTRODE NUM=2 X.L=-0.1 X.H=1.0 Y.L=20.0 Y.H=20.0
++
++ DOPING GAUSS P.TYPE CONC=1.0E19 CHAR.LEN=1.076 X.L=0.75 X.H=1.1 Y.H=0.0
++ + LAT.ROTATE RATIO=0.1
++ DOPING UNIF N.TYPE CONC=1.0E14
++ DOPING GAUSS N.TYPE CONC=1.0E19 CHAR.LEN=1.614 X.L=-0.1 X.H=1.1 Y.L=20.0
++
++ MODELS BGN SRH AUGER CONCTAU CONCMOB FIELDMOB
+
+.OPTION ACCT BYPASS=1
+.TRAN 0.1NS 10NS
+.PRINT TRAN V(3) I(VIN)
+
+.END
diff --git a/Windows/spice/examples/cider/serial/rtlinv.cir b/Windows/spice/examples/cider/serial/rtlinv.cir
new file mode 100644
index 00000000..ef0dd94d
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/rtlinv.cir
@@ -0,0 +1,25 @@
+RTL INVERTER
+
+VIN 1 0 DC 1 PWL 0 4 1NS 0
+VCC 12 0 DC 5.0
+RC1 12 3 2.5K
+RB1 1 2 8K
+Q1 3 2 0 QMOD AREA = 100P
+
+.OPTION ACCT BYPASS=1
+.TRAN 0.5N 5N
+.PRINT TRAN V(2) V(3)
+
+.MODEL QMOD NBJT LEVEL=1
++ X.MESH NODE=1 LOC=0.0
++ X.MESH NODE=61 LOC=3.0
++ REGION NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON NBGNN=1E17 NBGNP=1E17
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++ DOPING UNIF N.TYPE CONC=1E17 X.L=0.0 X.H=1.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=1.5
++ DOPING UNIF N.TYPE CONC=1E15 X.L=0.0 X.H=3.0
++ MODELS BGNW SRH CONCTAU AUGER CONCMOB FIELDMOB
++ OPTIONS BASE.LENGTH=1.0 BASE.DEPTH=1.25
+
+.END
diff --git a/Windows/spice/examples/cider/serial/vco.cir b/Windows/spice/examples/cider/serial/vco.cir
new file mode 100644
index 00000000..852ddd7f
--- /dev/null
+++ b/Windows/spice/examples/cider/serial/vco.cir
@@ -0,0 +1,41 @@
+VOLTAGE CONTROLLED OSCILLATOR
+
+RC1 7 5 1K
+RC2 7 6 1K
+
+Q5 7 7 5 QMOD AREA = 100P
+Q6 7 7 6 QMOD AREA = 100P
+
+Q3 7 5 2 QMOD AREA = 100P
+Q4 7 6 1 QMOD AREA = 100P
+
+IB1 2 0 .5MA
+IB2 1 0 .5MA
+CB1 2 0 1PF
+CB2 1 0 1PF
+
+Q1 5 1 3 QMOD AREA = 100P
+Q2 6 2 4 QMOD AREA = 100P
+
+C1 3 4 .1UF
+
+IS1 3 0 DC 2.5MA PULSE 2.5MA 0.5MA 0 1US 1US 50MS
+IS2 4 0 1MA
+VCC 7 0 10
+
+.MODEL QMOD NBJT LEVEL=1
++ X.MESH NODE=1 LOC=0.0
++ X.MESH NODE=61 LOC=3.0
++ REGION NUM=1 MATERIAL=1
++ MATERIAL NUM=1 SILICON NBGNN=1E17 NBGNP=1E17
++ MOBILITY MATERIAL=1 CONCMOD=SG FIELDMOD=SG
++ DOPING UNIF N.TYPE CONC=1E17 X.L=0.0 X.H=1.0
++ DOPING UNIF P.TYPE CONC=1E16 X.L=0.0 X.H=1.5
++ DOPING UNIF N.TYPE CONC=1E15 X.L=0.0 X.H=3.0
++ MODELS BGNW SRH CONCTAU AUGER CONCMOB FIELDMOB
++ OPTIONS BASE.LENGTH=1.0 BASE.DEPTH=1.25
+
+.OPTION ACCT BYPASS=1
+.TRAN 3US 600US 0 3US
+.PRINT TRAN V(4)
+.END
diff --git a/Windows/spice/examples/control_structs/foreach_bjt_ft.sp b/Windows/spice/examples/control_structs/foreach_bjt_ft.sp
new file mode 100644
index 00000000..ef5e9d47
--- /dev/null
+++ b/Windows/spice/examples/control_structs/foreach_bjt_ft.sp
@@ -0,0 +1,51 @@
+BJT ft Test
+
+vce 1 0 dc 3.0
+vgain 1 c dc 0.0
+f 0 2 vgain -1000
+l 2 b 1g
+c 2 0 1g
+ib 0 b dc 0.0 ac 1.0
+ic 0 c 0.01
+q1 c b 0 bfs17
+
+.control
+foreach myic 0.5e-3 1e-3 5e-3 10e-3 50e-3 100e-3
+ alter ic = $myic
+ ac dec 10 10k 5g
+end
+*foreach mytf 50p 100p 150p 200p 250p 300p
+* altermod q.x1.q1 tf = $mytf
+* ac dec 10 10k 5g
+*end
+plot abs(ac1.vgain#branch) abs(ac2.vgain#branch) abs(ac3.vgain#branch) abs(ac4.vgain#branch) abs(ac5.vgain#branch) abs(ac6.vgain#branch) ylimit 0.1 100 loglog
+.endc
+
+*****************************************************************
+* SPICE2G6 MODEL OF THE NPN BIPOLAR TRANSISTOR BFS17 (SOT-23) *
+* REV: 98.1 DANALYSE GMBH BERLIN (27.07.1998) *
+*****************************************************************
+.SUBCKT BFS17C 1 2 3
+Q1 6 5 7 BFS17 1.000
+LC 1 6 0.350N
+L1 2 4 0.400N
+LB 4 5 0.500N
+L2 3 8 0.400N
+LE 8 7 0.600N
+CGBC 4 6 70.00F
+CGBE 4 8 0.150P
+CGCE 6 8 15.00F
+.ENDS
+.MODEL BFS17 NPN (level=1 IS=0.480F NF=1.008 BF=99.655 VAF=90.000 IKF=0.190
++ ISE=7.490F NE=1.762 NR=1.010 BR=38.400 VAR=7.000 IKR=93.200M
++ ISC=0.200F NC=1.042
++ RB=1.500 IRB=0.100M RBM=1.200
++ RE=0.500 RC=2.680
++ CJE=1.325P VJE=0.700 MJE=0.220 FC=0.890
++ CJC=1.050P VJC=0.610 MJC=0.240 XCJC=0.400
++ TF=56.940P TR=1.000N PTF=21.000
++ XTF=68.398 VTF=0.600 ITF=0.700
++ XTB=1.600 EG=1.110 XTI=3.000
++ KF=1.000F AF=1.000)
+
+.end
diff --git a/Windows/spice/examples/control_structs/new-check-3.sp b/Windows/spice/examples/control_structs/new-check-3.sp
new file mode 100644
index 00000000..c85c19f6
--- /dev/null
+++ b/Windows/spice/examples/control_structs/new-check-3.sp
@@ -0,0 +1,96 @@
+new ft_getpnames parser check 3, try ternary
+
+* (compile (concat "tmp-1/ng-spice-rework/src/ngspice " buffer-file-name) t)
+
+VIN 1 0 DC=0
+
+.control
+
+dc VIN 0 10 5
+
+* trying the ternary
+
+let checks = 0
+
+let const0 = 0
+let const5 = 5
+let const6 = 6
+
+
+let tmp = const0 ? const5 : const6
+if tmp eq const6
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+let tmp = const6 ? const5 : const6
+if tmp eq const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+define foo(a,b,d) a ? b : d
+
+if foo(const0,const5,const6) eq const6
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if foo(const6,const5,const6) eq const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+let vec7 = 7*unitvec(7)
+let vec8 = 8*unitvec(8)
+
+if length(const5 ? vec7 : vec8) eq 7
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if length(const0 ? vec7 : vec8) eq 8
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+* FIXME, "1 ? 1:1" (without spaces around of ':') doesnt work,
+* "1:1" is a lexem, WHY !!!
+* ist that an old artifact, (ancient hierarchical name separator ':')
+*
+*print length(1?1:1)
+
+*if (1 ? 1:1) eq 1
+if (1 ? 1 : 1) eq 1
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+print @vin[dc]
+
+* '"' survives, and will be processed in the ft_getpnames() lexer, that is PPlex()
+* where the string will be unqoted
+* thats used vor weired variable names, for example "zero(1)"
+let foo = "vec8"
+if foo eq vec8
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if checks eq 8
+ echo "INFO: ok"
+else
+ echo "ERROR:"
+end
+
+.endc
+
+.end
diff --git a/Windows/spice/examples/control_structs/new-check-4.sp b/Windows/spice/examples/control_structs/new-check-4.sp
new file mode 100644
index 00000000..7c241f23
--- /dev/null
+++ b/Windows/spice/examples/control_structs/new-check-4.sp
@@ -0,0 +1,111 @@
+demonstrate < etc in ft_getpnames
+
+* (compile (concat "tmp-1/ng-spice-rework/src/ngspice " buffer-file-name) t)
+
+VIN 1 0 DC=0
+
+.control
+
+dc VIN 0 10 5
+
+let checks = 0
+
+let const0 = 0
+let const5 = 5
+let const6 = 6
+
+* check some relational operators, which are in danger to mixed up
+* with csh semantic, that is IO redirection
+
+if const5 < const6
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if const6 > const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if const5 >= const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if const5 <= const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if const5 = const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+* check some wired non-equality operators
+* note: there are some awkward tranformations ahead of the ft_getpnames lexer
+* transforming "><" into "> <"
+* and "<>" into "< >"
+* note: "!=" would have been in serious danger to be fooled up within
+* csh history mechanism
+
+if const6 <> const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if const6 >< const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+
+* check some boolean operators, which are in danger to be mixed up
+* with csh semantic, `&' background '|' pipe '~' homedirectory
+
+if const5 & const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if const0 | const5
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+if ~ const0
+ let checks = checks + 1
+else
+ echo "ERROR:"
+end
+
+* note:
+* "!=" would be in danger, '!' triggers the csh history mechanism
+*if const5 != const6
+* echo "just trying"
+*end
+
+
+* Note: csh semantics swallows the '>' and '<' operators
+* on most of the com lines
+* witnessed by
+let tmp = const5 > unwanted_output_file_1
+define foo(a,b) a > unwanted_output_file_2
+print const0 > unwanted_output_file_3
+
+if checks eq 10
+ echo "INFO: ok"
+end
+
+.endc
+
+.end
diff --git a/Windows/spice/examples/control_structs/repeat3.sp b/Windows/spice/examples/control_structs/repeat3.sp
new file mode 100644
index 00000000..5650252a
--- /dev/null
+++ b/Windows/spice/examples/control_structs/repeat3.sp
@@ -0,0 +1,148 @@
+Test sequences for ngspice control structures
+*vectors are used (except foreach)
+*start in interactive mode
+
+.control
+
+* test for while, repeat, if, break
+ let loop = 0
+ while loop < 4
+ let index = 0
+ repeat
+ let index = index + 1
+ if index > 4
+ break
+ end
+ end
+ echo index "$&index" loop "$&loop"
+ let loop = loop + 1
+ end
+
+
+* test sequence for while, dowhile
+ let loop = 0
+ echo
+ echo enter loop with "$&loop"
+ dowhile loop < 3
+ echo within dowhile loop "$&loop"
+ let loop = loop + 1
+ end
+ echo after dowhile loop "$&loop"
+ echo
+ let loop = 0
+ while loop < 3
+ echo within while loop "$&loop"
+ let loop = loop + 1
+ end
+ echo after while loop "$&loop"
+ let loop = 3
+ echo
+ echo enter loop with "$&loop"
+ dowhile loop < 3
+ echo within dowhile loop "$&loop" $ output expected
+ let loop = loop + 1
+ end
+ echo after dowhile loop "$&loop"
+ echo
+ let loop = 3
+ while loop < 3
+ echo within while loop "$&loop" $ no output expected
+ let loop = loop + 1
+ end
+ echo after while loop "$&loop"
+
+
+* test sequence for foreach
+ echo
+ foreach outvar 0 0.5 1 1.5
+ echo parameters: $outvar $ foreach parameters are variables, not vectors!
+ end
+
+* test for if ... else ... end
+ echo
+ let loop = 0
+ let index = 1
+ dowhile loop < 10
+ let index = index * 2
+ if index < 128
+ echo "$&index" lt 128
+ else
+ echo "$&index" ge 128
+ end
+ let loop = loop + 1
+ end
+
+* simple test for label, goto
+ echo
+ let loop = 0
+ label starthere
+ echo start "$&loop"
+ let loop = loop + 1
+ if loop < 3
+ goto starthere
+ end
+ echo end "$&loop"
+
+* test for label, nested goto
+ echo
+ let loop = 0
+ label starthere1
+ echo start nested "$&loop"
+ let loop = loop + 1
+ if loop < 3
+ if loop < 3
+ goto starthere1
+ end
+ end
+ echo end "$&loop"
+
+* test for label, goto
+ echo
+ let index = 0
+ label starthere2
+ let loop = 0
+ echo We are at start with index "$&index" and loop "$&loop"
+ if index < 6
+ label inhere
+ let index = index + 1
+ if loop < 3
+ let loop = loop + 1
+ if index > 1
+ echo jump2
+ goto starthere2
+ end
+ end
+ echo jump
+ goto inhere
+ end
+ echo We are at end with index "$&index" and loop "$&loop"
+
+* test goto in while loop
+ echo
+ let loop = 0
+ if 1 $ outer loop to allow nested forward label 'endlabel'
+ while loop < 10
+ if loop > 5
+ echo jump
+ goto endlabel
+ end
+ let loop = loop + 1
+ end
+ echo before $ never reached
+ label endlabel
+ echo after "$&loop"
+ end
+
+*test for using variables
+* simple test for label, goto
+ echo
+ set loop = 0
+ label starthe
+ echo start $loop
+ let loop = $loop + 1 $ expression needs vector at lhs
+ set loop = "$&loop" $ convert vector contents to variable
+ if $loop < 3
+ goto starthe
+ end
+ echo end $loop
+.endc
diff --git a/Windows/spice/examples/control_structs/s-param.cir b/Windows/spice/examples/control_structs/s-param.cir
new file mode 100644
index 00000000..bff277f7
--- /dev/null
+++ b/Windows/spice/examples/control_structs/s-param.cir
@@ -0,0 +1,120 @@
+Test for Scattering Parameters
+** Two ports
+** Examples: Bipolar, Tschebyschef, RC
+
+.param Rbase=50 Vbias_in=0 Vbias_out=0
+
+*** The two-port circuit:
+** port 1: in 0
+** port 2: out 0
+** Bias on both ports through resistor Rbase (to obtain operating point)
+
+** Example RF Bipolar mrf5711
+** VCE 1 V, IE = 5mA
+** QXXXXXXX nc nb ne
+** model obtained from
+** http://141.69.160.32/~krausg/Spice_Model_CD/Vendor%20List/Motorola/Spice/RFBJT/
+*.include MRF5711.lib
+*XMRF5711 out in e MRF5711
+*Ie e 0 5m
+*Ce e 0 1
+
+** Example Tschebyschef Low Pass filter
+C1 in 0 33.2p
+L1 in 2 99.2n
+C2 2 0 57.2p
+L2 2 out 99.2n
+C3 out 0 33.2p
+
+** Example RC
+** see
+** http://www.allenhollister.com/allen/files/scatteringparameters.pdf
+*R2 in out 10
+*C1 out int5 30p
+*R1 int5 0 10
+
+*** End of circuit
+
+
+** The following subcircuit to be changed only by an experienced user!
+
+*** Driver and readout
+X1 in out S22 S12 S_PARAM
+
+.SUBCKT S_PARAM 22 66 5 7
+* Resistors emulate switches with Ron=0.001 and Roff=1e12
+* to switch driver to input and readout to output (and vice versa, see below)
+RS1 22 2 0.001
+RS2 66 6 0.001
+RS3 22 6 1e12
+RS4 66 2 1e12
+*Driver
+Vacdc 1 0 DC 'Vbias_in' AC 1 $ ac voltage and dc bias at input (applied through load resistor)
+R1 1 2 'Rbase'
+E1 3 0 2 0 2 $ amplify in port ac voltage by 2
+Vac 3 4 DC 0 AC 1 $ subtract driving ac voltage
+R_loop 4 5 0.001
+R3 5 0 1 $ ground return for measure node 5
+*Readout
+E2 7 0 6 0 2 $ amplify out port ac voltage by 2
+R4 6 8 'Rbase' $ load resistor at output (ac)
+Vdc 8 0 DC 'Vbias_out' AC 0 $ dc bias at output (applied through load resistor)
+.ends
+
+** Check the two ac lines below for being equal!
+.control
+set noaskquit
+set filetype=ascii
+*** measurement for s11 and s21
+op
+** save bias voltages to vector
+let Vdcnew=V(X1.1) $ former Vacdc
+let Vacdcnew=v(X1.8) $ former Vdc
+** first ac measurement (change this line only together with following ac line)
+*ac lin 20 0.1G 2G $ use for bip transistor
+ac lin 100 2.5MEG 250MEG $ use for Tschebyschef
+*ac lin 101 1k 10G $ use for RC
+**
+** switch input and output
+alter R.X1.RS1=1e12
+alter R.X1.RS2=1e12
+alter R.X1.RS3=0.001
+alter R.X1.RS4=0.001
+** switch bias voltages between in and out
+alter V.X1.Vacdc DC=op1.Vacdcnew
+alter V.X1.Vdc DC=op1.Vdcnew
+*** measurement for s12 and s22
+op
+** second ac measurement (change this line only together with ac line above)
+*ac lin 20 0.1G 2G $ use for bip transistor
+ac lin 100 2.5MEG 250MEG $ use for Tschebyschef
+*ac lin 101 1 10G $ use for RC
+**
+let s11=ac1.s22
+let s21=ac1.s12
+settype s-param S11 S21 S22 S12
+
+let S11db = db(s11)
+let S12db = db(s12)
+let S21db = db(s21)
+let S22db = db(s22)
+settype decibel S11db S21db S22db S12db
+
+let P11=180*ph(s11)/pi
+let P21=180*ph(s21)/pi
+let P22=180*ph(S22)/pi
+let P12=180*ph(S12)/pi
+settype phase P11 P21 P22 P12
+
+let Rbase=@R.X1.R4[Resistance]
+settype impedance Rbase
+
+*plot s11db s21db S22db S12db ylimit -50 0 xlog $ used with RC
+plot s11db s21db S22db S12db ylimit -0.5 0 $ used with Tschebyschef
+plot P11 P21 P22 P12
+plot smithgrid S11 S12
+*wrdata s3046 mag(S11) P11 mag(S21) P21 mag(S22) P22 mag(S12) P12 $ write simple table
+wrs2p s3046.s2p $ write touchstone vers. 1 file s3046.s2p
+.endc
+
+.end
diff --git a/Windows/spice/examples/measure/func_cap.sp b/Windows/spice/examples/measure/func_cap.sp
new file mode 100644
index 00000000..eca14a86
--- /dev/null
+++ b/Windows/spice/examples/measure/func_cap.sp
@@ -0,0 +1,15 @@
+* func_cap.sp
+
+
+.func icap_calc(A,B,C,D) '2*A*sqrt(B*C*D)'
+
+.param cap_val = 'max(icap_calc(1,2,3,4))'
+VDD 1 0 DC 1
+C1 1 0 'cap_val'
+
+.measure tran capacitance param='cap_val'
+.measure tran capac2 param='max(icap_calc(1,2,3,4))'
+
+.tran 1ps 100ps
+
+.end
diff --git a/Windows/spice/examples/measure/inv-meas-tran-auto.sp b/Windows/spice/examples/measure/inv-meas-tran-auto.sp
new file mode 100644
index 00000000..927d9a44
--- /dev/null
+++ b/Windows/spice/examples/measure/inv-meas-tran-auto.sp
@@ -0,0 +1,103 @@
+Inverter example circuit
+* This netlist demonstrates the following:
+* global nodes (vdd, gnd)
+* autostop (.tran defines simulation end as 4ns but simulation stops at
+* 142.5ps when .measure statements are evaluated)
+* scale (all device units are in microns)
+* model binning (look in device.values file for which bin chosen)
+*
+* m.x1.mn:
+* model = nch.2
+*
+* m.x1.mp:
+* model = pch.2
+*
+* parameters
+* parameterized subckt
+* vsrc with repeat
+* .measure statements for delay and an example ternary operator
+* device listing and parameter listing
+* You can run the example circuit with this command:
+*
+* ngspice inverter3.sp
+
+
+* global nodes
+.global vdd gnd
+
+* autostop -- stop simulation early if .measure statements done
+* scale -- define scale factor for mosfet device parameters (l,w,area,perimeter)
+.option autostop
+.option scale = 1e-6
+
+* model binning
+.model nch.1 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model nch.2 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+.model pch.1 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model pch.2 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+
+* parameters
+.param vp = 1.0v
+.param lmin = 0.10
+.param wmin = 0.12
+.param plmin = 'lmin'
+.param nlmin = 'lmin'
+.param wpmin = 'wmin'
+.param wnmin = 'wmin'
+.param drise = 400ps
+.param dfall = 100ps
+.param trise = 100ps
+.param tfall = 100ps
+.param period = 1ns
+.param skew_meas = 'vp/2'
+
+* parameterized subckt
+.subckt inv in out pw='wpmin' pl='plmin' nw='wnmin' nl='nlmin'
+mp out in vdd vdd pch w='pw' l='pl'
+mn out in gnd gnd nch w='nw' l='nl'
+.ends
+
+v0 vdd gnd 'vp'
+
+* vsrc with repeat
+v1 in gnd pwl
++ 0ns 'vp'
++ 'dfall-0.8*tfall' 'vp'
++ 'dfall-0.4*tfall' '0.9*vp'
++ 'dfall+0.4*tfall' '0.1*vp'
++ 'dfall+0.8*tfall' 0v
++ 'drise-0.8*trise' 0v
++ 'drise-0.4*trise' '0.1*vp'
++ 'drise+0.4*trise' '0.9*vp'
++ 'drise+0.8*trise' 'vp'
++ 'period+dfall-0.8*tfall' 'vp'
++ r='dfall-0.8*tfall'
+
+x1 in out inv pw=60 nw=20
+c1 out gnd 220fF
+
+.tran 1ps 4ns
+
+.meas tran inv_delay trig v(in) val='vp/2' fall=1 targ v(out) val='vp/2' rise=1
+.meas tran inv_delay2 trig v(in) val='vp/2' td=1n fall=1 targ v(out) val='vp/2' rise=1
+.meas tran test_data1 trig AT = 1n targ v(out) val='vp/2' rise=3
+.meas tran out_slew trig v(out) val='0.2*vp' rise=2 targ v(out) val='0.8*vp' rise=2
+.meas tran delay_chk param='(inv_delay < 100ps) ? 1 : 0'
+.meas tran skew when v(out)=0.6
+.meas tran skew2 when v(out)=skew_meas
+.meas tran skew3 when v(out)=skew_meas fall=2
+.meas tran skew4 when v(out)=skew_meas fall=LAST
+.meas tran skew5 FIND v(out) AT=2n
+*.measure tran v0_min min i(v0) from='dfall' to='dfall+period'
+*.measure tran v0_avg avg i(v0) from='dfall' to='dfall+period'
+*.measure tran v0_integ integ i(v0) from='dfall' to='dfall+period'
+*.measure tran v0_rms rms i(v0) from='dfall' to='dfall+period'
+
+.control
+run
+rusage all
+plot v(in) v(out)
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/measure/inv-meas-tran-control.sp b/Windows/spice/examples/measure/inv-meas-tran-control.sp
new file mode 100644
index 00000000..48f7d09a
--- /dev/null
+++ b/Windows/spice/examples/measure/inv-meas-tran-control.sp
@@ -0,0 +1,113 @@
+Inverter example circuit
+* This netlist demonstrates the following:
+* global nodes (vdd, gnd)
+* autostop (.tran defines simulation end as 4ns but simulation stops at
+* 142.5ps when .measure statements are evaluated)
+* scale (all device units are in microns)
+* model binning (look in device.values file for which bin chosen)
+*
+* m.x1.mn:
+* model = nch.2
+*
+* m.x1.mp:
+* model = pch.2
+*
+* parameters
+* parameterized subckt
+* vsrc with repeat
+* .measure statements for delay and an example ternary operator
+* device listing and parameter listing
+* You can run the example circuit with this command:
+*
+* ngspice inverter3.sp
+
+
+* global nodes
+.global vdd gnd
+
+* autostop -- stop simulation early if .measure statements done
+* scale -- define scale factor for mosfet device parameters (l,w,area,perimeter)
+*.option autostop
+.option scale = 1e-6
+
+* model binning
+.model nch.1 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model nch.2 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+.model pch.1 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model pch.2 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+
+* parameters
+.param vp = 1.0v
+.param lmin = 0.10
+.param wmin = 0.12
+.param plmin = 'lmin'
+.param nlmin = 'lmin'
+.param wpmin = 'wmin'
+.param wnmin = 'wmin'
+.param drise = 400ps
+.param dfall = 100ps
+.param trise = 100ps
+.param tfall = 100ps
+.param period = 1ns
+.param skew_meas = 'vp/2'
+
+* parameterized subckt
+.subckt inv in out pw='wpmin' pl='plmin' nw='wnmin' nl='nlmin'
+mp out in vdd vdd pch w='pw' l='pl'
+mn out in gnd gnd nch w='nw' l='nl'
+.ends
+
+v0 vdd gnd 'vp'
+
+* vsrc with repeat
+v1 in gnd pwl
++ 0ns 'vp'
++ 'dfall-0.8*tfall' 'vp'
++ 'dfall-0.4*tfall' '0.9*vp'
++ 'dfall+0.4*tfall' '0.1*vp'
++ 'dfall+0.8*tfall' 0v
++ 'drise-0.8*trise' 0v
++ 'drise-0.4*trise' '0.1*vp'
++ 'drise+0.4*trise' '0.9*vp'
++ 'drise+0.8*trise' 'vp'
++ 'period+dfall-0.8*tfall' 'vp'
++ r='dfall-0.8*tfall'
+
+x1 in out inv pw=60 nw=20
+c1 out gnd 220fF
+
+.control
+tran 1ps 4ns
+meas tran inv_delay trig v(in) val=0.5 fall=1 targ v(out) val=0.5 rise=1
+meas tran inv_delay2 trig v(in) val=0.5 td=1n fall=1 targ v(out) val=0.5 rise=1
+meas tran test_data1 trig AT = 1n targ v(out) val=0.5 rise=3
+meas tran out_slew trig v(out) val=0.2 rise=2 targ v(out) val=0.8 rise=2
+
+*.meas tran delay_chk param='(inv_delay < 100ps) ? 1 : 0'
+if ( inv_delay < 100ps )
+ let delay_chk = 1
+else
+ let delay_chk = 0
+end
+echo delay_chk = "$&delay_chk"
+
+meas tran skew when v(out)=0.6
+let skew_meas = 0.5
+meas tran skew2 when v(out)=skew_meas
+meas tran skew3 when v(out)=skew_meas fall=2
+meas tran skew4 when v(out)=skew_meas fall=LAST
+meas tran skew5 FIND v(out) AT=2n
+let dfall = 100p
+let period = 1n
+let delta = dfall+period
+meas tran v0_min min i(v0) from=dfall to=delta
+meas tran i_v0_min min_at i(v0) from=dfall to=delta
+meas tran v0_avg avg i(v0) from = dfall to = delta
+meas tran v0_integ integ i(v0) from=dfall to=delta
+meas tran v0_rms rms i(v0) from=dfall to=delta
+rusage all
+plot v(in) v(out)
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/measure/inv-meas-tran.sp b/Windows/spice/examples/measure/inv-meas-tran.sp
new file mode 100644
index 00000000..0a4077ea
--- /dev/null
+++ b/Windows/spice/examples/measure/inv-meas-tran.sp
@@ -0,0 +1,104 @@
+Inverter example circuit
+* This netlist demonstrates the following:
+* global nodes (vdd, gnd)
+* autostop (.tran defines simulation end as 4ns but simulation stops at
+* 142.5ps when .measure statements are evaluated)
+* scale (all device units are in microns)
+* model binning (look in device.values file for which bin chosen)
+*
+* m.x1.mn:
+* model = nch.2
+*
+* m.x1.mp:
+* model = pch.2
+*
+* parameters
+* parameterized subckt
+* vsrc with repeat
+* .measure statements for delay and an example ternary operator
+* device listing and parameter listing
+* You can run the example circuit with this command:
+*
+* ngspice inverter3.sp
+
+
+* global nodes
+.global vdd gnd
+
+* autostop -- stop simulation early if .measure statements done
+* scale -- define scale factor for mosfet device parameters (l,w,area,perimeter)
+*.option autostop
+.option scale = 1e-6
+
+* model binning
+.model nch.1 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model nch.2 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+.model pch.1 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model pch.2 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+
+* parameters
+.param vp = 1.0v
+.param lmin = 0.10
+.param wmin = 0.12
+.param plmin = 'lmin'
+.param nlmin = 'lmin'
+.param wpmin = 'wmin'
+.param wnmin = 'wmin'
+.param drise = 400ps
+.param dfall = 100ps
+.param trise = 100ps
+.param tfall = 100ps
+.param period = 1ns
+.param skew_meas = 'vp/2'
+
+* parameterized subckt
+.subckt inv in out pw='wpmin' pl='plmin' nw='wnmin' nl='nlmin'
+mp out in vdd vdd pch w='pw' l='pl'
+mn out in gnd gnd nch w='nw' l='nl'
+.ends
+
+v0 vdd gnd 'vp'
+
+* vsrc with repeat
+v1 in gnd pwl
++ 0ns 'vp'
++ 'dfall-0.8*tfall' 'vp'
++ 'dfall-0.4*tfall' '0.9*vp'
++ 'dfall+0.4*tfall' '0.1*vp'
++ 'dfall+0.8*tfall' 0v
++ 'drise-0.8*trise' 0v
++ 'drise-0.4*trise' '0.1*vp'
++ 'drise+0.4*trise' '0.9*vp'
++ 'drise+0.8*trise' 'vp'
++ 'period+dfall-0.8*tfall' 'vp'
++ r='dfall-0.8*tfall'
+
+x1 in out inv pw=60 nw=20
+c1 out gnd 220fF
+
+.tran 1ps 4ns
+
+.meas tran inv_delay trig v(in) val='vp/2' fall=1 targ v(out) val='vp/2' rise=1
+.meas tran inv_delay2 trig v(in) val='vp/2' td=1n fall=1 targ v(out) val='vp/2' rise=1
+.meas tran test_data1 trig AT = 1n targ v(out) val='vp/2' rise=3
+.meas tran out_slew trig v(out) val='0.2*vp' rise=2 targ v(out) val='0.8*vp' rise=2
+.meas tran delay_chk param='(inv_delay < 100ps) ? 1 : 0'
+.meas tran skew when v(out)=0.6
+.meas tran skew2 when v(out)=skew_meas
+.meas tran skew3 when v(out)=skew_meas fall=2
+.meas tran skew4 when v(out)=skew_meas fall=LAST
+.meas tran skew5 FIND v(out) AT=2n
+.meas tran v0_min min i(v0) from='dfall' to='dfall+period'
+.meas tran i_v0_min min_at i(v0) from='dfall' to='dfall+period'
+.meas tran v0_avg avg i(v0) from='dfall' to='dfall+period'
+.meas tran v0_integ integ i(v0) from='dfall' to='dfall+period'
+.meas tran v0_rms rms i(v0) from='dfall' to='dfall+period'
+
+.control
+run
+rusage all
+plot v(in) v(out)
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/measure/inv-meas-tran_oc.sp b/Windows/spice/examples/measure/inv-meas-tran_oc.sp
new file mode 100644
index 00000000..98077b80
--- /dev/null
+++ b/Windows/spice/examples/measure/inv-meas-tran_oc.sp
@@ -0,0 +1,98 @@
+Inverter example circuit
+* This netlist demonstrates the following:
+* global nodes (vdd, gnd)
+* autostop (.tran defines simulation end as 4ns but simulation stops at
+* 142.5ps when .measure statements are evaluated)
+* scale (all device units are in microns)
+* model binning (look in device.values file for which bin chosen)
+*
+* m.x1.mn:
+* model = nch.2
+*
+* m.x1.mp:
+* model = pch.2
+*
+* parameters
+* parameterized subckt
+* vsrc with repeat
+* .measure statements for delay and an example ternary operator
+* device listing and parameter listing
+* You can run the example circuit with this command:
+*
+* ngspice inverter3.sp
+
+
+* global nodes
+.global vdd gnd
+
+* autostop -- stop simulation early if .measure statements done
+* scale -- define scale factor for mosfet device parameters (l,w,area,perimeter)
+*.option autostop
+.option scale = 1e-6
+
+* model binning
+.model nch.1 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model nch.2 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+.model pch.1 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model pch.2 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+
+* parameters
+.param vp = 1.0v
+.param lmin = 0.10
+.param wmin = 0.12
+.param plmin = 'lmin'
+.param nlmin = 'lmin'
+.param wpmin = 'wmin'
+.param wnmin = 'wmin'
+.param drise = 400ps
+.param dfall = 100ps
+.param trise = 100ps
+.param tfall = 100ps
+.param period = 1ns
+.param skew_meas = 'vp/2'
+
+* parameterized subckt
+.subckt inv in out pw='wpmin' pl='plmin' nw='wnmin' nl='nlmin'
+mp out in vdd vdd pch w='pw' l='pl'
+mn out in gnd gnd nch w='nw' l='nl'
+.ends
+
+v0 vdd gnd 'vp'
+
+* vsrc with repeat
+v1 in gnd pwl
++ 0ns 'vp'
++ 'dfall-0.8*tfall' 'vp'
++ 'dfall-0.4*tfall' '0.9*vp'
++ 'dfall+0.4*tfall' '0.1*vp'
++ 'dfall+0.8*tfall' 0v
++ 'drise-0.8*trise' 0v
++ 'drise-0.4*trise' '0.1*vp'
++ 'drise+0.4*trise' '0.9*vp'
++ 'drise+0.8*trise' 'vp'
++ 'period+dfall-0.8*tfall' 'vp'
++ r='dfall-0.8*tfall'
+
+x1 in out inv pw=60 nw=20
+c1 out gnd 220fF
+
+.tran 1ps 4ns
+
+.meas tran inv_delay trig v(in) val='vp/2' fall=1 targ v(out) val='vp/2' rise=1
+.meas tran inv_delay2 trig v(in) val='vp/2' td=1n fall=1 targ v(out) val='vp/2' rise=1
+.meas tran test_data1 trig AT = 1n targ v(out) val='vp/2' rise=3
+.meas tran out_slew trig v(out) val='0.2*vp' rise=2 targ v(out) val='0.8*vp' rise=2
+.meas tran delay_chk param='(inv_delay < 100ps) ? 1 : 0'
+.meas tran skew when v(out)=0.6
+.meas tran skew2 when v(out)=skew_meas
+.meas tran skew3 when v(out)=skew_meas fall=2
+.meas tran skew4 when v(out)=skew_meas fall=LAST
+.meas tran skew5 FIND v(out) AT=2n
+.meas tran v0_min min i(v0) from='dfall' to='dfall+period'
+.meas tran i_v0_min min_at i(v0) from='dfall' to='dfall+period'
+.meas tran v0_avg avg i(v0) from='dfall' to='dfall+period'
+.meas tran v0_integ integ i(v0) from='dfall' to='dfall+period'
+.meas tran v0_rms rms i(v0) from='dfall' to='dfall+period'
+
+.end
+
diff --git a/Windows/spice/examples/measure/mos-meas-dc-control.sp b/Windows/spice/examples/measure/mos-meas-dc-control.sp
new file mode 100644
index 00000000..9869cf60
--- /dev/null
+++ b/Windows/spice/examples/measure/mos-meas-dc-control.sp
@@ -0,0 +1,49 @@
+***** Single NMOS Transistor .measure (Id-Vd) ***
+* Altering device witdth leads to select new model due to binning limits.
+* New model has artificially thick gate oxide (changed from default 3n to 4n)
+* to demonstrate the effect.
+m1 d g s b nch L=0.6u W=9.99u ; W is slightly below binning limit
+
+vgs g 0 3.5
+vds d 0 3.5
+vs s 0 dc 0
+vb b 0 dc 0
+
+* model binning
+* uses default parameters, except toxe
+.model nch.1 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u toxe=3n )
+.model nch.2 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u toxe=4n)
+
+.control
+dc vds 0 3.5 0.05 vgs 3.5 0.5 -0.5
+meas dc is_at FIND i(vs) AT=1
+meas dc is_max max i(vs)
+meas dc vds_at2 when i(vs)=10m
+* starting with branches in descending order of vgs
+* trig ist the first branch which crosses 5mA
+* Targ is the first branch crossing 10mA
+meas dc vd_diff1 trig i(vs) val=0.005 rise=1 targ i(vs) val=0.01 rise=1
+* trig ist the first branch which crosses 5mA
+* Targ is the second branch crossing 10mA
+meas dc vd_diff2 trig i(vs) val=0.005 rise=2 targ i(vs) val=0.01 rise=2
+alter @m1[w]=10.01u ; W is slightly above binning limit
+dc vds 0 3.5 0.05 vgs 3.5 0.5 -0.5
+meas dc is_at FIND i(vs) AT=1
+meas dc is_max max i(vs)
+meas dc vds_at2 when i(vs)=10m
+meas dc vd_diff1 trig i(vs) val=0.005 rise=1 targ i(vs) val=0.01 rise=1
+* there is only one branch crossing 10mA, so this second meas fails with targ out of interval
+echo
+echo The next one will fail (no two branches crossing 10 mA):
+meas dc vd_diff2 trig i(vs) val=0.005 rise=2 targ i(vs) val=0.01 rise=2
+*rusage all
+plot dc1.i(vs) i(vs)
+.endc
+
+
+.end
+
+
+
+
+
diff --git a/Windows/spice/examples/measure/mos-meas-dc.sp b/Windows/spice/examples/measure/mos-meas-dc.sp
new file mode 100644
index 00000000..eb3892db
--- /dev/null
+++ b/Windows/spice/examples/measure/mos-meas-dc.sp
@@ -0,0 +1,37 @@
+***** Single NMOS Transistor .measure (Id-Vd) ***
+m1 d g s b nch L=0.6u W=10.0u
+
+vgs g 0 3.5
+vds d 0 3.5
+vs s 0 dc 0
+vb b 0 dc 0
+
+.dc vds 0 3.5 0.05 vgs 0.5 3.5 0.5
+
+.print dc v(1) i(vs)
+
+* model binning
+.model nch.1 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model nch.2 nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+.model pch.1 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model pch.2 pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=10u wmax=100u )
+
+.meas dc is_at FIND i(vs) AT=1
+.meas dc is_max max i(vs) from=0 to=3.5
+.meas dc vds_at2 when i(vs)=10m
+.meas dc vd_diff1 trig i(vs) val=0.005 rise=1 targ i(vs) val=0.01 rise=1
+.meas dc vd_diff2 trig i(vs) val=0.005 rise=1 targ i(vs) val=0.01 rise=2
+
+.control
+run
+*rusage all
+plot i(vs)
+.endc
+
+
+.end
+
+
+
+
+
diff --git a/Windows/spice/examples/measure/rc-meas-ac-control.sp b/Windows/spice/examples/measure/rc-meas-ac-control.sp
new file mode 100644
index 00000000..9b57929d
--- /dev/null
+++ b/Windows/spice/examples/measure/rc-meas-ac-control.sp
@@ -0,0 +1,64 @@
+RC band pass example circuit
+* This netlist demonstrates the following:
+* global nodes (vdd, gnd)
+
+* .measure statements for delay and an example ternary operator
+
+* You can run the example circuit with this command:
+*
+* ngspice rc-meas-ac.sp
+
+
+* global nodes
+.global vdd gnd
+
+* autostop -- stop simulation early if .measure statements done
+*.option autostop
+
+vin in gnd dc 0 ac 1
+
+R1 in mid1 1k
+c1 mid1 gnd 1n
+C2 mid1 out 500p
+R2 out gnd 1k
+
+
+.control
+ac DEC 10 1k 10MEG
+meas ac vout_at FIND v(out) AT=1MEG
+meas ac vout_atr FIND vr(out) AT=1MEG
+meas ac vout_ati FIND vi(out) AT=1MEG
+meas ac vout_atm FIND vm(out) AT=1MEG
+meas ac vout_atp FIND vp(out) AT=1MEG
+meas ac vout_atd FIND vdb(out) AT=1MEG
+meas ac vout_max max v(out) from=1k to=10MEG
+meas ac freq_at when v(out)=0.1
+meas ac vout_diff trig v(out) val=0.1 rise=1 targ v(out) val=0.1 fall=1
+meas ac fixed_diff trig AT = 10k targ v(out) val=0.1 rise=1
+meas ac vout_avg avg v(out) from=10k to=1MEG
+meas ac vout_integ integ v(out) from=20k to=500k
+meas ac freq_at2 when v(out)=0.1 fall=LAST
+*meas ac bw_chk param='(vout_diff < 100k) ? 1 : 0'
+if (vout_diff < 100k)
+ let bw_chk = 1
+else
+ let bw_chk = 0
+end
+echo bw_chk = "$&bw_chk"
+*meas ac bw_chk2 param='(vout_diff > 500k) ? 1 : 0'
+if (vout_diff > 500k)
+ let bw_chk2 = 1
+else
+ let bw_chk2 = 0
+end
+echo bw_chk2 = "$&bw_chk2"
+meas ac vout_rms rms v(out) from=10 to=1G
+*rusage all
+plot v(out)
+plot ph(v(out))
+plot mag(v(out))
+plot db(v(out))
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/measure/rc-meas-ac.sp b/Windows/spice/examples/measure/rc-meas-ac.sp
new file mode 100644
index 00000000..2d464ba5
--- /dev/null
+++ b/Windows/spice/examples/measure/rc-meas-ac.sp
@@ -0,0 +1,54 @@
+RC band pass example circuit
+* This netlist demonstrates the following:
+* global nodes (vdd, gnd)
+
+* .measure statements for delay and an example ternary operator
+
+* You can run the example circuit with this command:
+*
+* ngspice rc-meas-ac.sp
+
+
+* global nodes
+.global vdd gnd
+
+* autostop -- stop simulation early if .measure statements done
+*.option autostop
+
+vin in gnd dc 0 ac 1
+
+R1 in mid1 1k
+c1 mid1 gnd 1n
+C2 mid1 out 500p
+R2 out gnd 1k
+
+.ac DEC 10 1k 10MEG
+
+.meas ac vout_at FIND v(out) AT=1MEG
+.meas ac vout_atr FIND vr(out) AT=1MEG
+.meas ac vout_ati FIND vi(out) AT=1MEG
+.meas ac vout_atm FIND vm(out) AT=1MEG
+.meas ac vout_atp FIND vp(out) AT=1MEG
+.meas ac vout_atd FIND vdb(out) AT=1MEG
+.meas ac vout_max max v(out) from=1k to=10MEG
+.meas ac freq_at when v(out)=0.1
+.meas ac vout_diff trig v(out) val=0.1 rise=1 targ v(out) val=0.1 fall=1
+.meas ac fixed_diff trig AT = 10k targ v(out) val=0.1 rise=1
+.meas ac vout_avg avg v(out) from=10k to=1MEG
+.meas ac vout_integ integ v(out) from=20k to=500k
+.meas ac freq_at2 when v(out)=0.1 fall=LAST
+.meas ac bw_chk param='(vout_diff < 100k) ? 1 : 0'
+.meas ac bw_chk2 param='(vout_diff > 500k) ? 1 : 0'
+.meas ac vout_rms rms v(out) from=10 to=1G
+
+.control
+run
+*rusage all
+plot v(out)
+plot ph(v(out))
+plot mag(v(out))
+plot db(v(out))
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/measure/simple-meas-tran.sp b/Windows/spice/examples/measure/simple-meas-tran.sp
new file mode 100644
index 00000000..0279c73f
--- /dev/null
+++ b/Windows/spice/examples/measure/simple-meas-tran.sp
@@ -0,0 +1,57 @@
+File: simple-meas-tran.sp
+* Simple .measurement examples
+* transient simulation of two sine signals with different frequencies
+vac1 1 0 DC 0 sin(0 1 1k 0 0)
+R1 1 0 100k
+vac2 2 0 DC 0 sin(0 1.2 0.9k 0 0)
+.tran 10u 5m
+*
+.measure tran tdiff TRIG v(1) VAL=0.5 RISE=1 TARG v(1) VAL=0.5 RISE=2
+.measure tran tdiff TRIG v(1) VAL=0.5 RISE=1 TARG v(1) VAL=0.5 RISE=3
+.measure tran tdiff TRIG v(1) VAL=0.5 RISE=1 TARG v(1) VAL=0.5 FALL=1
+.measure tran tdiff TRIG v(1) VAL=0 FALL=3 TARG v(2) VAL=0 FALL=3
+.measure tran tdiff TRIG v(1) VAL=-0.6 CROSS=1 TARG v(2) VAL=-0.8 CROSS=1
+.measure tran tdiff TRIG AT=1m TARG v(2) VAL=-0.8 CROSS=3
+.measure tran teval WHEN v(2)=0.7 CROSS=LAST
+.measure tran teval WHEN v(2)=v(1) FALL=LAST
+.measure tran teval WHEN v(1)=v(2) CROSS=LAST
+.measure tran yeval FIND v(2) WHEN v(1)=0.2 FALL=2
+.measure tran yeval FIND v(2) AT=2m
+.measure tran ymax MAX v(2) from=2m to=3m
+.measure tran tymax MAX_AT v(2) from=2m to=3m
+.measure tran ypp PP v(1) from=2m to=4m
+.measure tran yrms RMS v(1) from=2m to=3.5m
+.measure tran yavg AVG v(1) from=2m to=4m
+.measure tran yint INTEG v(2) from=2m to=3m
+.param fval=5
+.measure tran yadd param='fval + 7'
+.param vout_diff=50k
+.meas tran bw_chk param='(vout_diff < 100k) ? 1 : 0'
+.measure tran vtest find par('v(2)*v(1)') AT=2.3m
+*
+.control
+run
+plot v(1) v(2)
+gnuplot ttt i(vac1)
+meas tran tdiff TRIG v(1) VAL=0.5 RISE=1 TARG v(1) VAL=0.5 RISE=2
+meas tran tdiff TRIG v(1) VAL=0.5 RISE=1 TARG v(1) VAL=0.5 RISE=3
+meas tran tdiff TRIG v(1) VAL=0.5 RISE=1 TARG v(1) VAL=0.5 FALL=1
+meas tran tdiff TRIG v(1) VAL=0 FALL=3 TARG v(2) VAL=0 FALL=3
+meas tran tdiff TRIG v(1) VAL=-0.6 CROSS=1 TARG v(2) VAL=-0.8 CROSS=1
+meas tran tdiff TRIG AT=1m TARG v(2) VAL=-0.8 CROSS=3
+meas tran teval WHEN v(2)=0.7 CROSS=LAST
+meas tran teval WHEN v(2)=v(1) FALL=LAST
+meas tran teval WHEN v(1)=v(2) CROSS=LAST
+meas tran yeval FIND v(2) WHEN v(1)=0.2 FALL=2
+meas tran yeval FIND v(2) AT=2m
+meas tran ymax MAX v(2) from=2m to=3m
+meas tran tymax MAX_AT v(2) from=2m to=3m
+meas tran ypp PP v(1) from=2m to=4m
+meas tran yrms RMS v(1) from=2m to=3.5m
+meas tran yavg AVG v(1) from=2m to=4m
+meas tran yint INTEG v(2) from=2m to=3m
+meas tran ymax MAX v(2) from=2m to=3m
+meas tran tmax WHEN v(2)=YMAX from=1m to=2m $ from..to.. not recognized!
+
+.endc
+.end
diff --git a/Windows/spice/examples/memristor/memristor.sp b/Windows/spice/examples/memristor/memristor.sp
new file mode 100644
index 00000000..fdb9488a
--- /dev/null
+++ b/Windows/spice/examples/memristor/memristor.sp
@@ -0,0 +1,65 @@
+Memristor with threshold
+* Y. V. Pershin, M. Di Ventra: "SPICE model of memristive devices with threshold",
+* arXiv:1204.2600v1 [physics.comp-ph] 12 Apr 2012,
+* http://arxiv.org/pdf/1204.2600.pdf
+
+* Parameter selection and plotting by
+* Holger Vogt 2012
+
+.param stime=10n
+.param vmax = 3
+
+* send parameters to the .control section
+.csparam stime={stime}
+.csparam vmax={vmax}
+
+Xmem 1 0 memristor
+* triangular sweep (you have to adapt the parameters to 'alter' command in the .control section)
+*V1 1 0 DC 0 PWL(0 0 '0.25*stime' 'vmax' '0.5*stime' 0 '0.75*stime' '-vmax' 'stime' 0)
+* sinusoidal sweep
+V1 0 1 DC 0 sin(0 'vmax' '1/stime')
+
+* memristor model with limits and threshold
+* "artificial" parameters alpha, beta, and vt. beta and vt adapted to basic programming frequency
+* just to obtain nice results!
+* You have to care for the physics and set real values!
+.subckt memristor plus minus PARAMS: Ron=1K Roff=10K Rinit=7.0K alpha=0 beta=20e3/stime Vt=1.6
+Bx 0 x I='((f1(V(plus)-V(minus))> 0) && (V(x) < Roff)) ? {f1(V(plus)-V(minus))}: ((((f1(V(plus)-V(minus)) < 0) && (V(x)>Ron)) ? {f1(V(plus)-V(minus))}: 0)) '
+Vx x x1 dc 0
+Cx x1 0 1 IC={Rinit}
+Rmem plus minus r={V(x)}
+.func f1(y)={beta*y+0.5*(alpha-beta)*(abs(y+Vt)-abs(y-Vt))}
+.ends
+
+* transient simulation same programming voltage but rising frequencies
+.control
+*** first simulation ***
+* approx. 100 simulation points
+let deltime = stime/100
+tran $&deltime $&stime uic
+* plot i(v1) vs v(1)
+*** you may just stop here ***
+* raise the frequency
+let newfreq = 1.1/stime
+let newstime = stime/1.1
+let deltime = newstime/100
+alter @V1[sin] [ 0 $&vmax $&newfreq ]
+tran $&deltime $&newstime uic
+* raise the frequency even more
+let newfreq = 1.4/stime
+let newstime = stime/1.4
+let deltime = newstime/100
+alter @V1[sin] [ 0 $&vmax $&newfreq ]
+tran $&deltime $&newstime uic
+* the 'programming' currents
+plot tran1.alli tran2.alli alli title 'Memristor with threshold: Internal Programming currents'
+* resistance versus time plot
+settype impedance xmem.x1 tran1.xmem.x1 tran2.xmem.x1
+plot xmem.x1 tran1.xmem.x1 tran2.xmem.x1 title 'Memristor with threshold: resistance'
+* resistance versus voltage (change occurs only above threshold!)
+plot xmem.x1 vs v(1) tran1.xmem.x1 vs tran1.v(1) tran2.xmem.x1 vs tran2.v(1) title 'Memristor with threshold: resistance'
+* current through resistor for all plots versus voltage
+plot i(v1) vs v(1) tran1.i(v1) vs tran1.v(1) tran2.i(v1) vs tran2.v(1) title 'Memristor with threshold: external current loops'
+.endc
+
+.end
diff --git a/Windows/spice/examples/memristor/memristor_x.sp b/Windows/spice/examples/memristor/memristor_x.sp
new file mode 100644
index 00000000..1c283e73
--- /dev/null
+++ b/Windows/spice/examples/memristor/memristor_x.sp
@@ -0,0 +1,83 @@
+Memristor with threshold as XSPICE code model
+* Y. V. Pershin, M. Di Ventra: "SPICE model of memristive devices with threshold",
+* arXiv:1204.2600v1 [physics.comp-ph] 12 Apr 2012,
+* http://arxiv.org/pdf/1204.2600.pdf
+
+* XSPICE code model, parameter selection and plotting by
+* Holger Vogt 2012
+
+* ac and op (dc) simulation just use start resistance rinit!
+
+.param stime=10n
+.param vmax = 4.2
+
+* send parameters to the .control section
+.csparam stime={stime}
+.csparam vmax={vmax}
+
+*Xmem 1 0 memristor
+* triangular sweep (you have to adapt the parameters to 'alter' command in the .control section)
+*V1 1 0 DC 0 PWL(0 0 '0.25*stime' 'vmax' '0.5*stime' 0 '0.75*stime' '-vmax' 'stime' 0)
+* sinusoidal sweep for transient, dc for op, ac
+V1 0 1 DC 0.1 ac 1 sin(0 'vmax' '1/stime')
+
+Rl 1 11 1k
+
+* memristor model with limits and threshold
+* "artificial" parameters alpha, beta, and vt. beta and vt adapted to basic programming frequency
+* just to obtain nice results!
+* You have to care for the physics and set real values!
+amen 11 2 memr
+.model memr memristor (rmin=1k rmax=10k rinit=7k alpha=0 beta='20e3/stime' vt=1.6)
+
+vgnd 2 0 dc 0
+
+* This is the original subcircuit model
+.subckt memristor plus minus PARAMS: Ron=1K Roff=10K Rinit=7.0K alpha=0 beta=20e3/stime Vt=1.6
+Bx 0 x I='((f1(V(plus)-V(minus))> 0) && (V(x) < Roff)) ? {f1(V(plus)-V(minus))}: ((((f1(V(plus)-V(minus)) < 0) && (V(x)>Ron)) ? {f1(V(plus)-V(minus))}: 0)) '
+Vx x x1 dc 0
+Cx x1 0 1 IC={Rinit}
+Rmem plus minus r={V(x)}
+.func f1(y)={beta*y+0.5*(alpha-beta)*(abs(y+Vt)-abs(y-Vt))}
+.ends
+
+* transient simulation same programming voltage but rising frequencies
+.control
+*** first simulation ***
+op
+print all
+ac lin 101 1 100k
+plot v(11)
+* approx. 100 simulation points
+let deltime = stime/100
+tran $&deltime $&stime uic
+* plot i(v1) vs v(1)
+*** you may just stop here ***
+* raise the frequency
+let newfreq = 1.2/stime
+let newstime = stime/1.2
+let deltime = newstime/100
+alter @V1[sin] [ 0 $&vmax $&newfreq ]
+tran $&deltime $&newstime uic
+* raise the frequency even more
+let newfreq = 1.4/stime
+let newstime = stime/1.4
+let deltime = newstime/100
+alter @V1[sin] [ 0 $&vmax $&newfreq ]
+tran $&deltime $&newstime uic
+* the resistor currents
+plot tran1.alli tran2.alli alli title 'Memristor with threshold: currents'
+* calculate resistance (avoid dividing by zero)
+let res = v(1)/(I(v1) + 1e-16)
+let res1 = tran1.v(1)/(tran1.I(v1) + 1e-16)
+let res2 = tran2.v(1)/(tran2.I(v1) + 1e-16)
+* resistance versus time plot
+settype impedance res res1 res2
+plot res vs time res1 vs tran1.time res2 vs tran2.time title 'Memristor with threshold: resistance'
+* resistance versus voltage (change occurs only above threshold!)
+plot res vs v(1) res1 vs tran1.v(1) res2 vs tran2.v(1) title 'Memristor with threshold: resistance'
+* current through resistor for all plots versus voltage
+plot i(v1) vs v(1) tran1.i(v1) vs tran1.v(1) tran2.i(v1) vs tran2.v(1) title 'Memristor with threshold: external current loops'
+.endc
+
+.end
diff --git a/Windows/spice/examples/numparam/example.cir b/Windows/spice/examples/numparam/example.cir
new file mode 100644
index 00000000..6e13bc06
--- /dev/null
+++ b/Windows/spice/examples/numparam/example.cir
@@ -0,0 +1,16 @@
+* Param-example
+.param amplitude= 1V
+
+.subckt myfilter in out rval=100k cval=100nF
+Ra in p1 {2*rval}
+Rb p1 out {2*rval}
+C1 p1 0 {2*cval}
+Ca in p2 {cval}
+Cb p2 out {cval}
+R1 p2 0 {rval}
+.ends myfilter
+
+X1 input output myfilter rval=1k cval=1n
+V1 input 0 AC {amplitude}
+
+.end
diff --git a/Windows/spice/examples/numparam/pin.mod b/Windows/spice/examples/numparam/pin.mod
new file mode 100644
index 00000000..b035cd2f
--- /dev/null
+++ b/Windows/spice/examples/numparam/pin.mod
@@ -0,0 +1,33 @@
+* PIN model
+* line 2
+* line 3
+* -- Summary -------------------------------
+* This is a simple spice model of a PIN diode.
+*
+* -- Description ---------------------------
+* It is a three node device; one input node (relative to ground) and two
+* output nodes (cathode and anode)
+*
+
+* -- Model ----------------------------------
+.subckt SIMPLE_PIN input cathode anode resp=0.5
+
+* Input photocurrent is modled by a voltage
+* This generates a current using a linear voltage-controlled current source
+Gin dk da input 0 {resp}
+Rin input 0 1G
+Cin input 0 {resp}
+
+* The pn-junction that generates this photocurrent in the real device is modelled
+* here by a simple diode
+Dpn da dk pndiode
+
+* terminal resistances
+Ra anode da 0.001ohm
+Rk cathode dk 0.001ohm
+
+* subsircuit models:
+.MODEL pndiode D IS=0.974p RS=0.1 N=1.986196 BV=7.1 IBV=0.1n
++ CJO=99.2p VJ=0.455536 M=0.418717 TT=500n
+
+.ends
diff --git a/Windows/spice/examples/numparam/pintest.cir b/Windows/spice/examples/numparam/pintest.cir
new file mode 100644
index 00000000..80702e14
--- /dev/null
+++ b/Windows/spice/examples/numparam/pintest.cir
@@ -0,0 +1,32 @@
+* Test circuit for pin.mod
+
+*.include C:\Spice\tests\numparam\pin.mod
+.include pin.mod
+
+* Photodiode supply
+Vbias psu 0 10V
+
+* Light input is modeled by a voltage source that we can vary
+Vlight input 0 2mW
+
+* The pin diode
+Xpin input cathode anode SIMPLE_PIN resp=0.7
+
+* monitor resistor
+Rmon anode 0 1ohm
+
+* Quench restistor
+Rq psu cathode 1k
+
+*.dc vlight 0 5mW 0.01mW
+
+.dc vlight 0 10mW 0.01mW
+
+.control
+dc vlight 0 10mW 0.01mW
+*write pintest.raw all
+plot V(anode)
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/pss/colpitt_osc_pss.cir b/Windows/spice/examples/pss/colpitt_osc_pss.cir
new file mode 100644
index 00000000..8d0583ae
--- /dev/null
+++ b/Windows/spice/examples/pss/colpitt_osc_pss.cir
@@ -0,0 +1,22 @@
+Colpitt's Oscillator Circuit
+* Colpitt is an harmonic oscillator (LC based) which use
+* a capacitive partition of resonator to feed the single
+* active device.
+* Predicted frequency is about 3.30435e+06 Hz.
+
+* Models:
+.model qnl npn(level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf va=50)
+
+r1 1 0 1
+q1 2 1 3 qnl
+vcc 4 0 5
+rl 4 2 750
+c1 2 3 500p
+c2 4 3 4500p
+l1 4 2 5uH
+re 3 6 4.65k
+vee 6 0 dc -10 pwl 0 0 1e-9 -10
+
+*.tran 30n 12u
+.pss 3.1e6 500e-6 3 256 10 50 5e-3
+
diff --git a/Windows/spice/examples/pss/compl_cross_quad_osc_pss.cir b/Windows/spice/examples/pss/compl_cross_quad_osc_pss.cir
new file mode 100644
index 00000000..b45e730d
--- /dev/null
+++ b/Windows/spice/examples/pss/compl_cross_quad_osc_pss.cir
@@ -0,0 +1,35 @@
+Complimentary Cross Quad CMOS Oscillator
+* Predicted frequency is 5.61224e+08 Hz.
+*
+* PLOT i1
+
+* Supply
+vdd vdd gnd 1.2 pwl 0 1.2 1e-9 1.2
+rdd vdd vdd_ana 70m
+rgnd gnd gnd_ana 70m
+
+* Cross quad
+mpsx v_plus v_minus vdd_ana vdd_ana pch w=10u l=0.1u
+mnsx v_plus v_minus gnd_ana gnd_ana nch w=10u l=0.1u
+mpdx v_minus v_plus vdd_ana vdd_ana pch w=10u l=0.1u
+mndx v_minus v_plus gnd_ana gnd_ana nch w=10u l=0.1u
+
+* Lumped elements model of real inductor
+ls v_plus i1 19.462n ic=0.06
+rs i1 v_minus 7.789
+cs v_plus v_minus 443f
+coxs v_plus is 2.178p
+coxd v_minus id 2.178p
+rsis is gnd_ana 308
+rsid id gnd_ana 308
+csis is gnd_ana 51f
+csid id gnd_ana 51f
+
+* Parallel capacitor to determine leading resonance
+cp v_plus v_minus 3.4p
+
+.model nch nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model pch pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+
+*.tran 0.05n 1u uic
+.pss 500e6 1u 1 1024 10 10 5e-3 uic
diff --git a/Windows/spice/examples/pss/hartley_osc_pss.cir b/Windows/spice/examples/pss/hartley_osc_pss.cir
new file mode 100644
index 00000000..bd1eef3d
--- /dev/null
+++ b/Windows/spice/examples/pss/hartley_osc_pss.cir
@@ -0,0 +1,21 @@
+Hartley's Oscillator Circuit
+* Hartley is an harmonic oscillator (LC based) which use
+* an inductive partition of resonator to feed the single
+* active device. Output is taken on node 2.
+* Prediceted frequency is about 121.176 Hz.
+*
+* PLOT V(3)
+
+* Models:
+.model qnl npn(level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf va=50)
+
+vcc 1 0 5 pwl 0 0 1e-5 5
+r1 1 2 0.2k
+q1 2 3 0 qnl
+c1 3 4 633n
+l1 3 0 1.5
+l2 0 4 500m
+r2 4 2 100
+
+*.tran 300n 50m
+.pss 50 200e-3 2 1024 11 10 5e-3 uic
diff --git a/Windows/spice/examples/pss/ring_osc_pss.cir b/Windows/spice/examples/pss/ring_osc_pss.cir
new file mode 100644
index 00000000..d2649605
--- /dev/null
+++ b/Windows/spice/examples/pss/ring_osc_pss.cir
@@ -0,0 +1,29 @@
+Ring CMOS Oscillator
+* Oscillation is taken on node "bout".
+* Predicted frequency is 3.8e+09 Hz.
+*
+* PLOT bout
+
+* Supply
+vdd vdd gnd 1.2 pwl 0 1.2 1e-9 1.2
+rdd vdd vdd_ana 70m
+rgnd gnd gnd_ana 70m
+
+* Inverter
+mp1 inv1 inv3 vdd_ana vdd_ana pch w=10u l=0.18u
+mn1 inv1 inv3 gnd_ana gnd_ana nch w=10u l=0.18u
+mp2 inv2 inv1 vdd_ana vdd_ana pch w=10u l=0.18u
+mn2 inv2 inv1 gnd_ana gnd_ana nch w=10u l=0.18u
+mp3 inv3 inv2 vdd_ana vdd_ana pch w=10u l=0.18u
+mn3 inv3 inv2 gnd_ana gnd_ana nch w=10u l=0.18u
+
+* Buffer out
+mp4 bout inv3 vdd_ana vdd_ana pch w=10u l=0.18u
+mn4 bout inv3 gnd_ana gnd_ana nch w=10u l=0.18u
+
+.model nch nmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+.model pch pmos ( version=4.4 level=54 lmin=0.1u lmax=20u wmin=0.1u wmax=10u )
+
+*.tran 0.005n 100n
+*.plot tran v(4)
+.pss 624e6 500n 1 1024 10 5 5e-3 uic
diff --git a/Windows/spice/examples/pss/vackar_osc_pss.cir b/Windows/spice/examples/pss/vackar_osc_pss.cir
new file mode 100644
index 00000000..13ce1a12
--- /dev/null
+++ b/Windows/spice/examples/pss/vackar_osc_pss.cir
@@ -0,0 +1,21 @@
+Vackar's Oscillator Circuit
+* Vackar is a derivation of Colpitt's oscillator (LC based).
+* Oscillation is taken on node 4.
+* Predicted frequency is 1.91803e+06Hz.
+
+* Models:
+.model qnl npn(level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf va=50)
+
+vcc 1 0 5 pwl 0 10 1e-9 5
+lrfc 1 2 100u
+cdec 2 0 7n
+q1 3 2 0 qnl
+rb 3 0 4700
+c1 3 4 100p
+c2 3 0 600p
+c0 4 0 1n
+l1 4 1 6.2u
+
+*.tran 30n 12u
+*.plot tran v(4)
+.pss 1e6 10e-6 4 1024 10 50 5e-3 uic
diff --git a/Windows/spice/examples/pss/vdp_osc_pss.cir b/Windows/spice/examples/pss/vdp_osc_pss.cir
new file mode 100644
index 00000000..f4e66815
--- /dev/null
+++ b/Windows/spice/examples/pss/vdp_osc_pss.cir
@@ -0,0 +1,17 @@
+Van Der Pol Oscillator
+* Prediceted frequency is about 4.54167e+06 Hz.
+
+* Third harmonic is high as the first one
+Ba gib 0 I=-1e-2*v(gib,0)+1e-2*v(gib,0)^3
+* Q is about 10
+La gib 0 1.2e-6
+Ra gib 0 158.113
+Ca gib 0 1e-9 ic=0.5
+*La gib 0 1e-9
+*Ra gib 0 474.6
+*Ca gib 0 1e-9 ic=0.5
+* Ghost node... Test for my PSS!
+Rb bad 0 1k
+
+*.tran 1e-9 150e-6 uic
+.pss 0.8e6 130e-6 1 50 10 50 5e-3 uic
diff --git a/Windows/spice/examples/snapshot/adder_mos.cir b/Windows/spice/examples/snapshot/adder_mos.cir
new file mode 100644
index 00000000..603f1f11
--- /dev/null
+++ b/Windows/spice/examples/snapshot/adder_mos.cir
@@ -0,0 +1,26 @@
+ Example: snsave
+* load a circuit (including transistor models and .tran command)
+* starts transient simulation until stop point
+* store intermediate data to file
+* begin with editing the file location
+* to be run with 'ngspice adder_mos.cir'
+
+.include adder_mos_circ.cir
+
+.control
+*cd to where all files are located
+cd D:\Spice_general\ngspice\examples\snapshot
+set noaskquit
+unset ngdebug
+set noinit
+save vcc#branch 10
+iplot v(10)
+*interrupt condition for the simulation
+stop when time > 500n
+* simulate
+run
+* store snapshot to file
+snsave adder500.snap
+.endc
+
+.END
diff --git a/Windows/spice/examples/snapshot/adder_mos_circ.cir b/Windows/spice/examples/snapshot/adder_mos_circ.cir
new file mode 100644
index 00000000..b0a591e4
--- /dev/null
+++ b/Windows/spice/examples/snapshot/adder_mos_circ.cir
@@ -0,0 +1,61 @@
+* ADDER - 4 BIT ALL-NAND-GATE BINARY ADDER
+
+*** SUBCIRCUIT DEFINITIONS
+.SUBCKT NAND in1 in2 out VDD
+* NODES: INPUT(2), OUTPUT, VCC
+M1 out in2 Vdd Vdd p1 W=3u L=1u
+M2 net.1 in2 0 0 n1 W=3u L=2u
+M3 out in1 Vdd Vdd p1 W=3u L=1u
+M4 out in1 net.1 0 n1 W=3u L=2u
+.ENDS NAND
+
+.SUBCKT ONEBIT 1 2 3 4 5 6
+* NODES: INPUT(2), CARRY-IN, OUTPUT, CARRY-OUT, VCC
+X1 1 2 7 6 NAND
+X2 1 7 8 6 NAND
+X3 2 7 9 6 NAND
+X4 8 9 10 6 NAND
+X5 3 10 11 6 NAND
+X6 3 11 12 6 NAND
+X7 10 11 13 6 NAND
+X8 12 13 4 6 NAND
+X9 11 7 5 6 NAND
+.ENDS ONEBIT
+
+.SUBCKT TWOBIT 1 2 3 4 5 6 7 8 9
+* NODES: INPUT - BIT0(2) / BIT1(2), OUTPUT - BIT0 / BIT1,
+* CARRY-IN, CARRY-OUT, VCC
+X1 1 2 7 5 10 9 ONEBIT
+X2 3 4 10 6 8 9 ONEBIT
+.ENDS TWOBIT
+
+.SUBCKT FOURBIT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+* NODES: INPUT - BIT0(2) / BIT1(2) / BIT2(2) / BIT3(2),
+* OUTPUT - BIT0 / BIT1 / BIT2 / BIT3, CARRY-IN, CARRY-OUT, VCC
+X1 1 2 3 4 9 10 13 16 15 TWOBIT
+X2 5 6 7 8 11 12 16 14 15 TWOBIT
+.ENDS FOURBIT
+
+*** DEFINE NOMINAL CIRCUIT
+VCC 99 0 DC 3.3V
+VIN1A 1 0 PULSE(0 3 0 10NS 10NS 10NS 50NS)
+VIN1B 2 0 PULSE(0 3 0 10NS 10NS 20NS 100NS)
+VIN2A 3 0 PULSE(0 3 0 10NS 10NS 40NS 200NS)
+VIN2B 4 0 PULSE(0 3 0 10NS 10NS 80NS 400NS)
+VIN3A 5 0 PULSE(0 3 0 10NS 10NS 160NS 800NS)
+VIN3B 6 0 PULSE(0 3 0 10NS 10NS 320NS 1600NS)
+VIN4A 7 0 PULSE(0 3 0 10NS 10NS 640NS 3200NS)
+VIN4B 8 0 PULSE(0 3 0 10NS 10NS 1280NS 6400NS)
+X1 1 2 3 4 5 6 7 8 9 10 11 12 0 13 99 FOURBIT
+*RBIT0 9 0 100K
+*RBIT1 10 0 100K
+*RBIT2 11 0 100K
+*RBIT3 12 0 100K
+*RCOUT 13 0 100K
+
+.TRAN 1NS 1000NS
+
+.model n1 nmos level=8 version=3.3.0
+.model p1 pmos level=8 version=3.3.0
+
+.END
diff --git a/Windows/spice/examples/snapshot/adder_snload.script b/Windows/spice/examples/snapshot/adder_snload.script
new file mode 100644
index 00000000..f5556347
--- /dev/null
+++ b/Windows/spice/examples/snapshot/adder_snload.script
@@ -0,0 +1,15 @@
+* SCRIPT: ADDER - 4 BIT BINARY
+* script to reload circuit and continue the simulation
+* begin with editing the file location
+* to be started with 'ngspice adder_snload.script'
+
+.control
+* cd to where all files are located
+cd D:\Spice_general\ngspice\examples\snapshot
+* load circuit and snpashot file
+snload adder_mos_circ.cir adder500.snap
+* continue simulation
+resume
+* plot some node voltages
+plot v(10) v(11) v(12)
+.endc
diff --git a/Windows/spice/examples/transient-noise/README b/Windows/spice/examples/transient-noise/README
new file mode 100644
index 00000000..ce9d4105
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/README
@@ -0,0 +1,15 @@
+* noi-ring51-demo
+ring oszillator with one noisy inverter
+(requires 45min on a i7 860)
+
+* noi-sc-tr
+noise source sampled
+
+* noise_vnoi
+just a few 1/f and white noise sources
+
+* shot_ng
+emulation of shot noise in a diode
+
+* rts-1.cir
+random telegraph signals noise
diff --git a/Windows/spice/examples/transient-noise/modelcard.nmos b/Windows/spice/examples/transient-noise/modelcard.nmos
new file mode 100644
index 00000000..83ca9849
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/modelcard.nmos
@@ -0,0 +1,41 @@
+*model = bsim3v3
+*Berkeley Spice Compatibility
+* Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
+.model N1 NMOS
++Level= 8 version=3.3.0
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++ Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++ Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++ Wl = 0 Ww = -1.420242E-09 Wwl = 0
++ Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++ Lw = 0 Lwl = 0 Lln = .316394
++ Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
+
+
+
+
+
+
diff --git a/Windows/spice/examples/transient-noise/modelcard.pmos b/Windows/spice/examples/transient-noise/modelcard.pmos
new file mode 100644
index 00000000..f50fe0a6
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/modelcard.pmos
@@ -0,0 +1,31 @@
+.model P1 PMOS
++Level= 8 version=3.3.0
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++ Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++ Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
+
+
+
+
diff --git a/Windows/spice/examples/transient-noise/noi-ring51-demo.cir b/Windows/spice/examples/transient-noise/noi-ring51-demo.cir
new file mode 100644
index 00000000..8bc6f6ed
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/noi-ring51-demo.cir
@@ -0,0 +1,59 @@
+* 51 stage Ring-Osc. BSIM3, transient noise
+* will need 45 min on a i7 860 with 4 threads
+
+* closes the loop between inverters xinv1 and xinv5
+vin in out dc 0.5 pulse 0.5 0 0.1n 5n 1 1 1
+
+vdd dd 0 dc 0 pulse 0 2.2 0 1n 1 1 1
+
+vss ss 0 dc 0
+ve sub 0 dc 0
+
+vpe well 0 2.2
+
+* noisy inverters
+xiinv2 dd ss sub well out25 out50 inv253
+xiinv1 dd ss sub well in out25 inv253
+
+*very noisy inverter
+xiinv5 dd ss sub well out50 out inv1_2
+*output amplifier
+xiinv11 dd ss sub well out25 bufout inv1
+cout bufout ss 0.2pF
+
+.option itl1=500 gmin=1e-15 itl4=10 noacct
+
+* .dc vdd 0 2 0.01
+.tran 0.01n 500n
+
+.save in bufout v(t1)
+
+.include modelcard.nmos
+.include modelcard.pmos
+
+.include noilib-demo.h
+
+.control
+unset ngdebug
+* first run
+save bufout $ needed for restricting memory usage
+rusage
+tran 8p 10000n
+rusage
+plot bufout xlimit 90n 95n
+linearize
+fft bufout
+* next run
+reset
+save bufout
+alter @v.xiinv5.vn1[trnoise] = [ 0 0 0 0 ] $ no noise
+tran 8p 10000n
+rusage
+plot bufout xlimit 90n 95n
+linearize
+fft bufout
+plot mag(bufout) mag(sp2.bufout) xlimit 0 2G ylimit 1e-11 0.1 ylog
+.endc
+
+
+.end
diff --git a/Windows/spice/examples/transient-noise/noi-sc-tr.cir b/Windows/spice/examples/transient-noise/noi-sc-tr.cir
new file mode 100644
index 00000000..19c738b7
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/noi-sc-tr.cir
@@ -0,0 +1,53 @@
+* simple sample & hold, transient noise
+
+* switch control
+* PULSE(V1 V2 TD TR TF PW PER)
+vgate1 ga1 0 dc 0 pulse (0 1 0 10n 10n 90n 200n)
+
+Switch1 1 2 ga1 0 smodel1
+
+* noisy input
+* rms value white, time step, exponent < 2, rms value 1/f
+vin 1 0 dc 0 trnoise 0.1m 0.2n 1 0.1m
+*vin 1 0 dc 0 trnoise 0.1m 0.2n 0 0.1m
+
+* output
+c2 2 0 10p
+
+* second S&H
+vgate2 ga2 0 dc 0 pulse (0 1 140n 10n 10n 30n 200n)
+*Buffer EXXXXXXX N+ N- NC+ NC- VALUE
+e1 4 0 2 0 1
+Switch2 4 3 ga2 0 smodel2
+c3 3 0 10p
+
+.option itl1=500 gmin=1e-15 itl4=10 acct
+
+.model smodel1 sw vt=0.5 ron=100
+.model smodel2 sw vt=0.5 ron=100
+
+.tran 0.4n 100u
+
+
+.control
+unset ngdebug
+set filetype=ascii
+rusage
+run
+rusage all
+write noi_test.out v(1)
+plot v(2) v(3) xlimit 4u 5u
+plot v(ga1) v(ga2) xlimit 4u 5u
+linearize
+*rms v(1)
+fft v(3)
+plot mag(v(3)) loglog xlimit 1e4 1e8 ylimit 1e-10 1e-4
+setplot tran1
+linearize
+psd 101 v(3)
+plot mag(v(3)) xlimit 0 3e7 ylimit 0 10u
+
+.endc
+
+
+.end
diff --git a/Windows/spice/examples/transient-noise/noilib-demo.h b/Windows/spice/examples/transient-noise/noilib-demo.h
new file mode 100644
index 00000000..84e119d3
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/noilib-demo.h
@@ -0,0 +1,56 @@
+
+* standard inverter made noisy
+*.subckt inv1 dd ss sub well in out
+*vn1 out outi dc 0 noise 0.1 0.3n 1.0 0.1
+*mn1 outi in ss sub n1 w=2u l=0.25u AS=3p AD=3p PS=4u PD=4u
+*mp1 outi in dd well p1 w=4u l=0.25u AS=7p AD=7p PS=6u PD=6u
+*.ends inv1
+
+* standard inverter
+.subckt inv1 dd ss sub well in out
+mn1 out in ss sub n1 w=2u l=0.25u AS=3p AD=3p PS=4u PD=4u
+mp1 out in dd well p1 w=4u l=0.25u AS=7p AD=7p PS=6u PD=6u
+.ends inv1
+
+* very noisy inverter (noise on vdd and well)
+.subckt inv1_1 dd ss sub well in out
+vn1 dd idd dc 0 trnoise 0.05 0.05n 1 0.05
+vn2 well iwell dc 0 trnoise 0.05 0.05n 1 0.05
+mn1 out in ss sub n1 w=2u l=0.25u AS=3p AD=3p PS=4u PD=4u
+mp1 out in idd iwell p1 w=4u l=0.25u AS=7p AD=7p PS=6u PD=6u
+*Cout out 0 0.1p
+.ends inv1_1
+
+
+* another very noisy inverter
+.subckt inv1_2 dd ss sub well in out
+vn1 out outi dc 0 trnoise 0.05 8p 1.0 0.001
+mn1 outi in ss sub n1 w=2u l=0.25u AS=3p AD=3p PS=4u PD=4u
+mp1 outi in dd well p1 w=4u l=0.25u AS=7p AD=7p PS=6u PD=6u
+*Cout out 0 0.1p
+.ends inv1_2
+
+* another very noisy inverter with current souces parallel to transistor
+.subckt inv13 dd ss sub well in outi
+in1 ss outi dc 0 noise 200u 0.05n 1.0 50u
+mn1 outi in ss sub n1 w=2u l=0.25u AS=3p AD=3p PS=4u PD=4u
+in2 dd outi dc 0 noise 200u 0.05n 1.0 50u
+mp1 outi in dd well p1 w=4u l=0.25u AS=7p AD=7p PS=6u PD=6u
+*Cout out 0 0.1p
+.ends inv13
+
+.subckt inv53 dd ss sub well in out
+xinv1 dd ss sub well in 1 inv1
+xinv2 dd ss sub well 1 2 inv1
+xinv3 dd ss sub well 2 3 inv1
+xinv4 dd ss sub well 3 4 inv1
+xinv5 dd ss sub well 4 out inv1
+.ends inv53
+
+.subckt inv253 dd ss sub well in out
+xinv1 dd ss sub well in 1 inv53
+xinv2 dd ss sub well 1 2 inv53
+xinv3 dd ss sub well 2 3 inv53
+xinv4 dd ss sub well 3 4 inv53
+xinv5 dd ss sub well 4 out inv53
+.ends inv253
diff --git a/Windows/spice/examples/transient-noise/noise_vnoi.cir b/Windows/spice/examples/transient-noise/noise_vnoi.cir
new file mode 100644
index 00000000..a589d1a0
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/noise_vnoi.cir
@@ -0,0 +1,31 @@
+* Random noise test
+* internal noise source
+
+* one over f
+VNOI1 1 0 DC 0 TRNOISE(0n 1n 1.7 1n)
+VNOI2 2 0 DC 0 TRNOISE(0n 1n 1.4 1n)
+VNOI3 3 0 DC 0 TRNOISE(0n 1n 1.0 1n)
+VNOI4 4 0 DC 0 TRNOISE(0n 1n 0.5 1n)
+* white
+VNOI5 5 0 DC 0 TRNOISE(1n 1n 0 0)
+* both
+VNOI6 6 0 DC 0 TRNOISE(1n 1n 1 1n)
+
+* 250000 sample points
+.tran 1n 250u
+
+.control
+run
+plot v(1) v(2) v(3) v(4) v(5) v(6)
+plot v(1) v(2) v(3) v(4) v(5) v(6) xlimit 102.0u 102.01u ylimit -3n 3n
+linearize
+meas tran vavg5 AVG v(5) from=0 to=250u
+meas tran vpp5 PP v(5) from=0 to=250u
+meas tran vrms5 RMS v(5) from=0 to=250u
+fft v(1) v(2) v(3) v(4) v(5) v(6)
+plot mag(v(1)) mag(v(2)) mag(v(3)) mag(v(4)) mag(v(5)) loglog xlimit 1e3 1e9
+plot mag(v(6)) loglog xlimit 1e3 1e9
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/transient-noise/rts-1.cir b/Windows/spice/examples/transient-noise/rts-1.cir
new file mode 100644
index 00000000..f35256dc
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/rts-1.cir
@@ -0,0 +1,29 @@
+* white noise, 1/f noise, RTS noise
+
+* voltage source
+VRTS2 13 12 DC 0 trnoise(0 0 0 0 5m 18u 30u)
+VRTS3 11 0 DC 0 trnoise(0 0 0 0 10m 20u 40u)
+VALL 12 11 DC 0 trnoise(1m 1u 1.0 0.1m 15m 22u 50u)
+
+VW1of 21 0 DC trnoise(1m 1u 1.0 0.1m)
+
+* current source
+IRTS2 10 0 DC 0 trnoise(0 0 0 0 5m 18u 30u)
+IRTS3 10 0 DC 0 trnoise(0 0 0 0 10m 20u 40u)
+IALL 10 0 DC 0 trnoise(1m 1u 1.0 0.1m 15m 22u 50u)
+R10 10 0 1
+
+IW1of 9 0 DC trnoise(1m 1u 1.0 0.1m)
+Rall 9 0 1
+
+* 500000 sample points
+.tran 1u 500u
+
+.control
+run
+plot v(13) v(21)
+plot v(10) v(9)
+.endc
+
+.end
+
diff --git a/Windows/spice/examples/transient-noise/shot_ng.cir b/Windows/spice/examples/transient-noise/shot_ng.cir
new file mode 100644
index 00000000..ed06c81c
--- /dev/null
+++ b/Windows/spice/examples/transient-noise/shot_ng.cir
@@ -0,0 +1,27 @@
+* Shot noise test with B source, diode
+* voltage on device (diode, forward)
+Vdev out 0 DC 0 PULSE(0.4 0.45 10u)
+* diode, forward direction, to be modeled with noise
+D1 mess 0 DMOD
+.model DMOD D IS=1e-14 N=1
+X1 0 mess out ishot
+* device between 1 and 2
+* new output terminals of device including noise: 1 and 3
+.subckt ishot 1 2 3
+* white noise source with rms 1V
+VNG 0 11 DC 0 TRNOISE(1 1n 0 0)
+*measure the current i(v1)
+V1 2 3 DC 0
+* calculate the shot noise
+* sqrt(2*current*q*bandwidth)
+BI 1 3 I=sqrt(2*abs(i(v1))*1.6e-19*1e7)*v(11)
+.ends ishot
+* 20000 sample points
+.tran 1n 20u
+.control
+run
+plot (-1)*i(vdev)
+meas tran vdev_rms avg i(vdev) from=0u to=9.9u
+meas tran vdev_rms avg i(vdev) from=10.1u to=20u
+.endc
+.end
diff --git a/Windows/spice/examples/various/FFT_Leakage.cir b/Windows/spice/examples/various/FFT_Leakage.cir
new file mode 100644
index 00000000..b2bcfb7d
--- /dev/null
+++ b/Windows/spice/examples/various/FFT_Leakage.cir
@@ -0,0 +1,53 @@
+FFT_Leakage_tests http://www.idea2ic.com/
+*=========Create_Signal==================
+VTime VTime 0 DC 0 PWL( 0 0 1 1)
+Vfreq Vfreq 0 DC 5.5k
+BVAC IN 0 V = sin( 6.283185307179586*V(VFreq)*V(VTime))
+.control
+*TRAN TSTEP TSTOP TSTART TMAX ?UIC?
+tran 1u .999m 0 1u
+set pensize = 2
+linearize
+let numb2 = length(in)
+print numb2
+
+*=========Do_FFT_and_Plot_As_dB_Freq==================
+let ac = in +j(0)
+let ac_fft=fft(ac)
+let numb_f2 = (numb2)/2 -1
+compose freq start = 1 stop = $&numb_f2 step =1
+compose vreal start = 1 stop = $&numb_f2 step =1
+compose vimag start = 1 stop = $&numb_f2 step =1
+let j = 0
+repeat $&numb_f2
+let freq[j] = freq[j]
+let vreal[j] = 2*real(ac_fft[j+1])
+let vimag[j] = 2*imag(ac_fft[j+1])
+let j = j +1
+end
+plot dB(abs(vreal+1f)) dB(abs(vimag+1f)) vs freq xlog
+
+*=========Extract_Error_Signal=========================
+let funBin = 5k/1000
+let unvect = unitvec(numb2)
+let fundspec = unvect*0 +j(0)
+let fundspec[funBin] = real(ac_fft[funBin]) +j(imag(ac_fft[funBin] ))
+let fundspec[numb2-funBin] = real(ac_fft[numb2-funBin]) +j(imag(ac_fft[numb2-funBin] ))
+let fund = ifft(fundspec)
+let dc_ofset = real(ac_fft[0])
+let thdspec = ac_fft
+let thdspec[0] = 0 +j(0)
+let thdspec[funBin] = 0 +j(0)
+let thdspec[numb2-funBin] = 0 +j(0)
+let thd = ifft(thdspec)
+plot norm(in) norm(fund) norm(thd)/2
+
+*=========Calc_Values=========================
+let rms_Fund = sqrt(mean(fund*fund))
+let rms_THD = sqrt(mean(thd*thd))
+let THD_percent = 100*rms_THD/rms_Fund
+let FREQ_Hz = VFreq[0]
+echo "Freq_Hz=$&FREQ_Hz THD_percent=$&THD_percent Fund_rms=$&rms_Fund THD_rms=$&rms_THD "
+
+.endc
+.end
diff --git a/Windows/spice/examples/various/FFT_tests.cir b/Windows/spice/examples/various/FFT_tests.cir
new file mode 100644
index 00000000..e7ede5ec
--- /dev/null
+++ b/Windows/spice/examples/various/FFT_tests.cir
@@ -0,0 +1,123 @@
+FFT_tests http://www.idea2ic.com/
+.control
+set units=degrees
+let a = vector(16)
+*plot a vs a
+set pensize = 2
+*=========Need_a_complex_input====================
+let ac = a+j(0)
+print a ac
+*plot fft(a) vs a
+*plot real(fft(ac)) imag(fft(ac)) vs a
+* fft(a) fft(ac)
+
+*=========DC_Works====================
+let b = unitvec(16)
+let bc = b+j(0)
+*plot fft(b) vs a title DC_WORKS
+*print fft(b) fft(bc)
+
+*=========DC_Plus_cos_Remove_AC====================
+let numb = length(b)
+print numb
+
+let indx = 0
+repeat $&numb
+let ac[indx]= cos(indx*360/8)+1 +j(0)
+let indx = indx +1
+end
+
+let fftac=fft(ac)
+plot real(fftac) imag(fftac) vs a title DC_Plus_COS
+
+let fftac[2]=(0,0)
+let fftac[14]=(0,0)
+let ifftac = ifft(fftac)
+plot ifftac ac vs a title COS_REMOVED
+
+*=========DC_Plus_cos_Remove_DC====================
+let indx = 0
+repeat $&numb
+let ac[indx]= cos(indx*360/8)+1 +j(0)
+let indx = indx +1
+end
+
+let fftac=fft(ac)
+let fftac[0]=(0,0)
+let ifftac = ifft(fftac)
+plot ifftac ac vs a title COS_With_DC_REMOVED
+
+*=========DC_Plus_sin_Remove_AC====================
+let indx = 0
+repeat $&numb
+let ac[indx]= sin(indx*360/8)+1 +j(0)
+let indx = indx +1
+end
+
+let fftac=fft(ac)
+plot real(fftac) imag(fftac) vs a title DC_Plus_SIN
+
+let fftac[2]=(0,0)
+let fftac[14]=(0,0)
+let ifftac = ifft(fftac)
+plot ifft(fftac) ac vs a title SIN_REMOVED
+
+*=========DC_Plus_sin_Remove_DC====================
+let indx = 0
+repeat $&numb
+let ac[indx]= sin(indx*360/8)+1 +j(0)
+let indx = indx +1
+end
+
+let fftac=fft(ac)
+let fftac[0]=(0,0)
+let ifftac = ifft(fftac)
+plot ifft(fftac) ac vs a title SIN_With_DC_REMOVED
+
+*=========DC_Plus_cos_Nyqusit_Remove_DC====================
+let indx = 0
+repeat $&numb
+let ac[indx]= cos(indx*360/2)+1 +j(0)
+let indx = indx +1
+end
+
+plot ac vs a title Nyq_COS
+
+let fftac=fft(ac)
+plot real(fftac) imag(fftac) vs a title Nyq_FREQ_COS
+let fftac[0]=(0,0)
+let ifftac = ifft(fftac)
+plot ifft(fftac) ac vs a title COS_With_DC_REMOVED
+*=========DC_Plus_sin_Nyqusit_Remove_DC====================
+let indx = 0
+repeat $&numb
+let ac[indx]= sin(indx*360/2)+1 +j(0)
+let indx = indx +1
+end
+
+plot ac vs a title Nyq_SIN
+
+let fftac=fft(ac)
+plot real(fftac) imag(fftac) vs a title Nyq_FREQ_SIN
+let fftac[0]=(0,0)
+let ifftac = ifft(fftac)
+plot ifft(fftac) ac vs a title COS_With_DC_REMOVED
+
+*=========DC_Plus_COS_Remove_One_BIN====================
+let indx = 0
+repeat $&numb
+let ac[indx]= cos(indx*360/8)+1 +j(0)
+let indx = indx +1
+end
+
+let fftac=fft(ac)
+let fftac[2]=(0,0)
+plot real(fftac) imag(fftac) vs a title DC_Plus_Cos
+
+let ifftac = ifft(fftac)
+plot ifft(fftac) ac vs a title ONE_BIN_REMOVED
+
+plot real(ifft(fftac)) imag(ifft(fftac)) vs a title ONE_BIN_REMOVED
+
+.endc
+.end
diff --git a/Windows/spice/examples/various/adder_mos.cir b/Windows/spice/examples/various/adder_mos.cir
new file mode 100644
index 00000000..9b85e093
--- /dev/null
+++ b/Windows/spice/examples/various/adder_mos.cir
@@ -0,0 +1,79 @@
+ ADDER - 4 BIT ALL-NAND-GATE BINARY ADDER
+
+*** SUBCIRCUIT DEFINITIONS
+.SUBCKT NAND in1 in2 out VDD
+* NODES: INPUT(2), OUTPUT, VCC
+M1 out in2 Vdd Vdd p1 W=7.5u L=0.35u pd=13.5u ad=22.5p ps=13.5u as=22.5p
+M2 net.1 in2 0 0 n1 W=3u L=0.35u pd=9u ad=9p ps=9u as=9p
+M3 out in1 Vdd Vdd p1 W=7.5u L=0.35u pd=13.5u ad=22.5p ps=13.5u as=22.5p
+M4 out in1 net.1 0 n1 W=3u L=0.35u pd=9u ad=9p ps=9u as=9p
+.ENDS NAND
+
+.SUBCKT ONEBIT 1 2 3 4 5 6
+* NODES: INPUT(2), CARRY-IN, OUTPUT, CARRY-OUT, VCC
+X1 1 2 7 6 NAND
+X2 1 7 8 6 NAND
+X3 2 7 9 6 NAND
+X4 8 9 10 6 NAND
+X5 3 10 11 6 NAND
+X6 3 11 12 6 NAND
+X7 10 11 13 6 NAND
+X8 12 13 4 6 NAND
+X9 11 7 5 6 NAND
+.ENDS ONEBIT
+
+.SUBCKT TWOBIT 1 2 3 4 5 6 7 8 9
+* NODES: INPUT - BIT0(2) / BIT1(2), OUTPUT - BIT0 / BIT1,
+* CARRY-IN, CARRY-OUT, VCC
+X1 1 2 7 5 10 9 ONEBIT
+X2 3 4 10 6 8 9 ONEBIT
+.ENDS TWOBIT
+
+.SUBCKT FOURBIT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+* NODES: INPUT - BIT0(2) / BIT1(2) / BIT2(2) / BIT3(2),
+* OUTPUT - BIT0 / BIT1 / BIT2 / BIT3, CARRY-IN, CARRY-OUT, VCC
+X1 1 2 3 4 9 10 13 16 15 TWOBIT
+X2 5 6 7 8 11 12 16 14 15 TWOBIT
+.ENDS FOURBIT
+
+*** POWER
+VCC 99 0 DC 3.3V
+
+*** ALL INPUTS
+VIN1A 1 0 DC 0 PULSE(0 3 0 5NS 5NS 20NS 50NS)
+VIN1B 2 0 DC 0 PULSE(0 3 0 5NS 5NS 30NS 100NS)
+VIN2A 3 0 DC 0 PULSE(0 3 0 5NS 5NS 50NS 200NS)
+VIN2B 4 0 DC 0 PULSE(0 3 0 5NS 5NS 90NS 400NS)
+VIN3A 5 0 DC 0 PULSE(0 3 0 5NS 5NS 170NS 800NS)
+VIN3B 6 0 DC 0 PULSE(0 3 0 5NS 5NS 330NS 1600NS)
+VIN4A 7 0 DC 0 PULSE(0 3 0 5NS 5NS 650NS 3200NS)
+VIN4B 8 0 DC 0 PULSE(0 3 0 5NS 5NS 1290NS 6400NS)
+
+*** DEFINE NOMINAL CIRCUIT
+X1 1 2 3 4 5 6 7 8 9 10 11 12 0 13 99 FOURBIT
+
+.option noinit acct
+.TRAN 500p 6400NS
+* save inputs
+.save V(1) V(2) V(3) V(4) V(5) V(6) V(7) V(8)
+
+* use BSIM3 model with default parameters
+.model n1 nmos level=49 version=3.3.0
+.model p1 pmos level=49 version=3.3.0
+*.include ./Modelcards/modelcard32.nmos
+*.include ./Modelcards/modelcard32.pmos
+
+.control
+pre_set strict_errorhandling
+unset ngdebug
+*save outputs and specials
+save x1.x1.x1.7 V(9) V(10) V(11) V(12) V(13)
+run
+display
+* plot the inputs, use offset to plot on top of each other
+plot v(1) v(2)+4 v(3)+8 v(4)+12 v(5)+16 v(6)+20 v(7)+24 v(8)+28
+* plot the outputs, use offset to plot on top of each other
+plot v(9) v(10)+4 v(11)+8 v(12)+12 v(13)+16
+.endc
+
+.END
diff --git a/Windows/spice/examples/various/agauss_test.cir b/Windows/spice/examples/various/agauss_test.cir
new file mode 100644
index 00000000..c2532751
--- /dev/null
+++ b/Windows/spice/examples/various/agauss_test.cir
@@ -0,0 +1,48 @@
+* agauss test in ngspice
+* generate a sequence of gaussian distributed random numbers.
+* test the distribution by sorting the numbers into
+* a histogram (buckets)
+* chapt. 17.8.6
+.control
+ define agauss(nom, avar, sig) (nom + avar/sig * sgauss(0))
+ let mc_runs = 200
+ let run = 0
+ let no_buck = 8 $ number of buckets
+ let bucket = unitvec(no_buck) $ each element contains 1
+ let delta = 3e-11 $ width of each bucket, depends
+ $ on avar and sig
+ let lolimit = 1e-09 - 3*delta
+ let hilimit = 1e-09 + 3*delta
+
+ dowhile run < mc_runs
+ let val = agauss(1e-09, 1e-10, 3) $ get the random number
+ if (val < lolimit)
+ let bucket[0] = bucket[0] + 1 $ 'lowest' bucket
+ end
+ let part = 1
+ dowhile part < (no_buck - 1)
+ if ((val < (lolimit + part*delta)) &
++ (val > (lolimit + (part-1)*delta)))
+ let bucket[part] = bucket[part] + 1
+ break
+ end
+ let part = part + 1
+ end
+ if (val > hilimit)
+* 'highest' bucket
+ let bucket[no_buck - 1] = bucket[no_buck - 1] + 1
+ end
+ let run = run + 1
+ end
+
+ let part = 0
+ dowhile part < no_buck
+ let value = bucket[part] - 1
+ set value = "$&value"
+* print the buckets' contents
+ echo $value
+ let part = part + 1
+ end
+
+.endc
+.end
diff --git a/Windows/spice/examples/various/gain_stage.cir b/Windows/spice/examples/various/gain_stage.cir
new file mode 100644
index 00000000..adc22bfb
--- /dev/null
+++ b/Windows/spice/examples/various/gain_stage.cir
@@ -0,0 +1,34 @@
+** MOSFET Gain Stage (AC): Benchmarking Implementation of BSIM4.0.0
+** by Weidong Liu 5/16/2000.
+** output redirection into file
+** chapter 17.8.8
+
+M1 3 2 0 0 N1 L=1u W=4u
+Rsource 1 2 100k
+Rload 3 vdd 25k
+Vdd vdd 0 1.8
+Vin 1 0 1.2 ac 0.1
+
+.control
+ac dec 10 100 1000Meg
+plot v(2) v(3)
+let flen = length(frequency) $ length of the vector
+let loopcounter = 0
+echo output test > text.txt $ start new file test.txt
+* loop
+while loopcounter lt flen
+ let vout2 = v(2)[loopcounter] $ generate a single point complex vector
+ let vout2re = real(vout2) $ generate a single point real vector
+ let vout2im = imag(vout2) $ generate a single point imaginary vector
+ let vout3 = v(3)[loopcounter] $ generate a single point complex vector
+ let vout3re = real(vout3) $ generate a single point real vector
+ let vout3im = imag(vout3) $ generate a single point imaginary vector
+ let freq = frequency[loopcounter] $ generate a single point vector
+ echo bbb "$&freq" "$&vout2re" "$&vout2im" "$&vout3re" "$&vout3im" >>
++text.txt $ append text and data to file (continued fromm line above)
+ let loopcounter = loopcounter + 1
+end
+.endc
+
+.MODEL N1 NMOS LEVEL=14 VERSION=4.3.0 TNOM=27
+.end
diff --git a/Windows/spice/examples/various/modelcard.nmos b/Windows/spice/examples/various/modelcard.nmos
new file mode 100644
index 00000000..9a9bd56c
--- /dev/null
+++ b/Windows/spice/examples/various/modelcard.nmos
@@ -0,0 +1,34 @@
+.model N1 NMOS
++Level= 8 version=3.3.0
++Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++Wl = 0 Ww = -1.420242E-09 Wwl = 0
++Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++Lw = 0 Lwl = 0 Lln = .316394
++Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
++vgs_max=4 vds_max=4 vbs_max=4
diff --git a/Windows/spice/examples/various/modelcard.pmos b/Windows/spice/examples/various/modelcard.pmos
new file mode 100644
index 00000000..1f67f274
--- /dev/null
+++ b/Windows/spice/examples/various/modelcard.pmos
@@ -0,0 +1,29 @@
+.model P1 PMOS
++Level= 8 version=3.3.0
++Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
++vgs_max=4 vds_max=4 vbs_max=4
diff --git a/Windows/spice/examples/various/nic_soa.cir b/Windows/spice/examples/various/nic_soa.cir
new file mode 100644
index 00000000..5752d99d
--- /dev/null
+++ b/Windows/spice/examples/various/nic_soa.cir
@@ -0,0 +1,39 @@
+CMOS NIC
+*
+.subckt osc_cmos ib_osz lc ra vdd vss
+m16 ib_osz ib_osz vss vss n1 w=20u l=1u m=8
+m15 ra ib_osz vss vss n1 w=20u l=1u m=2
+m8 net99 net95 ra ra n1 w=20u l=1u m=2
+m1 net95 net95 net93 net93 n1 w=20u l=1u m=2
+m25 net99 net99 vdd vdd p1 w=3.3u l=0.5u m=1
+m5 net99 net99 vdd vdd p1 w=20u l=1u m=5
+m4 net95 net99 vdd vdd p1 w=20u l=1u m=5
+r23 net99 vss r=38K
+r18 net93 lc r=10
+.ends osc_cmos
+*
+.subckt psens LC
+R1 LC P001 40K
+L1 LC P002 14.9u
+R2 P002 0 0.55
+L2 P001 0 1.4m
+.ends psens
+*
+xi36 bias lc ra vdd 0 osc_cmos
+v39 vdd 0 dc=3.5 pulse ( 0 3.5 10u 10n 10n 1 2 )
+r4 ra 0 3.972K
+c23 lc 0 1.8n
+i37 vdd bias dc=1u
+*
+xi18 lc psens
+*
+.option warn=1
+.control
+tran 1u 1m 0 50n
+plot v(LC)
+.endc
+*
+.include modelcard.nmos
+.include modelcard.pmos
+*
+.end
diff --git a/Windows/spice/examples/various/param_sweep.cir b/Windows/spice/examples/various/param_sweep.cir
new file mode 100644
index 00000000..79d5869e
--- /dev/null
+++ b/Windows/spice/examples/various/param_sweep.cir
@@ -0,0 +1,29 @@
+parameter sweep
+* resistive divider, R1 swept from start_r to stop_r
+* replaces .STEP R1 1k 10k 1k
+* chapter 16.13.4.2
+
+R1 1 2 1k
+R2 2 0 1k
+
+VDD 1 0 DC 1
+.dc VDD 0 1 .1
+
+.control
+let start_r = 1k
+let stop_r = 10k
+let delta_r = 1k
+let r_act = start_r
+* loop
+while r_act le stop_r
+ alter r1 r_act
+ run
+ write dc-sweep.out v(2)
+ set appendwrite
+ let r_act = r_act + delta_r
+end
+plot dc1.v(2) dc2.v(2) dc3.v(2) dc4.v(2) dc5.v(2)
++ dc6.v(2) dc7.v(2) dc8.v(2) dc9.v(2) dc10.v(2)
+.endc
+
+.end
diff --git a/Windows/spice/examples/xspice/analog_models1_transient.sp b/Windows/spice/examples/xspice/analog_models1_transient.sp
new file mode 100644
index 00000000..a74bd6ca
--- /dev/null
+++ b/Windows/spice/examples/xspice/analog_models1_transient.sp
@@ -0,0 +1,65 @@
+Code Model Test - Transient: gain, summer, mult, divide, pwl
+*
+*
+*** analysis type ***
+.control
+tran .1s 10s
+plot v(1) v(10) v(20) v(30) v(40) v(50)
+.endc
+*
+*** input sources ***
+*
+v1 1 0 DC PWL(0 0 10 10)
+*
+v2 2 0 DC 2
+*
+*** gain block ***
+a1 1 10 gain1
+.model gain1 gain (in_offset=0.0 gain=2.0 out_offset=0.0)
+*
+*
+*** summer block ***
+a2 [1 2] 20 summer1
+.model summer1 summer (in_offset=[0.0 0.0] in_gain=[1.0 1.0]
++ out_gain=1.0 out_offset=0.0)
+*
+*
+*** mult block ***
+a3 [1 1] 30 mult1
+.model mult1 mult (in_offset=[0.0 0.0] in_gain=[1.0 1.0]
++ out_gain=0.1 out_offset=0.0)
+*
+*
+*** divider block ***
+a4 2 1 40 divide1
+.model divide1 divide (num_offset=0.0 num_gain=1.0 den_offset=0.0 den_gain=1.0
++ den_lower_limit=0.1 den_domain=1.0e-16
++ fraction=false out_gain=1.0 out_offset=0.0)
+*
+*
+*** pwl block ***
+a5 1 50 pwl1
+.model pwl1 pwl (x_array=[-1.0 0.0 1.0 2.0 3.0 4.0 5.0]
++ y_array=[ 0.0 0.0 1.0 4.0 4.5 5.0 5.0]
++ input_domain=0.01 fraction=TRUE)
+*
+*
+*** resistors to ground ***
+r1 1 0 1k
+r2 2 0 1k
+r3 3 0 1k
+*
+r10 10 0 1k
+r20 20 0 1k
+r30 30 0 1k
+r40 40 0 1k
+r50 50 0 1k
+*
+*
+.end
+
+
+
+
+
+
diff --git a/Windows/spice/examples/xspice/delta-sigma/README b/Windows/spice/examples/xspice/delta-sigma/README
new file mode 100644
index 00000000..3ce6ce63
--- /dev/null
+++ b/Windows/spice/examples/xspice/delta-sigma/README
@@ -0,0 +1,25 @@
+A simple delta sigma converter using XSPICE
+according to
+Schreier, Temes: Understanding Delta-Sigma Data Converters, 2005
+Fig. 2.13, p. 31; Fig. 2.27, p.58
+
+
+delta-sigma-1.cir
+converter complete, tested against sine input
+
+mod1-ct.cir
+first order modulator
+consists of analog continuous time integrator and
+digitally latched comparator
+
+count-latch-dac.cir
+contains subcircuits of
+10 bit digital latch
+10 bit counter, non-revolving, saturating
+simple 10 bit DAC with analog B source
+
+mod1-ct-test.cir
+test of modulator with sine input, shows noise shaping 20dB/decade
+
+counter-test.cir
+simple test with reset
diff --git a/Windows/spice/examples/xspice/delta-sigma/count-latch-dac.cir b/Windows/spice/examples/xspice/delta-sigma/count-latch-dac.cir
new file mode 100644
index 00000000..7a8c7d90
--- /dev/null
+++ b/Windows/spice/examples/xspice/delta-sigma/count-latch-dac.cir
@@ -0,0 +1,81 @@
+* counter, latch DAC
+
+* 10 bit synchronous digital counter
+* inhibit at overflow, no revolving
+.subckt count10 din dinb dclk drs dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10
+
+* j k clk set reset out nout
+ajk1 din dinb diclk ds1 drs dout1 dnout1 jkflop
+ajk2 dout1 dout1 diclk ds2 drs dout2 dnout2 jkflop
+ajk3 djk3 djk3 diclk ds3 drs dout3 dnout3 jkflop
+ajk4 djk4 djk4 diclk ds4 drs dout4 dnout4 jkflop
+ajk5 djk5 djk5 diclk ds1 drs dout5 dnout5 jkflop
+ajk6 djk6 djk6 diclk ds2 drs dout6 dnout6 jkflop
+ajk7 djk7 djk7 diclk ds3 drs dout7 dnout8 jkflop
+ajk8 djk8 djk8 diclk ds4 drs dout8 dnout8 jkflop
+ajk9 djk9 djk9 diclk ds3 drs dout9 dnout9 jkflop
+ajk10 djk10 djk10 diclk ds4 drs dout10 dnout10 jkflop
+
+aand1 [dout1 dout2] djk3 and1
+aand2 [dout1 dout2 dout3] djk4 and1
+aand3 [dout1 dout2 dout3 dout4] djk5 and1
+aand4 [dout1 dout2 dout3 dout4 dout5] djk6 and1
+aand5 [dout1 dout2 dout3 dout4 dout5 dout6] djk7 and1
+aand6 [dout1 dout2 dout3 dout4 dout5 dout6 dout7] djk8 and1
+aand7 [dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8] djk9 and1
+aand8 [dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9] djk10 and1
+
+* inhibit revolving of counter, just let it saturate
+* (footnote p. 57)
+aand_all [dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10] dinhibit nand1
+aandclk [dclk dinhibit] diclk and1
+
+
+.model nand1 d_nand(rise_delay = 1e-9 fall_delay = 1e-9
++ input_load = 0.5e-12)
+
+.model and1 d_and(rise_delay = 1e-9 fall_delay = 1e-9
++ input_load = 0.5e-12)
+
+.model jkflop d_jkff(clk_delay = 1.0e-9 set_delay = 1e-9
++ reset_delay = 1e-9 ic = 0 rise_delay = 1.0e-9
++ fall_delay = 1e-9)
+
+.ends count 10
+
+** 10 bit edge triggered latch
+.subckt latch10 din1 din2 din3 din4 din5 din6 din7 din8 din9 din10
++ dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10 dclk
+
+*data clk set reset out nout
+aff1 din1 dclk dzero dzero dout1 dnout1 flop1
+aff2 din2 dclk dzero dzero dout2 dnout2 flop1
+aff3 din3 dclk dzero dzero dout3 dnout3 flop1
+aff4 din4 dclk dzero dzero dout4 dnout4 flop1
+aff5 din5 dclk dzero dzero dout5 dnout5 flop1
+aff6 din6 dclk dzero dzero dout6 dnout6 flop1
+aff7 din7 dclk dzero dzero dout7 dnout7 flop1
+aff8 din8 dclk dzero dzero dout8 dnout8 flop1
+aff9 din9 dclk dzero dzero dout9 dnout9 flop1
+aff10 din10 dclk dzero dzero dout10 dnout10 flop1
+
+.model flop1 d_dff(clk_delay = 1e-9 set_delay = 0
++ reset_delay = 0 ic = 0 rise_delay = 1e-9
++ fall_delay = 1e-9)
+
+.ends latch10
+
+** emulation of 10 bit DAC
+.subckt dac10 din1 din2 din3 din4 din5 din6 din7 din8 din9 din10 aout
+.param vref=1
+abridge1 [din1 din2 din3 din4 din5 din6 din7 din8 din9 din10]
++ [ain1 ain2 ain3 ain4 ain5 ain6 ain7 ain8 ain9 ain10] dac1
+BVout aout 0 V = 'vref'*(v(ain10)/2 + v(ain9)/4 + v(ain8)/8 + v(ain7)/16 + v(ain6)/32 +
++ v(ain5)/64 + v(ain4)/128 + v(ain3)/256 + v(ain2)/512 + v(ain1)/1024)
+
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-9
++ t_fall = 1e-9)
+
+.ends dac10
+
diff --git a/Windows/spice/examples/xspice/delta-sigma/counter-test.cir b/Windows/spice/examples/xspice/delta-sigma/counter-test.cir
new file mode 100644
index 00000000..8bf2baf6
--- /dev/null
+++ b/Windows/spice/examples/xspice/delta-sigma/counter-test.cir
@@ -0,0 +1,42 @@
+* 10 bit synchronous digital counter
+* inhibit at overflow, no revolving
+* according to Schreier, Temes: Understanding Delta-Sigma Data Converters, 2005
+* Fig. 2.27, p. 58
+
+* clock generation
+* PULSE(V1 V2 TD TR TF PW PER)
+vclk aclk 0 dc 0 pulse(0 1 1u 2n 2n 1u 2u)
+
+* reset generation
+* single pulse, actual value stored in latch and read by DAC
+vres ars 0 dc 0 pulse(0 1 1.1m 2n 2n 1u 2.2m)
+
+vone aone 0 dc 1
+vzero azero 0 dc 0
+
+* digital one
+* digital zero
+abridge1 [aone azero] [done dzero] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+* digital clock
+* digital reset
+abridge2 [aclk ars] [dclk dreset] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+XCounter done done dclk dreset dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10 count10
+Xlatch dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10
++ dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 dreset
++ latch10
+Xdac dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 adacout dac10
+
+.include count-latch-dac.cir
+
+.control
+tran 1u 2.5m
+eprint dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10 > digi4b.txt
+eprint dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 >> digi4b.txt
+plot adacout
+.endc
+
+.end
diff --git a/Windows/spice/examples/xspice/delta-sigma/delta-sigma-1.cir b/Windows/spice/examples/xspice/delta-sigma/delta-sigma-1.cir
new file mode 100644
index 00000000..08322260
--- /dev/null
+++ b/Windows/spice/examples/xspice/delta-sigma/delta-sigma-1.cir
@@ -0,0 +1,106 @@
+* delta sigma A/D converter 9 bit
+* first-order continuous time delta sigma modulator
+* sinc filter with counter
+* according to Schreier, Temes: Understanding Delta-Sigma Data Converters, 2005
+* Fig. 2.13, p. 31; Fig. 2.27, p.58
+
+** sine input signal parameters
+.param infreq=500 inampl=0.5
+** clock
+.param clkfreq=5Meg
+** simulation time
+.param simtime = 2m
+.csparam simtime = 'simtime'
+** sample clock cycles
+.param samples=500
+
+.global dzero done
+
+** input signal
+* SIN(VO VA FREQ TD THETA)
+vin inp inm dc 0 sin(0 'inampl' 'infreq' 0 0)
+* steps from -0.5 to 0.4
+*vin inp inm dc 0 pwl(0 -0.5 0.2m -0.5 0.201m -0.4 0.4m -0.4 0.401m -0.3 0.6m -0.3
+*+ 0.601m -0.2 0.8m -0.2 0.801m -0.1 1.0m -0.1 1.001m 0.0 1.2m 0.0 1.201m 0.1 1.4m 0.1
+*+ 1.401m 0.2 1.6m 0.2 1.601m 0.3 1.8m 0.3 1.801m 0.4 2m 0.4)
+
+** clock and constant logic levels
+* PULSE(V1 V2 TD TR TF PW PER)
+vclk aclk 0 dc 0 pulse(0 1 0.1u 2n 2n '1/clkfreq/2' '1/clkfreq')
+
+* digital one
+* digital zero
+vone aone 0 dc 1
+vzero azero 0 dc 0
+abridge1 [aone azero] [done dzero] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+* digital clock
+abridge2 [aclk] [dclk] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+****** delta-sigma converter****************************************************************
+* modulator
+* inp inm: analog in + -
+* dclk digital clock in
+* dv, dvb: modulator non-inverting/inverting out
+Xmod inp inm dclk dv dvb mod1
+* sinc filter, decimator
+* dlout1 ..dlout10: converter 10 bit digital out
+xsinc dv dvb dclk dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 sinc1
+********************************************************************************************
+
+** DACs for measuring and plotting
+* converter output
+Xdac_latch dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 adaclout dac10
+* counter inside of sinc filter
+Xdac_counter xsinc.dout1 xsinc.dout2 xsinc.dout3 xsinc.dout4 xsinc.dout5
++ xsinc.dout6 xsinc.dout7 xsinc.dout8 xsinc.dout9 xsinc.dout10 adaccout dac10
+
+* load modulator mod1 subcircuit
+.include mod1-ct.cir
+
+* load counter, d-latch and 10 bit DAC
+.include count-latch-dac.cir
+
+** sinc filter 1st order subcircuit
+.subckt sinc1 din dinb dclk dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10
+XCounter din dinb dclk ddivndel2 dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10 count10
+Xlatch dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10
++ dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 ddivndel1
++ latch10
+
+* digital divider dclk/samples
+adivn dclk ddivn divider
+.model divider d_fdiv(div_factor = 'samples' high_cycles = 1
++ i_count = 0 rise_delay = 1e-9 fall_delay = 1e-9)
+
+* clock delays
+adelay ddivn ddivndel1 buff1 ; set latch
+adelay2 ddivndel1 ddivndel2 buff1 ; reset counter
+.model buff1 d_buffer(rise_delay = '1/clkfreq/8' fall_delay = '1/clkfreq/8'
++ input_load = 0.5e-12)
+
+.ends sinc1
+
+** for plotting
+abridge22 [dclk xsinc.ddivndel1 xsinc.ddivndel2 dv] [acclk acset acres acin] dac1
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-9
++ t_fall = 1e-9)
+
+
+.control
+save inp inm adaclout adaccout ; save memory space
+tran 0.1u $&simtime
+* analog out, scaled 'manually'; sinc filter counter; analog differential in
+plot 4.1*(adaclout-0.486) adaccout v(inp)-v(inm) ylimit -0.6 0.6
+* modulator dig out
+* eprint dv > digi1.txt
+*
+*eprint dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10
+*+ xsinc.dout1 xsinc.dout2 xsinc.dout3 xsinc.dout4 xsinc.dout5
+*+ xsinc.dout6 xsinc.dout7 xsinc.dout8 xsinc.dout9 xsinc.dout10 > digi4b.txt
+.endc
+
+.end
diff --git a/Windows/spice/examples/xspice/delta-sigma/delta-sigma-oc.cir b/Windows/spice/examples/xspice/delta-sigma/delta-sigma-oc.cir
new file mode 100644
index 00000000..a0418197
--- /dev/null
+++ b/Windows/spice/examples/xspice/delta-sigma/delta-sigma-oc.cir
@@ -0,0 +1,95 @@
+* delta sigma A/D converter 9 bit
+* first-order continuous time delta sigma modulator
+* sinc filter with counter
+* according to Schreier, Temes: Understanding Delta-Sigma Data Converters, 2005
+* Fig. 2.13, p. 31; Fig. 2.27, p.58
+
+** sine input signal parameters
+.param infreq=500 inampl=0.5
+** clock
+.param clkfreq=5Meg
+** simulation time
+.param simtime = 2m
+.csparam simtime = 'simtime'
+** sample clock cycles
+.param samples=500
+
+.global dzero done
+
+** input signal
+* SIN(VO VA FREQ TD THETA)
+vin inp inm dc 0 sin(0 'inampl' 'infreq' 0 0)
+* steps from -0.5 to 0.4
+*vin inp inm dc 0 pwl(0 -0.5 0.2m -0.5 0.201m -0.4 0.4m -0.4 0.401m -0.3 0.6m -0.3
+*+ 0.601m -0.2 0.8m -0.2 0.801m -0.1 1.0m -0.1 1.001m 0.0 1.2m 0.0 1.201m 0.1 1.4m 0.1
+*+ 1.401m 0.2 1.6m 0.2 1.601m 0.3 1.8m 0.3 1.801m 0.4 2m 0.4)
+
+** clock and constant logic levels
+* PULSE(V1 V2 TD TR TF PW PER)
+vclk aclk 0 dc 0 pulse(0 1 0.1u 2n 2n '1/clkfreq/2' '1/clkfreq')
+
+* digital one
+* digital zero
+vone aone 0 dc 1
+vzero azero 0 dc 0
+abridge1 [aone azero] [done dzero] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+* digital clock
+abridge2 [aclk] [dclk] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+****** delta-sigma converter****************************************************************
+* modulator
+* inp inm: analog in + -
+* dclk digital clock in
+* dv, dvb: modulator non-inverting/inverting out
+Xmod inp inm dclk dv dvb mod1
+* sinc filter, decimator
+* dlout1 ..dlout10: converter 10 bit digital out
+xsinc dv dvb dclk dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 sinc1
+********************************************************************************************
+
+** DACs for measuring and plotting
+* converter output
+Xdac_latch dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 adaclout dac10
+* counter inside of sinc filter
+Xdac_counter xsinc.dout1 xsinc.dout2 xsinc.dout3 xsinc.dout4 xsinc.dout5
++ xsinc.dout6 xsinc.dout7 xsinc.dout8 xsinc.dout9 xsinc.dout10 adaccout dac10
+
+* load modulator mod1 subcircuit
+.include mod1-ct.cir
+
+* load counter, d-latch and 10 bit DAC
+.include count-latch-dac.cir
+
+** sinc filter 1st order subcircuit
+.subckt sinc1 din dinb dclk dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10
+XCounter din dinb dclk ddivndel2 dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10 count10
+Xlatch dout1 dout2 dout3 dout4 dout5 dout6 dout7 dout8 dout9 dout10
++ dlout1 dlout2 dlout3 dlout4 dlout5 dlout6 dlout7 dlout8 dlout9 dlout10 ddivndel1
++ latch10
+
+* digital divider dclk/samples
+adivn dclk ddivn divider
+.model divider d_fdiv(div_factor = 'samples' high_cycles = 1
++ i_count = 0 rise_delay = 1e-9 fall_delay = 1e-9)
+
+* clock delays
+adelay ddivn ddivndel1 buff1 ; set latch
+adelay2 ddivndel1 ddivndel2 buff1 ; reset counter
+.model buff1 d_buffer(rise_delay = '1/clkfreq/8' fall_delay = '1/clkfreq/8'
++ input_load = 0.5e-12)
+
+.ends sinc1
+
+** for plotting
+abridge22 [dclk xsinc.ddivndel1 xsinc.ddivndel2 dv] [acclk acset acres acin] dac1
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-9
++ t_fall = 1e-9)
+
+.save inp inm adaclout adaccout ; save memory space
+.tran 0.1u 2m
+
+.end
diff --git a/Windows/spice/examples/xspice/delta-sigma/mod1-ct-test.cir b/Windows/spice/examples/xspice/delta-sigma/mod1-ct-test.cir
new file mode 100644
index 00000000..7ce7b0d3
--- /dev/null
+++ b/Windows/spice/examples/xspice/delta-sigma/mod1-ct-test.cir
@@ -0,0 +1,52 @@
+* first-order delta sigma modulator
+* continuous time
+* according to Schreier, Temes: Understanding Delta-Sigma Data Converters, 2005
+* Fig. 2.13, p. 31
+
+** signal
+.param infreq=13k inampl=0.3
+** clock
+.param clkfreq=5Meg
+** simulation time
+.param simtime = 5m
+.csparam simtime = 'simtime'
+
+** input signal
+*SIN(VO VA FREQ TD THETA)
+vin in+ in- dc 0 sin(0 'inampl' 'infreq' 0 0)
+
+* clock generation
+* PULSE(V1 V2 TD TR TF PW PER)
+vclk aclk 0 dc 0 pulse(0 1 0.1u 2n 2n '1/clkfreq/2' '1/clkfreq')
+
+* digital one
+* digital zero
+vone aone 0 dc 1
+vzero azero 0 dc 0
+abridge1 [aone azero] [done dzero] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+* digital clock
+abridge2 [aclk] [dclk] adc_buff
+.model adc_buff adc_bridge(in_low = 0.5 in_high = 0.5)
+
+Xmod in+ in- dclk dv dvb mod1
+
+* load mod1 subcircuit
+.include mod1-ct.cir
+
+.control
+save xmod.adffq in+ in- xmod.outintp xmod.outintn
+tran 0.01u $&simtime
+* digit density vs input
+plot xmod.adffq "v(in+) - v(in-)" xlimit 0.1m 0.2m
+* modulator integrator out, digital out
+plot xmod.outintp-xmod.outintn xmod.adffq xlimit 0.140m 0.148m
+*eprint dv dclk > digi1.txt
+linearize xmod.adffq
+fft xmod.adffq
+* noise shaping 20dB/decade
+plot db(xmod.adffq) xlimit 10k 1Meg xlog ylimit -20 -120
+.endc
+
+.end
diff --git a/Windows/spice/examples/xspice/delta-sigma/mod1-ct.cir b/Windows/spice/examples/xspice/delta-sigma/mod1-ct.cir
new file mode 100644
index 00000000..bf3129b7
--- /dev/null
+++ b/Windows/spice/examples/xspice/delta-sigma/mod1-ct.cir
@@ -0,0 +1,46 @@
+* delta sigma modulator
+* first order, continuous time
+
+.subckt mod1 ainp ainn dclk ddffq ddffqb
+* integrator and summer
+Ri1 ainn inintn 500
+Rf1 adffq inintn 500
+Cint1 outintp inintn 1n
+.IC v(outintp) = 0 v(inintp) = 0
+*
+Rshunt1 outintp 0 100Meg
+Rshunt2 initn 0 100Meg
+*
+Ri2 ainp inintp 500
+Rf2 adffqb inintp 500
+Cint2 outintn inintp 1n
+.IC v(outintn) = 0 v(inintn) = 0
+*
+Rshunt3 outintn 0 100Meg
+Rshunt4 inintp 0 100Meg
+*
+aint %vd(inintp inintn) %vd(outintp outintn) amp
+.model amp gain ( in_offset =0.0 gain =100000
++ out_offset = 0)
+
+* latched comparator (code model or B source, analog in, digital out)
+*acomp %vd(outintp outintn) acompout limit5
+*.model limit5 limit(in_offset=0 gain=100000 out_lower_limit=-1.0
+*+ out_upper_limit=1.0 limit_range=0.10 fraction=FALSE)
+*
+BComp acompout 0 V = (V(outintp) - V(outintn)) >= 0 ? 1 : -1
+*
+abridge2 [acompout] [dcompout] adc_buff
+.model adc_buff adc_bridge(in_low = 0 in_high = 0)
+*
+* D flip flop: data clk set reset out nout
+adff1 dcompout dclk ds drs ddffq ddffqb flop2
+.model flop2 d_dff(clk_delay = 1e-9 set_delay = 1.0e-9
++ reset_delay = 1.0e-9 ic = 0 rise_delay = 1.0e-9
++ fall_delay = 1e-9)
+
+abridge1 [ddffq ddffqb dclk] [adffq adffqb aclk] dac1
+.model dac1 dac_bridge(out_low = -1 out_high = 1 out_undef = 0
++ input_load = 5.0e-12
+
+.ends mod1
diff --git a/Windows/spice/examples/xspice/fstest.sp b/Windows/spice/examples/xspice/fstest.sp
new file mode 100644
index 00000000..f0f552a8
--- /dev/null
+++ b/Windows/spice/examples/xspice/fstest.sp
@@ -0,0 +1,26 @@
+* filesource Test
+
+* two differential ports 1 0 and 3 0 are used, so your input file
+* has to have three columns (time, port_value 1, portvalue 2)
+
+AFILESRC %vd([1 0 3 0]) filesrc
+.model filesrc filesource (file="sine.m" amploffset=[0 0] amplscale=[1 1] timerelative=false amplstep=false)
+
+V2 2 0 0.0 SIN(0 1 1MEG 0 0 0.0)
+V4 4 0 0.0 SIN(0 1 1MEG 0 0 90.0)
+
+.tran 1n 1.0u
+
+.control
+run
+*listing param
+wrdata vspice V(1) V(2) V(3) V(4)
+
+
+plot V(1) V(2) V(3) V(4)
+
+* error between interpolation and sine source
+* should be less than 1mV up to 1us
+plot V(1,2) V(3,4)
+.endc
+.end
diff --git a/Windows/spice/examples/xspice/pll/README b/Windows/spice/examples/xspice/pll/README
new file mode 100644
index 00000000..f5c38b39
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/README
@@ -0,0 +1,39 @@
+This directory contains a mixed mode pll, combining
+ngspice and XSPICE circuit blocks.
+The pll consists of the following blocks:
+
+** voltage controlled oscillator:
+vco_sub.cir
+ 7 stage ring oscillator with gain cells, CMOS devices
+or
+vco_sub_new.cir
+ vco made from code model d_osc, cntl_array/freq_array data
+ are gained by running test-vco.cir with vco_sub.cir
+
+** digital divider and frequency reference:
+pll-xspice.cir
+
+** phase frequency detector:
+f-p-det-d-sub.cir
+
+** loop filter:
+loop-filter.cir
+ switched current sources as charge pump, 2nd order
+ passive RC filter
+or
+loop-filter-2.cir
+ transistors as switches for charge pump, 2nd or 3rd
+ order passive RC filters
+
+** main simulation control:
+pll-xspice.cir
+
+Two test files are included:
+test-vco.cir simulates vco frequency versus control voltage
+test-f-p-det.cir simulates the phase frequency detector and the loop filter.
+
+The main building blocks are organised as subcircuits.
+
+main simulation control with three reference frequencies:
+pll-xspice-fstep.cir
+ simulates two steps of the reference in one simulation run
diff --git a/Windows/spice/examples/xspice/pll/f-p-det-d-sub.cir b/Windows/spice/examples/xspice/pll/f-p-det-d-sub.cir
new file mode 100644
index 00000000..cdd5af9e
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/f-p-det-d-sub.cir
@@ -0,0 +1,16 @@
+* frequency-phase detector according to
+* http://www.uwe-kerwien.de/pll/pll-phasenvergleich.htm
+
+.subckt f-p-det d_R d_V d_U d_U_ d_D d_D_
+
+aa1 [d_U d_D] d_rset and1
+.model and1 d_and(rise_delay = 1e-10 fall_delay = 0.1e-9
++ input_load = 0.5e-12)
+
+ad1 d_d1 d_R d_d0 d_rset d_U d_U_ flop1
+ad2 d_d1 d_V d_d0 d_rset d_D d_D_ flop1
+.model flop1 d_dff(clk_delay = 1.0e-10 set_delay = 1.0e-10
++ reset_delay = 1.0e-10 ic = 2 rise_delay = 1.0e-10
++ fall_delay = 1e-10)
+
+.ends f-p-det
diff --git a/Windows/spice/examples/xspice/pll/loop-filter-2.cir b/Windows/spice/examples/xspice/pll/loop-filter-2.cir
new file mode 100644
index 00000000..3d093167
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/loop-filter-2.cir
@@ -0,0 +1,50 @@
+* loop filter for pll
+* in: d_up d_down digital data
+* out: vout, vco control voltage
+* using transistors to switch current
+* according to http://www.uwe-kerwien.de/pll/pll-schleifenfilter.htm
+* digital input d_Un d_D
+* anlog output vout
+
+
+.subckt loopf d_Un d_D vout
+
+.param initcond=2.5
+
+vdd dd 0 dc 'vcc'
+vss ss 0 dc 0
+
+* "driver" circuit, digital in, analog out
+abridge-f1 [d_Un d_D] [u1n d1] dac1
+.model dac1 dac_bridge(out_low = 0 out_high = 'vcc' out_undef = 'vcc/2'
++ input_load = 5.0e-12 t_rise = 1e-10
++ t_fall = 1e-10)
+
+* uses BSIM3 model parameters from pll-xspice_2.cir
+* transistors as switches
+mnd dra d1 ss ss n1 w=12u l=0.35u AS=24p AD=24p PS=28u PD=28u
+mpd dra u1n dd dd p1 w=24u l=0.35u AS=48p AD=48p PS=52u PD=52u
+
+*** passive filter elements ***
+*third order filter
+*parameters absolutely _not_ optimised
+*better check
+* http://www.national.com/assets/en/boards/deansbook4.pdf
+*to do so
+.ic v(vout)='initcond' v(c1)='initcond' v(dra)='initcond' v(int1)='initcond' v(u1n)='vcc' v(d1)=0
+R1 dra int1 300
+R2 int1 c1 200
+C1 c1 0 10n
+C2 int1 0 5n
+R3 int1 vout 50
+C3 vout 0 0.5n
+
+*second order filter
+*parameters not optimized
+*.ic v(vout)='initcond' v(c1)='initcond' v(dra)='initcond' v(u1n)='vcc' v(d1)=0
+*R1 dra vout 300
+*R2 vout c1 200
+*C1 c1 0 10n
+*C2 vout 0 5n
+
+.ends loopf
diff --git a/Windows/spice/examples/xspice/pll/loop-filter.cir b/Windows/spice/examples/xspice/pll/loop-filter.cir
new file mode 100644
index 00000000..a83ebb7a
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/loop-filter.cir
@@ -0,0 +1,31 @@
+* loop filter for pll
+* in: d_up d_down digital data
+* out: vout, vco control voltage
+* according to http://www.uwe-kerwien.de/pll/pll-schleifenfilter.htm
+
+.subckt loopfe d_U d_D vout
+
+.param loadcur=5m
+.param initcond=2.5
+
+v1 vtop 0 1
+v2 vbot 0 -1
+
+abridge-f1 [d_U d_D] [u1 d1] dac1
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-10
++ t_fall = 1e-10)
+
+*top switched current source
+Gtop vtop vout cur='loadcur*v(u1)'
+*bottom switched current source
+Gbot vout vbot cur='loadcur*v(d1)'
+
+*passive filter elements
+.ic v(vout)='initcond' v(c1)='initcond'
+R2 vout c1 200
+C1 c1 0 5n
+C2 vout 0 5n
+Rshunt vout 0 10000k
+
+.ends
diff --git a/Windows/spice/examples/xspice/pll/pll-xspice-fstep.cir b/Windows/spice/examples/xspice/pll/pll-xspice-fstep.cir
new file mode 100644
index 00000000..5c79e152
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/pll-xspice-fstep.cir
@@ -0,0 +1,165 @@
+* pll circuit using xspice code models
+* three frequencies generate steps in control voltage v(cont)
+
+.param vcc=3.3
+.param divisor=40
+.param fref=10e6
+.param fref2=9e6
+.param fref3=11e6
+.csparam simtime=45u
+.csparam f2='fref2'
+.csparam f3='fref3'
+
+* digital zero and one
+.global d_d0 d_d1
+
+vdd dd 0 dc 'vcc'
+
+* 10 MHz reference frequency
+* PULSE(V1 V2 TD TR TF PW PER)
+vref ref 0 dc 0 pulse(0 'vcc' 10n 1n 1n '1/fref/2' '1/fref')
+abridgeref [ref] [d_ref] adc_vbuf
+.model adc_vbuf adc_bridge(in_low = 0.5 in_high = 0.5)
+
+*digital zero
+vzero z 0 dc 0
+abridgev3 [z] [d_d0] adc_vbuf
+.model adc_vbuf adc_bridge(in_low = 'vcc*0.5' in_high = 'vcc*0.5')
+*digital one
+ainv1 d_d0 d_d1 invd1
+.model invd1 d_inverter(rise_delay = 1e-10 fall_delay = 1e-10)
+
+* vco
+* buf: analog out
+* d_digout: digital out
+* cont: analog control voltage
+* dd: analog supply voltage
+*.include vco_sub.cir
+*xvco buf d_digout cont dd ro_vco
+.include vco_sub_new.cir
+xvco buf d_digout cont dd d_osc_vco
+
+* digital divider
+adiv1 d_digout d_divout divider
+.model divider d_fdiv(div_factor = 'divisor' high_cycles = 'divisor/2'
++ i_count = 4 rise_delay = 1e-10
++ fall_delay = 1e-10)
+
+* frequency phase detector
+.include f-p-det-d-sub.cir
+Xfpdet d_divout d_ref d_U d_Un d_D d_Dn f-p-det
+
+* loop filter
+*2nd or 3rd order, transistors as switches
+.include loop-filter-2.cir
+Xlf d_Un d_D cont loopf
+* 2nd order, Exxxx voltage controlled current sources as 'switches'
+* loop filter current sources as charge pump
+*.include loop-filter.cir
+*Xlf d_U d_D cont loopfe
+
+* d to a for plotting
+abridge-w1 [d_divout d_ref d_Un d_D] [s1 s2 u1 d1] dac1 ; change to d_u or d_Un
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-10
++ t_fall = 1e-10)
+
+.control
+save cont s1 s2 u1 d1
+iplot cont
+* calculate breakpoint for switching frequency
+let t1_3 = simtime/3
+set ti1_3 ="$&t1_3"
+let t2_3 = simtime/3*2
+set ti2_3 ="$&t2_3"
+stop when time=$ti1_3
+stop when time=$ti2_3
+* calculate new periods for f2
+let per2=1/f2
+let pw2 = per2/2
+let per3=1/f3
+let pw3 = per3/2
+*simulate
+tran 0.1n $&simtime uic
+*change frequency after stopping
+* first pair of [] without spaces, second pair with spaces
+alter @vref[pulse] = [ 0 3.3 10n 1n 1n $&pw2 $&per2 ]
+resume
+*another change after second stop
+alter @vref[pulse] = [ 0 3.3 10n 1n 1n $&pw3 $&per3 ]
+resume
+rusage
+plot cont s1 s2+1.2 u1+2.4 d1+3.6 xlimit 15u 16u
+*plot cont
+.endc
+
+*model = bsim3v3
+*Berkeley Spice Compatibility
+* Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
+.model N1 NMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++ Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++ Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++ Wl = 0 Ww = -1.420242E-09 Wwl = 0
++ Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++ Lw = 0 Lwl = 0 Lln = .316394
++ Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
+
+.model P1 PMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++ Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++ Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
+
+
+.end
diff --git a/Windows/spice/examples/xspice/pll/pll-xspice.cir b/Windows/spice/examples/xspice/pll/pll-xspice.cir
new file mode 100644
index 00000000..1d14368d
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/pll-xspice.cir
@@ -0,0 +1,144 @@
+* pll circuit using xspice code models
+* output frequency 400 MHz
+* locked to a 1 or 10 MHz reference
+
+.param vcc=3.3
+.param divisor=40
+.param fref=10e6
+.csparam simtime=25u
+
+.global d_d0 d_d1
+
+vdd dd 0 dc 'vcc'
+*vco cont 0 dc 1.9
+
+*PULSE(V1 V2 TD TR TF PW PER)
+* reference frequency selected by param fref
+* PULSE(V1 V2 TD TR TF PW PER)
+vref ref 0 dc 0 pulse(0 'vcc' 10n 1n 1n '1/fref/2' '1/fref')
+abridgeref [ref] [d_ref] adc_vbuf
+.model adc_vbuf adc_bridge(in_low = 0.5 in_high = 0.5)
+
+*digital zero
+vzero z 0 dc 0
+abridgev3 [z] [d_d0] adc_vbuf
+.model adc_vbuf adc_bridge(in_low = 'vcc*0.5' in_high = 'vcc*0.5')
+*digital one
+ainv1 d_d0 d_d1 invd1
+.model invd1 d_inverter(rise_delay = 1e-10 fall_delay = 1e-10)
+
+* vco
+* buf: analog out
+* d_digout: digital out
+* cont: analog control voltage
+* dd: analog supply voltage
+*.include vco_sub.cir
+*xvco buf d_digout cont dd ro_vco
+.include vco_sub_new.cir
+xvco buf d_digout cont dd d_osc_vco
+
+* digital divider
+adiv1 d_digout d_divout divider
+.model divider d_fdiv(div_factor = 'divisor' high_cycles = 'divisor/2'
++ i_count = 4 rise_delay = 1e-10
++ fall_delay = 1e-10)
+
+* frequency phase detector
+.include f-p-det-d-sub.cir
+Xfpdet d_divout d_ref d_U d_Un d_D d_Dn f-p-det
+
+* loop filters
+*2nd or 3rd order, transistors as switches
+.include loop-filter-2.cir
+Xlf d_Un d_D cont loopf
+* 2nd order, Exxxx voltage controlled current sources as 'switches'
+* loop filter current sources as charge pump
+*.include loop-filter.cir
+*Xlf d_U d_D cont loopfe
+
+* d to a for plotting
+abridge-w1 [d_divout d_ref d_Un d_D] [s1 s2 u1n d1] dac1 ; change to d_u or d_Un
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-10
++ t_fall = 1e-10)
+
+.control
+save cont s1 s2 u1n d1 v.xlf.vdd#branch; to save memory
+iplot cont
+tran 0.1n $&simtime uic
+rusage
+plot cont s1 s2+1.2 u1n+2.4 d1+3.6 xlimit 4u 5u
+plot v.xlf.vdd#branch xlimit 4u 5u ylimit -8m 2m
+*plot cont
+.endc
+
+*model = bsim3v3
+*Berkeley Spice Compatibility
+* Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
+.model N1 NMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++ Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++ Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++ Wl = 0 Ww = -1.420242E-09 Wwl = 0
++ Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++ Lw = 0 Lwl = 0 Lln = .316394
++ Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
+
+.model P1 PMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++ Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++ Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
+
+
+.end
diff --git a/Windows/spice/examples/xspice/pll/pll-xspice_oc.cir b/Windows/spice/examples/xspice/pll/pll-xspice_oc.cir
new file mode 100644
index 00000000..f2d235c3
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/pll-xspice_oc.cir
@@ -0,0 +1,142 @@
+* pll circuit using xspice code models
+* output frequency 400 MHz
+* locked to a 1 or 10 MHz reference
+
+.param vcc=3.3
+.param divisor=40
+.param fref=10e6
+.csparam simtime=25u
+
+.control
+pre_unset ngdebug
+set noinit
+.endc
+
+.global d_d0 d_d1
+
+vdd dd 0 dc 'vcc'
+*vco cont 0 dc 1.9
+
+*PULSE(V1 V2 TD TR TF PW PER)
+* reference frequency selected by param fref
+* PULSE(V1 V2 TD TR TF PW PER)
+vref ref 0 dc 0 pulse(0 'vcc' 10n 1n 1n '1/fref/2' '1/fref')
+abridgeref [ref] [d_ref] adc_vbuf
+.model adc_vbuf adc_bridge(in_low = 0.5 in_high = 0.5)
+
+*digital zero
+vzero z 0 dc 0
+abridgev3 [z] [d_d0] adc_vbuf
+.model adc_vbuf adc_bridge(in_low = 'vcc*0.5' in_high = 'vcc*0.5')
+*digital one
+ainv1 d_d0 d_d1 invd1
+.model invd1 d_inverter(rise_delay = 1e-10 fall_delay = 1e-10)
+
+* vco
+* buf: analog out
+* d_digout: digital out
+* cont: analog control voltage
+* dd: analog supply voltage
+*.include vco_sub.cir
+*xvco buf d_digout cont dd ro_vco
+.include vco_sub_new.cir
+xvco buf d_digout cont dd d_osc_vco
+
+* digital divider
+adiv1 d_digout d_divout divider
+.model divider d_fdiv(div_factor = 'divisor' high_cycles = 'divisor/2'
++ i_count = 4 rise_delay = 1e-10
++ fall_delay = 1e-10)
+
+* frequency phase detector
+.include f-p-det-d-sub.cir
+Xfpdet d_divout d_ref d_U d_Un d_D d_Dn f-p-det
+
+* loop filters
+*2nd or 3rd order, transistors as switches
+.include loop-filter-2.cir
+Xlf d_Un d_D cont loopf
+* 2nd order, Exxxx voltage controlled current sources as 'switches'
+* loop filter current sources as charge pump
+*.include loop-filter.cir
+*Xlf d_U d_D cont loopfe
+
+* d to a for plotting
+abridge-w1 [d_divout d_ref d_Un d_D] [s1 s2 u1n d1] dac1 ; change to d_u or d_Un
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-10
++ t_fall = 1e-10)
+
+.save cont s1 s2 u1n d1 v.xlf.vdd#branch; to save memory
+.tran 0.1n 10u uic
+
+*model = bsim3v3
+*Berkeley Spice Compatibility
+* Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
+.model N1 NMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++ Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++ Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++ Wl = 0 Ww = -1.420242E-09 Wwl = 0
++ Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++ Lw = 0 Lwl = 0 Lln = .316394
++ Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
+
+.model P1 PMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++ Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++ Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
+
+
+.end
diff --git a/Windows/spice/examples/xspice/pll/test-f-p-det.cir b/Windows/spice/examples/xspice/pll/test-f-p-det.cir
new file mode 100644
index 00000000..16060b9b
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/test-f-p-det.cir
@@ -0,0 +1,114 @@
+* test frequency-phase detector similar to 12040
+
+.param vcc=3.3
+.global d_d0 d_d1
+
+*PULSE(V1 V2 TD TR TF PW PER)
+v1 1 0 dc 0 pulse(0 'vcc' 10n 1n 1n 10n 20n)
+v2 2 0 dc 0 pulse(0 'vcc' 8n 1n 1n 10n 20n)
+
+*digital zero
+v3 3 0 dc 0
+abridgev1 [1 2 3] [d_sig1 d_sig2 d_d0] adc_vbuf
+.model adc_vbuf adc_bridge(in_low = 'vcc*0.5' in_high = 'vcc*0.5')
+*digital one
+ainv1 d_d0 d_d1 invd1
+.model invd1 d_inverter(rise_delay = 1e-10 fall_delay = 1e-10)
+
+Xfpdet d_sig1 d_sig2 d_U d_Un d_D d_Dn f-p-det
+
+*.include f-p-det-sub.cir
+.include f-p-det-d-sub.cir
+
+* d to a for plotting
+abridge-w1 [d_sig1 d_sig2 d_U d_D] [s1 s2 u1 d1] dac1
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-10
++ t_fall = 1e-10)
+
+* loop filters
+*2nd or 3rd order, transistors as switches
+.include loop-filter-2.cir
+Xlf d_Un d_D cont loopf
+* 2nd order, Exxxx voltage controlled current sources as 'switches'
+* loop filter current sources as charge pump
+*.include loop-filter.cir
+*Xlf d_U d_D cont loopfe
+
+.control
+set xtrtol=2
+tran 0.1n 1000n
+plot s1 s2+1.2 u1+2.4 d1+3.6 xlimit 140n 200n
+.endc
+
+
+*model = bsim3v3
+*Berkeley Spice Compatibility
+* Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
+.model N1 NMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++ Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++ Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++ Wl = 0 Ww = -1.420242E-09 Wwl = 0
++ Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++ Lw = 0 Lwl = 0 Lln = .316394
++ Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
+
+.model P1 PMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++ Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++ Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
+
+
+.end
diff --git a/Windows/spice/examples/xspice/pll/test_vco.cir b/Windows/spice/examples/xspice/pll/test_vco.cir
new file mode 100644
index 00000000..522eac00
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/test_vco.cir
@@ -0,0 +1,158 @@
+* Test of VCO: frequency versus control voltage
+* 7 stage Ring-Osc. made of gain cells BSIM3
+* P.-H. Hsieh, J. Maxey, C.-K. K. Yang, IEEE JSSC, Sept. 2009, pp. 2488 - 2495
+* alternatively use d_osc code model
+* measure frequency of R.O. by fft
+
+.param vcc=3.3
+.csparam simtime=500n
+
+vdd dd 0 dc 'vcc'
+vco cont 0 dc 2.5
+
+* vco
+* buf: analog out
+* d_digout: digital out
+* cont: analog control voltage
+* dd: analog supply voltage
+*.include vco_sub.cir
+*xvco buf d_digout cont dd ro_vco
+.include vco_sub_new.cir
+xvco buf d_digout cont dd d_osc_vco
+
+.option noacct
+
+.control
+set xtrtol=2
+set dt = $curplot
+set curplot = new
+set curplottitle = "Frequency versus voltage"
+set freq_volt = $curplot $ store its name to 'freq_volt'
+setplot $freq_volt
+let vcovec=vector(5)
+let foscvec=vector(5)
+setplot $dt
+alter vco 0.5
+tran 0.1n $&simtime 0
+let {$freq_volt}.vcovec[0]=v(cont)
+linearize buf
+fft buf
+* start meas at freq > 0 to skip large dc part
+meas sp fosc MAX_AT buf from=1e3 to=1e9
+let {$freq_volt}.foscvec[0]=fosc
+plot d_digout xlimit 140n 160n
+reset
+alter vco 1
+tran 0.1n $&simtime 0
+let {$freq_volt}.vcovec[1]=v(cont)
+linearize buf
+fft buf
+meas sp fosc MAX_AT buf from=1e3 to=1e9
+let {$freq_volt}.foscvec[1]=fosc
+plot d_digout xlimit 140n 160n
+reset
+alter vco 1.5
+tran 0.1n $&simtime 0
+let {$freq_volt}.vcovec[2]=v(cont)
+linearize buf
+fft buf
+meas sp fosc MAX_AT buf from=1e3 to=1e9
+let {$freq_volt}.foscvec[2]=fosc
+plot d_digout xlimit 140n 160n
+reset
+alter vco 2
+tran 0.1n $&simtime 0
+let {$freq_volt}.vcovec[3]=v(cont)
+linearize buf
+fft buf
+meas sp fosc MAX_AT buf from=1e3 to=1e9
+let {$freq_volt}.foscvec[3]=fosc
+plot d_digout xlimit 140n 160n
+reset
+alter vco 2.5
+tran 0.1n $&simtime 0
+let {$freq_volt}.vcovec[4]=v(cont)
+linearize buf
+fft buf
+meas sp fosc MAX_AT buf from=1e3 to=1e9
+let {$freq_volt}.foscvec[4]=fosc
+plot d_digout xlimit 140n 160n
+plot tran1.buf tran3.buf tran5.buf tran7.buf tran9.buf xlimit 140n 160n
+plot mag(sp2.buf) mag(sp4.buf) mag(sp6.buf) mag(sp8.buf) mag(sp10.buf) xlimit 100e6 1100e6
+setplot $freq_volt
+settype frequency foscvec
+settype voltage vcovec
+plot foscvec vs vcovec
+print vcovec foscvec
+rusage
+.endc
+
+*model = bsim3v3
+*Berkeley Spice Compatibility
+* Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
+.model N1 NMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++ Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++ Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++ Wl = 0 Ww = -1.420242E-09 Wwl = 0
++ Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++ Lw = 0 Lwl = 0 Lln = .316394
++ Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
+
+.model P1 PMOS
+*+version = 3.2.4
++version = 3.3.0
++Level= 8
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++ Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++ Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
+
+.end
diff --git a/Windows/spice/examples/xspice/pll/vco_sub.cir b/Windows/spice/examples/xspice/pll/vco_sub.cir
new file mode 100644
index 00000000..77f87360
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/vco_sub.cir
@@ -0,0 +1,67 @@
+* VCO: 7 stage Ring-Osc. made of gain cells BSIM3
+* P.-H. Hsieh, J. Maxey, C.-K. K. Yang, IEEE JSSC, Sept. 2009, pp. 2488 - 2495
+* 150 MHz to 900 MHz with control voltage 2.5 to 0.5 V at 3.3 V supply
+* BSIM 3 model data for transistors in main file pll-xspice.cir
+
+***** ring oscillator as voltage controlled oscillator ***************
+* name: ro_vco
+* aout analog out
+* dout digital out
+* cont control voltage
+* dd supply voltage
+
+.subckt ro_vco aout dout cont dd
+* ignition circuit (not needed)
+* feedback between in and out, pulse to help start oscillation
+vin inm1 outp7 dc 0
+*vin inm1 outp7 dc 2.5 pulse 2.5 0 0.1n 5n 1 1 1
+
+*vin2 inp1 outp7 dc -0.5 pulse -0.5 0 0.1n 5n 1 1 1
+vin2 inp1 outm7 dc 0
+
+
+vss ss 0 dc 0
+ve sub 0 dc 0
+vpe well 0 dc 3.3
+
+
+* gain cell
+.subckt gaincell dd ss sub well co in- in+ out- out+
+mn1 out- in+ ss sub n1 w=2u l=0.35u AS=3p AD=3p PS=4u PD=4u
+mn2 out- out+ ss sub n1 w=2u l=0.35u AS=3p AD=3p PS=4u PD=4u
+mn3 out+ out- ss sub n1 w=2u l=0.35u AS=3p AD=3p PS=4u PD=4u
+mn4 out+ in- ss sub n1 w=2u l=0.35u AS=3p AD=3p PS=4u PD=4u
+mp1 out- co dd well p1 w=4u l=0.35u AS=7p AD=7p PS=6u PD=6u
+mp2 out+ co dd well p1 w=4u l=0.35u AS=7p AD=7p PS=6u PD=6u
+.ends gaincell
+
+* inverter
+.subckt inv2 dd ss sub well in out
+mn1 out in ss sub n1 w=6u l=0.35u AS=12p AD=12p PS=16u PD=16u
+mp1 out in dd well p1 w=12u l=0.35u AS=24p AD=24p PS=28u PD=28u
+.ends inv2
+
+* inverter
+.subckt inv1 dd ss sub well in out
+mn1 out in ss sub n1 w=2u l=0.35u AS=3p AD=3p PS=4u PD=4u
+mp1 out in dd well p1 w=4u l=0.35u AS=7p AD=7p PS=6u PD=6u
+.ends inv1
+
+* chain of 25 inverters + output buffer
+xinv1 dd ss sub well cont inm1 inp1 outm1 outp1 gaincell
+xinv2 dd ss sub well cont outp1 outm1 outm2 outp2 gaincell
+xinv3 dd ss sub well cont outp2 outm2 outm3 outp3 gaincell
+xinv4 dd ss sub well cont outp3 outm3 outm4 outp4 gaincell
+xinv5 dd ss sub well cont outp4 outm4 outm5 outp5 gaincell
+xinv6 dd ss sub well cont outp5 outm5 outm6 outp6 gaincell
+xinv7 dd ss sub well cont outp6 outm6 outm7 outp7 gaincell
+* analog out (two stage buffer)
+xinv11 dd 0 sub well outm1 outm2 inv1
+xinv12 dd 0 sub well outm2 aout inv2
+cout aout 0 0.2pF
+*digital out
+abridge1 [aout] [dout] adc_buff
+.model adc_buff adc_bridge(in_low = 'vcc*0.5' in_high = 'vcc*0.5')
+.ends ro_vco
+******************************************************************
+
diff --git a/Windows/spice/examples/xspice/pll/vco_sub_new.cir b/Windows/spice/examples/xspice/pll/vco_sub_new.cir
new file mode 100644
index 00000000..229ccf84
--- /dev/null
+++ b/Windows/spice/examples/xspice/pll/vco_sub_new.cir
@@ -0,0 +1,30 @@
+***** XSPICE digital controlled oscillator d_osc as vco ***************
+* 150 MHz to 900 MHz
+* name: d_osc_vco
+* aout analog out
+* dout digital out
+* cont control voltage
+* dd supply voltage
+
+.subckt d_osc_vco aout dout cont dd
+* curve fitting to ro_vco 'measured' data
+Bfit fitted 0 v = (-58256685.71*v(cont)*v(cont) - 186386142.9*v(cont) + 988722980)/10.
+
+*a5 fitted dout var_clock
+*.model var_clock d_osc(cntl_array = [1.0e7 5.0e7 9.0e7]
+*+ freq_array = [1.0e8 5.0e8 9.0e8]
+
+* linear interpolation, input data from measured ro vco
+a5 cont dout var_clock
+.model var_clock d_osc(cntl_array = [0.5 1 1.5 2 2.5]
++ freq_array = [8.790820e+008 7.472197e+008 5.799500e+008 3.772727e+008 1.611650e+008]
++ duty_cycle = 0.5 init_phase = 180.0
++ rise_delay = 1e-10 fall_delay=1e-10)
+
+*generate an analog output for plotting
+abridge-fit [dout] [aout] dac1
+.model dac1 dac_bridge(out_low = 0 out_high = 1 out_undef = 0.5
++ input_load = 5.0e-12 t_rise = 1e-10
++ t_fall = 1e-10)
+
+.ends d_osc_vco
diff --git a/Windows/spice/examples/xspice/sine.m b/Windows/spice/examples/xspice/sine.m
new file mode 100644
index 00000000..c01fbe9a
--- /dev/null
+++ b/Windows/spice/examples/xspice/sine.m
@@ -0,0 +1,264 @@
+# Created by Octave 3.4.0, Mon Jun 06 10:16:19 2011 CEST <sailer@xbox360.hq.axsem.com>
+# name: x
+# type: matrix
+# rows: 257
+# columns: 3
+ 0 0 1
+ 3.90625e-09 0.02454122852291229 0.9996988186962042
+ 7.8125e-09 0.04906767432741801 0.9987954562051724
+ 1.171875e-08 0.07356456359966743 0.9972904566786902
+ 1.5625e-08 0.0980171403295606 0.9951847266721969
+ 1.953125e-08 0.1224106751992162 0.99247953459871
+ 2.34375e-08 0.1467304744553617 0.989176509964781
+ 2.734375e-08 0.1709618887603012 0.9852776423889412
+ 3.125e-08 0.1950903220161282 0.9807852804032304
+ 3.515625e-08 0.2191012401568698 0.9757021300385286
+ 3.90625e-08 0.2429801799032639 0.970031253194544
+ 4.296875e-08 0.2667127574748984 0.9637760657954398
+ 4.6875e-08 0.2902846772544623 0.9569403357322088
+ 5.078125e-08 0.3136817403988915 0.9495281805930367
+ 5.46875e-08 0.3368898533922201 0.9415440651830208
+ 5.859374999999999e-08 0.3598950365349881 0.932992798834739
+ 6.25e-08 0.3826834323650898 0.9238795325112867
+ 6.640625e-08 0.4052413140049899 0.9142097557035307
+ 7.03125e-08 0.4275550934302821 0.9039892931234433
+ 7.421874999999999e-08 0.4496113296546065 0.8932243011955153
+ 7.812499999999999e-08 0.4713967368259976 0.881921264348355
+ 8.203125e-08 0.492898192229784 0.8700869911087115
+ 8.59375e-08 0.5141027441932217 0.8577286100002721
+ 8.984375e-08 0.5349976198870972 0.8448535652497071
+ 9.375e-08 0.5555702330196022 0.8314696123025452
+ 9.765624999999999e-08 0.5758081914178453 0.8175848131515837
+ 1.015625e-07 0.5956993044924334 0.8032075314806449
+ 1.0546875e-07 0.6152315905806268 0.7883464276266063
+ 1.09375e-07 0.6343932841636455 0.773010453362737
+ 1.1328125e-07 0.6531728429537768 0.7572088465064846
+ 1.171875e-07 0.6715589548470183 0.7409511253549591
+ 1.2109375e-07 0.6895405447370668 0.724247082951467
+ 1.25e-07 0.7071067811865475 0.7071067811865476
+ 1.2890625e-07 0.7242470829514669 0.6895405447370669
+ 1.328125e-07 0.7409511253549591 0.6715589548470183
+ 1.3671875e-07 0.7572088465064845 0.6531728429537768
+ 1.40625e-07 0.773010453362737 0.6343932841636455
+ 1.4453125e-07 0.7883464276266062 0.6152315905806268
+ 1.484375e-07 0.8032075314806448 0.5956993044924335
+ 1.5234375e-07 0.8175848131515837 0.5758081914178453
+ 1.5625e-07 0.8314696123025452 0.5555702330196023
+ 1.6015625e-07 0.844853565249707 0.5349976198870973
+ 1.640625e-07 0.8577286100002721 0.5141027441932217
+ 1.6796875e-07 0.8700869911087113 0.4928981922297841
+ 1.71875e-07 0.8819212643483549 0.4713967368259978
+ 1.7578125e-07 0.8932243011955153 0.4496113296546066
+ 1.796875e-07 0.9039892931234433 0.4275550934302822
+ 1.8359375e-07 0.9142097557035307 0.4052413140049899
+ 1.875e-07 0.9238795325112867 0.3826834323650898
+ 1.9140625e-07 0.9329927988347388 0.3598950365349883
+ 1.953125e-07 0.9415440651830208 0.3368898533922201
+ 1.9921875e-07 0.9495281805930367 0.3136817403988916
+ 2.03125e-07 0.9569403357322089 0.2902846772544623
+ 2.0703125e-07 0.9637760657954398 0.2667127574748984
+ 2.109375e-07 0.970031253194544 0.242980179903264
+ 2.1484375e-07 0.9757021300385286 0.2191012401568698
+ 2.1875e-07 0.9807852804032304 0.1950903220161283
+ 2.2265625e-07 0.9852776423889412 0.1709618887603014
+ 2.265625e-07 0.989176509964781 0.1467304744553617
+ 2.3046875e-07 0.99247953459871 0.1224106751992163
+ 2.34375e-07 0.9951847266721968 0.09801714032956077
+ 2.3828125e-07 0.9972904566786902 0.07356456359966745
+ 2.421875e-07 0.9987954562051724 0.04906767432741813
+ 2.4609375e-07 0.9996988186962042 0.02454122852291226
+ 2.5e-07 1 6.123233995736766e-17
+ 2.5390625e-07 0.9996988186962042 -0.02454122852291214
+ 2.578125e-07 0.9987954562051724 -0.04906767432741801
+ 2.6171875e-07 0.9972904566786902 -0.07356456359966733
+ 2.65625e-07 0.9951847266721969 -0.09801714032956065
+ 2.6953125e-07 0.99247953459871 -0.1224106751992162
+ 2.734375e-07 0.989176509964781 -0.1467304744553616
+ 2.7734375e-07 0.9852776423889412 -0.1709618887603012
+ 2.8125e-07 0.9807852804032304 -0.1950903220161282
+ 2.8515625e-07 0.9757021300385286 -0.2191012401568697
+ 2.890625e-07 0.970031253194544 -0.2429801799032639
+ 2.9296875e-07 0.9637760657954398 -0.2667127574748983
+ 2.96875e-07 0.9569403357322089 -0.2902846772544622
+ 3.0078125e-07 0.9495281805930367 -0.3136817403988914
+ 3.046875e-07 0.9415440651830208 -0.3368898533922199
+ 3.0859375e-07 0.9329927988347388 -0.3598950365349882
+ 3.125e-07 0.9238795325112867 -0.3826834323650897
+ 3.1640625e-07 0.9142097557035307 -0.4052413140049897
+ 3.203125e-07 0.9039892931234434 -0.4275550934302819
+ 3.2421875e-07 0.8932243011955152 -0.4496113296546067
+ 3.28125e-07 0.881921264348355 -0.4713967368259977
+ 3.3203125e-07 0.8700869911087115 -0.492898192229784
+ 3.359375e-07 0.8577286100002721 -0.5141027441932217
+ 3.3984375e-07 0.8448535652497072 -0.534997619887097
+ 3.4375e-07 0.8314696123025455 -0.555570233019602
+ 3.4765625e-07 0.8175848131515837 -0.5758081914178453
+ 3.515625e-07 0.8032075314806449 -0.5956993044924334
+ 3.5546875e-07 0.7883464276266063 -0.6152315905806267
+ 3.59375e-07 0.7730104533627371 -0.6343932841636454
+ 3.6328125e-07 0.7572088465064847 -0.6531728429537765
+ 3.671875e-07 0.740951125354959 -0.6715589548470184
+ 3.7109375e-07 0.7242470829514669 -0.6895405447370669
+ 3.75e-07 0.7071067811865476 -0.7071067811865475
+ 3.7890625e-07 0.6895405447370671 -0.7242470829514668
+ 3.828125e-07 0.6715589548470186 -0.7409511253549589
+ 3.8671875e-07 0.6531728429537766 -0.7572088465064846
+ 3.90625e-07 0.6343932841636455 -0.773010453362737
+ 3.9453125e-07 0.6152315905806269 -0.7883464276266062
+ 3.984375e-07 0.5956993044924335 -0.8032075314806448
+ 4.0234375e-07 0.5758081914178454 -0.8175848131515836
+ 4.0625e-07 0.5555702330196022 -0.8314696123025453
+ 4.1015625e-07 0.5349976198870972 -0.8448535652497071
+ 4.140625e-07 0.5141027441932218 -0.857728610000272
+ 4.1796875e-07 0.4928981922297841 -0.8700869911087113
+ 4.21875e-07 0.4713967368259979 -0.8819212643483549
+ 4.2578125e-07 0.4496113296546069 -0.8932243011955152
+ 4.296875e-07 0.427555093430282 -0.9039892931234433
+ 4.3359375e-07 0.4052413140049899 -0.9142097557035307
+ 4.375e-07 0.3826834323650899 -0.9238795325112867
+ 4.4140625e-07 0.3598950365349883 -0.9329927988347388
+ 4.453125e-07 0.3368898533922203 -0.9415440651830207
+ 4.4921875e-07 0.3136817403988914 -0.9495281805930367
+ 4.53125e-07 0.2902846772544624 -0.9569403357322088
+ 4.5703125e-07 0.2667127574748985 -0.9637760657954398
+ 4.609375e-07 0.2429801799032641 -0.970031253194544
+ 4.6484375e-07 0.21910124015687 -0.9757021300385285
+ 4.6875e-07 0.1950903220161286 -0.9807852804032304
+ 4.7265625e-07 0.1709618887603012 -0.9852776423889412
+ 4.765625e-07 0.1467304744553618 -0.989176509964781
+ 4.804687499999999e-07 0.1224106751992163 -0.99247953459871
+ 4.84375e-07 0.09801714032956083 -0.9951847266721968
+ 4.8828125e-07 0.07356456359966773 -0.9972904566786902
+ 4.921875e-07 0.04906767432741797 -0.9987954562051724
+ 4.9609375e-07 0.02454122852291233 -0.9996988186962042
+ 5e-07 1.224646799147353e-16 -1
+ 5.0390625e-07 -0.02454122852291208 -0.9996988186962042
+ 5.078125e-07 -0.04906767432741772 -0.9987954562051724
+ 5.117187499999999e-07 -0.0735645635996675 -0.9972904566786902
+ 5.156249999999999e-07 -0.09801714032956059 -0.9951847266721969
+ 5.1953125e-07 -0.1224106751992161 -0.99247953459871
+ 5.234375e-07 -0.1467304744553616 -0.989176509964781
+ 5.2734375e-07 -0.170961888760301 -0.9852776423889413
+ 5.3125e-07 -0.1950903220161284 -0.9807852804032304
+ 5.3515625e-07 -0.2191012401568698 -0.9757021300385286
+ 5.390625e-07 -0.2429801799032638 -0.970031253194544
+ 5.4296875e-07 -0.2667127574748983 -0.96377606579544
+ 5.46875e-07 -0.2902846772544621 -0.9569403357322089
+ 5.507812499999999e-07 -0.3136817403988912 -0.9495281805930368
+ 5.546874999999999e-07 -0.3368898533922201 -0.9415440651830208
+ 5.5859375e-07 -0.3598950365349881 -0.932992798834739
+ 5.625e-07 -0.3826834323650897 -0.9238795325112868
+ 5.6640625e-07 -0.4052413140049897 -0.9142097557035307
+ 5.703125e-07 -0.4275550934302818 -0.9039892931234434
+ 5.7421875e-07 -0.4496113296546067 -0.8932243011955153
+ 5.78125e-07 -0.4713967368259976 -0.881921264348355
+ 5.8203125e-07 -0.4928981922297839 -0.8700869911087115
+ 5.859374999999999e-07 -0.5141027441932216 -0.8577286100002721
+ 5.898437499999999e-07 -0.5349976198870969 -0.8448535652497072
+ 5.937499999999999e-07 -0.555570233019602 -0.8314696123025455
+ 5.9765625e-07 -0.5758081914178453 -0.8175848131515837
+ 6.015625e-07 -0.5956993044924332 -0.8032075314806449
+ 6.0546875e-07 -0.6152315905806267 -0.7883464276266063
+ 6.09375e-07 -0.6343932841636453 -0.7730104533627371
+ 6.1328125e-07 -0.6531728429537765 -0.7572088465064848
+ 6.171875e-07 -0.6715589548470184 -0.7409511253549591
+ 6.2109375e-07 -0.6895405447370668 -0.724247082951467
+ 6.249999999999999e-07 -0.7071067811865475 -0.7071067811865477
+ 6.289062499999999e-07 -0.7242470829514668 -0.6895405447370671
+ 6.328124999999999e-07 -0.7409511253549589 -0.6715589548470187
+ 6.3671875e-07 -0.7572088465064842 -0.6531728429537771
+ 6.40625e-07 -0.7730104533627367 -0.6343932841636459
+ 6.4453125e-07 -0.7883464276266059 -0.6152315905806273
+ 6.484375e-07 -0.8032075314806451 -0.5956993044924331
+ 6.5234375e-07 -0.8175848131515838 -0.5758081914178452
+ 6.5625e-07 -0.8314696123025452 -0.5555702330196022
+ 6.6015625e-07 -0.844853565249707 -0.5349976198870973
+ 6.640624999999999e-07 -0.857728610000272 -0.5141027441932218
+ 6.679687499999999e-07 -0.8700869911087113 -0.4928981922297842
+ 6.718749999999999e-07 -0.8819212643483549 -0.4713967368259979
+ 6.7578125e-07 -0.8932243011955152 -0.4496113296546069
+ 6.796875e-07 -0.9039892931234431 -0.4275550934302825
+ 6.8359375e-07 -0.9142097557035305 -0.4052413140049904
+ 6.875e-07 -0.9238795325112865 -0.3826834323650903
+ 6.9140625e-07 -0.932992798834739 -0.3598950365349879
+ 6.953125e-07 -0.9415440651830208 -0.3368898533922199
+ 6.992187499999999e-07 -0.9495281805930367 -0.3136817403988915
+ 7.031249999999999e-07 -0.9569403357322088 -0.2902846772544624
+ 7.070312499999999e-07 -0.9637760657954398 -0.2667127574748985
+ 7.109374999999999e-07 -0.970031253194544 -0.2429801799032641
+ 7.1484375e-07 -0.9757021300385285 -0.2191012401568701
+ 7.1875e-07 -0.9807852804032303 -0.1950903220161287
+ 7.2265625e-07 -0.9852776423889411 -0.1709618887603017
+ 7.265625e-07 -0.9891765099647809 -0.1467304744553623
+ 7.3046875e-07 -0.9924795345987101 -0.122410675199216
+ 7.34375e-07 -0.9951847266721969 -0.09801714032956045
+ 7.382812499999999e-07 -0.9972904566786902 -0.07356456359966736
+ 7.421874999999999e-07 -0.9987954562051724 -0.04906767432741803
+ 7.460937499999999e-07 -0.9996988186962042 -0.02454122852291239
+ 7.5e-07 -1 -1.83697019872103e-16
+ 7.5390625e-07 -0.9996988186962042 0.02454122852291202
+ 7.578125e-07 -0.9987954562051724 0.04906767432741766
+ 7.6171875e-07 -0.9972904566786902 0.07356456359966698
+ 7.65625e-07 -0.9951847266721969 0.09801714032956009
+ 7.6953125e-07 -0.9924795345987101 0.1224106751992156
+ 7.734375e-07 -0.9891765099647809 0.1467304744553619
+ 7.773437499999999e-07 -0.9852776423889412 0.1709618887603013
+ 7.812499999999999e-07 -0.9807852804032304 0.1950903220161283
+ 7.851562499999999e-07 -0.9757021300385286 0.2191012401568697
+ 7.890625e-07 -0.970031253194544 0.2429801799032638
+ 7.9296875e-07 -0.96377606579544 0.2667127574748982
+ 7.96875e-07 -0.9569403357322089 0.2902846772544621
+ 8.0078125e-07 -0.9495281805930368 0.3136817403988911
+ 8.046875e-07 -0.9415440651830209 0.3368898533922196
+ 8.0859375e-07 -0.9329927988347391 0.3598950365349876
+ 8.124999999999999e-07 -0.9238795325112866 0.38268343236509
+ 8.164062499999999e-07 -0.9142097557035306 0.40524131400499
+ 8.203124999999999e-07 -0.9039892931234433 0.4275550934302821
+ 8.242187499999999e-07 -0.8932243011955153 0.4496113296546066
+ 8.28125e-07 -0.881921264348355 0.4713967368259976
+ 8.3203125e-07 -0.8700869911087115 0.4928981922297839
+ 8.359375e-07 -0.8577286100002722 0.5141027441932216
+ 8.3984375e-07 -0.8448535652497072 0.5349976198870969
+ 8.4375e-07 -0.8314696123025455 0.5555702330196018
+ 8.4765625e-07 -0.817584813151584 0.5758081914178449
+ 8.515624999999999e-07 -0.8032075314806453 0.5956993044924329
+ 8.554687499999999e-07 -0.7883464276266061 0.615231590580627
+ 8.593749999999999e-07 -0.7730104533627369 0.6343932841636456
+ 8.632812499999999e-07 -0.7572088465064846 0.6531728429537768
+ 8.671875e-07 -0.7409511253549591 0.6715589548470183
+ 8.7109375e-07 -0.724247082951467 0.6895405447370668
+ 8.75e-07 -0.7071067811865477 0.7071067811865474
+ 8.7890625e-07 -0.6895405447370672 0.7242470829514667
+ 8.828125e-07 -0.6715589548470187 0.7409511253549589
+ 8.8671875e-07 -0.6531728429537771 0.7572088465064842
+ 8.906249999999999e-07 -0.6343932841636459 0.7730104533627367
+ 8.945312499999999e-07 -0.6152315905806274 0.7883464276266059
+ 8.984374999999999e-07 -0.5956993044924332 0.8032075314806451
+ 9.023437499999999e-07 -0.5758081914178452 0.8175848131515837
+ 9.0625e-07 -0.5555702330196022 0.8314696123025452
+ 9.1015625e-07 -0.5349976198870973 0.844853565249707
+ 9.140625e-07 -0.5141027441932219 0.857728610000272
+ 9.1796875e-07 -0.4928981922297843 0.8700869911087113
+ 9.21875e-07 -0.4713967368259979 0.8819212643483548
+ 9.2578125e-07 -0.449611329654607 0.8932243011955151
+ 9.296874999999999e-07 -0.4275550934302825 0.9039892931234431
+ 9.335937499999999e-07 -0.4052413140049904 0.9142097557035305
+ 9.374999999999999e-07 -0.3826834323650904 0.9238795325112865
+ 9.414062499999999e-07 -0.359895036534988 0.932992798834739
+ 9.453125e-07 -0.33688985339222 0.9415440651830208
+ 9.4921875e-07 -0.3136817403988915 0.9495281805930367
+ 9.53125e-07 -0.2902846772544625 0.9569403357322088
+ 9.5703125e-07 -0.2667127574748986 0.9637760657954398
+ 9.609374999999999e-07 -0.2429801799032642 0.970031253194544
+ 9.648437499999999e-07 -0.2191012401568702 0.9757021300385285
+ 9.6875e-07 -0.1950903220161287 0.9807852804032303
+ 9.726562499999999e-07 -0.1709618887603018 0.9852776423889411
+ 9.765625e-07 -0.1467304744553624 0.9891765099647809
+ 9.804687499999999e-07 -0.122410675199216 0.99247953459871
+ 9.84375e-07 -0.09801714032956051 0.9951847266721969
+ 9.882812499999999e-07 -0.07356456359966741 0.9972904566786902
+ 9.921875e-07 -0.04906767432741809 0.9987954562051724
+ 9.960937499999999e-07 -0.02454122852291245 0.9996988186962042
+ 1e-06 -2.449293598294706e-16 1
+
+
diff --git a/Windows/spice/examples/xspice/xspice_c1.cir b/Windows/spice/examples/xspice/xspice_c1.cir
new file mode 100644
index 00000000..022d9138
--- /dev/null
+++ b/Windows/spice/examples/xspice/xspice_c1.cir
@@ -0,0 +1,22 @@
+A Berkeley SPICE3 compatible circuit
+*
+* This circuit contains only Berkeley SPICE3 components.
+*
+* The circuit is an AC coupled transistor amplifier with
+* a sinewave input at node "1", a gain of approximately -3.9,
+* and output on node "coll".
+*
+.tran 1e-5 2e-3
+*
+vcc vcc 0 12.0
+vin 1 0 0.0 ac 1.0 sin(0 1 1k)
+ccouple 1 base 10uF
+rbias1 vcc base 100k
+rbias2 base 0 24k
+q1 coll base emit generic
+rcollector vcc coll 3.9k
+remitter emit 0 1k
+*
+.model generic npn
+*
+.end
diff --git a/Windows/spice/examples/xspice/xspice_c2.cir b/Windows/spice/examples/xspice/xspice_c2.cir
new file mode 100644
index 00000000..5c66bdd1
--- /dev/null
+++ b/Windows/spice/examples/xspice/xspice_c2.cir
@@ -0,0 +1,16 @@
+A transistor amplifier circuit
+*
+.tran 1e-5 2e-3
+*
+vin 1 0 0.0 ac 1.0 sin(0 1 1k)
+*
+ccouple 1 in 10uF
+rzin in 0 19.35k
+*
+aamp in aout gain_block
+.model gain_block gain (gain = -3.9 out_offset = 7.003)
+*
+rzout aout coll 3.9k
+rbig coll 0 1e12
+*
+.end
diff --git a/Windows/spice/examples/xspice/xspice_c3.cir b/Windows/spice/examples/xspice/xspice_c3.cir
new file mode 100644
index 00000000..4c536293
--- /dev/null
+++ b/Windows/spice/examples/xspice/xspice_c3.cir
@@ -0,0 +1,97 @@
+Mixed IO types
+* This circuit contains a mixture of IO types, including
+* analog, digital, user-defined (real), and 'null'.
+*
+* The circuit demonstrates the use of the digital and
+* user-defined node capability to model system-level designs
+* such as sampled-data filters. The simulated circuit
+* contains a digital oscillator enabled after 100us. The
+* square wave oscillator output is divided by 8 with a
+* ripple counter. The result is passed through a digital
+* filter to convert it to a sine wave.
+*
+.tran 1e-5 1e-3
+.save all
+*
+v1 1 0 0.0 pulse(0 1 1e-4 1e-6)
+r1 1 0 1k
+*
+abridge1 [1] [enable] atod
+.model atod adc_bridge
+*
+aclk [enable clk] clk nand
+.model nand d_nand (rise_delay=1e-5 fall_delay=1e-5)
+*
+adiv2 div2_out clk NULL NULL NULL div2_out dff
+adiv4 div4_out div2_out NULL NULL NULL div4_out dff
+adiv8 div8_out div4_out NULL NULL NULL div8_out dff
+.model dff d_dff
+*
+abridge2 div8_out enable filt_in node_bridge2
+.model node_bridge2 d_to_real (zero=-1 one=1)
+*
+xfilter filt_in clk filt_out dig_filter
+*
+abridge3 filt_out a_out node_bridge3
+.model node_bridge3 real_to_v
+*
+rlpf1 a_out oa_minus 10k
+*
+xlpf 0 oa_minus lpf_out opamp
+*
+rlpf2 oa_minus lpf_out 10k
+clpf lpf_out oa_minus 0.01uF
+*
+*
+.subckt dig_filter filt_in clk filt_out
+*
+.model n0 real_gain (gain=1.0)
+.model n1 real_gain (gain=2.0)
+.model n2 real_gain (gain=1.0)
+.model g1 real_gain (gain=0.125)
+.model zm1 real_delay
+.model d0a real_gain (gain=-0.75)
+.model d1a real_gain (gain=0.5625)
+.model d0b real_gain (gain=-0.3438)
+.model d1b real_gain (gain=1.0)
+*
+an0a filt_in x0a n0
+an1a filt_in x1a n1
+an2a filt_in x2a n2
+*
+az0a x0a clk x1a zm1
+az1a x1a clk x2a zm1
+*
+ad0a x2a x0a d0a
+ad1a x2a x1a d1a
+*
+az2a x2a filt1_out g1
+az3a filt1_out clk filt2_in zm1
+*
+an0b filt2_in x0b n0
+an1b filt2_in x1b n1
+an2b filt2_in x2b n2
+*
+az0b x0b clk x1b zm1
+az1b x1b clk x2b zm1
+*
+ad0 x2b x0b d0b
+ad1 x2b x1b d1b
+*
+az2b x2b clk filt_out zm1
+*
+.ends dig_filter
+*
+*
+.subckt opamp plus minus out
+*
+r1 plus minus 300k
+a1 %vd (plus minus) outint lim
+.model lim limit (out_lower_limit = -12 out_upper_limit = 12
++ fraction = true limit_range = 0.2 gain=300e3)
+r3 outint out 50.0
+r2 out 0 1e12
+*
+.ends opamp
+*
+.end
diff --git a/Windows/spice/how-to-use-ngspice140111.txt b/Windows/spice/how-to-use-ngspice140111.txt
new file mode 100644
index 00000000..b84e9684
--- /dev/null
+++ b/Windows/spice/how-to-use-ngspice140111.txt
@@ -0,0 +1,359 @@
+ H. Vogt, Jan 12th, 2014
+
+ngspice-26 has been compiled from the ngspice-26 tarball, Jan 11th, 2014.
+
+ngspice.exe was generated by MS Visual Studio 2008, configuration
+ReleaseOMP, using full optimization (compiler flags /O2 /Oi /Ot /GL, linker flag /ltcg).
+
+vcomp90.dll is the microsoft runtime distributable for OpenMP
+(see C:\Program Files (x86)\Microsoft Visual Studio 9.0\1031\redist.txt).
+
+The XSPICE code models *.cm were generated with
+TDM mingw gcc 4.8.1 and MSYS 1.0.10 using the following configuration:
+
+./configure --with-windows --enable-xspice --enable-cider --disable-debug
+
+gcc is invoked with the -O2 compiler flag, which is set in configure.ac.
+
+This version of ngspice 26 thus does not contain the adms or ndev extensions.
+
+Expand the ngspice-26-140112.zip file directly into C: so that you will get C:\Spice\bin etc.
+For other places for ngspice installation, see below.
+
+The following examples are tested under Windows XP professional and Windows 7 64 Bit.
+
+Directory /examples offers some example input files for special commands.
+
+
+*** How to use ngspice with examples provided in directory /tests ***
+
+*********************************************************************
+Starting ngspice from MS Explorer window (interactive mode):
+
+Double click on ngspice.exe in C:\Spice\bin
+
+*** ngspice window:
+
+cd c:\spice\tests\bsim4
+
+source comprt.cir
+
+run
+
+display
+
+plot v(1) v(2) v(3) v(8) v(9)
+
+write comprt2.raw
+
+quit
+*********************************************************************
+
+*********************************************************************
+* Starting ngspice within the msys window, interactive mode:
+
+* Open an MSYS window.
+
+*** msys window:
+
+export PATH=$PATH:/c/Spice/bin
+
+cd /c/Spice/tests/bsim4
+
+ngspice comprt.cir
+
+*** ngspice window:
+
+run
+display
+plot all
+
+*** write data into raw file to actual directory /c/Spice/tests/bsim4:
+
+write comprt.raw
+
+quit
+
+If you want to use interactive mode with a circuit file in a different
+directory (e.g. C:\test\comprt.cir) , you have to call ngspice like this:
+
+ngspice C:\\test\\comprt.cir
+or
+ngspice C:\\test/comprt.cir
+
+MSYS 1.0.10 is specific about file and directory names!
+
+You cannot start ngspice from C:\ or D:\ directly if you don't
+have administrator rights. You may choose a subdirectory instead.
+
+*********************************************************************
+
+*********************************************************************
+* Starting ngspice within the msys window, batch mode:
+
+* Open an MSYS window.
+
+*** msys window:
+
+export PATH=$PATH:/c/Spice/bin
+
+cd /c/Spice/tests/bsim4
+
+ngspice -b -r comprt3.raw -o comprt3.out comprt.cir
+
+* Plotting
+
+*** msys window:
+
+ngspice
+load comprt3.raw
+plot v(1) v(2) v(3) v(8) v(9)
+quit
+
+* The data in the raw file comprt3.raw are stored in a compact binary
+* format. If you want them to be ASCII, you have to uncomment line
+set filetype=ascii
+* in C:\Spice\share\ngspice\scripts\spinit (remove the '*').
+*********************************************************************
+
+*********************************************************************
+* Starting ngspice within the dos window (cmd.exe) , interactive mode:
+* (also an example for using xspice extension)
+
+* Open a DOS window.
+
+*** DOS window:
+
+set PATH=%PATH%;C:\Spice\bin
+
+cd C:\Spice\examples\transimpedanceamp
+
+ngspice output.net
+
+*** ngspice window:
+
+run
+display
+* end display with 'q'
+plot vout2
+
+* write all data into raw file to actual directory C:\Spice\tests\transimpedanceamp:
+write timp.raw
+* write only input and output
+write timp2.raw v3#branch vout2
+quit
+
+Calling a source file in a different directory is done by:
+
+ngspice D:\testinput\output.net
+
+*********************************************************************
+*********************************************************************
+* Use ngnutmeg for plotting within the dos window (cmd.exe), using the
+raw file timp.raw created above:
+
+* Open a DOS window.
+
+*** DOS window:
+
+set PATH=%PATH%;C:\Spice\bin
+
+cd C:\Spice\examples\transimpedanceamp
+
+ngspice
+
+*** ngspice window:
+load timp.raw
+plot vout2
+plot i(v3)
+
+quit
+*********************************************************************
+
+*********************************************************************
+* Starting ngspice within the dos window (cmd.exe) , batch mode, using
+* .plot and/or .print commands in the input file (printer plot output),
+* no raw file, similar to SPICE2G6:
+
+* Open a DOS window.
+
+*** DOS window:
+
+set PATH=%PATH%;C:\Spice\bin
+
+cd C:\Spice\examples\
+
+ngspice -b -o cs.out cs_mixtv4.inp
+
+* The ouput will be plotted and printed to C:\Spice\examples\cs.out.
+
+* If you enter
+ngspice -b -r cs.raw -o cs.out cs_mixtv4.inp
+* instead, you will get a raw file (simulator output data),
+* .print and .plot will be ignored.
+* You may plot the data by using ngnutmeg (see example above).
+
+*********************************************************************
+*********************************************************************
+* A numparam example with convergence and ringing problems
+(Xiaoqun Wu e.a.: "Bifurcation Behavior of SPICE Simulations of Switching Converters: A Systematic
+Analysis of Erroneous Results", IEEE TRANSACTIONS ON POWER ELECTRONICS, VOL. 22, NO. 5, SEPTEMBER 2007, p.1743
+
+dos window (cmd.exe) , interactive mode:
+
+* Open a DOS window.
+
+*** DOS window:
+
+set PATH=%PATH%;C:\Spice\bin
+
+cd C:\Spice\examples\numparam
+
+ngspice power.cir
+
+*** ngspice window:
+
+run
+plot vc#branch
+
+*** compare to literature by selecting appropriate plot windows using right mouse tab
+
+* write all data into raw file to actual directory C:\Spice\examples\numparam:
+write power-all.raw
+* write only relevant output
+write power.raw vc#branch
+quit
+
+*********************************************************************
+*********************************************************************
+* Running ngspice from a different directory (for example D:\tmp)
+* Starting ngspice within the dos window (cmd.exe) , interactive mode:
+
+* Extract ngspice.zip to D:\tmp
+
+* Edit spinit (found in D:\tmp\Spice\share\ngspice\scripts) to have the correct
+ path for the XSPICE codemodels:
+ Line
+ codemodel C:/Spice/lib/spice/spice2poly.cm
+ has to be replaced by
+ codemodel D:/temp/Spice/lib/spice/spice2poly.cm
+ the other codemodels lines have to be changed respectively.
+
+* Open a DOS window.
+
+*** DOS window:
+
+set SPICE_LIB_DIR=D:\tmp\Spice\share\ngspice
+set PATH=%PATH%;D:\tmp\Spice\bin
+cd D:\tmp\Spice\examples\transimpedanceamp
+D:
+
+ngspice output.net
+
+*** ngspice window:
+
+run
+plot vout2
+
+* write all data into raw file to actual directory D:\tmp\Spice\tests\transimpedanceamp:
+write timp.raw
+* write only input and output
+write timp2.raw v3#branch vout2
+quit
+
+*********************************************************************
+*********************************************************************
+* Running ngspice from a different directory (for example D:\tmp)
+* Starting ngspice within the dos window (cmd.exe) , interactive mode
+ or starting with double click on ngspice in MS explorer:
+
+* Extract ngspice.zip to D:\tmp
+* under Windows XP you may put the following lines into C:\autoexec.bat:
+
+set SPICE_LIB_DIR=D:\tmp\Spice\share\ngspice
+set PATH=%PATH%;D:\tmp\Spice\bin
+
+* Edit spinit (found in D:\tmp\share\ngspice\scripts) to have the correct
+ path for the XSPICE codemodels:
+ Line
+ codemodel C:/Spice/lib/spice/spice2poly.cm
+ has to be replaced by
+ codemodel D:/temp/Spice/lib/spice/spice2poly.cm
+ the other codemodels lines have to be changed respectively.
+
+* You may then start immediately after opening the command window (cmd.exe)
+ with:
+
+cd D:\tmp\Spice\examples\transimpedanceamp
+D:
+
+ngspice output.net
+
+*** ngspice window:
+
+run
+plot vout2
+
+* write all data into raw file to actual directory D:\tmp\Spice\tests\transimpedanceamp:
+write timp.raw
+* write only input and output
+write timp2.raw v3#branch vout2
+quit
+
+*********************************************************************
+
+*********************************************************************
+*********************************************************************
+* spinit
+
+* spinit is used to set options or to set varioables. spinit is read into ngspice
+ before any input file. The codemeodel path for xspice may be set as well.
+
+ There is a search sequence for spinit.
+ 1) If the invironmental variable is SPICE_LIB_DIR is set to a path, e.g. to
+ SPICE_LIB_DIR=D:\tmp\Spice\share\ngspice, then spinit is searched for
+ in D:\tmp\Spice\share\ngspice\scripts. If not set then we look for it in
+ C:\Spice\share\ngspice\scripts. If this path is not available or spinit is
+ not there, then ngspice searches for spinit in the path where ngspice.exe
+ resides. If not found there, a warning note is issued.
+
+* .spiceinit
+
+* .spiceinit is read directly after the spinit file. You may keep spinit as is,
+ and put any personal preset variables or scripts into .spiceinit. Data in
+ .spiceinit will override data from spinit.
+ ngspice will search for .spiceinit either in your home directory or in the
+ directory where ngspice.exe is located.
+
+*********************************************************************
+*********************************************************************
+* Universial, simple install
+
+ Put ngspice.exe and spinit into a subdirectory myspice\bin
+ Put the codemodels (e.g. analog.cm) into a subdirectoty myspice\codemodels.
+ Edit spinit and change the codemodel lines to
+
+ codemodel ../codemodels/spice2poly.cm
+
+ etc.
+
+ Instead of 'myspice' you may now choose any directory for your installation
+ of \bin and \codemodels, even C:\ will work.
+
+
+*********************************************************************
+*********************************************************************
+* miscellaneous
+
+Documentation specific to ngspice is available at
+http://ngspice.sourceforge.net/docs.html.
+
+For additional info I recommend the Spice3 user manual at:
+http://newton.ex.ac.uk/teaching/CDHW/Electronics2/userguide/index.html#toc
+
+For some information on CIDER see
+http://embedded.eecs.berkeley.edu/pubs/downloads/cider/index.htm
+A manual however is missing on this web site.
+
+For an xspice manual see
+http://users.ece.gatech.edu/~mrichard/Xspice/
diff --git a/Windows/spice/lib/ngspice/analog.cm b/Windows/spice/lib/ngspice/analog.cm
new file mode 100644
index 00000000..9d88281c
--- /dev/null
+++ b/Windows/spice/lib/ngspice/analog.cm
Binary files differ
diff --git a/Windows/spice/lib/ngspice/digital.cm b/Windows/spice/lib/ngspice/digital.cm
new file mode 100644
index 00000000..dd3f943a
--- /dev/null
+++ b/Windows/spice/lib/ngspice/digital.cm
Binary files differ
diff --git a/Windows/spice/lib/ngspice/spice2poly.cm b/Windows/spice/lib/ngspice/spice2poly.cm
new file mode 100644
index 00000000..e3fb67b2
--- /dev/null
+++ b/Windows/spice/lib/ngspice/spice2poly.cm
Binary files differ
diff --git a/Windows/spice/lib/ngspice/xtradev.cm b/Windows/spice/lib/ngspice/xtradev.cm
new file mode 100644
index 00000000..19117c6e
--- /dev/null
+++ b/Windows/spice/lib/ngspice/xtradev.cm
Binary files differ
diff --git a/Windows/spice/lib/ngspice/xtraevt.cm b/Windows/spice/lib/ngspice/xtraevt.cm
new file mode 100644
index 00000000..437a4668
--- /dev/null
+++ b/Windows/spice/lib/ngspice/xtraevt.cm
Binary files differ
diff --git a/Windows/spice/share/man/man1/ngmultidec.1 b/Windows/spice/share/man/man1/ngmultidec.1
new file mode 100644
index 00000000..617ed32d
--- /dev/null
+++ b/Windows/spice/share/man/man1/ngmultidec.1
@@ -0,0 +1,105 @@
+.TH NGMULTIDEC 1 ngpice
+.SH NAME
+ngmultidec \- make ngpice sub-circuit for coupled transmission lines
+.SH SYNOPSIS
+.B ngmultidec
+[
+.IR options ...
+]
+.SH DESCRIPTION
+.I ngmultidec
+writes an ngspice input file to standard output which describes a sub-circuit for coupled lines
+using uncoupled simple lossy lines.
+.LP
+Each generated subcircuit models a 4-conductor transmission line with
+the following parameters: length
+.IR l ,
+line capacitance
+.IR c ,
+line resistance
+.IR r ,
+line conductance
+.IR g ,
+inductive_coeff_of_coupling
+.IR k ,
+inter-line capacitance
+.IR cm ,
+length
+.IR l .
+Derived parameters are:
+.IR lm ,
+.IR ctot .
+The values of
+.IR l ,
+.IR c ,
+the model name, the number of conductors and the length of the line
+must be specified.
+.LP
+It is important to note that the model is a simplified one - the
+following assumptions are made: 1. The self-inductance l, the
+self-capacitance ctot (note: not c), the series resistance r and the
+parallel capacitance g are the same for all lines, and 2. Each line
+is coupled only to the two lines adjacent to it, with the same
+coupling parameters cm and lm.
+The first assumption implies that edge effects have to be neglected.
+The utility of these assumptions is
+that they make the sL+R and sC+G matrices symmetric, tridiagonal and
+Toeplitz, with useful consequences (see the paper referenced below).
+.LP
+It may be noted that a symmetric two-conductor line is
+represented accurately by this model.
+.LP
+Standard C language scientific (exponent) notation may be used for options' numeric values.
+.SH OPTIONS
+.TP
+.BI \-o "subcircuit_name"
+Set the subcircuit name
+.TP
+.BI \-l "line_inductance"
+Set the line inductance.
+.TP
+.BI \-c "line_capacitance"
+Set the line capacitance.
+.TP
+.BI \-r "line_resistance"
+Set the line resistance.
+.TP
+.BI \-g "line_conductance"
+Set the line conductance.
+.TP
+.BI \-k "inductive_coefficient_of_coupling"
+Set the value of the inductive coefficient of coupling, whose
+absolute value
+.I k
+must be less than 1.0.
+.TP
+.BI \-x "line-to-line-capacitance"
+Set the line-to-line capacitance.
+.TP
+.BI \-L "length"
+Set the length of the line.
+.TP
+.BI \-n "number"
+Set the number of conductors.
+.TP
+.B \-u
+Write a usage message to standard error.
+.SH EXAMPLE
+.RS
+.B ngmultidec -n4 -l9e9 -c20e-12 -r5.3 -x5e12 -k0.7 -otest -L5.4 > test.cir
+.RE
+.SH SEE ALSO
+.nf
+.IR "Efficient Transient Simulation of Lossy Interconnect" ,
+J.S. Roychowdhury and D.O. Pederson,
+Proceedings of the Design Automation Conference,
+pp. 740-745.
+1991.
+.B http://portal.acm.org/citation.cfm?doid=127601.127762
+.fi
+.sp
+.IR ngnutmeg (1),
+.IR ngproc2mod (1),
+.IR ngsconvert (1),
+.IR ngspice (1),
+.IR nghelp (1).
diff --git a/Windows/spice/share/man/man1/ngnutmeg.1 b/Windows/spice/share/man/man1/ngnutmeg.1
new file mode 100644
index 00000000..bafc122b
--- /dev/null
+++ b/Windows/spice/share/man/man1/ngnutmeg.1
@@ -0,0 +1,83 @@
+.\" Copyright (c) 1985 Wayne A. Christopher, U. C. Berkeley CAD Group
+.ig
+
+(woman-find-file buffer-file-name)
+
+(let* ((man-args (concat "-l " buffer-file-name))
+ (bufname (concat "*Man " man-args "*")))
+ (when (get-buffer bufname)
+ (kill-buffer bufname))
+ (man man-args))
+
+(compile
+ (concat "groff -t -e -man -Tps "
+ buffer-file-name
+ " > /tmp/tmp.ps && gv /tmp/tmp.ps"))
+
+..
+.TH NGNUTMEG 1 "6 June 2010"
+.ds = \-\^\-
+.ds ngspice \s-2NGSPICE\s+2
+.SH "NAME"
+ngnutmeg \- ngspice post-processor
+.SH "SYNOPSIS"
+\fBngnutmeg\fP [\fIoptions\fP] [\fIdatafile\fP ...]
+.SH "DESCRIPTION"
+This man page is just a small overview.
+The primary documentation of ngspice is in the \*[ngspice] User's Manual,
+which is available as a pdf file.
+.br
+\fBngnutmeg\fP is a post processor for \*[ngspice] \- it takes
+the raw output file created by \fBngspice \-r\fP
+and plots the data on a graphics terminal or a workstation display.
+Note that the raw output file is different from the
+data that \*[ngspice] writes to the standard output.
+.SH "OPTIONS"
+.TP
+\fB\-\fP
+.br
+Don't try to load the default data file ("rawspice") if no other files
+are given.
+.TP
+\fB\-n\fP or \fB\*=no\-spiceinit\fP
+Don't try to source the file ".spiceinit" upon startup. Normally \fBngnutmeg\fP
+tries to find the file in the current directory, and if it is not found then
+in the user's home directory.
+.TP
+\fB\-q\fP or \fB\*=completion\fP
+Enable command completion. (defect)
+.TP
+\fB\-t\fP \fIterm\fP or \fB\*=term=\fP\fIterm\fP
+The program is being run on a terminal with \fBmfb\fP name \fIterm\fP.
+.TP
+\fB\-h\fP or \fB\*=help\fP
+Display a verbose help on the arguments available to the program.
+.TP
+\fB\-v\fP or \fB\*=version\fP
+Display a version number and copyright information of the program.
+.PP
+Further arguments are taken to be data files in binary or ascii format
+(see \fBsconvert\fP(1)) which are loaded into ngnutmeg.
+If the file
+is in binary format, it may be only partially completed (useful for
+examining \*[ngspice] output before the simulation is finished).
+One file may contain any number of data sets from different analyses.
+.SH "ENVIRONMENT"
+See ngspice(1)
+.SH "FILES"
+See ngspice(1)
+.SH "SEE ALSO"
+sconvert(1), ngspice(1), mfb(3), writedata(3), and
+.br
+\*[ngspice] User's Manual at \fBhttp://ngspice.sourceforge.net/docs.html\fP
+.SH "BUGS"
+Please report bugs to the ngspice project via
+.br
+\fBhttp://ngspice.sourceforge.net/bugrep.html\fP
+.SH "AUTHOR"
+Wayne Christopher (faustus@cad.berkeley.edu)
+.br
+\fBngspice\fP: various authors (see \fBhttp://sourceforge.net/projects/ngspice/\fP)
+.\" Local Variables:
+.\" mode: nroff
+.\" End:
diff --git a/Windows/spice/share/man/man1/ngsconvert.1 b/Windows/spice/share/man/man1/ngsconvert.1
new file mode 100644
index 00000000..55f72967
--- /dev/null
+++ b/Windows/spice/share/man/man1/ngsconvert.1
@@ -0,0 +1,126 @@
+.\" Copyright (c) 1985 Wayne A. Christopher, U. C. Berkeley CAD Group
+.TH SCONVERT 1 "20 March 1986"
+.UC 4
+.SH NAME
+sconvert \- convert spice formats
+.SH SYNOPSIS
+.B sconvert fromtype fromfile totype tofile
+.br
+.B sconvert fromtype totype
+.br
+.B sconvert
+.br
+.SH DESCRIPTION
+.B Sconvert
+translates spice output files among three formats: the old
+binary format, a new binary format, and a new ascii format.
+The formats are specified by the
+.B fromtype
+and
+.B totype
+arguments: `o' for the old format, `b' for the new binary format,
+and `a' for the new ascii format.
+.B Fromtype
+specifies the format to be read, and
+.B totype
+specifies the format to be written.
+If
+.B fromfile
+and
+.B tofile
+are given, then they are used as the input and output, otherwise
+standard input and output are used.
+(Note that this second option is only available on \s-2UNIX\s+2 systems
+\- on VMS and other systems you must supply the filenames.)
+If no arguments are given, the parameters are prompted for.
+.PP
+Binary format is the preferred format for general use, as it is
+the most economical in terms of space and speed of access, and ascii is
+provided to make it easy to modify data files and transfer them
+between machines with different floating-point formats.
+The old format is provided only
+for backward compatibility.
+The three formats are as follows:
+.br
+.nf
+
+.B Old:
+
+ What Size in Bytes
+
+ title 80
+ date 8
+ time 8
+ numoutputs 2
+ the integer 4 2
+ variable names --
+ char[numoutputs][8] numoutputs * 8
+ types of output numoutputs * 2
+ node index numoutputs * 2
+ plot title numoutputs * 24
+ the actual data numpoints * numoutputs * 8
+
+.B Ascii:
+
+ Title: \fITitle Card String\fR
+ Date: \fIDate\fR
+ [ Plotname: \fIPlot Name\fR
+ Flags: \fIcomplex\fR or \fIreal\fR
+ No. Variables: \fInumoutputs\fR
+ No. Points: \fInumpoints\fR
+ Command: \fInutmeg command\fR
+ Variables: 0 \fIvarname1\fR \fItypename1\fR
+ 1 \fIvarname2\fR \fItypename2\fR
+ etc...
+ Values:
+ 0 n n n n ...
+ 1 n n n n ...
+ And so forth...
+ ] repeated one or more times
+.fi
+.PP
+If one of the flags is \fIcomplex\fR, the points look like r,i where r and i
+are floating point (in %e format).
+Otherwise they are in %e format.
+Only one of \fIreal\fR and \fIcomplex\fR should appear.
+.PP
+The lines are guaranteed to be less than 80 columns wide (unless the
+plot title or variable names are very long), so this format is safe
+to mail between systems like CMS.
+.PP
+Any number of \fBCommand:\fR lines may appear between the \fBNo. Points:\fR
+and the \fBVariables:\fR lines, and whenever the plot is loaded into
+\fBnutmeg\fR they will be executed.
+.nf
+
+.B Binary:
+
+ \fITitle Card\fR (a NULL terminated string)
+ \fIDate, Time\fR (a NULL terminated string)
+ [
+ \fIPlot title\fR (a NULL terminated string)
+ \fINumber of variables\fR (an int)
+ \fINumber of data points\fR (an int)
+ \fIflags\fR (a short)
+ \fIvariable header struct\fR (repeated numoutputs times)
+ \fIvariable name\fR (a NULL terminated string)
+ \fIvariable type\fR (an int)
+ \fIset of outputs\fR (repeated numpoints times)
+ ] repeated one or more times.
+.fi
+.PP
+A set of outputs is a vector of doubles of length numoutputs, or
+a vector of real-imaginary pairs of doubles if the data is complex.
+.SH "SEE ALSO"
+nutmeg(1), spice(1), writedata(3)
+.SH AUTHOR
+Wayne Christopher (faustus@cad.berkeley.edu)
+.SH BUGS
+If variable names and the title
+and plotname strings have trailing
+blanks in them they will be stripped off when the file is read, if
+it is in ascii format.
+.PP
+If a plot title begins with "Title:" \fBnutmeg\fR will be fooled into thinking
+that this is an ascii format file.
+\fBSconvert\fR always requires the type to be specified, however.
diff --git a/Windows/spice/share/man/man1/ngspice.1 b/Windows/spice/share/man/man1/ngspice.1
new file mode 100644
index 00000000..cd5e31db
--- /dev/null
+++ b/Windows/spice/share/man/man1/ngspice.1
@@ -0,0 +1,152 @@
+.\" Copyright (c) 1985 Wayne A. Christopher, U. C. Berkeley CAD Group
+.ig
+
+(woman-find-file buffer-file-name)
+
+(let* ((man-args (concat "-l " buffer-file-name))
+ (bufname (concat "*Man " man-args "*")))
+ (when (get-buffer bufname)
+ (kill-buffer bufname))
+ (man man-args))
+
+(compile (concat "groff -t -e -man -Tps "
+ buffer-file-name
+ " > /tmp/tmp.ps && gv /tmp/tmp.ps"))
+
+..
+.TH NGSPICE 1 "6 June 2010"
+.ds = \-\^\-
+.ds ngspice \s-2NGSPICE\s+2
+.SH "NAME"
+ngspice \- circuit simulator derived from SPICE3f5
+.SH "SYNOPSIS"
+\fBngspice\fP [\fIoptions\fP] [\fIfile\fP ...]
+.SH "DESCRIPTION"
+This man page is just a small overview.
+The primary documentation of ngspice is in the \*[ngspice] User's Manual,
+which is available as a pdf file.
+.SH "OPTIONS"
+.TP
+\fB\-n\fP or \fB\*=no\-spiceinit\fP
+Don't try to source the file ".spiceinit" upon startup. Normally \*[ngspice]
+tries to find the file in the current directory, and if it is not found then
+in the user's home directory.
+.TP
+\fB\-q\fP or \fB\*=completion\fP
+Enable command completion. (defect)
+.TP
+\fB\-t\fP \fIterm\fP or \fB\*=term=\fP\fIterm\fP
+The program is being run on a terminal with \fBmfb\fP name \fIterm\fP.
+.TP
+\fB\-b\fP or \fB\*=batch\fP
+Run in batch mode.
+\*[ngspice] will read the standard input or the specified
+input file and do the simulation.
+Note that if the standard input is not a terminal, \*[ngspice] will default
+to batch mode, unless the \-i flag is given.
+.TP
+\fB\-s\fP or \fB\*=server\fP
+Run in server mode.
+This is like batch mode, except that a temporary rawfile is used and then
+written to the standard output, preceded by a line with a single "@", after
+the simulation is done.
+This mode is used by the ngspice daemon.
+.TP
+\fB\-i\fP or \fB\*=interactive\fP
+Run in interactive mode.
+This is useful if the standard input is not a terminal but interactive mode
+is desired.
+Command completion is not available unless the standard input is a terminal,
+however.
+.TP
+\fB\-r\fP \fIrawfile\fP or \fB\*=rawfile=\fP\fIfile\fP
+Use \fIrawfile\fP as the default file into which the results of
+the simulation are saved.
+.TP
+\fB\-c\fP \fIcircuitfile\fP or \fB\*=circuitfile=\fP\fIcircuitfile\fP
+Use \fIcircuitfile\fP as the default input deck.
+.TP
+\fB\-h\fP or \fB\*=help\fP
+Display a verbose help on the arguments available to the program.
+.TP
+\fB\-v\fP or \fB\*=version\fP
+Display a version number and copyright information of the program.
+.TP
+\fB\-a\fP or \fB\*=autorun\fP
+FIXME
+.TP
+\fB\-o\fP \fIoutfile\fP or \fB\*=output=\fP\fIoutfile\fP
+All logs generated during a batch run (\fB\-b\fP) will be saved in \fIoutfile\fP.
+.TP
+\fB\-p\fP or \fB\*=pipe\fP
+Allow a program (e.g., xcircuit) to act as a GUI frontend for
+ngspice through a pipe.
+Thus ngspice will assume that the pipe is a tty and allows one to run in
+interactive mode.
+.PP
+Further arguments are taken to be SPICE input decks, which are read
+and saved.
+(If batch mode is requested then they are run immediately.)
+.SH "ENVIRONMENT"
+.TP
+\fBSPICE_LIB_DIR\fP
+.TP
+\fBSPICE_EXEC_DIR\fP
+.TP
+\fBSPICE_HOST\fP
+.TP
+\fBSPICE_BUGADDR\fP
+.TP
+\fBSPICE_EDITOR\fP
+.TP
+\fBSPICE_ASCIIRAWFILE\fP default \fI0\fP
+Format of the rawfile.
+\fI0\fP for binary, and \fI1\fP for ascii.
+.TP
+\fBSPICE_NEWS\fP default \fI$SPICE_LIB_DIR/news\fP
+A file which is copied verbatim to stdout when ngspice starts in interactive mode.
+.TP
+\fBSPICE_MFBCAP\fP default \fI$SPICE_LIB_DIR/mfbcap\fP
+.TP
+\fBSPICE_HELP_DIR\fP default \fI$SPICE_LIB_DIR/helpdir\fP
+.TP
+\fBSPICE_SCRIPTS\fP default \fI$SPICE_LIB_DIR/scripts\fP
+In this directory the \fIspinit\fP file will be searched.
+.TP
+\fBSPICE_PATH\fP default \fI$SPICE_EXEC_DIR/ngspice\fP
+.PP
+various undocumented ngspice centric environment variables :
+.TP
+\fBNGSPICE_MEAS_PRECISION\fP
+.TP
+\fBSPICE_NO_DATASEG_CHECK\fP
+.PP
+Common environment variables :
+.TP
+\fBTERM\fP \fBLINES\fP \fBCOLS\fP \fBDISPLAY\fP \fBHOME\fP \fBPATH\fP \fBEDITOR\fP \fBSHELL\fP
+.TP
+\fBPOSIXLY_CORRECT\fP
+.SH "FILES"
+.TP
+\fI$SPICE_LIB_DIR/scripts/spinit\fP
+The System's Initialisation File.
+.TP
+\fI\&.spiceinit\fP or \fI$HOME/.spiceinit\fP
+The User's Initialisation File.
+.SH "SEE ALSO"
+sconvert(1), ngnutmeg(1), mfb(3), writedata(3), and
+.br
+\*[ngspice] User's Manual at \fBhttp://ngspice.sourceforge.net/docs.html\fP
+.SH "BUGS"
+Please report bugs to the ngspice project via
+.br
+\fBhttp://ngspice.sourceforge.net/bugrep.html\fP
+.SH "AUTHORS"
+\fBspice3\fP: Tom Quarles (quarles@cad.berkeley.edu)
+.br
+\fBnutmeg\fP: User interface: Wayne Christopher (faustus@cad.berkeley.edu)
+.br
+\fBngspice\fP: various authors (see \fBhttp://sourceforge.net/projects/ngspice/\fP)
+.\" Local Variables:
+.\" mode: nroff
+.\" End:
diff --git a/Windows/spice/share/ngspice/scripts/ciderinit b/Windows/spice/share/ngspice/scripts/ciderinit
new file mode 100644
index 00000000..56163322
--- /dev/null
+++ b/Windows/spice/share/ngspice/scripts/ciderinit
@@ -0,0 +1,23 @@
+*** This is a sample spice/cider initialization file.
+alias pl print line
+alias pc print col
+alias ds display
+alias hi history
+alias li listing
+alias p plot
+alias pr print
+alias q quit
+alias bye quit
+alias exit quit
+alias so source
+alias ld load
+alias xg xgraph tmp
+alias sp setplot
+alias dl devload
+alias dx devaxis
+set width = 80 height = 24 nosort noaskquit nobreak
+set xbrushheight = 3 xbrushwidth = 3
+set unixcom
+set hcopydevtype = postscript
+set pointstyle = markers
+set term = vt100
diff --git a/Windows/spice/share/ngspice/scripts/devaxis b/Windows/spice/share/ngspice/scripts/devaxis
new file mode 100644
index 00000000..7b3d23f3
--- /dev/null
+++ b/Windows/spice/share/ngspice/scripts/devaxis
@@ -0,0 +1,69 @@
+* initialize a device plot
+.control
+begin
+ unset axis
+ if $argc = 1
+ set axis = $argv[1]
+ strcmp flag $axis "x"
+ if ($flag = 0)
+ echo "setting axis to x"
+ strcmp flag "$?&devaxis" "0"
+ if ($flag = 0)
+ strcmp flag "$?&xaxis" "0"
+ if ($flag = 0)
+ echo "Error: no x axis present"
+ else
+ transpose all
+ setscale xaxis
+ let devaxis = 1
+ end
+ else
+ strcmp flag "$&devaxis" "-1"
+ if ($flag = 0)
+ strcmp flag "$?&xaxis" "0"
+ if ($flag = 0)
+ echo "Error: no x axis present"
+ else
+ transpose all
+ setscale xaxis
+ let devaxis = 1
+ end
+ end
+ end
+ else
+ strcmp flag $axis "y"
+ if ($flag = 0)
+ echo "setting axis to y"
+ strcmp flag "$?&devaxis" "0"
+ if ($flag = 0)
+ strcmp flag "$?&yaxis" "0"
+ if ($flag = 0)
+ echo "Error: no y axis present"
+ else
+ setscale yaxis
+ let devaxis = -1
+ end
+ else
+ strcmp flag "$&devaxis" "1"
+ if ($flag = 0)
+ strcmp flag "$?&yaxis" "0"
+ if ($flag = 0)
+ echo "Error: no y axis present"
+ else
+ transpose all
+ setscale yaxis
+ let devaxis = -1
+ end
+ end
+ end
+ else
+ echo "Error: unknown axis" $axis
+ echo "usage: devaxis <x|y>"
+ end
+ end
+ else
+ echo "usage: devaxis <x|y>"
+ end
+
+ unset axis flag
+end
diff --git a/Windows/spice/share/ngspice/scripts/devload b/Windows/spice/share/ngspice/scripts/devload
new file mode 100644
index 00000000..d007fad5
--- /dev/null
+++ b/Windows/spice/share/ngspice/scripts/devload
@@ -0,0 +1,21 @@
+* initialize a device plot
+.control
+begin
+ unset devfile
+ if $argc = 1
+ set devfile = $argv[1]
+ load $devfile
+ strcmp flag "$?&y" "1"
+ if ($flag = 0)
+ let yaxis = y[0]
+ transpose all
+ let xaxis = x[0]
+ transpose all
+ setscale yaxis
+ end
+ else
+ echo "usage: devload <filename>"
+ end
+
+ unset devfile flag
+end
diff --git a/Windows/spice/share/ngspice/scripts/setplot b/Windows/spice/share/ngspice/scripts/setplot
new file mode 100644
index 00000000..38ca0da1
--- /dev/null
+++ b/Windows/spice/share/ngspice/scripts/setplot
@@ -0,0 +1,64 @@
+* set the current working plot
+.control
+
+begin
+ unset resp
+ if $argc
+ set resp = $argv[1]
+ else
+ if $?plots = 0
+ echo Error: there aren\'t any plots currently loaded.
+ goto bottom
+ else
+ if $#plots = 0
+ echo Error: there aren\'t any plots currently loaded.
+ goto bottom
+ end
+ end
+
+ if $?resp = 0
+ set oldplot = $curplot
+ echo ' Type the name of the desired plot:'
+ echo ''
+ echo ' new New plot'
+ foreach pl $plots
+ set curplot = $pl
+ strcmp i $pl $oldplot
+ if $i = 0
+ echo "Current $pl $curplottitle ({$curplotname})"
+ else
+ echo " $pl $curplottitle ({$curplotname})"
+ end
+ end
+ set curplot = $oldplot
+ echo -n '? '
+ set resp = $<
+ end
+ end
+
+
+ strcmp i $resp ""
+ if $i = 0
+ goto bottom
+ end
+
+ strcmp i $resp new
+ if $i = 0
+ set curplot = new
+ goto bottom
+ end
+
+ foreach pl $plots
+ strcmp i $resp $pl
+ if $i = 0
+ set curplot = $pl
+ goto bottom
+ end
+ end
+
+ echo Error: no such plot name $resp
+
+ label bottom
+
+ unset resp i pl newflag oldplot
+end
diff --git a/Windows/spice/share/ngspice/scripts/spectrum b/Windows/spice/share/ngspice/scripts/spectrum
new file mode 100644
index 00000000..3e394432
--- /dev/null
+++ b/Windows/spice/share/ngspice/scripts/spectrum
@@ -0,0 +1,165 @@
+* Fourier Series Function for SPICE
+* This script is offered here for learning purposes, even if it is outdated
+* and superseeded by the spec function and especially by the much faster fft function.
+* You may use this script in conjunction with e.g. a ringoscillator output (see
+* the ngspice manual, chapter 17).
+
+.control
+ begin
+
+* Variable argc delivers the number of command line parameters given by the user
+* after the 'spectrum' command
+ if ($argc lt 4)
+ echo Error: Too few arguments.
+ echo ' 'Spectrum produces a plot containing a fourier series transformation of
+ echo ' 'the specified vectors
+ echo usage: spectrum startfreq stop step vec [[vec] ...]
+ goto bottom
+ end
+
+* Check if vectors 'time' and any input vector(s) are available
+* argv[n] delivers the command line entries after the 'spectrum' command,
+* starting with argv[1]. $argv[4-len] delivers the value of all tokens,
+* starting with postion 4 till the end of the command line
+ if ( time eq time )
+ foreach vec $argv[4-len]
+ if ( $vec eq $vec )
+ else
+ goto bottom
+ end
+ end
+ else
+ echo ' 'Spectrum can not work without a time vector from a transient analysis.
+ goto bottom
+ end
+
+ * generate a new plot entitled 'scratch', which will hold intermediate
+ * results and will be discarded after their evaluation.
+ set dt=$curplot
+ set title=$curplottitle
+ set curplot=new
+ set scratch=$curplot
+
+ * A vector 'span' is created in the 'scratch' plot to hold the time difference
+ * of the transient simulation. {$dt}.time allows to access the 'time' vector
+ * from the dt plot (which is normally named 'tranx' with x a consecutoive
+ * integer number, depending on the amount of transient simulations already run
+ * in the present job.
+ let span={$dt}.time[length({$dt}.time)-1]-{$dt}.time[0]
+
+* Calculate the number of steps in all of the spectra to be evaluated below
+ if ($argv[3] gt 0.999/span)
+ let fpoints= ( $argv[2] - $argv[1] ) / $argv[3] +1
+ if (fpoints < 2)
+ echo frequency start stop or step not correctly specified
+ goto reset
+ end
+ else
+ echo Error: time span is not long enough for a step frequency of $argv[3] Hz
+ goto reset
+ end
+ let lent = length({$dt}.time)
+ set lent = "$&lent"
+ let nyquist = {$lent}/2/span
+ if ($argv[2] gt nyquist)
+ echo Error: The nyquist limit is exceeded, try a frequency less than "$&nyquist" Hz
+ goto reset
+ end
+ set fpoints="$&fpoints"
+
+ * generate a new plot to hold the spectra
+ set curplot=new
+ set spec=$curplot
+ set curplottitle=$title
+ set curplotname='Spectrum Analysis'
+
+* argv[3] is the third agrgument from the input line
+* spectrum 1 1000MEG 10MEG v(out25)
+* that is the delta frequency
+* The fcn vector(n) creates a vector of length n, its elements have
+* the values 0, 1, 2, 3, ..., n-2, n-1. Each element then is multiplied
+* with the frequency step value.
+ let frequency=vector( $fpoints )*$argv[3]
+
+* Add an frequency offset to each element of vector 'frequency'
+* to suppress the (typically) large dc component.
+ dowhile frequency[1] < ( $argv[1] + 1e-9 )
+ let frequency = frequency + $argv[3]
+ end
+
+* For each input vector given on the command line,
+* create a new vector for complex numbers
+ foreach vec $argv[4-len]
+ let $vec = vector( $fpoints ) + j(vector( $fpoints ))
+ reshape $vec [{$fpoints}]
+ end
+
+* $scratch is a plot for intermediate results, will be destroyed during cleanup
+* $dt is the plot with the original data
+* $spec is a plot for storing the spectrum
+ set curplot=$scratch
+
+ * some test
+ let npers=1
+ let test = span-2/$argv[3] + 1e-9
+ while test > 0
+ let npers = npers + 1
+ let test = test-1/$argv[3]
+ end
+
+ * Do the spectrum calculations
+ let ircle = 2*pi*max(-1,({$dt}.time-{$dt}.time[{$lent}-1])*{$argv[3]}/npers)
+ let win = 1 - cos(ircle)
+ let ircle = npers*ircle
+ let circle = ircle * ({$spec}.frequency[0]/$argv[3] - 1)
+ let k=vector( $fpoints )
+ foreach k $&k
+ let circle = circle + ircle
+ foreach vec $argv[4-len]
+ let tmp = win*{$dt}.{$vec}
+ let {$spec}.{$vec}[{$k}] = 2*(mean(cos(circle)*tmp),mean(sin(circle)*tmp))
+ end
+ end
+
+* plot (and write) the generated spectrum
+ set curplot = $spec
+ settype frequency frequency
+ foreach vec $argv[4-len]
+ let spectrum = mag({$vec})
+ plot spectrum
+ write specout.out spectrum
+ end
+
+* If you have an oscillator, fimd its frequency
+* as maximum of vector spectrum or goto end (uncomment next line)
+* goto cleanup
+ set curplot=$scratch
+ let counter = 0
+ let contents = 0
+ let freqmax = 0
+ let spectrum = {$spec}.spectrum
+
+ foreach spectrum $&spectrum
+ if counter > 4
+ if ( contents < $spectrum )
+ let contents = $spectrum
+ set count = "$&counter"
+ let freqmax = {$spec}.frequency[{$count}]
+ end
+ end
+ let counter = counter + 1
+ end
+
+ echo
+ echo Osc. frequency at "$&freqmax" Hz
+ echo
+ goto cleanup
+
+ label reset
+ set curplot=$dt
+ label cleanup
+ destroy $scratch
+ unset fpoints dt scratch spec vec k title lent
+ label bottom
+
+ end
diff --git a/Windows/spice/share/ngspice/scripts/spinit b/Windows/spice/share/ngspice/scripts/spinit
new file mode 100644
index 00000000..ed5cd0e6
--- /dev/null
+++ b/Windows/spice/share/ngspice/scripts/spinit
@@ -0,0 +1,31 @@
+* Standard ngspice init file
+alias exit quit
+alias acct rusage all
+set x11lineararcs
+*set rndseed=12
+** ascii rawfile **
+*set filetype=ascii
+** frontend debug output **
+*set ngdebug
+** no asking after quit **
+set noaskquit
+** set the number of threads in openmp
+** default (if compiled with --enable-openmp) is: 2
+*set num_threads=4
+
+strcmp __flag $program "ngspice"
+if $__flag = 0
+
+* For SPICE2 POLYs, edit the below line to point to the location
+* of your codemodel.
+
+ codemodel C:/Spice/lib/ngspice/spice2poly.cm
+
+* The other codemodels
+ codemodel C:/Spice/lib/ngspice/analog.cm
+ codemodel C:/Spice/lib/ngspice/digital.cm
+ codemodel C:/Spice/lib/ngspice/xtradev.cm
+ codemodel C:/Spice/lib/ngspice/xtraevt.cm
+
+end
+unset __flag
diff --git a/Windows/spice/tests/.gitignore b/Windows/spice/tests/.gitignore
new file mode 100644
index 00000000..27779af0
--- /dev/null
+++ b/Windows/spice/tests/.gitignore
@@ -0,0 +1,8 @@
+*.test
+*.log
+
+ngspiceCkt
+
+/xspice/digital/spinit
+
+results/
diff --git a/Windows/spice/tests/ChangeLog b/Windows/spice/tests/ChangeLog
new file mode 100644
index 00000000..96f56f5b
--- /dev/null
+++ b/Windows/spice/tests/ChangeLog
@@ -0,0 +1,23 @@
+2001-12-07 Paolo Nenzi <p.nenzi@ieee.org>
+
+ * tests/: added mesa tests from macspice3f4 and corrected all other tests.
+
+2001-12-04 Emmanuel Rouat <emmanuel.rouat@wanadoo.fr>
+
+ * check.sh (testdir): turned that script into 'real' sh script
+ (was bash, really)
+
+2000-09-14 Arno W. Peters <A.W.Peters@ieee.org>
+
+ * diffpair.out, filters/lowpass.out, polezero/filt_bridge_t.out,
+ polezero/filt_multistage.out, polezero/filt_rc.out,
+ resistance/res_array.out, resistance/res_partition.out: Updated
+ for new spice output.
+
+
+2000-09-09 Arno W. Peters <A.W.Peters@ieee.org>
+
+ * fourbitadder.out, resistance/res_simple.out: Updated to
+ correspond to the new output from ngspice.
+
+
diff --git a/Windows/spice/tests/Makefile.am b/Windows/spice/tests/Makefile.am
new file mode 100644
index 00000000..8b896304
--- /dev/null
+++ b/Windows/spice/tests/Makefile.am
@@ -0,0 +1,50 @@
+## Process this file with automake to produce Makefile.in
+
+SUBDIRS = \
+ bsim3 \
+ bsim4 \
+ bsimsoi \
+ hisim \
+ hisimhv1 \
+ regression
+
+if XSPICE_WANTED
+SUBDIRS += xspice
+endif
+
+
+DIST_SUBDIRS = \
+ bsim1 \
+ bsim2 \
+ bsim3 \
+ bsim3soidd \
+ bsim3soifd \
+ bsim3soipd \
+ bsim4 \
+ bsimsoi \
+ filters \
+ general \
+ hfet \
+ hisim \
+ hisimhv1 \
+ jfet \
+ mes \
+ mesa \
+ mos6 \
+ polezero \
+ regression \
+ resistance \
+ sensitivity \
+ transient \
+ transmission \
+ vbic \
+ xspice
+
+
+TESTS_ENVIRONMENT = \
+ $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ README bin .gitignore
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/Makefile.in b/Windows/spice/tests/Makefile.in
new file mode 100644
index 00000000..6fe8eb1a
--- /dev/null
+++ b/Windows/spice/tests/Makefile.in
@@ -0,0 +1,644 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@XSPICE_WANTED_TRUE@am__append_1 = xspice
+subdir = tests
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ ChangeLog
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+SUBDIRS = bsim3 bsim4 bsimsoi hisim hisimhv1 regression \
+ $(am__append_1)
+DIST_SUBDIRS = \
+ bsim1 \
+ bsim2 \
+ bsim3 \
+ bsim3soidd \
+ bsim3soifd \
+ bsim3soipd \
+ bsim4 \
+ bsimsoi \
+ filters \
+ general \
+ hfet \
+ hisim \
+ hisimhv1 \
+ jfet \
+ mes \
+ mesa \
+ mos6 \
+ polezero \
+ regression \
+ resistance \
+ sensitivity \
+ transient \
+ transmission \
+ vbic \
+ xspice
+
+TESTS_ENVIRONMENT = \
+ $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ README bin .gitignore
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+ install-am install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-generic clean-libtool \
+ ctags ctags-recursive distclean distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/README b/Windows/spice/tests/README
new file mode 100644
index 00000000..cafa6690
--- /dev/null
+++ b/Windows/spice/tests/README
@@ -0,0 +1,28 @@
+ngspice test and example files:
+===============================
+
+This directory is organized as a tree of subdirectories containing test files
+for devices and analyses implemented in ngspice.
+
+Some files comes from the original Spice3f5 package and others have been
+contributed by developers and users.
+
+
+File Extension Convention:
+
+.cir : Circuit file. This can be a simple circuit description or a spice2
+ input file.
+.out : .cir files have been run and results are recorded into this
+ type of file. This is useful if want to test ngspice against
+ known (hopefully correct results).
+
+REPLICATE TESTS
+
+To replicate tests you have to launch configure without any option and
+compile ngspice. In the future this will change.
+
+TO ADD NEW TESTS
+
+Take an existing test and adopt it to your liking. Add the test
+script and its supporting files to Makefile.am. Use `make check' to
+see your new test in action.
diff --git a/Windows/spice/tests/bsim1/Makefile.am b/Windows/spice/tests/bsim1/Makefile.am
new file mode 100644
index 00000000..9924d8c7
--- /dev/null
+++ b/Windows/spice/tests/bsim1/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ test.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim1/Makefile.in b/Windows/spice/tests/bsim1/Makefile.in
new file mode 100644
index 00000000..e4034674
--- /dev/null
+++ b/Windows/spice/tests/bsim1/Makefile.in
@@ -0,0 +1,514 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim1
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ test.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim1/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim1/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim1/test.cir b/Windows/spice/tests/bsim1/test.cir
new file mode 100644
index 00000000..0ca6150f
--- /dev/null
+++ b/Windows/spice/tests/bsim1/test.cir
@@ -0,0 +1,108 @@
+Test of MOS BSIM1 implementation; DC transfer curve
+******************************************************************
+MN1 13 2 0 4 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN2 23 2 0 5 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN3 33 2 0 6 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN4 43 2 0 7 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN5 53 2 0 8 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+VDS 3 0 0.05
+VGS 2 0 0
+V1 3 13 0
+V2 3 23 0
+V3 3 33 0
+V4 3 43 0
+V5 3 53 0
+VBS1 4 0 0
+VBS2 5 0 -1
+VBS3 6 0 -2
+VBS4 7 0 -3
+VBS5 8 0 -4
+***************************************************************
+*.OPTIONS LIMPTS=5000 ACCT
+.OPTIONS NOACCT
+.DC VGS 0 5 0.01
+.PRINT DC I(V1) I(V2) I(V3) I(V4) I(V5)
+*.PLOT DC I(V1) I(V2) I(V3) I(V4) I(V5)
+*.OPTIONS LIMPTS=501 ACCT
+*VGS 2 0 PWL(0 0 5 5)
+*.TRAN 0 5 0.01
+*.PRINT TRAN I(V1) I(V2) I(V3) I(V4) I(V5)
+***** MODEL PARAMETERS TEMP2 ********************
+.MODEL NMOS NMOS
++ LEVEL = 4.00000E+000
++ TOX = 3.00000E-002
++ VDD = 5.00000E+000
++ TEMP = 2.70000E+001
++ DL = 7.97991E-001
++ DW = 4.77402E-001
++ VFB = -1.0087E+000
++ PHI = 7.96434E-001
++ K1 = 1.31191E+000
++ K2 = 1.46640E-001
++ ETA = -1.0027E-003
++ MUZ = 5.34334E+002
++ U0 = 4.38497E-002
++ U1 = -5.7332E-002
++ X2E = -7.6911E-004
++ X3E = 7.86777E-004
++ X2MZ = 8.25434E+000
++ MUS = 5.40612E+002
++ X2MS = -1.2992E+001
++ X3MS = -9.4035E+000
++ X2U0 = 1.06821E-003
++ X2U1 = -1.9209E-002
++ X3U1 = 7.76925E-003
++ LVFB = -2.1402E-001
++ WVFB = 3.44354E-001
++ LK1 = 3.23395E-001
++ WK1 = -5.7698E-001
++ LK2 = 1.68585E-001
++ WK2 = -1.8796E-001
++ LETA = -9.4847E-003
++ WETA = 1.47316E-002
++ LU0 = 6.38105E-002
++ WU0 = -6.1053E-002
++ LU1 = 1.01174E+000
++ WU1 = 1.62706E-002
++ LX2E = 9.62411E-003
++ WX2E = -3.7951E-003
++ LX3E = 7.35448E-004
++ WX3E = -1.7796E-003
++ LX2MZ = -2.4197E+001
++ WX2MZ = 1.95696E+001
++ LMUS = 6.21401E+002
++ WMUS = -1.9190E+002
++ LX2MS = -6.4900E+001
++ WX2MS = 4.29043E+001
++ LX3MS = 1.18239E+002
++ WX3MS = -2.9747E+001
++ LX2U0 = -8.0958E-003
++ WX2U0 = 4.03379E-003
++ LX2U1 = -7.4573E-002
++ WX2U1 = 1.47520E-002
++ LX3U1 = -1.0940E-001
++ WX3U1 = -8.3353E-003
++ N0 = 1.55
++ NB = 0.09
++ ND = 0.0
++ LN0 = 0.0
++ WN0 = 0.0
++ LNB = 0.0
++ WNB = 0.0
++ LND = 0.0
++ WND = 0.0
++ CGDO = 2.70000E-010
++ CGSO = 2.70000E-010
++ CGBO = 1.40000E-010
++ XPART = 1.0
++ RSH = 35.0
++ CJ = 2.75E-4
++ CJSW = 1.90E-10
++ JS = 1.0E-8
++ PB = 0.7
++ PBSW = 0.8
++ MJ = 0.5
++ MJSW = 0.33
++ WDF = 0.0
+***** *****
+.END
diff --git a/Windows/spice/tests/bsim2/Makefile.am b/Windows/spice/tests/bsim2/Makefile.am
new file mode 100644
index 00000000..9924d8c7
--- /dev/null
+++ b/Windows/spice/tests/bsim2/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ test.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim2/Makefile.in b/Windows/spice/tests/bsim2/Makefile.in
new file mode 100644
index 00000000..02bc2f9e
--- /dev/null
+++ b/Windows/spice/tests/bsim2/Makefile.in
@@ -0,0 +1,514 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim2
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ test.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim2/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim2/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim2/test.cir b/Windows/spice/tests/bsim2/test.cir
new file mode 100644
index 00000000..74e3a486
--- /dev/null
+++ b/Windows/spice/tests/bsim2/test.cir
@@ -0,0 +1,80 @@
+Test of MOS BSIM2 implementation; DC transfer curve
+******************************************************************
+MN1 13 2 0 4 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN2 23 2 0 5 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN3 33 2 0 6 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN4 43 2 0 7 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+MN5 53 2 0 8 NMOS L=10U W=50.0U AD=100P AS=100P PD=40U PS=40U
+VDS 3 0 0.05
+VGS 2 0 0
+V1 3 13 0
+V2 3 23 0
+V3 3 33 0
+V4 3 43 0
+V5 3 53 0
+VBS1 4 0 0
+VBS2 5 0 -1
+VBS3 6 0 -2
+VBS4 7 0 -3
+VBS5 8 0 -4
+***************************************************************
+*.OPTIONS LIMPTS=5000 ACCT
+.OPTIONS NOACCT
+.DC VGS 0 5 0.01
+.PRINT DC I(V1) I(V2) I(V3) I(V4) I(V5)
+*.PLOT DC I(V1) I(V2) I(V3) I(V4) I(V5)
+*.OPTIONS LIMPTS=501 ACCT
+*VGS 2 0 PWL(0 0 5 5)
+*.TRAN 0 5 0.01
+*.PRINT TRAN I(V1) I(V2) I(V3) I(V4) I(V5)
+***** MODEL PARAMETERS TEMP2 ********************
+* This file contains the BSIM2 process file parameters as they should
+* be input to the .model card of spice3c1.
+.model nmos nmos level=5
++ vfb = -0.7919 lvfb = -0.0266 wvfb = 0.0000
++ phi = 0.8039 lphi = 0.0042 wphi = 0.0000
++ k1 = 0.7286 lk1 = 0.0309 wk1 = 0.0000
++ k2 = -0.0506 lk2 = 0.0786 wk2 = 0.0000
++ mu0 = 453.2926 dl = 0.1553 dw = 0.0000
++ mu0b = -5.4925 lmu0b = -1.9192 wmu0b = 0.0000
++ mus0 = 781.7117 lmus0 = 25.2769 wmus0 = 0.0000
++ musb = 25.5724 lmusb = -10.0060 wmusb = 0.0000
++ mu20 = 0.9390 lmu20 = -0.0840 wmu20 = 0.0000
++ mu2b = 0.0753 lmu2b = -0.0148 wmu2b = 0.0000
++ mu2g = 0.1804 lmu2g = 0.0181 wmu2g = 0.0000
++ mu30 = 44.9689 lmu30 = -0.0933 wmu30 = 0.0000
++ mu3b = 0.5871 lmu3b = 1.0793 wmu3b = 0.0000
++ mu3g = -11.6723 lmu3g = 0.6804 wmu3g = 0.0000
++ mu40 = 0.2682 lmu40 = 2.3969 wmu40 = 0.0000
++ mu4b = -0.3179 lmu4b = 0.1264 wmu4b = 0.0000
++ mu4g = -0.2654 lmu4g = -0.5702 wmu4g = 0.0000
++ ua0 = 0.0441 lua0 = 0.2283 wua0 = 0.0000
++ uab = -0.0045 luab = -0.0105 wuab = 0.0000
++ ub0 = 0.0125 lub0 = -0.0051 wub0 = 0.0000
++ ubb = -0.0015 lubb = 0.0010 wubb = 0.0000
++ u10 = 0.1262 lu10 = 0.5563 wu10 = 0.0000
++ u1d = -0.2967 lu1d = -0.0062 wu1d = 0.0000
++ u1b = 0.0960 lu1b = -0.0345 wu1b = 0.0000
++ eta0 = -0.0373 leta0 = 0.0271 weta0 = 0.0000
++ etab = 0.0004 letab = -0.0041 wetab = 0.0000
++ n0 = 0.8032 ln0 = 0.1734 wn0 = 0.0000
++ nd = 0.0105 lnd = -0.0091 wnd = 0.0000
++ nb = 0.5978 lnb = -0.1638 wnb = 0.0000
++ vof0 = 1.4977 lvof0 = -0.1766 wvof0 = 0.0000
++ vofd = 0.1795 lvofd = -0.1247 wvofd = 0.0000
++ vofb = 0.8368 lvofb = -0.3432 wvofb = 0.0000
++ ai0 = 32.0150 lai0 = 8.2816 wai0 = 0.0000
++ aib = -19.5396 laib = 4.9347 waib = 0.0000
++ bi0 = 37.6044 lbi0 = -1.8713 wbi0 = 0.0000
++ bib = -2.5109 lbib = 0.7903 wbib = 0.0000
++ vghigh = 0.2342 lvghigh = -0.0007 wvghigh = 0.0000
++ vglow = -0.1023 lvglow = 0.0038 wvglow = 0.0000
++ tox = 0.0150 temp = 27 vdd = 5.0 vgg = 5.0 vbb = -3.0
++ cgdo = 1.0e-10 cgso = 1.0e-10 cgbo = 2.5e-11
++ xpart = 0
++ rsh = 0 cj = 0.0002 cjsw = 1.0e-10
++ js = 5e-5 pb = 0.7 pbsw = 0.8
++ mj = 0.5 mjsw = 0.33 wdf = 0
++ dell = 0
+***** *****
+.END
diff --git a/Windows/spice/tests/bsim3/Makefile.am b/Windows/spice/tests/bsim3/Makefile.am
new file mode 100644
index 00000000..29292d5b
--- /dev/null
+++ b/Windows/spice/tests/bsim3/Makefile.am
@@ -0,0 +1,5 @@
+## Process this file with automake to produce Makefile.in
+
+SUBDIRS = ac_sim dc_sim tran_sim
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim3/Makefile.in b/Windows/spice/tests/bsim3/Makefile.in
new file mode 100644
index 00000000..2c0560b3
--- /dev/null
+++ b/Windows/spice/tests/bsim3/Makefile.in
@@ -0,0 +1,609 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim3
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+SUBDIRS = ac_sim dc_sim tran_sim
+MAINTAINERCLEANFILES = Makefile.in
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim3/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim3/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+ install-am install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-generic clean-libtool \
+ ctags ctags-recursive distclean distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim3/ac_sim/Makefile.am b/Windows/spice/tests/bsim3/ac_sim/Makefile.am
new file mode 100644
index 00000000..e3cfa712
--- /dev/null
+++ b/Windows/spice/tests/bsim3/ac_sim/Makefile.am
@@ -0,0 +1,13 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = gain-stage.cir \
+ op-amp.cir
+
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim3/ac_sim/Makefile.in b/Windows/spice/tests/bsim3/ac_sim/Makefile.in
new file mode 100644
index 00000000..82006c68
--- /dev/null
+++ b/Windows/spice/tests/bsim3/ac_sim/Makefile.in
@@ -0,0 +1,514 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim3/ac_sim
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = gain-stage.cir \
+ op-amp.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim3/ac_sim/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim3/ac_sim/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim3/ac_sim/gain-stage.cir b/Windows/spice/tests/bsim3/ac_sim/gain-stage.cir
new file mode 100644
index 00000000..00e31738
--- /dev/null
+++ b/Windows/spice/tests/bsim3/ac_sim/gain-stage.cir
@@ -0,0 +1,17 @@
+*A Simple MOSFET Gain Stage. AC Analysis.
+
+M1 3 2 0 0 nmos w=4u l=1u
+Rsource 1 2 100k
+Rload 3 vdd 25k
+
+Vdd vdd 0 5
+Vin 1 0 1.44 ac .1
+
+.options noacct
+.ac dec 10 100 1000Meg
+.print ac vdb(3)
+
+.model nmos nmos level=8 version=3.2.2
+
+.end
+
diff --git a/Windows/spice/tests/bsim3/ac_sim/op-amp.cir b/Windows/spice/tests/bsim3/ac_sim/op-amp.cir
new file mode 100644
index 00000000..9f01c3be
--- /dev/null
+++ b/Windows/spice/tests/bsim3/ac_sim/op-amp.cir
@@ -0,0 +1,37 @@
+* Operational Amplifier. AC Analysis.
+* BSIM3 testing, 3/16/96.
+
+*Operational Amplifier
+M1 bias1 1 cm cm nmos w=10u l=1u
+M2 bias2 in2 cm cm nmos w=10u l=1u
+M3 vdd bias1 bias1 vdd pmos w=2u l=1u
+M4 bias2 bias1 vdd vdd pmos w=2u l=1u
+
+m5 cm bias vss vss nmos w=2u l=1u
+mbias bias bias vss vss nmos w=2u l=1u
+rbias 0 bias 195k
+
+m6 8 bias vss vss nmos w=2u l=1u
+m7 8 bias2 vdd out nmos w=2u l=1u
+
+Cfb bias2 8 2p
+
+Vid 1 c 0 ac 0.1
+eid in2 c 1 c -1
+vic c 0 dc 0
+vss vss 0 -5
+Vdd vdd 0 5
+
+*AC analysis
+.options noacct
+.ac dec 10 100 100Meg
+.print ac vdb(8)
+
+.model nmos nmos level=8 version=3.2.2
+.model pmos pmos level=8 version=3.2.2
+
+.end
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/Makefile.am b/Windows/spice/tests/bsim3/dc_sim/Makefile.am
new file mode 100644
index 00000000..f3fa5814
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/Makefile.am
@@ -0,0 +1,28 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ test1.cir \
+ test2.cir \
+ test3.cir \
+ test4.cir \
+ test5.cir \
+ test6.cir \
+ test7.cir \
+ test8.cir \
+ test9.cir \
+ test10.cir \
+ test11.cir \
+ test12.cir \
+ test13.cir \
+ test14.cir
+
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ modelcard.nmos \
+ modelcard.pmos \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim3/dc_sim/Makefile.in b/Windows/spice/tests/bsim3/dc_sim/Makefile.in
new file mode 100644
index 00000000..aa63fdcf
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/Makefile.in
@@ -0,0 +1,529 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim3/dc_sim
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ test1.cir \
+ test2.cir \
+ test3.cir \
+ test4.cir \
+ test5.cir \
+ test6.cir \
+ test7.cir \
+ test8.cir \
+ test9.cir \
+ test10.cir \
+ test11.cir \
+ test12.cir \
+ test13.cir \
+ test14.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ modelcard.nmos \
+ modelcard.pmos \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim3/dc_sim/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim3/dc_sim/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim3/dc_sim/modelcard.nmos b/Windows/spice/tests/bsim3/dc_sim/modelcard.nmos
new file mode 100644
index 00000000..e09340b3
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/modelcard.nmos
@@ -0,0 +1,41 @@
+*model = bsim3v3
+*Berkeley Spice Compatibility
+* Lmin= .35 Lmax= 20 Wmin= .6 Wmax= 20
+.model N1 NMOS
++Level= 8 version=3.2.2
++Tnom=27.0
++Nch= 2.498E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=9.36e-8 Wint=1.47e-7
++Vth0= .6322 K1= .756 K2= -3.83e-2 K3= -2.612
++Dvt0= 2.812 Dvt1= 0.462 Dvt2=-9.17e-2
++Nlx= 3.52291E-08 W0= 1.163e-6
++K3b= 2.233
++Vsat= 86301.58 Ua= 6.47e-9 Ub= 4.23e-18 Uc=-4.706281E-11
++Rdsw= 650 U0= 388.3203 wr=1
++A0= .3496967 Ags=.1 B0=0.546 B1= 1
++ Dwg = -6.0E-09 Dwb = -3.56E-09 Prwb = -.213
++Keta=-3.605872E-02 A1= 2.778747E-02 A2= .9
++Voff=-6.735529E-02 NFactor= 1.139926 Cit= 1.622527E-04
++Cdsc=-2.147181E-05
++Cdscb= 0 Dvt0w = 0 Dvt1w = 0 Dvt2w = 0
++ Cdscd = 0 Prwg = 0
++Eta0= 1.0281729E-02 Etab=-5.042203E-03
++Dsub= .31871233
++Pclm= 1.114846 Pdiblc1= 2.45357E-03 Pdiblc2= 6.406289E-03
++Drout= .31871233 Pscbe1= 5000000 Pscbe2= 5E-09 Pdiblcb = -.234
++Pvag= 0 delta=0.01
++ Wl = 0 Ww = -1.420242E-09 Wwl = 0
++ Wln = 0 Wwn = .2613948 Ll = 1.300902E-10
++ Lw = 0 Lwl = 0 Lln = .316394
++ Lwn = 0
++kt1=-.3 kt2=-.051
++At= 22400
++Ute=-1.48
++Ua1= 3.31E-10 Ub1= 2.61E-19 Uc1= -3.42e-10
++Kt1l=0 Prt=764.3
+
+
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/modelcard.pmos b/Windows/spice/tests/bsim3/dc_sim/modelcard.pmos
new file mode 100644
index 00000000..dfd8522d
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/modelcard.pmos
@@ -0,0 +1,31 @@
+.model P1 PMOS
++Level= 8 version=3.2.2
++Tnom=27.0
++Nch= 3.533024E+17 Tox=9E-09 Xj=1.00000E-07
++Lint=6.23e-8 Wint=1.22e-7
++Vth0=-.6732829 K1= .8362093 K2=-8.606622E-02 K3= 1.82
++Dvt0= 1.903801 Dvt1= .5333922 Dvt2=-.1862677
++Nlx= 1.28e-8 W0= 2.1e-6
++K3b= -0.24 Prwg=-0.001 Prwb=-0.323
++Vsat= 103503.2 Ua= 1.39995E-09 Ub= 1.e-19 Uc=-2.73e-11
++ Rdsw= 460 U0= 138.7609
++A0= .4716551 Ags=0.12
++Keta=-1.871516E-03 A1= .3417965 A2= 0.83
++Voff=-.074182 NFactor= 1.54389 Cit=-1.015667E-03
++Cdsc= 8.937517E-04
++Cdscb= 1.45e-4 Cdscd=1.04e-4
++ Dvt0w=0.232 Dvt1w=4.5e6 Dvt2w=-0.0023
++Eta0= 6.024776E-02 Etab=-4.64593E-03
++Dsub= .23222404
++Pclm= .989 Pdiblc1= 2.07418E-02 Pdiblc2= 1.33813E-3
++Drout= .3222404 Pscbe1= 118000 Pscbe2= 1E-09
++Pvag= 0
++kt1= -0.25 kt2= -0.032 prt=64.5
++At= 33000
++Ute= -1.5
++Ua1= 4.312e-9 Ub1= 6.65e-19 Uc1= 0
++Kt1l=0
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test1.cir b/Windows/spice/tests/bsim3/dc_sim/test1.cir
new file mode 100644
index 00000000..e7110a9f
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test1.cir
@@ -0,0 +1,21 @@
+*****Single NMOS Transistor For BSIM3V3 general purpose check (Id-Vd) ***
+
+*** circuit description ***
+m1 2 1 0 0 n1 L=0.35u W=10.0u
+vgs 1 0 3.5
+vds 2 0 3.5
+
+.options noacct
+.dc vds 0 3.5 0.05 vgs 0 3.5 0.5
+
+
+.print dc v(1) i(vds)
+
+.include modelcard.nmos
+
+.end
+
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test10.cir b/Windows/spice/tests/bsim3/dc_sim/test10.cir
new file mode 100644
index 00000000..3592cca6
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test10.cir
@@ -0,0 +1,19 @@
+*** For BSIM3V3 general purpose check (Id-Vd) for Pmosfet ***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 0 p1 L=0.35u W=10.0u
+vgs 1 0 -3.5
+vds 2 0 -3.5
+
+
+.dc vds 0 -3.5 -0.05 vgs 0 -3.5 -0.5
+
+.options Temp=100.0 noacct
+.print dc v(1) i(vds)
+
+
+.include modelcard.pmos
+.end
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test11.cir b/Windows/spice/tests/bsim3/dc_sim/test11.cir
new file mode 100644
index 00000000..34ad652f
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test11.cir
@@ -0,0 +1,17 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Pmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 3 p1 L=0.35u W=10.0u
+vgs 1 0 -3.5
+vds 2 0 -0.1
+vbs 3 0 0.0
+
+.options noacct
+.dc vgs 0 -3.5 -0.05 vds -0.1 -3.1 -1.
+
+.print dc v(2) i(vds)
+.include modelcard.pmos
+.end
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test12.cir b/Windows/spice/tests/bsim3/dc_sim/test12.cir
new file mode 100644
index 00000000..9405bd7e
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test12.cir
@@ -0,0 +1,17 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Pmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 3 p1 L=0.35u W=10.0u
+vgs 1 0 -3.5
+vds 2 0 -0.1
+vbs 3 0 0.0
+
+.options noacct
+.dc vgs 0 -3.5 -0.05 vbs 0 3. 0.5
+
+.print dc v(2) i(vds)
+.include modelcard.pmos
+.end
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test13.cir b/Windows/spice/tests/bsim3/dc_sim/test13.cir
new file mode 100644
index 00000000..e427a0b7
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test13.cir
@@ -0,0 +1,18 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Pmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 3 p1 L=0.35u W=10.0u
+vgs 1 0 -3.5
+vds 2 0 -0.1
+vbs 3 0 0.0
+
+
+.dc vgs 0 -3.5 -0.05 vbs 0 3. 0.5
+.options Temp=-55.0 noacct
+
+.print dc v(2) i(vds)
+.include modelcard.pmos
+.end
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test14.cir b/Windows/spice/tests/bsim3/dc_sim/test14.cir
new file mode 100644
index 00000000..e65eec57
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test14.cir
@@ -0,0 +1,19 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Pmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 3 p1 L=0.35u W=10.0u
+vgs 1 0 -3.5
+vds 2 0 -0.1
+vbs 3 0 0.0
+
+
+.dc vgs 0 -3.5 -0.05 vbs 0 3. 0.5
+.options Temp=100.0 noacct
+
+.print dc v(2) i(vds)
+
+.include modelcard.pmos
+.end
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test2.cir b/Windows/spice/tests/bsim3/dc_sim/test2.cir
new file mode 100644
index 00000000..59505042
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test2.cir
@@ -0,0 +1,21 @@
+*****Single NMOS Transistor For BSIM3V3 general purpose check (Id-Vd) ***
+
+*** circuit description ***
+m1 2 1 0 0 n1 L=0.35u W=10.0u
+vgs 1 0 3.5
+vds 2 0 3.5
+
+
+.dc vds 0 3.5 0.05 vgs 0 3.5 0.5
+.options Temp=-55.0 noacct
+
+.print dc v(1) i(vds)
+
+.include modelcard.nmos
+
+.end
+
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test3.cir b/Windows/spice/tests/bsim3/dc_sim/test3.cir
new file mode 100644
index 00000000..3fe34d89
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test3.cir
@@ -0,0 +1,21 @@
+*****Single NMOS Transistor For BSIM3V3 general purpose check (Id-Vd) ***
+
+*** circuit description ***
+m1 2 1 0 0 n1 L=0.35u W=10.0u
+vgs 1 0 3.5
+vds 2 0 3.5
+
+
+.dc vds 0 3.5 0.05 vgs 0 3.5 0.5
+.options Temp=100.0 noacct
+
+.print dc v(1) i(vds)
+
+.include modelcard.nmos
+
+.end
+
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test4.cir b/Windows/spice/tests/bsim3/dc_sim/test4.cir
new file mode 100644
index 00000000..dcf1e26f
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test4.cir
@@ -0,0 +1,20 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Nmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 0 n1 L=0.35u W=10.0u
+vgs 1 0 3.5
+vds 2 0 3.5
+
+.options noacct
+.dc vgs 0 3.5 0.05 vds 0.1 3.1 1
+
+
+.print dc v(2) i(vds)
+
+.include modelcard.nmos
+.end
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test5.cir b/Windows/spice/tests/bsim3/dc_sim/test5.cir
new file mode 100644
index 00000000..a7fc8721
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test5.cir
@@ -0,0 +1,22 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Nmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 3 n1 L=0.35u W=10.0u
+vgs 1 0 3.5
+vbs 3 0 0
+vds 2 0 0.1
+
+.dc vgs 0 3.5 0.05 vbs 0.0 -3. -0.5
+
+.options noacct
+.print dc v(2) i(vds)
+
+.include modelcard.nmos
+
+.end
+
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test6.cir b/Windows/spice/tests/bsim3/dc_sim/test6.cir
new file mode 100644
index 00000000..71fb0cb6
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test6.cir
@@ -0,0 +1,17 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Nmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 3 n1 L=0.35u W=10.0u
+vgs 1 0 3.5
+vbs 3 0 0
+vds 2 0 0.1
+
+.dc vgs 0 3.5 0.05 vbs 0.0 -3. -0.5
+
+.options Temp=-55.0 noacct
+.print dc v(2) i(vds)
+
+.include modelcard.nmos
+.end
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test7.cir b/Windows/spice/tests/bsim3/dc_sim/test7.cir
new file mode 100644
index 00000000..ccbd57e9
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test7.cir
@@ -0,0 +1,20 @@
+*** For BSIM3V3 general purpose check (Id-Vg) for Nmosfet***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 3 n1 L=0.35u W=10.0u
+vgs 1 0 3.5
+vbs 3 0 0
+vds 2 0 0.1
+
+.dc vgs 0 3.5 0.05 vbs 0.0 -3. -0.5
+
+.options Temp=100.0 noacct
+.print dc v(2) i(vds)
+.include modelcard.nmos
+.end
+
+
+
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test8.cir b/Windows/spice/tests/bsim3/dc_sim/test8.cir
new file mode 100644
index 00000000..8888bd61
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test8.cir
@@ -0,0 +1,19 @@
+*** For BSIM3V3 general purpose check (Id-Vd) for Pmosfet ***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 0 p1 L=0.35u W=10.0u
+vgs 1 0 -3.5
+vds 2 0 -3.5
+
+.options noacct
+.dc vds 0 -3.5 -0.05 vgs 0 -3.5 -0.5
+
+
+.print dc v(1) i(vds)
+
+
+.include modelcard.pmos
+.end
+
+
diff --git a/Windows/spice/tests/bsim3/dc_sim/test9.cir b/Windows/spice/tests/bsim3/dc_sim/test9.cir
new file mode 100644
index 00000000..f65c75ad
--- /dev/null
+++ b/Windows/spice/tests/bsim3/dc_sim/test9.cir
@@ -0,0 +1,19 @@
+*** For BSIM3V3 general purpose check (Id-Vd) for Pmosfet ***
+******************************************
+
+*** circuit description ***
+m1 2 1 0 0 p1 L=0.35u W=10.0u
+vgs 1 0 -3.5
+vds 2 0 -3.5
+
+
+.dc vds 0 -3.5 -0.05 vgs 0 -3.5 -0.5
+
+.options Temp=-55 noacct
+.print dc v(1) i(vds)
+
+
+.include modelcard.pmos
+.end
+
+
diff --git a/Windows/spice/tests/bsim3/tran_sim/Makefile.am b/Windows/spice/tests/bsim3/tran_sim/Makefile.am
new file mode 100644
index 00000000..54e433c4
--- /dev/null
+++ b/Windows/spice/tests/bsim3/tran_sim/Makefile.am
@@ -0,0 +1,13 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = comparator.cir \
+ one-shot.cir
+
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim3/tran_sim/Makefile.in b/Windows/spice/tests/bsim3/tran_sim/Makefile.in
new file mode 100644
index 00000000..8b5f9f73
--- /dev/null
+++ b/Windows/spice/tests/bsim3/tran_sim/Makefile.in
@@ -0,0 +1,514 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim3/tran_sim
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = comparator.cir \
+ one-shot.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim3/tran_sim/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim3/tran_sim/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim3/tran_sim/comparator.cir b/Windows/spice/tests/bsim3/tran_sim/comparator.cir
new file mode 100644
index 00000000..8e44a171
--- /dev/null
+++ b/Windows/spice/tests/bsim3/tran_sim/comparator.cir
@@ -0,0 +1,40 @@
+*One Bit Comparator. Takes Two Inputs (A and B), and returns Two Ouputs -
+*node 8 - (high when two signalsare equal) and node 9 (high when A is Larger Then B).
+* Transient Analysis
+
+*circuit description
+
+M1 Anot A Vdd Vdd PMOS w=3.6u l=1.2u
+M2 Anot A 0 0 NMOS w=1.8u l=1.2u
+M3 Bnot B Vdd Vdd PMOS w=3.6u l=1.2u
+M4 Bnot B 0 0 NMOS w=1.8u l=1.2u
+M5 AorBnot 0 Vdd Vdd PMOS w=1.8u l=3.6u
+M6 AorBnot B 1 0 NMOS w=1.8u l=1.2u
+M7 1 Anot 0 0 NMOS w=1.8u l=1.2u
+M8 Lnot 0 Vdd Vdd PMOS w=1.8u l=3.6u
+M9 Lnot Bnot 2 0 NMOS w=1.8u l=1.2u
+M10 2 A 0 0 NMOS w=1.8u l=1.2u
+M11 Qnot 0 Vdd Vdd PMOS w=3.6u l=3.6u
+M12 Qnot AorBnot 3 0 NMOS w=1.8u l=1.2u
+M13 3 Lnot 0 0 NMOS w=1.8u l=1.2u
+MQLO 8 Qnot Vdd Vdd PMOS w=3.6u l=1.2u
+MQL1 8 Qnot 0 0 NMOS w=1.8u l=1.2u
+MLTO 9 Lnot Vdd Vdd PMOS w=3.6u l=1.2u
+MLT1 9 Lnot 0 0 NMOS w=1.8u l=1.2u
+CQ Qnot 0 30f
+CL Lnot 0 10f
+
+Vdd Vdd 0 5
+Va A 0 pulse 0 5 10ns .1ns .1ns 15ns 30ns
+Vb B 0 0
+
+.model nmos nmos level=8 version=3.2.2
+.model pmos pmos level=8 version=3.2.2
+
+* transient analysis
+.tran 1ns 60ns
+.options noacct
+.print tran a b v(9) v(8)
+
+.END
+
diff --git a/Windows/spice/tests/bsim3/tran_sim/one-shot.cir b/Windows/spice/tests/bsim3/tran_sim/one-shot.cir
new file mode 100644
index 00000000..4e75736b
--- /dev/null
+++ b/Windows/spice/tests/bsim3/tran_sim/one-shot.cir
@@ -0,0 +1,53 @@
+*One-shot Trigger.
+*This cicruit generates a pulse of a predetermined width
+*triggered by an input event. BSIM3 test.
+
+*A two-gate delay element
+Md1 4 in Vdd Vdd PMOS w=3.6u l=1.2u
+Md2 4 in 0 0 NMOS w=1.8u l=1.2u
+c4 4 0 30f
+Md3 A 4 Vdd Vdd PMOS w=3.6u l=1.2u
+Md4 A 4 0 0 NMOS w=1.8u l=1.2u
+ca a 0 30f
+
+*EXOR gate
+*A inverter
+M1 Anot A Vdd Vdd PMOS w=3.6u l=1.2u
+M2 Anot A 0 0 NMOS w=1.8u l=1.2u
+
+M3 Bnot in Vdd Vdd PMOS w=3.6u l=1.2u
+M4 Bnot in 0 0 NMOS w=1.8u l=1.2u
+
+M5 AorBnot 0 Vdd Vdd PMOS w=1.8u l=3.6u
+M6 AorBnot in 1 0 NMOS w=1.8u l=1.2u
+M7 1 Anot 0 0 NMOS w=1.8u l=1.2u
+
+M8 Lnot 0 Vdd Vdd PMOS w=1.8u l=3.6u
+M9 Lnot Bnot 2 0 NMOS w=1.8u l=1.2u
+M10 2 A 0 0 NMOS w=1.8u l=1.2u
+
+M11 out 0 Vdd Vdd PMOS w=3.6u l=3.6u
+M12 out AorBnot 3 0 NMOS w=1.8u l=1.2u
+M13 3 Lnot 0 0 NMOS w=1.8u l=1.2u
+*end of EXOR gate
+
+Vcc vdd 0 5
+vin in 0 pulse 0 5 1ns .1ns .1ns .8ns 5ns
+
+.model nmos nmos level=8 version=3.2.2
+.model pmos pmos level=8 version=3.2.2
+
+.tran 1ns 10ns
+.print tran in out
+.options noacct
+
+.END
+
+
+
+
+
+
+
+
+
diff --git a/Windows/spice/tests/bsim3soidd/Makefile.am b/Windows/spice/tests/bsim3soidd/Makefile.am
new file mode 100644
index 00000000..a12504ae
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/Makefile.am
@@ -0,0 +1,20 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ t3.cir \
+ t4.cir \
+ t5.cir \
+ inv2.cir \
+ RampVg2.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ nmosdd.mod \
+ pmosdd.mod \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+EXTRA_DIST += ring51.cir lib.h
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim3soidd/Makefile.in b/Windows/spice/tests/bsim3soidd/Makefile.in
new file mode 100644
index 00000000..58449324
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/Makefile.in
@@ -0,0 +1,516 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim3soidd
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ t3.cir \
+ t4.cir \
+ t5.cir \
+ inv2.cir \
+ RampVg2.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = nmosdd.mod pmosdd.mod $(TESTS) $(TESTS:.cir=.out) \
+ ring51.cir lib.h
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim3soidd/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim3soidd/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim3soidd/RampVg2.cir b/Windows/spice/tests/bsim3soidd/RampVg2.cir
new file mode 100644
index 00000000..dde2a26e
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/RampVg2.cir
@@ -0,0 +1,19 @@
+* BSIMSOI (DD) example
+*
+* SOI, Ramp Vg
+
+Vd d 0 1.5
+Vg g 0 0.0 PULSE 0V 2V .02n .1n .1n .2n .6n
+Ve e 0 0.0
+Vs s 0 0.0
+Vb b 0 0.0
+
+m1 d g s e n1 w=10u l=0.25u debug=-1
+
+.option gmin=1e-20 itl1=200 itl2=200 abstol=1e-9 noacct
+.tran 1p 1.0ns
+.print tran @m1[Vbs], V(g)/10
+.include nmosdd.mod
+
+.end
+
diff --git a/Windows/spice/tests/bsim3soidd/inv2.cir b/Windows/spice/tests/bsim3soidd/inv2.cir
new file mode 100644
index 00000000..f1240e8e
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/inv2.cir
@@ -0,0 +1,17 @@
+* model = BSIMSOI (DD)
+*
+*
+* SOI Inverter - floating body
+
+vin in 0 dc 2.5
+vdd dd 0 dc 2.5
+vss ss 0 dc 0
+ve e 0 dc 1.25
+m1 out in dd e p1 w=20u l=0.25u
+m2 out in ss e n1 w=10u l=0.25u
+
+.option itl1=500 gmin=1e-25 noacct
+.dc vin 0 2.5 0.01
+.print dc v(in), v(out)
+.include nmosdd.mod
+.include pmosdd.mod
diff --git a/Windows/spice/tests/bsim3soidd/lib.h b/Windows/spice/tests/bsim3soidd/lib.h
new file mode 100644
index 00000000..310aa396
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/lib.h
@@ -0,0 +1,110 @@
+
+
+.subckt dum ss
+mn1 ss ss ss ss ss n1 w=4u l=0.15u debug=1 AS=6p AD=6p PS=7u PD=7u
+.ends dum
+
+* XOR2
+.subckt xnor2 dd ss sub A B out
+mn1 T1 A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out A C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 out B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn5 C2 T1 ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 T1 A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 T1 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out A C3 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 C3 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp5 out T1 dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends xnor2
+
+.subckt nor2 dd ss sub A B out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor2
+
+.subckt nand2 dd ss sub A B out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand2
+
+.subckt nor3 dd ss sub A B C out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B C2 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 C2 C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor3
+
+.subckt nand3 dd ss sub A B C out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 C2 C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand3
+
+.subckt nor4 dd ss sub A B C D out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B C2 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 C2 C C3 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 C3 C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor4
+
+.subckt nand4 dd ss sub A B C D out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 C2 C C3 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 C3 C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand4
+
+.subckt inv1 dd ss sub in out
+mn1 out in ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out in dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends inv1
+
+.subckt inv5 dd ss sub in out
+xinv1 dd ss sub in 1 inv1
+xinv2 dd ss sub 1 2 inv1
+xinv3 dd ss sub 2 3 inv1
+xinv4 dd ss sub 3 4 inv1
+xinv5 dd ss sub 4 out inv1
+.ends inv5
+
+.subckt inv25 dd ss sub in out
+xinv1 dd ss sub in 1 inv5
+xinv2 dd ss sub 1 2 inv5
+xinv3 dd ss sub 2 3 inv5
+xinv4 dd ss sub 3 4 inv5
+xinv5 dd ss sub 4 out inv5
+.ends inv25
+
+.subckt inv125 dd ss sub in out
+xinv1 dd ss sub in 1 inv25
+xinv2 dd ss sub 1 2 inv25
+xinv3 dd ss sub 2 3 inv25
+xinv4 dd ss sub 3 4 inv25
+xinv5 dd ss sub 4 out inv25
+.ends inv125
+
+.subckt inv625 dd ss sub in out
+xinv1 dd ss sub in 1 inv125
+xinv2 dd ss sub 1 2 inv125
+xinv3 dd ss sub 2 3 inv125
+xinv4 dd ss sub 3 4 inv125
+xinv5 dd ss sub 4 out inv125
+.ends inv625
diff --git a/Windows/spice/tests/bsim3soidd/nmosdd.mod b/Windows/spice/tests/bsim3soidd/nmosdd.mod
new file mode 100644
index 00000000..c53fe206
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/nmosdd.mod
@@ -0,0 +1,39 @@
+*Model Card for BSIMDD2.0, floating body DD SOI NMOS
+*Released on 2/15/99
+.Model N1 NMOS Level= 56
++TNOM = 27 TOX = 4.5E-09 TSI = 5e-8 TBOX = 8E-08
++MOBMOD = 0 CAPMOD = 3 SHMOD = 0
++PARAMCHK=0 WINT = 0 LINT = -2E-08
++VTH0 = .52 K1 = .39 K2 = .1 K3 = 0
++KB1 = .95 K3B = 2.2 NLX = 7.2E-08
++DVT0 = .55 DVT1 = .28 DVT2 = -1.4
++DVT0W = 0 DVT1W = 0 DVT2W = 0
++NCH = 3.3E+17 NSUB = 1E+15 NGATE = 1E+20
++DVBD0 = 60.0 DVBD1 = 1.1 VBSA = 0.0
++KB3 = 2.2 DELP = 0.02
++ABP = 0.9 MXC = 0.9 ADICE0 = 0.93
++KBJT1 = 1.0E-08 EDL = .0000005
++NDIODE = 1.13 NTUN = 14.0
++ISBJT = 2e-6 ISDIF = 1e-6 ISTUN = 0.0 ISREC = 1e-5
++XBJT = 0.01 XDIF = 0.01 XREC = 0.01 XTUN = 0.001
++U0 = 352 UA = 1.3E-11 UB = 1.7E-18 UC = -4E-10
++W0 = 1.16E-06 AGS = .25 A1 = 0 A2 = 1
++B0 = .01 B1 = 10
++RDSW = 700 PRWG = 0 PRWB = -.2 WR = 1
++RBODY = 0.0 RBSH = 0.0
++A0 = 1.4 KETA = -.67 VSAT = 135000
++DWG = 0 DWB = 0
++ALPHA0 = 0.0 ALPHA1 = 1.5 BETA0 = 20.5
++AII = 1.2 BII = 0.1e-7 CII = 0.8 DII = 0.6
++VOFF = -.14 NFACTOR = .7 CDSC = .00002 CDSCB = 0
++CDSCD = 0 CIT = 0
++PCLM = 2.9 PVAG = 12 PDIBLC1 = .18 PDIBLC2 = .004
++PDIBLCB = -.234 DROUT = .2
++DELTA = .01 ETA0 = .01 ETAB = 0
++DSUB = .3 RTH0 = .006
++CLC = .0000001 CLE = .6 CF = 1E-20 CKAPPA = .6
++CGDL = 1E-20 CGSL = 1E-20 KT1 = -.3 KT1L = 0
++KT2 = .022 UTE = -1.5 UA1 = 4.31E-09 UB1 = -7.61E-18
++UC1 = -5.6E-11 PRT = 760 AT = 22400
++CGSO = 1e-10 CGDO = 1e-10 CJSWG = 5e-10 TT=3e-10
++ASD = 0.3 CSDESW = 1e-12
diff --git a/Windows/spice/tests/bsim3soidd/pmosdd.mod b/Windows/spice/tests/bsim3soidd/pmosdd.mod
new file mode 100644
index 00000000..4cf2f135
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/pmosdd.mod
@@ -0,0 +1,39 @@
+*Model Card for BSIMDD2.0, floating body DD SOI PMOS
+*Released on 2/15/99
+.Model P1 PMOS Level= 56
++TNOM = 27 TOX = 4.5E-09 TSI = 5e-8 TBOX = 8E-08
++MOBMOD = 2 CAPMOD = 3 SHMOD = 0
++WINT = 0 LINT = -2E-08
++VTH0 = -.52 K1 = .39 K2 = .1 K3 = 0
++KB1 = .95 K3B = 2.2 NLX = 7.2E-08
++DVT0 = .55 DVT1 = .28 DVT2 = -1.4
++DVT0W = 0 DVT1W = 0 DVT2W = 0
++NCH = 3.0E+17 NSUB = 1E+15 NGATE = 1E+20
++DVBD0 = 60.0 DVBD1 = 1.1 VBSA = -0.2
++KB3 = 2.2 DELP = 0.02
++ABP = 0.9 MXC = 0.9 ADICE0 = 0.93
++KBJT1 = 1.0E-08 EDL = .0000005
++NDIODE = 1.13 NTUN = 14.0
++ISBJT = 0.0 ISDIF = 1e-6 ISTUN = 0.0 ISREC = 0.0
++XBJT = 0.01 XDIF = 0.01 XREC = 0.01 XTUN = 0.001
++U0 = 145 UA = 1.3E-11 UB = 1.7E-18 UC = -4E-10
++W0 = 1.16E-06 AGS = .25 A1 = 0 A2 = 1
++B0 = .01 B1 = 10
++RDSW = 700 PRWG = 0 PRWB = -.2 WR = 1
++RBODY = 0.0 RBSH = 0.0
++A0 = 1.4 KETA = -.67 VSAT = 75000
++DWG = 0 DWB = 0
++ALPHA0 = 0.0 ALPHA1 = 1e-4 BETA0 = 19
++AII = 1.25 BII = 0.1e-7 CII = 0.8 DII = 0.6
++VOFF = -.14 NFACTOR = .7 CDSC = .00002 CDSCB = 0
++CDSCD = 0 CIT = 0
++PCLM = 2.9 PVAG = 12 PDIBLC1 = .18 PDIBLC2 = .004
++PDIBLCB = -.234 DROUT = .2
++DELTA = .01 ETA0 = .01 ETAB = 0
++DSUB = .3 RTH0 = .006
++CLC = .0000001 CLE = .6 CF = 1E-20 CKAPPA = .6
++CGDL = 1E-20 CGSL = 1E-20 KT1 = -.3 KT1L = 0
++KT2 = .022 UTE = -1.5 UA1 = 4.31E-09 UB1 = -7.61E-18
++UC1 = -5.6E-11 PRT = 760 AT = 22400
++CGSO = 1e-10 CGDO = 1e-10 CJSWG = 5e-10 TT=3e-10
++ASD = 0.3 CSDESW = 1e-12
diff --git a/Windows/spice/tests/bsim3soidd/ring51.cir b/Windows/spice/tests/bsim3soidd/ring51.cir
new file mode 100644
index 00000000..d777727e
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/ring51.cir
@@ -0,0 +1,23 @@
+* 51 stage Ring-Osc.
+
+vin in out 2 pulse 2 0 0.1n 5n 1 1 1
+vdd dd 0 dc 0 pulse 0 2 0 1n 1 1 1
+vss ss 0 dc 0
+ve sub 0 dc 0
+
+xinv1 dd ss sub in out25 inv25
+xinv2 dd ss sub out25 out50 inv25
+xinv5 dd ss sub out50 out inv1
+xinv11 dd ss sub out buf inv1
+cout buf ss 1pF
+
+xdum ss dum
+
+.option itl1=500 gmin=1e-15 itl4=10 noacct
+*.dc vdd 0 2 0.01
+.tran 0.2n 50n
+
+.include nmosdd.mod
+.include pmosdd.mod
+.include lib.h
+.end
diff --git a/Windows/spice/tests/bsim3soidd/t3.cir b/Windows/spice/tests/bsim3soidd/t3.cir
new file mode 100644
index 00000000..4faf0c7d
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/t3.cir
@@ -0,0 +1,18 @@
+*model = BSIMSOI (DD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, floating body simulation
+
+vd d 0 dc 1.5
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+
+
+m1 d g s e n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vd 0 3 0.01 vg 0.5 3 0.5
+.print dc v(g), i(vs)
+.include nmosdd.mod
+
diff --git a/Windows/spice/tests/bsim3soidd/t4.cir b/Windows/spice/tests/bsim3soidd/t4.cir
new file mode 100644
index 00000000..a30c4cc6
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/t4.cir
@@ -0,0 +1,17 @@
+*model = BSIMSOI (DD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, tied body simulation
+
+vd d 0 dc 0.05
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+vb b 0 dc 0
+
+m1 d g s e b n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vg 0 1.5 0.01 vb -0.3 0.5 0.1
+.print dc i(vs)
+.include nmosdd.mod
diff --git a/Windows/spice/tests/bsim3soidd/t5.cir b/Windows/spice/tests/bsim3soidd/t5.cir
new file mode 100644
index 00000000..54e36843
--- /dev/null
+++ b/Windows/spice/tests/bsim3soidd/t5.cir
@@ -0,0 +1,16 @@
+*model = BSIMSOI (DD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, floating body simulation
+
+vd d 0 dc 0.05
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+
+m1 d g s e n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vg 0 1.5 0.01 ve -4 4 1
+.print dc i(vs)
+.include nmosdd.mod
diff --git a/Windows/spice/tests/bsim3soifd/Makefile.am b/Windows/spice/tests/bsim3soifd/Makefile.am
new file mode 100644
index 00000000..b1c55f51
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/Makefile.am
@@ -0,0 +1,20 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ t3.cir \
+ t4.cir \
+ t5.cir \
+ inv2.cir \
+ RampVg2.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ nmosfd.mod \
+ pmosfd.mod \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+EXTRA_DIST += ring51.cir lib.h
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim3soifd/Makefile.in b/Windows/spice/tests/bsim3soifd/Makefile.in
new file mode 100644
index 00000000..b0f1e9e4
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/Makefile.in
@@ -0,0 +1,516 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim3soifd
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ t3.cir \
+ t4.cir \
+ t5.cir \
+ inv2.cir \
+ RampVg2.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = nmosfd.mod pmosfd.mod $(TESTS) $(TESTS:.cir=.out) \
+ ring51.cir lib.h
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim3soifd/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim3soifd/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim3soifd/RampVg2.cir b/Windows/spice/tests/bsim3soifd/RampVg2.cir
new file mode 100644
index 00000000..c8883d22
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/RampVg2.cir
@@ -0,0 +1,19 @@
+* BSIMSOI (FD) example
+*
+* SOI, Ramp Vg
+
+Vd d 0 1.5
+Vg g 0 0.0 PULSE 0V 2V .02n .1n .1n .2n .6n
+Ve e 0 0.0
+Vs s 0 0.0
+Vb b 0 0.0
+
+m1 d g s e n1 w=10u l=0.25u debug=-1
+
+.option gmin=1e-20 itl1=200 itl2=200 abstol=1e-9 noacct
+.tran 1p 1.0ns
+.print tran @m1[Vbs], V(g)/10
+.include nmosfd.mod
+
+.end
+
diff --git a/Windows/spice/tests/bsim3soifd/inv2.cir b/Windows/spice/tests/bsim3soifd/inv2.cir
new file mode 100644
index 00000000..9628572f
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/inv2.cir
@@ -0,0 +1,17 @@
+* model = BSIMSOI (FD)
+*
+*
+* SOI Inverter - floating body
+
+vin in 0 dc 2.5
+vdd dd 0 dc 2.5
+vss ss 0 dc 0
+ve e 0 dc 1.25
+m1 out in dd e p1 w=20u l=0.25u
+m2 out in ss e n1 w=10u l=0.25u
+
+.option itl1=500 gmin=1e-25 noacct
+.dc vin 0 2.5 0.01
+.print dc v(in), v(out)
+.include nmosfd.mod
+.include pmosfd.mod
diff --git a/Windows/spice/tests/bsim3soifd/lib.h b/Windows/spice/tests/bsim3soifd/lib.h
new file mode 100644
index 00000000..310aa396
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/lib.h
@@ -0,0 +1,110 @@
+
+
+.subckt dum ss
+mn1 ss ss ss ss ss n1 w=4u l=0.15u debug=1 AS=6p AD=6p PS=7u PD=7u
+.ends dum
+
+* XOR2
+.subckt xnor2 dd ss sub A B out
+mn1 T1 A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out A C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 out B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn5 C2 T1 ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 T1 A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 T1 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out A C3 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 C3 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp5 out T1 dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends xnor2
+
+.subckt nor2 dd ss sub A B out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor2
+
+.subckt nand2 dd ss sub A B out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand2
+
+.subckt nor3 dd ss sub A B C out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B C2 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 C2 C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor3
+
+.subckt nand3 dd ss sub A B C out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 C2 C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand3
+
+.subckt nor4 dd ss sub A B C D out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B C2 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 C2 C C3 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 C3 C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor4
+
+.subckt nand4 dd ss sub A B C D out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 C2 C C3 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 C3 C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand4
+
+.subckt inv1 dd ss sub in out
+mn1 out in ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out in dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends inv1
+
+.subckt inv5 dd ss sub in out
+xinv1 dd ss sub in 1 inv1
+xinv2 dd ss sub 1 2 inv1
+xinv3 dd ss sub 2 3 inv1
+xinv4 dd ss sub 3 4 inv1
+xinv5 dd ss sub 4 out inv1
+.ends inv5
+
+.subckt inv25 dd ss sub in out
+xinv1 dd ss sub in 1 inv5
+xinv2 dd ss sub 1 2 inv5
+xinv3 dd ss sub 2 3 inv5
+xinv4 dd ss sub 3 4 inv5
+xinv5 dd ss sub 4 out inv5
+.ends inv25
+
+.subckt inv125 dd ss sub in out
+xinv1 dd ss sub in 1 inv25
+xinv2 dd ss sub 1 2 inv25
+xinv3 dd ss sub 2 3 inv25
+xinv4 dd ss sub 3 4 inv25
+xinv5 dd ss sub 4 out inv25
+.ends inv125
+
+.subckt inv625 dd ss sub in out
+xinv1 dd ss sub in 1 inv125
+xinv2 dd ss sub 1 2 inv125
+xinv3 dd ss sub 2 3 inv125
+xinv4 dd ss sub 3 4 inv125
+xinv5 dd ss sub 4 out inv125
+.ends inv625
diff --git a/Windows/spice/tests/bsim3soifd/nmosfd.mod b/Windows/spice/tests/bsim3soifd/nmosfd.mod
new file mode 100644
index 00000000..af6665fd
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/nmosfd.mod
@@ -0,0 +1,39 @@
+*Model Card for BSIMFD2.0, floating body FD SOI NMOS
+*Released on 2/15/99
+.Model N1 NMOS Level= 55
++TNOM = 27 TOX = 4.5E-09 TSI = 5e-8 TBOX = 8E-08
++MOBMOD = 0 CAPMOD = 3 SHMOD = 0
++PARAMCHK=0 WINT = 0 LINT = -2E-08
++VTH0 = .52 K1 = .39 K2 = .1 K3 = 0
++KB1 = .95 K3B = 2.2 NLX = 7.2E-08
++DVT0 = .55 DVT1 = .28 DVT2 = -1.4
++DVT0W = 0 DVT1W = 0 DVT2W = 0
++NCH = 3.3E+17 NSUB = 1E+15 NGATE = 1E+20
++DVBD0 = 60.0 DVBD1 = 1.1 VBSA = 0.0
++KB3 = 2.2 DELP = 0.02
++ABP = 0.9 MXC = 0.9 ADICE0 = 0.93
++KBJT1 = 1.0E-08 EDL = .0000005
++NDIODE = 1.13 NTUN = 14.0
++ISBJT = 2e-6 ISDIF = 1e-6 ISTUN = 0.0 ISREC = 1e-5
++XBJT = 0.01 XDIF = 0.01 XREC = 0.01 XTUN = 0.001
++U0 = 352 UA = 1.3E-11 UB = 1.7E-18 UC = -4E-10
++W0 = 1.16E-06 AGS = .25 A1 = 0 A2 = 1
++B0 = .01 B1 = 10
++RDSW = 700 PRWG = 0 PRWB = -.2 WR = 1
++RBODY = 0.0 RBSH = 0.0
++A0 = 1.4 KETA = -.67 VSAT = 135000
++DWG = 0 DWB = 0
++ALPHA0 = 0.0 ALPHA1 = 1.5 BETA0 = 20.5
++AII = 1.2 BII = 0.1e-7 CII = 0.8 DII = 0.6
++VOFF = -.14 NFACTOR = .7 CDSC = .00002 CDSCB = 0
++CDSCD = 0 CIT = 0
++PCLM = 2.9 PVAG = 12 PDIBLC1 = .18 PDIBLC2 = .004
++PDIBLCB = -.234 DROUT = .2
++DELTA = .01 ETA0 = .01 ETAB = 0
++DSUB = .3 RTH0 94 = .006
++CLC = .0000001 CLE = .6 CF = 1E-20 CKAPPA = .6
++CGDL = 1E-20 CGSL = 1E-20 KT1 = -.3 KT1L = 0
++KT2 = .022 UTE = -1.5 UA1 = 4.31E-09 UB1 = -7.61E-18
++UC1 = -5.6E-11 PRT = 760 AT = 22400
++CGSO = 1e-10 CGDO = 1e-10 CJSWG = 5e-10 TT=3e-10
++ASD = 0.3 CSDESW = 1e-12
diff --git a/Windows/spice/tests/bsim3soifd/pmosfd.mod b/Windows/spice/tests/bsim3soifd/pmosfd.mod
new file mode 100644
index 00000000..d033570c
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/pmosfd.mod
@@ -0,0 +1,39 @@
+*Model Card for BSIMFD2.0, floating body FD SOI PMOS
+*Released on 2/15/99
+.Model P1 PMOS Level= 55
++TNOM = 27 TOX = 4.5E-09 TSI = 5e-8 TBOX = 8E-08
++MOBMOD = 2 CAPMOD = 3 SHMOD = 0
++WINT = 0 LINT = -2E-08
++VTH0 = -.52 K1 = .39 K2 = .1 K3 = 0
++KB1 = .95 K3B = 2.2 NLX = 7.2E-08
++DVT0 = .55 DVT1 = .28 DVT2 = -1.4
++DVT0W = 0 DVT1W = 0 DVT2W = 0
++NCH = 3.0E+17 NSUB = 1E+15 NGATE = 1E+20
++DVBD0 = 60.0 DVBD1 = 1.1 VBSA = -0.2
++KB3 = 2.2 DELP = 0.02
++ABP = 0.9 MXC = 0.9 ADICE0 = 0.93
++KBJT1 = 1.0E-08 EDL = .0000005
++NDIODE = 1.13 NTUN = 14.0
++ISBJT = 0.0 ISDIF = 1e-6 ISTUN = 0.0 ISREC = 0.0
++XBJT = 0.01 XDIF = 0.01 XREC = 0.01 XTUN = 0.001
++U0 = 145 UA = 1.3E-11 UB = 1.7E-18 UC = -4E-10
++W0 = 1.16E-06 AGS = .25 A1 = 0 A2 = 1
++B0 = .01 B1 = 10
++RDSW = 700 PRWG = 0 PRWB = -.2 WR = 1
++RBODY = 0.0 RBSH = 0.0
++A0 = 1.4 KETA = -.67 VSAT = 75000
++DWG = 0 DWB = 0
++ALPHA0 = 0.0 ALPHA1 = 1e-4 BETA0 = 19
++AII = 1.25 BII = 0.1e-7 CII = 0.8 DII = 0.6
++VOFF = -.14 NFACTOR = .7 CDSC = .00002 CDSCB = 0
++CDSCD = 0 CIT = 0
++PCLM = 2.9 PVAG = 12 PDIBLC1 = .18 PDIBLC2 = .004
++PDIBLCB = -.234 DROUT = .2
++DELTA = .01 ETA0 = .01 ETAB = 0
++DSUB = .3 RTH0 = .006
++CLC = .0000001 CLE = .6 CF = 1E-20 CKAPPA = .6
++CGDL = 1E-20 CGSL = 1E-20 KT1 = -.3 KT1L = 0
++KT2 = .022 UTE = -1.5 UA1 = 4.31E-09 UB1 = -7.61E-18
++UC1 = -5.6E-11 PRT = 760 AT = 22400
++CGSO = 1e-10 CGDO = 1e-10 CJSWG = 5e-10 TT=3e-10
++ASD = 0.3 CSDESW = 1e-12
diff --git a/Windows/spice/tests/bsim3soifd/ring51.cir b/Windows/spice/tests/bsim3soifd/ring51.cir
new file mode 100644
index 00000000..958b0951
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/ring51.cir
@@ -0,0 +1,23 @@
+* 51 stage Ring-Osc.
+
+vin in out 2 pulse 2 0 0.1n 5n 1 1 1
+vdd dd 0 dc 0 pulse 0 2 0 1n 1 1 1
+vss ss 0 dc 0
+ve sub 0 dc 0
+
+xinv1 dd ss sub in out25 inv25
+xinv2 dd ss sub out25 out50 inv25
+xinv5 dd ss sub out50 out inv1
+xinv11 dd ss sub out buf inv1
+cout buf ss 1pF
+
+xdum ss dum
+
+.option itl1=500 gmin=1e-15 itl4=10 noacct
+*.dc vdd 0 2 0.01
+.tran 0.2n 50n
+
+.include nmosfd.mod
+.include pmosfd.mod
+.include lib.h
+.end
diff --git a/Windows/spice/tests/bsim3soifd/t3.cir b/Windows/spice/tests/bsim3soifd/t3.cir
new file mode 100644
index 00000000..84692212
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/t3.cir
@@ -0,0 +1,18 @@
+*model = BSIMSOI (FD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, floating body simulation
+
+vd d 0 dc 1.5
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+
+
+m1 d g s e n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vd 0 3 0.01 vg 0.5 3 0.5
+.print dc v(g), i(vs)
+.include nmosfd.mod
+
diff --git a/Windows/spice/tests/bsim3soifd/t4.cir b/Windows/spice/tests/bsim3soifd/t4.cir
new file mode 100644
index 00000000..54a9794b
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/t4.cir
@@ -0,0 +1,17 @@
+*model = BSIMSOI (FD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, tied body simulation
+
+vd d 0 dc 0.05
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+vb b 0 dc 0
+
+m1 d g s e b n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vg 0 1.5 0.01 vb -0.3 0.5 0.1
+.print dc i(vs)
+.include nmosfd.mod
diff --git a/Windows/spice/tests/bsim3soifd/t5.cir b/Windows/spice/tests/bsim3soifd/t5.cir
new file mode 100644
index 00000000..5969f224
--- /dev/null
+++ b/Windows/spice/tests/bsim3soifd/t5.cir
@@ -0,0 +1,16 @@
+*model = BSIMSOI (FD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, floating body simulation
+
+vd d 0 dc 0.05
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+
+m1 d g s e n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vg 0 1.5 0.01 ve -4 4 1
+.print dc i(vs)
+.include nmosfd.mod
diff --git a/Windows/spice/tests/bsim3soipd/Makefile.am b/Windows/spice/tests/bsim3soipd/Makefile.am
new file mode 100644
index 00000000..9ab5c91b
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/Makefile.am
@@ -0,0 +1,20 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ t3.cir \
+ t4.cir \
+ t5.cir \
+ inv2.cir \
+ RampVg2.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ nmospd.mod \
+ pmospd.mod \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+EXTRA_DIST += ring51.cir lib.h
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/bsim3soipd/Makefile.in b/Windows/spice/tests/bsim3soipd/Makefile.in
new file mode 100644
index 00000000..e5f766b5
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/Makefile.in
@@ -0,0 +1,516 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/bsim3soipd
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ t3.cir \
+ t4.cir \
+ t5.cir \
+ inv2.cir \
+ RampVg2.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = nmospd.mod pmospd.mod $(TESTS) $(TESTS:.cir=.out) \
+ ring51.cir lib.h
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/bsim3soipd/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/bsim3soipd/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/bsim3soipd/RampVg2.cir b/Windows/spice/tests/bsim3soipd/RampVg2.cir
new file mode 100644
index 00000000..72d46a2b
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/RampVg2.cir
@@ -0,0 +1,20 @@
+* BSIMSOI (PD) example
+*
+* SOI, Ramp Vg
+
+Vd d 0 1.5
+Vg g 0 0.0 PULSE 0V 2V .02n .1n .1n .2n .6n
+Ve e 0 0.0
+Vs s 0 0.0
+Vb b 0 0.0
+
+m1 d g s e n1 w=10u l=0.25u debug=-1
+
+.option gmin=1e-20 itl1=200 itl2=200 abstol=1e-9 noacct
+.tran 1p 1.0ns
+.save @m1[Vbs], V(g)/10
+.print tran v(g)/10
+.include nmospd.mod
+
+.end
+
diff --git a/Windows/spice/tests/bsim3soipd/inv2.cir b/Windows/spice/tests/bsim3soipd/inv2.cir
new file mode 100644
index 00000000..51f3aa8a
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/inv2.cir
@@ -0,0 +1,17 @@
+* model = BSIMSOI (PD)
+*
+*
+* SOI Inverter - floating body
+
+vin in 0 dc 2.5
+vdd dd 0 dc 2.5
+vss ss 0 dc 0
+ve e 0 dc 1.25
+m1 out in dd e p1 w=20u l=0.25u
+m2 out in ss e n1 w=10u l=0.25u
+
+.option itl1=500 gmin=1e-25 noacct
+.dc vin 0 2.5 0.01
+.print dc v(in), v(out)
+.include nmospd.mod
+.include pmospd.mod
diff --git a/Windows/spice/tests/bsim3soipd/lib.h b/Windows/spice/tests/bsim3soipd/lib.h
new file mode 100644
index 00000000..310aa396
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/lib.h
@@ -0,0 +1,110 @@
+
+
+.subckt dum ss
+mn1 ss ss ss ss ss n1 w=4u l=0.15u debug=1 AS=6p AD=6p PS=7u PD=7u
+.ends dum
+
+* XOR2
+.subckt xnor2 dd ss sub A B out
+mn1 T1 A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out A C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 out B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn5 C2 T1 ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 T1 A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 T1 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out A C3 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 C3 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp5 out T1 dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends xnor2
+
+.subckt nor2 dd ss sub A B out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor2
+
+.subckt nand2 dd ss sub A B out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand2
+
+.subckt nor3 dd ss sub A B C out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B C2 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 C2 C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor3
+
+.subckt nand3 dd ss sub A B C out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 C2 C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand3
+
+.subckt nor4 dd ss sub A B C D out
+mn1 out A ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 out B ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 out C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A C1 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 C1 B C2 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 C2 C C3 sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 C3 C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nor4
+
+.subckt nand4 dd ss sub A B C D out
+mn1 out A C1 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn2 C1 B C2 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn3 C2 C C3 sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mn4 C3 C ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out A dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp2 out B dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp3 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+mp4 out C dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends nand4
+
+.subckt inv1 dd ss sub in out
+mn1 out in ss sub n1 w=4u l=0.15u AS=6p AD=6p PS=7u PD=7u
+mp1 out in dd sub p1 w=10u l=0.15u AS=15p AD=15p PS=13u PD=13u
+.ends inv1
+
+.subckt inv5 dd ss sub in out
+xinv1 dd ss sub in 1 inv1
+xinv2 dd ss sub 1 2 inv1
+xinv3 dd ss sub 2 3 inv1
+xinv4 dd ss sub 3 4 inv1
+xinv5 dd ss sub 4 out inv1
+.ends inv5
+
+.subckt inv25 dd ss sub in out
+xinv1 dd ss sub in 1 inv5
+xinv2 dd ss sub 1 2 inv5
+xinv3 dd ss sub 2 3 inv5
+xinv4 dd ss sub 3 4 inv5
+xinv5 dd ss sub 4 out inv5
+.ends inv25
+
+.subckt inv125 dd ss sub in out
+xinv1 dd ss sub in 1 inv25
+xinv2 dd ss sub 1 2 inv25
+xinv3 dd ss sub 2 3 inv25
+xinv4 dd ss sub 3 4 inv25
+xinv5 dd ss sub 4 out inv25
+.ends inv125
+
+.subckt inv625 dd ss sub in out
+xinv1 dd ss sub in 1 inv125
+xinv2 dd ss sub 1 2 inv125
+xinv3 dd ss sub 2 3 inv125
+xinv4 dd ss sub 3 4 inv125
+xinv5 dd ss sub 4 out inv125
+.ends inv625
diff --git a/Windows/spice/tests/bsim3soipd/nmospd.mod b/Windows/spice/tests/bsim3soipd/nmospd.mod
new file mode 100644
index 00000000..e0710b2e
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/nmospd.mod
@@ -0,0 +1,40 @@
+*Model Card for BSIMPD2.0
+* Lmin= .2 Lmax= .8 Wmin= 2.8 Wmax= 2.8
+.Model N1 NMOS Level= 57
++TNOM = 27 TOX = 4.5E-09 TSI = .0000001 TBOX = 8E-08
++MOBMOD = 0 CAPMOD = 2 SHMOD =0
++PARAMCHK=0 WINT = 0 LINT = -2E-08
++VTH0 = .42 K1 = .49 K2 = .1 K3 = 0
++K3B = 2.2 NLX = 2E-7
++DVT0 = 10 DVT1 = .55 DVT2 = -1.4
++DVT0W = 0 DVT1W = 0 DVT2W = 0
++NCH = 4.7E+17 NSUB = -1E+15 NGATE = 1E+20
++AGIDL=1e-15 BGIDL=1e9 NGIDL=1.1
++NDIODE = 1.13 NTUN = 14.0 NRECF0=2.5 NRECR0=4
++VREC0=1.2 NTRECF=.1 NTRECR=.2
++ISBJT = 1e-4 ISDIF = 1e-5 ISTUN = 2e-5 ISREC = 4e-2
++XBJT = .9 XDIF = .9 XREC = .9 XTUN = 0.01
++AHLI=1e-9 LBJT0=0.2e-6 LN=2e-6
++NBJT=.8 NDIF=-1 AELY=1e8 VABJT=0
++U0 = 352 UA = 1.3E-11 UB = 1.7E-18 UC = -4E-10
++W0 = 1.16E-06 AGS = .25 A1 = 0 A2 = 1
++B0 = .01 B1 = 10
++RDSW = 0 PRWG = 0 PRWB = -.2 WR = 1
++RBODY = 1e0 RBSH = 0.0
++A0 = 1.4 KETA = 0.1 KETAS = 0.2 VSAT = 135000
++DWG = 0 DWB = 0
++ALPHA0 = 1e-8 BETA0 = 0 BETA1 = 0.05 BETA2 = 0.07
++VDSATII0 = .8 ESATII = 1e7
++VOFF = -.14 NFACTOR = .7 CDSC = .00002 CDSCB = 0
++CDSCD = 0 CIT = 0
++PCLM = 2.9 PVAG = 12 PDIBLC1 = .18 PDIBLC2 = .004
++PDIBLCB = -.234 DROUT = .2
++DELTA = .01 ETA0 = .05 ETAB = 0
++DSUB = .2 RTH0 = .005
++CLC = .0000001 CLE = .6 CF = 1E-20 CKAPPA = .6
++CGDL = 1E-20 CGSL = 1E-20 KT1 = -.3 KT1L = 0
++KT2 = .022 UTE = -1.5 UA1 = 4.31E-09 UB1 = -7.61E-18
++UC1 = -5.6E-11 PRT = 760 AT = 22400
++CGSO = 1e-10 CGDO = 1e-10 CJSWG = 1e-12 TT=3e-10
++ASD = 0.3 CSDESW = 1e-12
++TCJSWG=1e-4 MJSWG=.5 PBSWG=1
diff --git a/Windows/spice/tests/bsim3soipd/pmospd.mod b/Windows/spice/tests/bsim3soipd/pmospd.mod
new file mode 100644
index 00000000..9fe7d714
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/pmospd.mod
@@ -0,0 +1,40 @@
+*Model Card for BSIMPD2.0
+* Lmin= .2 Lmax= .8 Wmin= 2.8 Wmax= 2.8
+.Model P1 PMOS Level= 57
++TNOM = 27 TOX = 4.5E-09 TSI = .0000001 TBOX = 8E-08
++MOBMOD = 2 CAPMOD = 2 SHMOD = 0
++WINT = 0 LINT = -2E-08
++VTH0 = -.42 K1 = .49 K2 = .1 K3 = 0
++K3B = 2.2 NLX = 2E-07
++DVT0 = 10 DVT1 = .55 DVT2 = -1.4
++DVT0W = 0 DVT1W = 0 DVT2W = 0
++NCH = 4.7E+17 NSUB = -1E+15 NGATE = 1E+20
++AGIDL=1e-16 BGIDL=1e9 NGIDL=1.1
++NDIODE = 1.13 NTUN = 14.0 NRECF0=2.5 NRECR0=4
++VREC0=1.2 NTRECF=.1 NTRECR=.2
++ISBJT = 1e-4 ISDIF = 1e-5 ISTUN = 2e-5 ISREC = 4e-2
++XBJT = .9 XDIF = .9 XREC = .9 XTUN = 0.01
++AHLI=1e-9 LBJT0=0.2e-6 LN=2e-6
++NBJT=.8 NDIF=-1 AELY=1e8 VABJT=0
++U0 = 145 UA = 1.3E-11 UB = 1.7E-18 UC = -4E-10
++W0 = 1.16E-06 AGS = .25 A1 = 0 A2 = 1
++B0 = .01 B1 = 10
++RDSW = 350 PRWG = 0 PRWB = -.2 WR = 1
++RBODY = 1e0 RBSH = 0.0
++A0 = 1.4 KETA = 0.1 KETAS = 0.2 VSAT = 75000
++DWG = 0 DWB = 0
++ALPHA0 = 1e-8 BETA0 = 0 BETA1 = 0.05 BETA2 = 0.07
++VDSATII0 = 1.6 ESATII = 1e7
++VOFF = -.14 NFACTOR = .7 CDSC = .00002 CDSCB = 0
++CDSCD = 0 CIT = 0
++PCLM = 2.9 PVAG = 12 PDIBLC1 = .18 PDIBLC2 = .004
++PDIBLCB = -.234 DROUT = .2
++DELTA = .01 ETA0 = .05 ETAB = 0
++DSUB = .2 RTH0 = .005
++CLC = .0000001 CLE = .6 CF = 1E-20 CKAPPA = .6
++CGDL = 1E-20 CGSL = 1E-20 KT1 = -.3 KT1L = 0
++KT2 = .022 UTE = -1.5 UA1 = 4.31E-09 UB1 = -7.61E-18
++UC1 = -5.6E-11 PRT = 760 AT = 22400
++CGSO = 1e-10 CGDO = 1e-10 CJSWG = 1e-12 TT=3e-10
++ASD = 0.3 CSDESW = 1e-12
++TCJSWG=1e-4 MJSWG=.5 PBSWG=1
diff --git a/Windows/spice/tests/bsim3soipd/ring51.cir b/Windows/spice/tests/bsim3soipd/ring51.cir
new file mode 100644
index 00000000..8fa16979
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/ring51.cir
@@ -0,0 +1,26 @@
+* 51 stage Ring-Osc. (PD)
+
+vin in out 2 pulse 2 0 0.1n 5n 1 1 1
+vdd dd 0 dc 0 pulse 0 2 0 1n 1 1 1
+vss ss 0 dc 0
+ve sub 0 dc 0
+
+xinv1 dd ss sub in out25 inv25
+xinv2 dd ss sub out25 out50 inv25
+xinv5 dd ss sub out50 out inv1
+xinv11 dd ss sub out buf inv1
+cout buf ss 1pF
+
+xdum ss dum
+
+.option itl1=500 gmin=1e-15 itl4=10 noacct
+.dc vdd 0 2 0.01
+.tran 0.2n 50n
+
+.print dc v(out)
+.print tran v(out)
+
+.include nmospd.mod
+.include pmospd.mod
+.include lib.h
+.end
diff --git a/Windows/spice/tests/bsim3soipd/t3.cir b/Windows/spice/tests/bsim3soipd/t3.cir
new file mode 100644
index 00000000..39d0f78e
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/t3.cir
@@ -0,0 +1,18 @@
+*model = BSIMSOI (PD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, floating body simulation
+
+vd d 0 dc 1.5
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+
+
+m1 d g s e n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vd 0 3 0.01 vg 0.5 3 0.5
+.print dc v(g), i(vs)
+.include nmospd.mod
+
diff --git a/Windows/spice/tests/bsim3soipd/t4.cir b/Windows/spice/tests/bsim3soipd/t4.cir
new file mode 100644
index 00000000..5bc912d6
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/t4.cir
@@ -0,0 +1,18 @@
+*model = BSIMSOI (PD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, tied body simulation
+
+vd d 0 dc 0.05
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+vb b 0 dc 0
+
+m1 d g s e b n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vg 0 1.5 0.01 vb -0.3 0.5 0.1
+.print dc i(vs)
+.include nmospd.mod
+
diff --git a/Windows/spice/tests/bsim3soipd/t5.cir b/Windows/spice/tests/bsim3soipd/t5.cir
new file mode 100644
index 00000000..69ce3725
--- /dev/null
+++ b/Windows/spice/tests/bsim3soipd/t5.cir
@@ -0,0 +1,16 @@
+*model = BSIMSOI (PD)
+*Berkeley Spice Compatibility
+*
+* SOI NMOSFET, floating body simulation
+
+vd d 0 dc 0.05
+vs s 0 dc 0
+ve e 0 dc 0
+vg g 0 dc 3
+
+m1 d g s e n1 w=10u l=0.25u
+
+.option gmin=1e-25 itl1=500 noacct
+.dc vg 0 1.5 0.01 ve -4 4 1
+.print dc i(vs)
+.include nmospd.mod
diff --git a/Windows/spice/tests/filters/Makefile.am b/Windows/spice/tests/filters/Makefile.am
new file mode 100644
index 00000000..8f273be2
--- /dev/null
+++ b/Windows/spice/tests/filters/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ lowpass.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/filters/Makefile.in b/Windows/spice/tests/filters/Makefile.in
new file mode 100644
index 00000000..a1efe192
--- /dev/null
+++ b/Windows/spice/tests/filters/Makefile.in
@@ -0,0 +1,514 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/filters
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ lowpass.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/filters/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/filters/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/filters/lowpass.cir b/Windows/spice/tests/filters/lowpass.cir
new file mode 100644
index 00000000..eb21b4a0
--- /dev/null
+++ b/Windows/spice/tests/filters/lowpass.cir
@@ -0,0 +1,13 @@
+A Simple AC Run
+
+.OPTIONS LIST NODE POST TRANS noacct
+.OP
+.AC DEC 10 1k 1Meg
+.PRINT AC V(2)
+
+V1 1 0 DC 0 AC 1 SIN 0 1 1K 0 0 DISTOF1 0 DISTOF2 0
+R1 1 2 10k
+R2 2 0 10k
+C1 2 0 1n
+
+.END
diff --git a/Windows/spice/tests/general/Makefile.am b/Windows/spice/tests/general/Makefile.am
new file mode 100644
index 00000000..a6c1775d
--- /dev/null
+++ b/Windows/spice/tests/general/Makefile.am
@@ -0,0 +1,20 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = \
+ mosamp.cir \
+ mosmem.cir \
+ rc.cir \
+ rca3040.cir \
+ rtlinv.cir \
+ schmitt.cir \
+ diffpair.cir \
+ fourbitadder.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/general/Makefile.in b/Windows/spice/tests/general/Makefile.in
new file mode 100644
index 00000000..0e59e3ce
--- /dev/null
+++ b/Windows/spice/tests/general/Makefile.in
@@ -0,0 +1,521 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/general
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ mosamp.cir \
+ mosmem.cir \
+ rc.cir \
+ rca3040.cir \
+ rtlinv.cir \
+ schmitt.cir \
+ diffpair.cir \
+ fourbitadder.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/general/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/general/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/general/diffpair.cir b/Windows/spice/tests/general/diffpair.cir
new file mode 100644
index 00000000..732d844b
--- /dev/null
+++ b/Windows/spice/tests/general/diffpair.cir
@@ -0,0 +1,31 @@
+simple differential pair - CM and DM dc sensitivity
+
+* Models:
+.model qnl npn(level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf va=50)
+.model qnr npn(level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf va=50)
+
+.options noacct
+
+* Circuit description:
+q1 4 2 6 qnr
+q2 5 3 6 qnl
+rs1 11 2 1k
+rs2 3 1 1k
+rc1 4 8 10k
+rc2 5 8 10k
+q3 7 7 9 qnl
+q4 6 7 9 qnr
+rbias 7 8 20k
+
+* Inputs/Supplies:
+vcm 1 0 dc 0 sin(0 0.1 5meg) ac 1
+vdm 1 11 dc 0 sin(0 0.1 5meg) ac 1
+vcc 8 0 12
+vee 9 0 -12
+
+* Analysys:
+.tf v(5) vcm
+.tf v(5) vdm
+.sens v(5,4)
+
+.end
diff --git a/Windows/spice/tests/general/fourbitadder.cir b/Windows/spice/tests/general/fourbitadder.cir
new file mode 100644
index 00000000..d6b577df
--- /dev/null
+++ b/Windows/spice/tests/general/fourbitadder.cir
@@ -0,0 +1,79 @@
+4 bit adder
+
+* Models:
+.MODEL dmod D
+.MODEL qmod NPN(level=1 BF=75 RB=100 CJE=1PF CJC=3PF)
+
+.options noacct
+
+.SUBCKT NAND 1 2 3 4
+* noeuds: entrees(2) sortie vcc
+q1 9 5 1 qmod
+d1clamp 0 1 dmod
+q2 9 5 2 qmod
+d2clamp 0 2 dmod
+rb 4 5 4k
+r1 4 6 1.6k
+q3 6 9 8 qmod
+r2 8 0 1k
+rc 4 7 130
+q4 7 6 10 qmod
+dvbedrop 10 3 dmod
+q5 3 8 0 qmod
+.ends NAND
+
+.SUBCKT ONEBIT 1 2 3 4 5 6
+* noeuds entrees(2) ,carryin, sortie, carryout, vcc
+x1 1 2 7 6 NAND
+x2 1 7 8 6 NAND
+x3 2 7 9 6 NAND
+x4 8 9 10 6 NAND
+x5 3 10 11 6 NAND
+x6 3 11 12 6 NAND
+x7 10 11 13 6 NAND
+x8 12 13 4 6 NAND
+x9 11 7 5 6 NAND
+.ends ONEBIT
+
+.SUBCKT TWOBIT 1 2 3 4 5 6 7 8 9
+* noeuds
+x1 1 2 7 5 10 9 ONEBIT
+x2 3 4 10 6 8 9 ONEBIT
+.ends TWOBIT
+
+.SUBCKT FOURBIT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+
+x1 1 2 3 4 9 10 13 16 15 TWOBIT
+x2 5 6 7 8 11 12 16 14 15 TWOBIT
+.ends FOURBIT
+
+
+
+* Inputs/Supplies:
+
+vcc 99 0 DC 5V
+VIN1A 1 0 DC 0 pulse(0 3 0 10ns 10ns 10ns 50ns)
+VIN1B 2 0 DC 0 pulse(0 3 0 10ns 10ns 20ns 100ns)
+VIN2A 3 0 DC 0 pulse(0 3 0 10ns 10ns 40ns 200ns)
+VIN2B 4 0 DC 0 pulse(0 3 0 10ns 10ns 80ns 400ns)
+VIN3A 5 0 DC 0 pulse(0 3 0 10ns 10ns 160ns 800ns)
+VIN3B 6 0 DC 0 pulse(0 3 0 10ns 10ns 320ns 1600ns)
+VIN4A 7 0 DC 0 pulse(0 3 0 10ns 10ns 640ns 3200ns)
+VIN4B 8 0 DC 0 pulse(0 3 0 10ns 10ns 1280ns 6400ns)
+
+* Circuit description:
+x1 1 2 3 4 5 6 7 8 9 10 11 12 0 13 99 FOURBIT
+rbit0 9 0 1k
+rbit1 10 0 1k
+rbit2 11 0 1k
+rbit3 12 0 1k
+rcout 13 0 1k
+
+* Analysys:
+.tran 1ns 6ns
+.print tran v(1)
+
+
+.end
+
+
diff --git a/Windows/spice/tests/general/mosamp.cir b/Windows/spice/tests/general/mosamp.cir
new file mode 100644
index 00000000..7ea28504
--- /dev/null
+++ b/Windows/spice/tests/general/mosamp.cir
@@ -0,0 +1,46 @@
+mosamp - mos amplifier - transient
+
+* The original options line (removed acct)
+* .options acct abstol=10n vntol=10n
+
+.options abstol=10n vntol=10n noacct
+.tran 0.1us 10us
+m1 15 15 1 32 m w=88.9u l=25.4u
+m2 1 1 2 32 m w=12.7u l=266.7u
+m3 2 2 30 32 m w=88.9u l=25.4u
+m4 15 5 4 32 m w=12.7u l=106.7u
+m5 4 4 30 32 m w=88.9u l=12.7u
+m6 15 15 5 32 m w=44.5u l=25.4u
+m7 5 20 8 32 m w=482.6u l=12.7u
+m8 8 2 30 32 m w=88.9u l=25.4u
+m9 15 15 6 32 m w=44.5u l=25.4u
+m10 6 21 8 32 m w=482.6u l=12.7u
+m11 15 6 7 32 m w=12.7u l=106.7u
+m12 7 4 30 32 m w=88.9u l=12.7u
+m13 15 10 9 32 m w=139.7u l=12.7u
+m14 9 11 30 32 m w=139.7u l=12.7u
+m15 15 15 12 32 m w=12.7u l=207.8u
+m16 12 12 11 32 m w=54.1u l=12.7u
+m17 11 11 30 32 m w=54.1u l=12.7u
+m18 15 15 10 32 m w=12.7u l=45.2u
+m19 10 12 13 32 m w=270.5u l=12.7u
+m20 13 7 30 32 m w=270.5u l=12.7u
+m21 15 10 14 32 m w=254u l=12.7u
+m22 14 11 30 32 m w=241.3u l=12.7u
+m23 15 20 16 32 m w=19u l=38.1u
+m24 16 14 30 32 m w=406.4u l=12.7u
+m25 15 15 20 32 m w=38.1u l=42.7u
+m26 20 16 30 32 m w=381u l=25.4u
+m27 20 15 66 32 m w=22.9u l=7.6u
+cc 7 9 40pf
+cl 66 0 70pf
+vin 21 0 pulse(0 5 1ns 1ns 1ns 5us 10us)
+vccp 15 0 dc +15
+vddn 30 0 dc -15
+vb 32 0 dc -20
+.model m nmos(nsub=2.2e15 uo=575 ucrit=49k uexp=0.1 tox=0.11u xj=2.95u
++ level=2 cgso=1.5n cgdo=1.5n cbd=4.5f cbs=4.5f ld=2.4485u nss=3.2e10
++ kp=2e-5 phi=0.6 )
+.print tran v(20) v(66)
+.plot tran v(20) v(66)
+.end
diff --git a/Windows/spice/tests/general/mosmem.cir b/Windows/spice/tests/general/mosmem.cir
new file mode 100644
index 00000000..2a55bd9c
--- /dev/null
+++ b/Windows/spice/tests/general/mosmem.cir
@@ -0,0 +1,31 @@
+mosmem - mos memory cell
+.width in=72
+.opt abstol=1u
+
+.opt list node noacct
+* The original line is below
+*.opt acct list node
+
+.tran 20ns 2us
+vdd 9 0 dc 5
+vs 7 0 pulse(2 0 520ns 20ns 20ns 500ns 2000ns)
+vw 1 0 pulse(0 2 20ns 20ns 500ns 200ns 2000ns)
+vwb 2 0 pulse(2 0 20ns 20ns 20ns 2000ns 2000ns)
+m1 3 1 0 0 mod w=250u l=5u
+m2 4 2 0 0 mod w=250u l=5u
+m3 9 9 3 0 mod w=5u l=5u
+m4 9 9 4 0 mod w=5u l=5u
+m5 5 7 3 0 mod w=50u l=5u
+m6 6 7 4 0 mod w=50u l=5u
+m7 5 6 0 0 mod w=250u l=5u
+m8 6 5 0 0 mod w=250u l=5u
+m9 9 9 5 0 mod w=5u l=5u
+m10 9 9 6 0 mod w=5u l=5u
+m11 8 4 0 0 mod w=250u l=5u
+m12 9 9 8 0 mod w=5u l=5u
+.model mod nmos(vto=0.5 phi=0.7 kp=1.0e-6 gamma=1.83 lambda=0.115
++ level=1 cgso=1u cgdo=1u cbd=50p cbs=50p)
+.print dc v(5) v(6)
+.plot dc v(6)
+.plot tran v(6) v(5) v(7) v(1) v(2)
+.end
diff --git a/Windows/spice/tests/general/rc.cir b/Windows/spice/tests/general/rc.cir
new file mode 100644
index 00000000..6f79d4b8
--- /dev/null
+++ b/Windows/spice/tests/general/rc.cir
@@ -0,0 +1,11 @@
+Basic RC circuit
+r 1 2 1.0
+*l 1 2 1.0
+c 2 0 1.0
+vin 1 0 pulse (0 1) ac 1
+.options noacct
+.tran 0.1 7.0
+*.ac dec 10 .01 10
+.plot tran v(2) i(vin)
+*.plot ac vdb(2) xlog
+.end
diff --git a/Windows/spice/tests/general/rca3040.cir b/Windows/spice/tests/general/rca3040.cir
new file mode 100644
index 00000000..d5323916
--- /dev/null
+++ b/Windows/spice/tests/general/rca3040.cir
@@ -0,0 +1,34 @@
+rca3040 ckt - rca 3040 wideband amplifier
+.options noacct
+.ac dec 10 1 10ghz
+.dc vin -0.25 0.25 0.005
+.tran 2.0ns 200ns
+vin 1 0 sin(0 0.1 50meg 0.5ns) ac 1
+vcc 2 0 15.0
+vee 3 0 -15.0
+rs1 30 1 1k
+rs2 31 0 1k
+r1 5 3 4.8k
+r2 6 3 4.8k
+r3 9 3 811
+r4 8 3 2.17k
+r5 8 0 820
+r6 2 14 1.32k
+r7 2 12 4.5k
+r8 2 15 1.32k
+r9 16 0 5.25k
+r10 17 0 5.25k
+q1 2 30 5 qnl
+q2 2 31 6 qnl
+q3 10 5 7 qnl
+q4 11 6 7 qnl
+q5 14 12 10 qnl
+q6 15 12 11 qnl
+q7 12 12 13 qnl
+q8 13 13 0 qnl
+q9 7 8 9 qnl
+q10 2 15 16 qnl
+q11 2 14 17 qnl
+.model qnl npn level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf
++ cjc=2pf va=50
+.end
diff --git a/Windows/spice/tests/general/rtlinv.cir b/Windows/spice/tests/general/rtlinv.cir
new file mode 100644
index 00000000..2fee0617
--- /dev/null
+++ b/Windows/spice/tests/general/rtlinv.cir
@@ -0,0 +1,24 @@
+rtlinv ckt - cascaded rtl inverters
+.width in=72
+
+.opt list node lvlcod=2 noacct
+* The original line is below
+*.opt acct list node lvlcod=2
+
+.dc vin 0.0 2.5 0.025
+.tran 2ns 200ns
+vcc 6 0 5
+vin 1 0 pulse(0 5 2ns 2ns 2ns 80ns)
+rb1 1 2 10k
+rc1 6 3 1k
+q1 3 2 0 qnd
+rb2 3 4 10k
+q2 5 4 0 qnd
+rc2 6 5 1k
+.model qnd npn(level=1 bf=50 rb=70 rc=40 ccs=2pf tf=0.1ns tr=10ns cje=0.9pf
++ cjc=1.5pf pc=0.85 va=50)
+.print dc v(3) v(5)
+.plot dc v(3)
+.print tran v(3) v(5)
+.plot tran v(3) v(5) v(1)
+.end
diff --git a/Windows/spice/tests/general/schmitt.cir b/Windows/spice/tests/general/schmitt.cir
new file mode 100644
index 00000000..81ba0871
--- /dev/null
+++ b/Windows/spice/tests/general/schmitt.cir
@@ -0,0 +1,28 @@
+schmitt ckt - ecl compatible schmitt trigger
+.width in=72
+
+.opt list node lvlcod=2 noacct
+* The original line is below
+*.opt acct list node lvlcod=2
+
+.tran 10ns 1000ns
+vin 1 0 pulse(-1.6 -1.2 10ns 400ns 400ns 100ns 10000ns)
+vee 8 0 -5
+rin 1 2 50
+rc1 0 3 50
+r1 3 5 185
+r2 5 8 760
+rc2 0 6 100
+re 4 8 260
+rth1 7 8 125
+rth2 7 0 85
+cload 7 0 5pf
+q1 3 2 4 qstd off
+q2 6 5 4 qstd
+q3 0 6 7 qstd
+q4 0 6 7 qstd
+.model qstd npn(level=1 is=1.0e-16 bf=50 br=0.1 rb=50 rc=10 tf=0.12ns tr=5ns
++ cje=0.4pf pe=0.8 me=0.4 cjc=0.5pf pc=0.8 mc=0.333 ccs=1pf va=50)
+.print tran v(1) v(3) v(5) v(6)
+.plot tran v(3) v(5) v(6) v(1)
+.end
diff --git a/Windows/spice/tests/hfet/Makefile.am b/Windows/spice/tests/hfet/Makefile.am
new file mode 100644
index 00000000..36913130
--- /dev/null
+++ b/Windows/spice/tests/hfet/Makefile.am
@@ -0,0 +1,14 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = \
+ id_vgs.cir \
+ inverter.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/hfet/Makefile.in b/Windows/spice/tests/hfet/Makefile.in
new file mode 100644
index 00000000..6c4fdbc1
--- /dev/null
+++ b/Windows/spice/tests/hfet/Makefile.in
@@ -0,0 +1,515 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/hfet
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ id_vgs.cir \
+ inverter.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/hfet/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/hfet/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/hfet/id_vgs.cir b/Windows/spice/tests/hfet/id_vgs.cir
new file mode 100644
index 00000000..a0a1c149
--- /dev/null
+++ b/Windows/spice/tests/hfet/id_vgs.cir
@@ -0,0 +1,14 @@
+HFET Id versus Vgs characteristic
+
+z1 1 2 0 hfet l=1u w=10u
+vgs 2 0 dc 0.3
+vds 1 0 dc 1.0
+
+.options noacct
+.model hfet nhfet level=5 rdi=0 rsi=0 m=2.57 lambda=0.17
++ vs=1.5e5 mu=0.385 vt0=0.13 eta=1.32 sigma0=0.04
++ vsigma=0.1 Vsigmat=0.3 js1s=0 js1d=0 nmax=6e15
+
+.dc vds 0 1 0.01
+.print DC i(vds)
+.end
diff --git a/Windows/spice/tests/hfet/inverter.cir b/Windows/spice/tests/hfet/inverter.cir
new file mode 100644
index 00000000..16a449c6
--- /dev/null
+++ b/Windows/spice/tests/hfet/inverter.cir
@@ -0,0 +1,29 @@
+DCFL inverter circuit
+
+.subckt inv 1 2 3
+*
+*Vdd 1.0
+*Vin 2 0
+*Vout 3 0
+z1 1 3 3 aload l=1u w=10u
+z2 3 2 0 adrv l=1u w=10u
+.ends
+
+vdd 1 0 dc 2
+vin 2 0 dc 0 pwl(0,0V 1ns,0V 1.005ns,1V 2ns,1V)
+x1 1 2 3 inv
+x2 1 3 4 inv
+
+.options noacct
+.tran 0.01n 3n
+.print tran all
+.model adrv nhfet level=5 rd=60 rs=60 m=2.57 lambda=0.17
++ vs=1.5e5 mu=0.385 vt0=0.3 eta=1.32 sigma0=0.04
++ vsigma=0.1 vsigmat=0.3 js1s=1e-12 js1d=1e-12
++ nmax=6e15
+.model aload nhfet level=5 rd=60 rs=60 m=2.57 lambda=0.17
++ vs=1.5e5 mu=0.385 vt0=-0.3 eta=1.32 sigma0=0.04
++ vsigma=0.1 vsigmat=0.3 js1s=1e-12 js1d=1e-12
++ nmax=6e15
+
+.end
diff --git a/Windows/spice/tests/jfet/Makefile.am b/Windows/spice/tests/jfet/Makefile.am
new file mode 100644
index 00000000..77425073
--- /dev/null
+++ b/Windows/spice/tests/jfet/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = jfet_vds-vgs.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/jfet/Makefile.in b/Windows/spice/tests/jfet/Makefile.in
new file mode 100644
index 00000000..136e47d6
--- /dev/null
+++ b/Windows/spice/tests/jfet/Makefile.in
@@ -0,0 +1,512 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/jfet
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = jfet_vds-vgs.cir
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/jfet/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/jfet/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/jfet/jfet_vds-vgs.cir b/Windows/spice/tests/jfet/jfet_vds-vgs.cir
new file mode 100644
index 00000000..a2f7bce7
--- /dev/null
+++ b/Windows/spice/tests/jfet/jfet_vds-vgs.cir
@@ -0,0 +1,14 @@
+* I-V Characteristics of JFET 2N4221
+*
+*
+j1 2 1 0 MODJ
+VD 2 0 25
+VG 1 0 -2
+*
+.model MODJ NJF LEVEL=1 VTO=-3.5 BETA=4.1E-4 LAMBDA=0.002 RD=200
+*
+.options noacct
+.op
+.dc VD 0 25 1 VG -3 0 1
+.print DC I(VD)
+.END
diff --git a/Windows/spice/tests/mes/Makefile.am b/Windows/spice/tests/mes/Makefile.am
new file mode 100644
index 00000000..51dc7c39
--- /dev/null
+++ b/Windows/spice/tests/mes/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = subth.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/mes/Makefile.in b/Windows/spice/tests/mes/Makefile.in
new file mode 100644
index 00000000..ae06d792
--- /dev/null
+++ b/Windows/spice/tests/mes/Makefile.in
@@ -0,0 +1,512 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/mes
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = subth.cir
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/mes/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/mes/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/mes/subth.cir b/Windows/spice/tests/mes/subth.cir
new file mode 100644
index 00000000..ba487966
--- /dev/null
+++ b/Windows/spice/tests/mes/subth.cir
@@ -0,0 +1,17 @@
+Mesfet level 1 subthreshold characteristics
+
+Vds 1 0 dc 0.1
+vids 1 2 dc 0
+Vgs 3 0 dc 0
+
+z1 2 3 0 mesmod area=1.4
+
+.model mesmod nmf level=1 rd=46 rs=46 vt0=-1.3
++ lambda=0.03 alpha=3 beta=1.4e-3
+
+.options noacct
+.dc vgs -3 0 0.05
+.print DC vids#branch
+
+
+.end
diff --git a/Windows/spice/tests/mesa/Makefile.am b/Windows/spice/tests/mesa/Makefile.am
new file mode 100644
index 00000000..a516408b
--- /dev/null
+++ b/Windows/spice/tests/mesa/Makefile.am
@@ -0,0 +1,22 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ mesa11.cir \
+ mesa13.cir \
+ mesa14.cir \
+ mesa15.cir \
+ mesa21.cir \
+ mesa.cir \
+ mesgout.cir \
+ mesinv.cir \
+ mesosc.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+EXTRA_DIST += mesa12.cir mesa-12.cir
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/mesa/Makefile.in b/Windows/spice/tests/mesa/Makefile.in
new file mode 100644
index 00000000..304d4e92
--- /dev/null
+++ b/Windows/spice/tests/mesa/Makefile.in
@@ -0,0 +1,519 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/mesa
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ mesa11.cir \
+ mesa13.cir \
+ mesa14.cir \
+ mesa15.cir \
+ mesa21.cir \
+ mesa.cir \
+ mesgout.cir \
+ mesinv.cir \
+ mesosc.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = $(TESTS) $(TESTS:.cir=.out) mesa12.cir mesa-12.cir
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/mesa/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/mesa/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/mesa/mesa-12.cir b/Windows/spice/tests/mesa/mesa-12.cir
new file mode 100644
index 00000000..69eef9ba
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa-12.cir
@@ -0,0 +1,23 @@
+* MESA1 transient test -
+* Taken from macspice3f4
+*
+* This netlist shows convergence problems in ngspice.
+* Paolo Nenzi (rework-14)
+
+rd 1 3 10k
+z1 3 2 0 mesa1 l=1u w=20u
+vgs 2 0 dc 0 pulse(-3 0 0 0.5n 0.5n 2n 4n)
+vdd 1 0 5v
+.model mesa1 nmf(level=2 rd=31 rs=31)
+
+.options noacct
+
+.dc vgs -2 0 0.02
+.tran 0.1n 5n
+.print v(3) v(2)
+.end
+
+.control
+run
+plot v(2) v(3)
+.endc
diff --git a/Windows/spice/tests/mesa/mesa.cir b/Windows/spice/tests/mesa/mesa.cir
new file mode 100644
index 00000000..2df40984
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa.cir
@@ -0,0 +1,16 @@
+* DCFL GaAs MESFET Gate\
+* Taken from macspice3f4
+
+vdd 1 0 dc 3
+vin 3 0 dc 0
+z1 2 3 0 enha l=1u w=10u
+z2 1 2 2 depl l=1u w=10u
+
+.model enha nmf level=2 rd=31 rs=31 vto=0.1 astar=0
+.model depl nmf level=2 rd=31 rs=31 vto=-1.0 astar=0
+
+.options noacct
+
+.dc vin 0 3.0 0.05
+.print dc v(2) vin#branch
+.end
diff --git a/Windows/spice/tests/mesa/mesa11.cir b/Windows/spice/tests/mesa/mesa11.cir
new file mode 100644
index 00000000..45978b43
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa11.cir
@@ -0,0 +1,18 @@
+* Mesa Level 2 test
+* Taken from macspice3f4 archive.
+
+vds 1 0
+vids 1 2 dc 0
+vgs 3 0 dc 0
+z1 2 3 0 mesmod l=1u w=20u
+
+.options noacct
+.op
+.dc vds 0 2 0.05 vgs -1.2 0 0.4
+.print DC vids#branch
+
+.model mesmod nmf level=2
+*d=0.12u mu=0.23 vs=1.5e5 m=2.5
+*+ vto=-1.26 eta=1.73 lambda=0.045 sigma0=0.081 vsigma=0.1
+*+ vsigmat=1 rd=31 rs=31
+.end
diff --git a/Windows/spice/tests/mesa/mesa12.cir b/Windows/spice/tests/mesa/mesa12.cir
new file mode 100644
index 00000000..71efea97
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa12.cir
@@ -0,0 +1,17 @@
+* MESA1 transient test
+* Taken from macspice3f4
+*
+* This netlist shows convergence problems in ngspice
+
+rd 1 3 10k
+z1 3 2 0 mesa1 l=1u w=20u
+vgs 2 0 dc 0 pulse(-3 0 0 0.5n 0.5n 2n 4n)
+vdd 1 0 5v
+.model mesa1 nmf(level=2 rd=31 rs=31)
+
+.options noacct
+.dc vgs -2 0 0.02
+.tran 0.1n 5n
+.print tran v(2) v(3)
+
+.print
diff --git a/Windows/spice/tests/mesa/mesa13.cir b/Windows/spice/tests/mesa/mesa13.cir
new file mode 100644
index 00000000..d1514501
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa13.cir
@@ -0,0 +1,16 @@
+* MESA1 - Gate Leakage Test
+* Taken from macspice3f4
+*
+
+z1 0 2 0 mesmod l=1u w=20u
+vgs 1 0 dc 0
+vig 1 2 dc 0
+.model mesmod nmf(level=2 rd=31 rs=31 rg=10)
+
+.options noacct
+
+.dc vgs -3 0.4 0.05
+.print vig#branch
+
+.end
+
diff --git a/Windows/spice/tests/mesa/mesa14.cir b/Windows/spice/tests/mesa/mesa14.cir
new file mode 100644
index 00000000..5d2e6031
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa14.cir
@@ -0,0 +1,19 @@
+* MESA1 - DCFL GaAs MESFET Gate
+* Taken from macspice3f4
+*
+* Removed: jsdf = 0 in modelcards
+
+vdd 1 0 dc 3
+vin 3 0 dc 0
+z1 2 3 0 enha l=1u w=10u
+z2 1 2 2 depl l=1u w=10u
+
+.model enha nmf level=2 rd=31 rs=31 vto=0.1
+.model depl nmf level=2 rd=31 rs=31 vto=-1.0
+
+.options noacct
+
+.dc vin 0 3.0 0.05
+.print DC V(2)
+
+.end
diff --git a/Windows/spice/tests/mesa/mesa15.cir b/Windows/spice/tests/mesa/mesa15.cir
new file mode 100644
index 00000000..c5361a93
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa15.cir
@@ -0,0 +1,17 @@
+* MESA1 subtreshold characteristics (T=400)
+* Taken form macspice3f4
+
+vds 1 0 dc 0.1
+vids 1 2 dc 0
+vgs 3 0 dc 0
+
+z1 2 3 0 mesmod l=1u w=20u ts=400 td=400
+.model mesmod nmf level=2 rd=31 rs=31
+
+.options noacct
+
+.dc vgs -3 0 0.05
+.print DC vids#branch
+
+.end
+
diff --git a/Windows/spice/tests/mesa/mesa21.cir b/Windows/spice/tests/mesa/mesa21.cir
new file mode 100644
index 00000000..e1c342e4
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesa21.cir
@@ -0,0 +1,19 @@
+* Mesa Test
+* Taken from macspice3f4
+
+z1 3 2 0 mesmod l=1u w=150u
+vgs 2 0 dc 0
+vds 1 0 dc 0
+vids 1 3 dc 0
+
+.model mesmod nmf level=3 rdi=2.7 rsi=2.7 mu=0.2 m=2.2 vto=-2.04
++ eta=1.5 lambda=0.04 tc=0.001 sigma0=0.02 vsigma=0.1 vsigmat=1.37
++ delta=5 beta=0.0085
+
+.options noacct
+
+.dc vds 0 4 0.05 vgs -1.5 0.5 0.5
+.print vids#branch
+
+.end
+
diff --git a/Windows/spice/tests/mesa/mesgout.cir b/Windows/spice/tests/mesa/mesgout.cir
new file mode 100644
index 00000000..e84c46fb
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesgout.cir
@@ -0,0 +1,37 @@
+* Simulation of MESFET output conductance
+* Taken from macspice3f4
+*
+
+rd 1 2 20
+z1 3 4 0 driver l=1u w=10u
+rs 5 0 20
+vgs 4 0 dc 0.5 ac 0.01
+vds 1 0 dc 1.0
+vid 2 3 dc 0
+
+.model driver nmf
++ level=2
+*+ jsdf=1e-100
++ n=1.44
++ rd=0
++ rs=0
++ vs=1.5e5
++ mu=0.25
++ d=2e-7
++ vto=0.1
++ m=2
++ lambda=0
++ sigma0=0
++ delfo=5
++ flo=0.5
++ tf=100000
++ lambdahf=120
+
+.options noacct
+
+.ac DEC 10 0.001 1e6
+
+.print ac V(3)
+
+.end
+
diff --git a/Windows/spice/tests/mesa/mesinv.cir b/Windows/spice/tests/mesa/mesinv.cir
new file mode 100644
index 00000000..33624ff3
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesinv.cir
@@ -0,0 +1,49 @@
+* Mesfet Inverter with ungated load/Wload=2e-6
+* Taken from macspice3f4 package
+*
+* Output node is 70
+*
+
+bl1 10 40 i=0.0005*tanh(v(10,40)/0.0005/1120)*(1+v(10,40)*0.027)
+bl2 20 50 i=0.0005*tanh(v(20,50)/0.0005/1120)*(1+v(20,50)*0.027)
+
+zd1 70 2 0 driver l=0.7u w=20u
+zd2 80 70 0 driver l=0.7u w=20u
+
+rdl1 1 10 20
+rdl2 1 20 20
+rsl1 40 70 20
+rsl2 50 80 20
+
+vin 1000 0 dc 0
+vdd 2000 0 dc 1.6
+visrc 2000 1 dc 0
+vig 1000 2 dc 0
+
+.model driver nmf
++ level=2
++ n=1.44
++ rd=20
++ rs=20
++ ri=10
++ rf=10
++ vs=1.9e5
++ mu=0.25
++ d=1e-7
++ vto=0.15
++ m=2
++ lambda=0.15
++ sigma0=0.02
++ vsigmat=0.5
+
+*.nodeset v(10)=1.6 v(40)=1.6 v(70)=1.6 v(20)=0.2 v(50)=0.2
+*+ v(80)=0.2
+
+.options noacct
+
+.dc vin 0 1 0.01
+
+.print dc v(70)
+
+.end
+
diff --git a/Windows/spice/tests/mesa/mesosc.cir b/Windows/spice/tests/mesa/mesosc.cir
new file mode 100644
index 00000000..e81b4ee7
--- /dev/null
+++ b/Windows/spice/tests/mesa/mesosc.cir
@@ -0,0 +1,41 @@
+* Mesfet Ring Oscillator with ungated load
+* Taken form macspice3f4
+*
+
+.subckt mesinv 10 20 3
+* Node 10: Power Supply
+* Node 20: Input
+* Node 30: Output
+rdl 10 1 20
+bl1 1 2 i=0.00025*tanh(v(1,2)/0.00025/2240)*(1+v(1,2)*0.027)
+rsl 2 3 20
+zd 3 20 0 driver l=0.7u w=20u
+ci 3 0 20f
+.ends mesinv
+
+.options noacct
+.model driver nmf level=2 n=1.44 rd=20 rs=20 vs=1.9e5
++ mu=0.25 d=1e-7 vto=0.15 m=2 lambda=0.15 sigma0=0.02
++ vsigmat=0.5
+
+vdd 1 0 dc 1.6
+
+xinv01 1 2 3 mesinv
+xinv02 1 3 4 mesinv
+xinv03 1 4 5 mesinv
+xinv04 1 5 6 mesinv
+xinv05 1 6 7 mesinv
+xinv06 1 7 8 mesinv
+xinv07 1 8 9 mesinv
+xinv08 1 9 10 mesinv
+xinv09 1 10 11 mesinv
+xinv10 1 11 12 mesinv
+xinv11 1 12 2000 mesinv
+
+vnoise 2000 2 dc 0 pwl(0 0 0.2n 0 0.3n 0.1 0.4n 0)
+
+.tran 1p 5n 1n 20p
+
+.print tran V(8)
+
+.end
diff --git a/Windows/spice/tests/mos6/Makefile.am b/Windows/spice/tests/mos6/Makefile.am
new file mode 100644
index 00000000..96db4d0e
--- /dev/null
+++ b/Windows/spice/tests/mos6/Makefile.am
@@ -0,0 +1,14 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = \
+ mos6inv.cir \
+ simpleinv.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/mos6/Makefile.in b/Windows/spice/tests/mos6/Makefile.in
new file mode 100644
index 00000000..c5e1eb14
--- /dev/null
+++ b/Windows/spice/tests/mos6/Makefile.in
@@ -0,0 +1,515 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/mos6
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ mos6inv.cir \
+ simpleinv.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/mos6/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/mos6/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/mos6/mos6inv.cir b/Windows/spice/tests/mos6/mos6inv.cir
new file mode 100644
index 00000000..25018c60
--- /dev/null
+++ b/Windows/spice/tests/mos6/mos6inv.cir
@@ -0,0 +1,107 @@
+*** NDINV * 4
+XNDINV1 1 11 12 13 2 100 NDINV
+XNDINV2 2 21 22 23 3 100 NDINV
+XNDINV3 3 31 32 33 4 100 NDINV
+XNDINV4 4 41 42 43 5 100 NDINV
+
+.SUBCKT NDINV 10 11 21 31 41 100
+MP11 11 100 100 100 P12L5 L=1.2U W=5U
+MP12 11 100 100 100 P12L5 L=1.2U W=5U
+MP13 11 100 100 100 P12L5 L=1.2U W=5U
+MP14 11 10 100 100 P12L5 L=1.2U W=5U
+MN11 11 100 12 0 N10L5 L=1.0U W=5U
+MN12 12 100 13 0 N10L5 L=1.0U W=5U
+MN13 13 100 14 0 N10L5 L=1.0U W=5U
+MN14 14 10 0 0 N10L5 L=1.0U W=5U
+
+MP21 23 0 100 100 P12L5 L=1.2U W=20U
+MP22 22 11 23 100 P12L5 L=1.2U W=20U
+MP23 21 0 22 100 P12L5 L=1.2U W=20U
+MN21 21 0 0 0 N10L5 L=1.0U W=5U
+MN22 21 11 0 0 N10L5 L=1.0U W=5U
+MN23 21 0 0 0 N10L5 L=1.0U W=5U
+
+MP31 31 21 100 100 P12L5 L=1.2U W=10U
+MP32 31 100 100 100 P12L5 L=1.2U W=10U
+MN31 31 21 32 0 N10L5 L=1.0U W=5U
+MN32 32 100 0 0 N10L5 L=1.0U W=5U
+
+MP41 41 31 100 100 P12L5 L=1.2U W=10U
+MN41 41 31 0 0 N10L5 L=1.0U W=5U
+
+C11 11 0 1P
+C21 21 0 1P
+C31 31 0 1P
+C41 41 0 1P
+.ENDS
+
+VDD 100 0 5
+VIN 1 0 DC 0 PWL(0 0 2N 5)
+
+.TRAN 0.5N 150N
+.PRINT TRAN V(1) V(2) V(3) V(4) V(5)
+.PRINT TRAN V(11) V(12) V(13) V(41) V(42) V(43)
+
+.OPTIONS NOACCT
+
+**** LEVEL 1 NMOS ****
+.MODEL N10L1 NMOS
++ LEVEL=1 TPG=1
++ KP=2.33082E-05
++ LAMBDA=0.013333 VT0=0.69486 GAMMA=0.60309 PHI=1
++ TOX=1.9800000E-08 XJ=0.2U LD=0.1U NSUB=4.9999999E+16
++ NSS=0.0000000E+00
++ CJ=4.091E-4 MJ=0.307 PB=1.0
++ CJSW=3.078E-10 MJSW=1.0E-2
++ CGSO=3.93E-10 CGDO=3.93E-10
+**** LEVEL 1 PMOS ****
+.MODEL P12L1 PMOS
++ LEVEL=1 TPG=-1
++ KP=7.69968E-06
++ LAMBDA=0.018966 VT0=-0.60865 GAMMA=0.89213 PHI=1
++ TOX=1.9800000E-08 XJ=0.4U LD=0.28U NSUB=4.9999999E+17
++ NSS=0.0000000E+00
++ CJ=6.852E-4 MJ=0.429 PB=1.0
++ CJSW=5.217E-10 MJSW=0.351
++ CGSO=7.29E-10 CGDO=7.29E-10
+**** LEVEL 3 NMOS ****
+.MODEL N10L3 NMOS
++ LEVEL=3 TPG=+1
++ GAMMA=1.140501 THETA=0.8109787 KAPPA=0.1579183 ETA=5.0622310E-02
++ DELTA=0.000000E+00 UO=812.5126 VMAX=1186662. VTO=0.8
++ TOX=1.9800000E-08 XJ=0.2U LD=0.1U NSUB=4.9999999E+16
++ NSS=0.0000000E+00
++ CJ=4.091E-4 MJ=0.307 PB=1.0
++ CJSW=3.078E-10 MJSW=1.0E-2
++ CGSO=3.93E-10 CGDO=3.93E-10
+**** LEVEL 3 PMOS ****
+.MODEL P12L3 PMOS
++ LEVEL=3 TPG=-1
++ GAMMA=1.211640 THETA=0.1184638 KAPPA=0.2162577 ETA=2.7580135E-02
++ DELTA=0.000000E+00 UO=89.16160 VMAX=5.9000000E+07 VTO=-0.8
++ TOX=1.9800000E-08 XJ=0.4U LD=0.28U NSUB=4.9999999E+17
++ NSS=0.0000000E+00
++ CJ=6.852E-4 MJ=0.429 PB=1.0
++ CJSW=5.217E-10 MJSW=0.351
++ CGSO=7.29E-10 CGDO=7.29E-10
+**** LEVEL 6 NMOS ****
+.MODEL N10L5 NMOS
++ LEVEL=6 TPG=1
++ KC=3.8921e-05 NC=1.1739 KV=0.91602 NV=0.87225
++ LAMBDA0=0.013333 LAMBDA1=0.0046901 VT0=0.69486 GAMMA=0.60309 PHI=1
++ TOX=1.9800000E-08 XJ=0.2U LD=0.1U NSUB=4.9999999E+16
++ NSS=0.0000000E+00
++ CJ=4.091E-4 MJ=0.307 PB=1.0
++ CJSW=3.078E-10 MJSW=1.0E-2
++ CGSO=3.93E-10 CGDO=3.93E-10
+**** LEVEL 6 PMOS ****
+.MODEL P12L5 PMOS
++ LEVEL=6 TPG=-1
++ KC=6.42696E-06 NC=1.6536 KV=0.92145 NV=0.88345
++ LAMBDA0=0.018966 LAMBDA1=0.0084012 VT0=-0.60865 GAMMA=0.89213 PHI=1
++ TOX=1.9800000E-08 XJ=0.4U LD=0.28U NSUB=4.9999999E+17
++ NSS=0.0000000E+00
++ CJ=6.852E-4 MJ=0.429 PB=1.0
++ CJSW=5.217E-10 MJSW=0.351
++ CGSO=7.29E-10 CGDO=7.29E-10
+.END
diff --git a/Windows/spice/tests/mos6/simpleinv.cir b/Windows/spice/tests/mos6/simpleinv.cir
new file mode 100644
index 00000000..6aea71c8
--- /dev/null
+++ b/Windows/spice/tests/mos6/simpleinv.cir
@@ -0,0 +1,45 @@
+*** NDINV * 4
+
+VDD 100 0 5
+VIN 1 0 DC 0 PWL(0 0 150N 5)
+
+MP10 11 1 100 100 p12l5 L=1.0U W=5U
+MN11 11 1 0 0 N10L5 L=1.0U W=5U
+
+.TRAN 0.5N 150N
+
+.PRINT TRAN V(1) V(11)
+
+.OPTIONS NOACCT
+
+**** LEVEL 1 NMOS ****
+.MODEL N10L1 NMOS
++ LEVEL=1 TPG=1
++ KP=2.33082E-05
++ LAMBDA=0.013333 VT0=0.69486 GAMMA=0.60309 PHI=1
++ TOX=1.9800000E-08 LD=0.1U NSUB=4.9999999E+16
++ NSS=0.0000000E+00
++ CJ=4.091E-4 MJ=0.307 PB=1.0
++ CJSW=3.078E-10 MJSW=1.0E-2
++ CGSO=3.93E-10 CGDO=3.93E-10
+**** LEVEL 6 NMOS ****
+.MODEL N10L5 NMOS
++ LEVEL=6 TPG=1
++ KC=3.8921e-05 NC=1.1739 KV=0.91602 NV=0.87225
++ LAMBDA0=0.013333 LAMBDA1=0.0046901 VT0=0.69486 GAMMA=0.60309 PHI=1
++ TOX=1.9800000E-08 LD=0.1U NSUB=4.9999999E+16
++ NSS=0.0000000E+00
++ CJ=4.091E-4 MJ=0.307 PB=1.0
++ CJSW=3.078E-10 MJSW=1.0E-2
++ CGSO=3.93E-10 CGDO=3.93E-10
+**** LEVEL 6 PMOS ****
+.MODEL P12L5 PMOS
++ LEVEL=6 TPG=-1
++ KC=6.42696E-06 NC=1.6536 KV=0.92145 NV=0.88345
++ LAMBDA0=0.018966 LAMBDA1=0.0084012 VT0=-0.60865 GAMMA=0.89213 PHI=1
++ TOX=1.9800000E-08 LD=0.28U NSUB=4.9999999E+17
++ NSS=0.0000000E+00
++ CJ=6.852E-4 MJ=0.429 PB=1.0
++ CJSW=5.217E-10 MJSW=0.351
++ CGSO=7.29E-10 CGDO=7.29E-10
+.END
diff --git a/Windows/spice/tests/polezero/Makefile.am b/Windows/spice/tests/polezero/Makefile.am
new file mode 100644
index 00000000..d48c50f3
--- /dev/null
+++ b/Windows/spice/tests/polezero/Makefile.am
@@ -0,0 +1,17 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ filt_multistage.cir \
+ filt_rc.cir \
+ filt_bridge_t.cir \
+ pz2.cir \
+ pzt.cir \
+ simplepz.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/polezero/Makefile.in b/Windows/spice/tests/polezero/Makefile.in
new file mode 100644
index 00000000..5cf0ea87
--- /dev/null
+++ b/Windows/spice/tests/polezero/Makefile.in
@@ -0,0 +1,519 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/polezero
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ filt_multistage.cir \
+ filt_rc.cir \
+ filt_bridge_t.cir \
+ pz2.cir \
+ pzt.cir \
+ simplepz.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/polezero/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/polezero/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/polezero/filt_bridge_t.cir b/Windows/spice/tests/polezero/filt_bridge_t.cir
new file mode 100644
index 00000000..9366fdcd
--- /dev/null
+++ b/Windows/spice/tests/polezero/filt_bridge_t.cir
@@ -0,0 +1,13 @@
+BRIDGE-T FILTER
+V1 1 0 12 AC 1
+C1 1 2 1U
+C2 2 3 1U
+R3 2 0 1K
+R4 1 3 1K
+*
+.options noacct
+.OP
+.PZ 1 0 3 0 VOL PZ
+.PRINT PZ ALL
+*
+.END
diff --git a/Windows/spice/tests/polezero/filt_multistage.cir b/Windows/spice/tests/polezero/filt_multistage.cir
new file mode 100644
index 00000000..11cd827d
--- /dev/null
+++ b/Windows/spice/tests/polezero/filt_multistage.cir
@@ -0,0 +1,14 @@
+Multistage filter
+v1 1 0 0 ac 1.0
+r1 1 2 1k
+c1 2 0 10p
+e2 3 0 2 0 10
+r2 3 4 1k
+c2 4 0 1.25p
+e3 5 0 4 0 10
+r3 5 6 1k
+c3 6 0 .02p
+.options noacct
+.pz 1 0 6 0 vol pz
+.print pz all
+.end
diff --git a/Windows/spice/tests/polezero/filt_rc.cir b/Windows/spice/tests/polezero/filt_rc.cir
new file mode 100644
index 00000000..79800c12
--- /dev/null
+++ b/Windows/spice/tests/polezero/filt_rc.cir
@@ -0,0 +1,8 @@
+RC filter
+v1 1 0 0 ac 1.0
+r1 1 2 1k
+c1 2 0 10p
+.options noacct
+.pz 1 0 2 0 vol pz
+.print pz all
+.end
diff --git a/Windows/spice/tests/polezero/pz2.cir b/Windows/spice/tests/polezero/pz2.cir
new file mode 100644
index 00000000..9b772485
--- /dev/null
+++ b/Windows/spice/tests/polezero/pz2.cir
@@ -0,0 +1,25 @@
+test pz
+iin 1 0 ac
+r1 1 0 1.019524e+9Ohms
+l1 1 0 1H
+
+gm2 2 0 1 0 1
+r2 2 0 8.296965e+08Ohms
+l2 2 0 1H
+
+gm3 3 0 2 0 1
+r3 3 0 8.652054e+07Ohms
+l3 3 0 1H
+
+gm4 4 0 3 0 1
+r4 4 0 1.060594e+07Ohms
+l4 4 0 1H
+
+*gm5 5 0 4 0 1
+*r5 5 0 10Ohms
+*l5 5 0 0.66mH
+
+.options noacct
+.pz 1 0 4 0 cur pol
+.print pz all
+.end
diff --git a/Windows/spice/tests/polezero/pzt.cir b/Windows/spice/tests/polezero/pzt.cir
new file mode 100644
index 00000000..b94413b5
--- /dev/null
+++ b/Windows/spice/tests/polezero/pzt.cir
@@ -0,0 +1,25 @@
+test pz
+iin 1 0 ac
+r1 1 0 1Ohms
+l1 1 0 0.05H
+
+gm2 2 0 1 0 1
+r2 2 0 1Ohms
+l2 2 0 0.05H
+
+gm3 3 0 2 0 1
+r3 3 0 1Ohms
+l3 3 0 0.05H
+
+*gm4 4 0 3 0 1
+*r4 4 0 1Ohms
+*l4 4 0 0.05H
+
+*gm5 5 0 4 0 1
+*r5 5 0 10Ohms
+*l5 5 0 0.66mH
+
+.options noacct
+.pz 1 0 3 0 cur pol
+.print pz all
+.end
diff --git a/Windows/spice/tests/polezero/simplepz.cir b/Windows/spice/tests/polezero/simplepz.cir
new file mode 100644
index 00000000..e9f30d51
--- /dev/null
+++ b/Windows/spice/tests/polezero/simplepz.cir
@@ -0,0 +1,8 @@
+test circuit #1 for pz analysis:high pass filter
+r1 1 0 1k
+r2 2 0 1k
+c1 1 2 1.0e-12
+.options noacct
+.pz 1 0 2 0 cur pz
+.print pz all
+.end
diff --git a/Windows/spice/tests/regression/Makefile.am b/Windows/spice/tests/regression/Makefile.am
new file mode 100644
index 00000000..9fd1a3d7
--- /dev/null
+++ b/Windows/spice/tests/regression/Makefile.am
@@ -0,0 +1,5 @@
+## Process this file with automake to produce Makefile.in
+
+SUBDIRS = lib-processing parser subckt-processing
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/regression/Makefile.in b/Windows/spice/tests/regression/Makefile.in
new file mode 100644
index 00000000..2778feb0
--- /dev/null
+++ b/Windows/spice/tests/regression/Makefile.in
@@ -0,0 +1,609 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/regression
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+SUBDIRS = lib-processing parser subckt-processing
+MAINTAINERCLEANFILES = Makefile.in
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/regression/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/regression/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+ install-am install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-generic clean-libtool \
+ ctags ctags-recursive distclean distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/regression/lib-processing/Makefile.am b/Windows/spice/tests/regression/lib-processing/Makefile.am
new file mode 100644
index 00000000..920ebed8
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/Makefile.am
@@ -0,0 +1,13 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = ex1a.cir ex1b.cir ex2a.cir ex3a.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ ex1.lib ex2.lib ex3.lib extra3.lib \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/regression/lib-processing/Makefile.in b/Windows/spice/tests/regression/lib-processing/Makefile.in
new file mode 100644
index 00000000..dfc9777d
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/Makefile.in
@@ -0,0 +1,513 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/regression/lib-processing
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = ex1a.cir ex1b.cir ex2a.cir ex3a.cir
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ ex1.lib ex2.lib ex3.lib extra3.lib \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/regression/lib-processing/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/regression/lib-processing/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/regression/lib-processing/ex1.lib b/Windows/spice/tests/regression/lib-processing/ex1.lib
new file mode 100644
index 00000000..cf64f010
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/ex1.lib
@@ -0,0 +1,9 @@
+* -*- spice -*-
+
+.LIB RES
+
+.subckt sub_in_lib n1 n2
+R3 n1 n2 2k
+.ends
+
+.ENDL RES
diff --git a/Windows/spice/tests/regression/lib-processing/ex1a.cir b/Windows/spice/tests/regression/lib-processing/ex1a.cir
new file mode 100644
index 00000000..d3bfb5fe
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/ex1a.cir
@@ -0,0 +1,29 @@
+ex1a, check lib processing
+
+I1 9 0 -1mA
+X1 9 0 sub1
+
+Vcheck 9 check0 1.0V
+
+.lib 'ex1.lib' RES
+
+.subckt sub1 n1 n2
+X2 n1 n2 sub_in_lib
+R2 n1 n2 2k
+.ends
+
+.control
+op
+
+print v(check0)
+
+if abs(v(check0)) > 1e-9
+ quit 1
+end
+
+echo "INFO: ok"
+quit 0
+
+.endc
+
+.end
diff --git a/Windows/spice/tests/regression/lib-processing/ex1b.cir b/Windows/spice/tests/regression/lib-processing/ex1b.cir
new file mode 100644
index 00000000..203fc373
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/ex1b.cir
@@ -0,0 +1,33 @@
+ex1b, check lib processing
+
+I1 9 0 -1mA
+X1 9 0 sub1
+R2 9 0 4k
+X3 9 0 sub_in_lib
+
+Vcheck 9 check0 1.0V
+
+.subckt sub1 n1 n2
+.lib 'ex1.lib' RES
+X1 n1 n2 sub_in_lib
+.ends
+
+.subckt sub_in_lib n1 n2
+R4 n1 n2 4k
+.ends
+
+.control
+op
+
+print v(check0)
+
+if abs(v(check0)) > 1e-9
+ quit 1
+end
+
+echo "INFO: ok"
+quit 0
+
+.endc
+
+.end
diff --git a/Windows/spice/tests/regression/lib-processing/ex2.lib b/Windows/spice/tests/regression/lib-processing/ex2.lib
new file mode 100644
index 00000000..a04614e2
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/ex2.lib
@@ -0,0 +1,28 @@
+* -*- spice -*-
+
+.LIB MOS
+
+.subckt sub1_in_lib n1 n2
+.LIB 'ex2.lib' RES
+Xsub1 n1 n2 sub3_in_lib
+R1a n1 n2 4k
+R1b n1 n2 2k
+.ends
+
+.subckt sub2_in_lib n1 n2
+.LIB 'ex2.lib' RES
+Xsub2 n1 n2 sub3_in_lib
+R2 n1 n2 4k
+.ends
+
+.ENDL MOS
+
+
+
+.LIB RES
+
+.subckt sub3_in_lib n1 n2
+R3 n1 n2 4k
+.ends
+
+.ENDL RES
diff --git a/Windows/spice/tests/regression/lib-processing/ex2a.cir b/Windows/spice/tests/regression/lib-processing/ex2a.cir
new file mode 100644
index 00000000..7e119ad5
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/ex2a.cir
@@ -0,0 +1,33 @@
+ex2a, check lib processing
+
+I1 7 0 -1mA
+X1 7 0 sub1_in_lib
+
+Vcheck1 7 check1 1.0V
+
+I2 9 0 -1mA
+X2 9 0 sub2_in_lib
+
+Vcheck2 9 check2 2.0V
+
+.lib 'ex2.lib' MOS
+
+.control
+op
+
+print v(check1) v(check2)
+
+if abs(v(check1)) > 1e-9
+ quit 1
+end
+
+if abs(v(check2)) > 1e-9
+ quit 1
+end
+
+echo "INFO: ok"
+quit 0
+
+.endc
+
+.end
diff --git a/Windows/spice/tests/regression/lib-processing/ex3.lib b/Windows/spice/tests/regression/lib-processing/ex3.lib
new file mode 100644
index 00000000..6f7a26d8
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/ex3.lib
@@ -0,0 +1,18 @@
+* -*- spice -*-
+
+.LIB MOS
+
+.subckt sub1_in_lib n1 n2
+.LIB 'extra3.lib' RES
+Xsub1 n1 n2 sub3_in_lib
+R1a n1 n2 4k
+R1b n1 n2 2k
+.ends
+
+.subckt sub2_in_lib n1 n2
+.LIB 'extra3.lib' RES
+Xsub2 n1 n2 sub3_in_lib
+R2 n1 n2 4k
+.ends
+
+.ENDL MOS
diff --git a/Windows/spice/tests/regression/lib-processing/ex3a.cir b/Windows/spice/tests/regression/lib-processing/ex3a.cir
new file mode 100644
index 00000000..a2122f0d
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/ex3a.cir
@@ -0,0 +1,33 @@
+ex3a, check lib processing
+
+I1 7 0 -1mA
+X1 7 0 sub1_in_lib
+
+Vcheck1 7 check1 1.0V
+
+I2 9 0 -1mA
+X2 9 0 sub2_in_lib
+
+Vcheck2 9 check2 2.0V
+
+.lib 'ex3.lib' MOS
+
+.control
+op
+
+print v(check1) v(check2)
+
+if abs(v(check1)) > 1e-9
+ quit 1
+end
+
+if abs(v(check2)) > 1e-9
+ quit 1
+end
+
+echo "INFO: ok"
+quit 0
+
+.endc
+
+.end
diff --git a/Windows/spice/tests/regression/lib-processing/extra3.lib b/Windows/spice/tests/regression/lib-processing/extra3.lib
new file mode 100644
index 00000000..24e9498c
--- /dev/null
+++ b/Windows/spice/tests/regression/lib-processing/extra3.lib
@@ -0,0 +1,9 @@
+* -*- spice -*-
+
+.LIB RES
+
+.subckt sub3_in_lib n1 n2
+R3 n1 n2 4k
+.ends
+
+.ENDL RES
diff --git a/Windows/spice/tests/regression/parser/Makefile.am b/Windows/spice/tests/regression/parser/Makefile.am
new file mode 100644
index 00000000..4a53ca10
--- /dev/null
+++ b/Windows/spice/tests/regression/parser/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = minus-minus.cir xpressn-1.cir xpressn-2.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/regression/parser/Makefile.in b/Windows/spice/tests/regression/parser/Makefile.in
new file mode 100644
index 00000000..f7eeb597
--- /dev/null
+++ b/Windows/spice/tests/regression/parser/Makefile.in
@@ -0,0 +1,512 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/regression/parser
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = minus-minus.cir xpressn-1.cir xpressn-2.cir
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/regression/parser/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/regression/parser/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/regression/parser/minus-minus.cir b/Windows/spice/tests/regression/parser/minus-minus.cir
new file mode 100644
index 00000000..b44c169a
--- /dev/null
+++ b/Windows/spice/tests/regression/parser/minus-minus.cir
@@ -0,0 +1,36 @@
+test dash dash
+
+* (exec-spice "ngspice -b %s")
+
+v1 1 0 '2--3'
+b2 2 0 v = 2--3
+
+.control
+
+define mismatch(a,b,err) abs(a-b)>err
+
+op
+
+let foo = 2--3
+
+if mismatch(v(1), 5.0, 1e-9)
+ echo "ERROR: v(1) failed"
+end
+
+if mismatch(v(2), 5.0, 1e-9)
+ echo "ERROR: v(2) failed"
+end
+
+if mismatch(foo, 5.0, 1e-9)
+ echo "ERROR: foo failed"
+end
+
+print v(1) v(2) foo
+
+echo "INFO: -- yes we can, print dash dash --"
+echo "INFO: -- yes we can, print upper and lower case --"
+quit 0
+
+.endc
+
+.end
diff --git a/Windows/spice/tests/regression/parser/xpressn-1.cir b/Windows/spice/tests/regression/parser/xpressn-1.cir
new file mode 100644
index 00000000..a680633c
--- /dev/null
+++ b/Windows/spice/tests/regression/parser/xpressn-1.cir
@@ -0,0 +1,425 @@
+* 'xpressn-1' check xpressn.c parser
+
+* (exec-spice "ngspice -b %s")
+* (tests-aux-renumber)
+
+* ----------------------------------------
+* arbitrary tests
+
+v1001_t n1001_t 0 '1+2'
+v1002_t n1002_t 0 '1 + 2 '
+v1003_t n1003_t 0 '1+2*3'
+v1004_t n1004_t 0 '(1?2:3)+100'
+v1005_t n1005_t 0 '(1>2?2*4:1+2*3)+100'
+
+v1001_g n1001_g 0 '3'
+v1002_g n1002_g 0 '3'
+v1003_g n1003_g 0 '7'
+v1004_g n1004_g 0 '102'
+v1005_g n1005_g 0 '107'
+
+
+v1006_t n1006_t 0 '1-2.1'
+v1007_t n1007_t 0 '1--1'
+v1008_t n1008_t 0 '5+2/-4'
+
+v1006_g n1006_g 0 '-1.1'
+v1007_g n1007_g 0 '2'
+v1008_g n1008_g 0 '4.5'
+
+
+* ----------------------------------------
+* boolean operators '&&' '||' '!'
+* output: 0.0 or 1.0
+* input: 0.0 is 'false', everything else is 'true'
+
+* ---------------
+* `&&' operator
+
+v1009_t n1009_t 0 '0 && 0'
+v1010_t n1010_t 0 '0 && 1'
+v1011_t n1011_t 0 '1 && 0'
+v1012_t n1012_t 0 '0.1 && 0.2'
+v1013_t n1013_t 0 '-0.1 && 0.2'
+
+v1009_g n1009_g 0 '0'
+v1010_g n1010_g 0 '0'
+v1011_g n1011_g 0 '0'
+v1012_g n1012_g 0 '1'
+v1013_g n1013_g 0 '1'
+
+
+* ---------------
+* `||' operator
+
+v1014_t n1014_t 0 '0 || 0'
+v1015_t n1015_t 0 '0 || 0.1'
+v1016_t n1016_t 0 '-0.1 || 0'
+v1017_t n1017_t 0 '0.1 || -0.2'
+
+v1014_g n1014_g 0 '0'
+v1015_g n1015_g 0 '1'
+v1016_g n1016_g 0 '1'
+v1017_g n1017_g 0 '1'
+
+
+* ---------------
+* `!' operator
+
+v1018_t n1018_t 0 '! 0.0'
+v1019_t n1019_t 0 '! 0.1'
+v1020_t n1020_t 0 '! (-0.1)'
+
+v1018_g n1018_g 0 '1'
+v1019_g n1019_g 0 '0'
+v1020_g n1020_g 0 '0'
+
+
+
+* ----------------------------------------
+* comparison operators
+* output: 0.0 or 1.0
+
+* ----------
+* `>'
+
+v1021_t n1021_t 0 '3 > 2'
+v1022_t n1022_t 0 '2 > 3'
+v1023_t n1023_t 0 '2 > 2'
+
+v1021_g n1021_g 0 '1'
+v1022_g n1022_g 0 '0'
+v1023_g n1023_g 0 '0'
+
+
+* ----------
+* '<'
+
+v1024_t n1024_t 0 '3 < 2'
+v1025_t n1025_t 0 '2 < 3'
+v1026_t n1026_t 0 '2 < 2'
+
+v1024_g n1024_g 0 '0'
+v1025_g n1025_g 0 '1'
+v1026_g n1026_g 0 '0'
+
+
+* ----------
+* '<='
+
+v1027_t n1027_t 0 '3 >= 2'
+v1028_t n1028_t 0 '2 >= 3'
+v1029_t n1029_t 0 '2 >= 2'
+
+v1027_g n1027_g 0 '1'
+v1028_g n1028_g 0 '0'
+v1029_g n1029_g 0 '1'
+
+
+* ----------
+* '>='
+
+v1030_t n1030_t 0 '3 <= 2'
+v1031_t n1031_t 0 '2 <= 3'
+v1032_t n1032_t 0 '2 <= 2'
+
+v1030_g n1030_g 0 '0'
+v1031_g n1031_g 0 '1'
+v1032_g n1032_g 0 '1'
+
+
+* ----------
+* '=='
+
+v1033_t n1033_t 0 '3 == 2'
+v1034_t n1034_t 0 '2 == 3'
+v1035_t n1035_t 0 '2 == 2'
+
+v1033_g n1033_g 0 '0'
+v1034_g n1034_g 0 '0'
+v1035_g n1035_g 0 '1'
+
+
+* ----------
+* '!='
+
+v1036_t n1036_t 0 '3 != 2'
+v1037_t n1037_t 0 '2 != 3'
+v1038_t n1038_t 0 '2 != 2'
+
+v1036_g n1036_g 0 '1'
+v1037_g n1037_g 0 '1'
+v1038_g n1038_g 0 '0'
+
+
+* ----------------------------------------
+* four variants of exponentiation
+
+v1039_t n1039_t 0 '2 ^ 3'
+v1039_g n1039_g 0 '8'
+
+v1040_t n1040_t 0 '2 ** 3'
+v1040_g n1040_g 0 '8'
+
+v1041_t n1041_t 0 'pwr(2,3)'
+v1041_g n1041_g 0 '8'
+
+v1042_t n1042_t 0 'pow(2,3)'
+v1042_g n1042_g 0 '8'
+
+
+* ----------------------------------------
+* ternary 'c ? x : y' operator
+* input: 0.0 is false, everything else is true
+
+v1043_t n1043_t 0 ' 0.1 ? 42 : 43'
+v1044_t n1044_t 0 '-0.1 ? 42 : 43'
+v1045_t n1045_t 0 ' 0.0 ? 42 : 43'
+
+v1043_g n1043_g 0 '42'
+v1044_g n1044_g 0 '42'
+v1045_g n1045_g 0 '43'
+
+* assoziativity
+
+v1046_t n1046_t 0 '1 ? 42 : 1 ? 41 : 40'
+v1047_t n1047_t 0 '1 ? 42 : 0 ? 41 : 40'
+v1048_t n1048_t 0 '0 ? 42 : 1 ? 41 : 40'
+v1049_t n1049_t 0 '0 ? 42 : 0 ? 41 : 40'
+
+v1046_g n1046_g 0 '42'
+v1047_g n1047_g 0 '42'
+v1048_g n1048_g 0 '41'
+v1049_g n1049_g 0 '40'
+
+* --------------------
+* regression tests
+* these failed in the past, due to incorrect transformations in inpcom.c
+
+* was incorrectly transformed --> (3>2)||ternary_fcn((1<4),0.2,0.3)
+v1050_t n1050_t 0 '(3>2)||(1<4) ? 0.2 : 0.3'
+v1050_g n1050_g 0 '0.2'
+
+* was incorrectly transformed --> controlled_exit()
+v1051_t n1051_t 0 '(3>2) ? (3+2)*((2>1)?1:1) : 42'
+v1051_g n1051_g 0 '5'
+
+* was incorrectly transformed --> ternary_fcn((3>2),42,(2*2))3
+v1052_t n1052_t 0 '(3>2) ? 42 : (2*2)+3'
+v1052_g n1052_g 0 '42'
+
+
+* ----------------------------------------
+* functions
+
+v1053_t n1053_t 0 'sin(0.3)'
+v1054_t n1054_t 0 'cos(0.3)'
+v1055_t n1055_t 0 'tan(0.3)'
+v1056_t n1056_t 0 'asin(0.3)'
+v1057_t n1057_t 0 'acos(0.3)'
+v1058_t n1058_t 0 'atan(0.3)'
+v1059_t n1059_t 0 'arctan(0.3)'
+v1060_t n1060_t 0 'sinh(0.3)'
+v1061_t n1061_t 0 'cosh(0.3)'
+v1062_t n1062_t 0 'tanh(0.3)'
+v1063_t n1063_t 0 'asinh(0.3)'
+v1064_t n1064_t 0 'acosh(1.3)'
+v1065_t n1065_t 0 'atanh(0.3)'
+
+v1053_g n1053_g 0 '0.29552020666133955'
+v1054_g n1054_g 0 '0.955336489125606'
+v1055_g n1055_g 0 '0.30933624960962325'
+v1056_g n1056_g 0 '0.3046926540153975'
+v1057_g n1057_g 0 '1.266103672779499'
+v1058_g n1058_g 0 '0.29145679447786704'
+v1059_g n1059_g 0 '0.29145679447786704'
+v1060_g n1060_g 0 '0.3045202934471426'
+v1061_g n1061_g 0 '1.0453385141288605'
+v1062_g n1062_g 0 '0.2913126124515909'
+v1063_g n1063_g 0 '0.2956730475634223'
+v1064_g n1064_g 0 '0.7564329108569595'
+v1065_g n1065_g 0 '0.3095196042031116'
+
+* ----------
+
+v1066_t n1066_t 0 'exp(2.0)'
+v1067_t n1067_t 0 'exp(-2.0)'
+
+v1066_g n1066_g 0 '7.38905609893065'
+v1067_g n1067_g 0 '0.1353352832366127'
+
+* ----------
+
+v1068_t n1068_t 0 'log(2.0)'
+v1069_t n1069_t 0 'log(0.5)'
+
+v1068_g n1068_g 0 '0.6931471805599453'
+v1069_g n1069_g 0 '-0.6931471805599453'
+
+v1070_t n1070_t 0 'ln(2.0)'
+v1071_t n1071_t 0 'ln(0.5)'
+
+v1070_g n1070_g 0 '0.6931471805599453'
+v1071_g n1071_g 0 '-0.6931471805599453'
+
+* ----------
+
+v1072_t n1072_t 0 'sqrt(2.0)'
+v1072_g n1072_g 0 '1.4142135623730951'
+
+v1073_t n1073_t 0 'sqr(2.0)'
+v1073_g n1073_g 0 '4.0'
+
+
+* ----------------------------------------
+* functions
+
+v1074_t n1074_t 0 'abs(2.0)'
+v1075_t n1075_t 0 'abs(-2.0)'
+
+v1074_g n1074_g 0 '2'
+v1075_g n1075_g 0 '2'
+
+
+v1076_t n1076_t 0 'sgn(2.0)'
+v1077_t n1077_t 0 'sgn(0.0)'
+v1078_t n1078_t 0 'sgn(-2.0)'
+
+v1076_g n1076_g 0 '1'
+v1077_g n1077_g 0 '0'
+v1078_g n1078_g 0 '-1'
+
+
+v1079_t n1079_t 0 'int(2.1)'
+v1080_t n1080_t 0 'int(1.9)'
+v1081_t n1081_t 0 'int(0)'
+v1082_t n1082_t 0 'int(-1.9)'
+v1083_t n1083_t 0 'int(-2.1)'
+
+v1079_g n1079_g 0 '2'
+v1080_g n1080_g 0 '1'
+v1081_g n1081_g 0 '0'
+v1082_g n1082_g 0 '-1'
+v1083_g n1083_g 0 '-2'
+
+
+v1084_t n1084_t 0 'nint(2.6)'
+v1085_t n1085_t 0 'nint(2.5)'
+v1086_t n1086_t 0 'nint(2.4)'
+v1087_t n1087_t 0 'nint(1.6)'
+v1088_t n1088_t 0 'nint(1.5)'
+v1089_t n1089_t 0 'nint(1.4)'
+v1090_t n1090_t 0 'nint(0.6)'
+v1091_t n1091_t 0 'nint(0.5)'
+v1092_t n1092_t 0 'nint(0.4)'
+v1093_t n1093_t 0 'nint(0)'
+v1094_t n1094_t 0 'nint(-0.4)'
+v1095_t n1095_t 0 'nint(-0.5)'
+v1096_t n1096_t 0 'nint(-0.6)'
+v1097_t n1097_t 0 'nint(-1.4)'
+v1098_t n1098_t 0 'nint(-1.5)'
+v1099_t n1099_t 0 'nint(-1.6)'
+v1100_t n1100_t 0 'nint(-2.4)'
+v1101_t n1101_t 0 'nint(-2.5)'
+v1102_t n1102_t 0 'nint(-2.6)'
+
+v1084_g n1084_g 0 '3'
+v1085_g n1085_g 0 '2'
+v1086_g n1086_g 0 '2'
+v1087_g n1087_g 0 '2'
+v1088_g n1088_g 0 '2'
+v1089_g n1089_g 0 '1'
+v1090_g n1090_g 0 '1'
+v1091_g n1091_g 0 '0'
+v1092_g n1092_g 0 '0'
+v1093_g n1093_g 0 '0'
+v1094_g n1094_g 0 '0'
+v1095_g n1095_g 0 '0'
+v1096_g n1096_g 0 '-1'
+v1097_g n1097_g 0 '-1'
+v1098_g n1098_g 0 '-2'
+v1099_g n1099_g 0 '-2'
+v1100_g n1100_g 0 '-2'
+v1101_g n1101_g 0 '-2'
+v1102_g n1102_g 0 '-3'
+
+
+v1103_t n1103_t 0 'floor(2.1)'
+v1104_t n1104_t 0 'floor(1.9)'
+v1105_t n1105_t 0 'floor(0)'
+v1106_t n1106_t 0 'floor(-1.9)'
+v1107_t n1107_t 0 'floor(-2.1)'
+
+v1103_g n1103_g 0 '2'
+v1104_g n1104_g 0 '1'
+v1105_g n1105_g 0 '0'
+v1106_g n1106_g 0 '-2'
+v1107_g n1107_g 0 '-3'
+
+
+v1108_t n1108_t 0 'ceil(2.1)'
+v1109_t n1109_t 0 'ceil(1.9)'
+v1110_t n1110_t 0 'ceil(0)'
+v1111_t n1111_t 0 'ceil(-1.9)'
+v1112_t n1112_t 0 'ceil(-2.1)'
+
+v1108_g n1108_g 0 '3'
+v1109_g n1109_g 0 '2'
+v1110_g n1110_g 0 '0'
+v1111_g n1111_g 0 '-1'
+v1112_g n1112_g 0 '-2'
+
+
+* ----------------------------------------
+* min(a,b) max(a,b)
+
+v1113_t n1113_t 0 'min(1.1, 2.1)'
+v1114_t n1114_t 0 'min(2.1, 1.1)'
+
+v1113_g n1113_g 0 '1.1'
+v1114_g n1114_g 0 '1.1'
+
+
+v1115_t n1115_t 0 'max(1.1, 2.1)'
+v1116_t n1116_t 0 'max(2.1, 1.1)'
+
+v1115_g n1115_g 0 '2.1'
+v1116_g n1116_g 0 '2.1'
+
+
+* ----------------------------------------
+
+.control
+
+define mismatch(a,b,err) abs(a-b)>err
+
+op
+
+let total_count = 0
+let fail_count = 0
+
+let tests = 1001 + vector(116)
+
+foreach n $&tests
+ set n_test = "n{$n}_t"
+ set n_gold = "n{$n}_g"
+ if mismatch(v($n_test), v($n_gold), 1e-9)
+ let v_test = v($n_test)
+ let v_gold = v($n_gold)
+ echo "ERROR, test failure, v($n_test) = $&v_test but should be $&v_gold"
+ let fail_count = fail_count + 1
+ end
+ let total_count = total_count + 1
+end
+
+if fail_count > 0
+ echo "ERROR: $&fail_count of $&total_count tests failed"
+ quit 1
+else
+ echo "INFO: $&fail_count of $&total_count tests failed"
+ quit 0
+end
+
+.endc
+
+.end
diff --git a/Windows/spice/tests/regression/parser/xpressn-2.cir b/Windows/spice/tests/regression/parser/xpressn-2.cir
new file mode 100644
index 00000000..2c3ecb75
--- /dev/null
+++ b/Windows/spice/tests/regression/parser/xpressn-2.cir
@@ -0,0 +1,261 @@
+check precision of some functions
+
+* do not change this file, its generated
+* (exec-spice "ngspice -b %s")
+
+v0 n0 0 'sin(1.0e-9)'
+v1 n1 0 'sin(1.0e-1)'
+v2 n2 0 'sin(7.0e-1)'
+v3 n3 0 'cos(1.0e-9)'
+v4 n4 0 'cos(1.0e-1)'
+v5 n5 0 'cos(7.0e-1)'
+v6 n6 0 'tan(1.0e-9)'
+v7 n7 0 'tan(1.0e-1)'
+v8 n8 0 'tan(7.0e-1)'
+v9 n9 0 'asin(1.0e-9)'
+v10 n10 0 'asin(1.0e-1)'
+v11 n11 0 'asin(7.0e-1)'
+v12 n12 0 'acos(1.0e-9)'
+v13 n13 0 'acos(1.0e-1)'
+v14 n14 0 'acos(7.0e-1)'
+v15 n15 0 'atan(1.0e-9)'
+v16 n16 0 'atan(1.0e-1)'
+v17 n17 0 'atan(7.0e-1)'
+v18 n18 0 'sinh(1.0e-9)'
+v19 n19 0 'sinh(1.0e-1)'
+v20 n20 0 'sinh(7.0e-1)'
+v21 n21 0 'cosh(1.0e-9)'
+v22 n22 0 'cosh(1.0e-1)'
+v23 n23 0 'cosh(7.0e-1)'
+v24 n24 0 'tanh(1.0e-9)'
+v25 n25 0 'tanh(1.0e-1)'
+v26 n26 0 'tanh(7.0e-1)'
+v27 n27 0 'asinh(1.0e-9)'
+v28 n28 0 'asinh(1.0e-1)'
+v29 n29 0 'asinh(7.0e-1)'
+v30 n30 0 'acosh(1.2e+0)'
+v31 n31 0 'atanh(1.0e-9)'
+v32 n32 0 'atanh(1.0e-1)'
+v33 n33 0 'atanh(7.0e-1)'
+
+
+.control
+
+op
+
+let eps = 1.1102230246251568e-16
+
+define mismatch(y,gold,err) abs(y-gold)>(err*gold)
+
+define relerr_(y,gold) (y-gold)/(gold*eps)
+
+
+if mismatch(v(n0), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n0), 1.0e-9)
+ echo "ERROR, sin(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n1), 9.983341664682815e-2, 10*eps)
+ let relerr = relerr_(v(n1), 9.983341664682815e-2)
+ echo "ERROR, sin(1.0e-1) versus 9.983341664682815e-2 mismatch"
+ print relerr
+end
+
+if mismatch(v(n2), 6.44217687237691e-1, 10*eps)
+ let relerr = relerr_(v(n2), 6.44217687237691e-1)
+ echo "ERROR, sin(7.0e-1) versus 6.44217687237691e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n3), 1.0e+0, 10*eps)
+ let relerr = relerr_(v(n3), 1.0e+0)
+ echo "ERROR, cos(1.0e-9) versus 1.0e+0 mismatch"
+ print relerr
+end
+
+if mismatch(v(n4), 9.950041652780258e-1, 10*eps)
+ let relerr = relerr_(v(n4), 9.950041652780258e-1)
+ echo "ERROR, cos(1.0e-1) versus 9.950041652780258e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n5), 7.648421872844885e-1, 10*eps)
+ let relerr = relerr_(v(n5), 7.648421872844885e-1)
+ echo "ERROR, cos(7.0e-1) versus 7.648421872844885e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n6), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n6), 1.0e-9)
+ echo "ERROR, tan(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n7), 1.0033467208545055e-1, 10*eps)
+ let relerr = relerr_(v(n7), 1.0033467208545055e-1)
+ echo "ERROR, tan(1.0e-1) versus 1.0033467208545055e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n8), 8.422883804630794e-1, 10*eps)
+ let relerr = relerr_(v(n8), 8.422883804630794e-1)
+ echo "ERROR, tan(7.0e-1) versus 8.422883804630794e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n9), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n9), 1.0e-9)
+ echo "ERROR, asin(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n10), 1.0016742116155979e-1, 10*eps)
+ let relerr = relerr_(v(n10), 1.0016742116155979e-1)
+ echo "ERROR, asin(1.0e-1) versus 1.0016742116155979e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n11), 7.753974966107529e-1, 10*eps)
+ let relerr = relerr_(v(n11), 7.753974966107529e-1)
+ echo "ERROR, asin(7.0e-1) versus 7.753974966107529e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n12), 1.5707963257948965e+0, 10*eps)
+ let relerr = relerr_(v(n12), 1.5707963257948965e+0)
+ echo "ERROR, acos(1.0e-9) versus 1.5707963257948965e+0 mismatch"
+ print relerr
+end
+
+if mismatch(v(n13), 1.470628905633337e+0, 10*eps)
+ let relerr = relerr_(v(n13), 1.470628905633337e+0)
+ echo "ERROR, acos(1.0e-1) versus 1.470628905633337e+0 mismatch"
+ print relerr
+end
+
+if mismatch(v(n14), 7.953988301841437e-1, 10*eps)
+ let relerr = relerr_(v(n14), 7.953988301841437e-1)
+ echo "ERROR, acos(7.0e-1) versus 7.953988301841437e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n15), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n15), 1.0e-9)
+ echo "ERROR, atan(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n16), 9.966865249116206e-2, 10*eps)
+ let relerr = relerr_(v(n16), 9.966865249116206e-2)
+ echo "ERROR, atan(1.0e-1) versus 9.966865249116206e-2 mismatch"
+ print relerr
+end
+
+if mismatch(v(n17), 6.107259643892086e-1, 10*eps)
+ let relerr = relerr_(v(n17), 6.107259643892086e-1)
+ echo "ERROR, atan(7.0e-1) versus 6.107259643892086e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n18), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n18), 1.0e-9)
+ echo "ERROR, sinh(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n19), 1.0016675001984403e-1, 10*eps)
+ let relerr = relerr_(v(n19), 1.0016675001984403e-1)
+ echo "ERROR, sinh(1.0e-1) versus 1.0016675001984403e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n20), 7.585837018395335e-1, 10*eps)
+ let relerr = relerr_(v(n20), 7.585837018395335e-1)
+ echo "ERROR, sinh(7.0e-1) versus 7.585837018395335e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n21), 1.0e+0, 10*eps)
+ let relerr = relerr_(v(n21), 1.0e+0)
+ echo "ERROR, cosh(1.0e-9) versus 1.0e+0 mismatch"
+ print relerr
+end
+
+if mismatch(v(n22), 1.0050041680558035e+0, 10*eps)
+ let relerr = relerr_(v(n22), 1.0050041680558035e+0)
+ echo "ERROR, cosh(1.0e-1) versus 1.0050041680558035e+0 mismatch"
+ print relerr
+end
+
+if mismatch(v(n23), 1.255169005630943e+0, 10*eps)
+ let relerr = relerr_(v(n23), 1.255169005630943e+0)
+ echo "ERROR, cosh(7.0e-1) versus 1.255169005630943e+0 mismatch"
+ print relerr
+end
+
+if mismatch(v(n24), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n24), 1.0e-9)
+ echo "ERROR, tanh(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n25), 9.966799462495581e-2, 10*eps)
+ let relerr = relerr_(v(n25), 9.966799462495581e-2)
+ echo "ERROR, tanh(1.0e-1) versus 9.966799462495581e-2 mismatch"
+ print relerr
+end
+
+if mismatch(v(n26), 6.043677771171635e-1, 10*eps)
+ let relerr = relerr_(v(n26), 6.043677771171635e-1)
+ echo "ERROR, tanh(7.0e-1) versus 6.043677771171635e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n27), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n27), 1.0e-9)
+ echo "ERROR, asinh(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n28), 9.983407889920759e-2, 10*eps)
+ let relerr = relerr_(v(n28), 9.983407889920759e-2)
+ echo "ERROR, asinh(1.0e-1) versus 9.983407889920759e-2 mismatch"
+ print relerr
+end
+
+if mismatch(v(n29), 6.526665660823557e-1, 10*eps)
+ let relerr = relerr_(v(n29), 6.526665660823557e-1)
+ echo "ERROR, asinh(7.0e-1) versus 6.526665660823557e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n30), 6.223625037147784e-1, 10*eps)
+ let relerr = relerr_(v(n30), 6.223625037147784e-1)
+ echo "ERROR, acosh(1.2e+0) versus 6.223625037147784e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n31), 1.0e-9, 10*eps)
+ let relerr = relerr_(v(n31), 1.0e-9)
+ echo "ERROR, atanh(1.0e-9) versus 1.0e-9 mismatch"
+ print relerr
+end
+
+if mismatch(v(n32), 1.0033534773107558e-1, 10*eps)
+ let relerr = relerr_(v(n32), 1.0033534773107558e-1)
+ echo "ERROR, atanh(1.0e-1) versus 1.0033534773107558e-1 mismatch"
+ print relerr
+end
+
+if mismatch(v(n33), 8.673005276940532e-1, 10*eps)
+ let relerr = relerr_(v(n33), 8.673005276940532e-1)
+ echo "ERROR, atanh(7.0e-1) versus 8.673005276940532e-1 mismatch"
+ print relerr
+end
+
+
+quit 0
+
+
+.endc
diff --git a/Windows/spice/tests/regression/subckt-processing/Makefile.am b/Windows/spice/tests/regression/subckt-processing/Makefile.am
new file mode 100644
index 00000000..4bef8024
--- /dev/null
+++ b/Windows/spice/tests/regression/subckt-processing/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = model-scope-5.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/regression/subckt-processing/Makefile.in b/Windows/spice/tests/regression/subckt-processing/Makefile.in
new file mode 100644
index 00000000..50c1402c
--- /dev/null
+++ b/Windows/spice/tests/regression/subckt-processing/Makefile.in
@@ -0,0 +1,512 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/regression/subckt-processing
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = model-scope-5.cir
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/regression/subckt-processing/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/regression/subckt-processing/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/regression/subckt-processing/model-scope-5.cir b/Windows/spice/tests/regression/subckt-processing/model-scope-5.cir
new file mode 100644
index 00000000..1baf1081
--- /dev/null
+++ b/Windows/spice/tests/regression/subckt-processing/model-scope-5.cir
@@ -0,0 +1,84 @@
+check scoping of nested .model definitions
+
+* (exec-spice "ngspice -b %s")
+* (tests-aux-renumber)
+
+
+i1 n1001_t 0 dc=-1
+i2 n1002_t 0 dc=-1
+i3 n1003_t 0 dc=-1
+i4 n1004_t 0 dc=-1
+i5 n1005_t 0 dc=-1
+i6 n1006_t 0 dc=-1
+i7 n1007_t 0 dc=-1
+
+x1 n1001_t sub1
+v1_g n1001_g 0 2k
+
+x2 n1002_t n1003_t n1004_t n1005_t n1006_t n1007_t sub2
+v2_g n1002_g 0 4k
+v3_g n1003_g 0 1k
+v4_g n1004_g 0 8k
+v5_g n1005_g 0 1k
+v6_g n1006_g 0 8k
+v7_g n1007_g 0 43
+
+.subckt sub1 2
+ .model my r r=2k
+ r1 2 0 my
+.ends
+
+.subckt sub2 3 41a 41b 42a 42b 5
+ r2 3 0 my
+
+ x31 41a 41b sub3
+ x32 42a 42b sub3
+
+ .subckt sub3 4 5
+ .model my r r=8k
+ .model any r r=42
+ r5 4 0 1k
+ r6 5 0 my
+ .ends
+
+ .model just r r=43
+ r5 5 0 just
+.ends
+
+.model my r r=4k
+
+
+.control
+
+define mismatch(a,b,err) abs(a-b)>err
+
+op
+
+let total_count = 0
+let fail_count = 0
+
+let tests = 1001 + vector(7)
+
+foreach n $&tests
+ set n_test = "n{$n}_t"
+ set n_gold = "n{$n}_g"
+ if mismatch(v($n_test), v($n_gold), 1e-9)
+ let v_test = v($n_test)
+ let v_gold = v($n_gold)
+ echo "ERROR, test failure, v($n_test) = $&v_test but should be $&v_gold"
+ let fail_count = fail_count + 1
+ end
+ let total_count = total_count + 1
+end
+
+if fail_count > 0
+ echo "ERROR: $&fail_count of $&total_count tests failed"
+ quit 1
+else
+ echo "INFO: $&fail_count of $&total_count tests failed"
+ quit 0
+end
+
+.endc
+
+.end
diff --git a/Windows/spice/tests/resistance/Makefile.am b/Windows/spice/tests/resistance/Makefile.am
new file mode 100644
index 00000000..ff1e7970
--- /dev/null
+++ b/Windows/spice/tests/resistance/Makefile.am
@@ -0,0 +1,14 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ res_array.cir \
+ res_simple.cir \
+ res_partition.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/resistance/Makefile.in b/Windows/spice/tests/resistance/Makefile.in
new file mode 100644
index 00000000..1c0671b3
--- /dev/null
+++ b/Windows/spice/tests/resistance/Makefile.in
@@ -0,0 +1,516 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/resistance
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ res_array.cir \
+ res_simple.cir \
+ res_partition.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/resistance/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/resistance/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/resistance/res_array.cir b/Windows/spice/tests/resistance/res_array.cir
new file mode 100644
index 00000000..4080fc3e
--- /dev/null
+++ b/Windows/spice/tests/resistance/res_array.cir
@@ -0,0 +1,28 @@
+A paralled resistor array
+
+Vin 1 0 DC 1 SIN (0 1 100MEG 1NS 0.0) AC 1
+
+VR1 1 2 DC 0
+R1 2 0 10K
+
+VR2 1 3 DC 0
+R2 3 0 10K ac=5K
+
+VR3 1 4 DC 0
+R3 4 0 rmodel1 L=11u W=2u ac=2.5k
+
+VR4 1 5 DC 0
+R4 5 0 10K ac=5k m=2
+.model rmodel1 R RSH = 1000 NARROW = 1u
+
+VR5 1 6 DC 0
+R5 6 0 10 ac=5 scale=1K
+
+.options noacct
+.OP
+.TRAN 1ns 10ns
+.AC DEC 100 1MEG 100MEG
+.PRINT TRAN I(VR1), I(VR2), I(VR3), I(VR4),I(VR5)
+.PRINT AC I(VR1), I(VR2), I(VR3), I(VR4),I(VR5)
+
+.END
diff --git a/Windows/spice/tests/resistance/res_partition.cir b/Windows/spice/tests/resistance/res_partition.cir
new file mode 100644
index 00000000..40bcdd02
--- /dev/null
+++ b/Windows/spice/tests/resistance/res_partition.cir
@@ -0,0 +1,11 @@
+* Resistive partition with different ratios for AC/DC (Print V(2))
+
+vin 1 0 DC 1V AC 1V
+r1 1 2 5K
+r2 2 0 5K ac=15k
+
+.options noacct
+.OP
+.AC DEC 10 1 10K
+.print ac v(2)
+.END
diff --git a/Windows/spice/tests/resistance/res_simple.cir b/Windows/spice/tests/resistance/res_simple.cir
new file mode 100644
index 00000000..7dc66cae
--- /dev/null
+++ b/Windows/spice/tests/resistance/res_simple.cir
@@ -0,0 +1,10 @@
+A simple resistor with a voltage source
+
+R1 1 0 10k
+V1 1 0 DC 1
+
+.options noacct
+.TRAN 1ns 6ns
+.PRINT TRAN I(V1)
+
+.END
diff --git a/Windows/spice/tests/sensitivity/Makefile.am b/Windows/spice/tests/sensitivity/Makefile.am
new file mode 100644
index 00000000..437ad699
--- /dev/null
+++ b/Windows/spice/tests/sensitivity/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = diffpair.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/sensitivity/Makefile.in b/Windows/spice/tests/sensitivity/Makefile.in
new file mode 100644
index 00000000..e10e8d3d
--- /dev/null
+++ b/Windows/spice/tests/sensitivity/Makefile.in
@@ -0,0 +1,512 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/sensitivity
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = diffpair.cir
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/sensitivity/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/sensitivity/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/sensitivity/diffpair.cir b/Windows/spice/tests/sensitivity/diffpair.cir
new file mode 100644
index 00000000..ddd1b8ef
--- /dev/null
+++ b/Windows/spice/tests/sensitivity/diffpair.cir
@@ -0,0 +1,33 @@
+simple differential pair - CM and DM dc sensitivity
+
+* Models:
+.model qnl npn(level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf va=50)
+.model qnr npn(level=1 bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf va=50)
+
+* Circuit description:
+q1 4 2 6 qnr
+q2 5 3 6 qnl
+rs1 11 2 1k
+rs2 3 1 1k
+rc1 4 8 10k
+rc2 5 8 10k
+q3 7 7 9 qnl
+q4 6 7 9 qnr
+rbias 7 8 20k
+
+* Inputs/Supplies:
+vcm 1 0 dc 0 sin(0 0.1 5meg) ac 1
+vdm 1 11 dc 0 sin(0 0.1 5meg) ac 1
+vcc 8 0 12
+vee 9 0 -12
+
+.options noacct
+
+* Analyses:
+.tf v(5) vcm
+.tf v(5) vdm
+.sens v(5,4)
+
+.print SENS all
+
+.end
diff --git a/Windows/spice/tests/transient/Makefile.am b/Windows/spice/tests/transient/Makefile.am
new file mode 100644
index 00000000..9b2ccced
--- /dev/null
+++ b/Windows/spice/tests/transient/Makefile.am
@@ -0,0 +1,12 @@
+## Process this file with automake to produce Makefile.in
+
+
+TESTS = fourbitadder.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/transient/Makefile.in b/Windows/spice/tests/transient/Makefile.in
new file mode 100644
index 00000000..360024fa
--- /dev/null
+++ b/Windows/spice/tests/transient/Makefile.in
@@ -0,0 +1,512 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/transient
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = fourbitadder.cir
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/transient/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/transient/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/transient/fourbitadder.cir b/Windows/spice/tests/transient/fourbitadder.cir
new file mode 100644
index 00000000..d6b577df
--- /dev/null
+++ b/Windows/spice/tests/transient/fourbitadder.cir
@@ -0,0 +1,79 @@
+4 bit adder
+
+* Models:
+.MODEL dmod D
+.MODEL qmod NPN(level=1 BF=75 RB=100 CJE=1PF CJC=3PF)
+
+.options noacct
+
+.SUBCKT NAND 1 2 3 4
+* noeuds: entrees(2) sortie vcc
+q1 9 5 1 qmod
+d1clamp 0 1 dmod
+q2 9 5 2 qmod
+d2clamp 0 2 dmod
+rb 4 5 4k
+r1 4 6 1.6k
+q3 6 9 8 qmod
+r2 8 0 1k
+rc 4 7 130
+q4 7 6 10 qmod
+dvbedrop 10 3 dmod
+q5 3 8 0 qmod
+.ends NAND
+
+.SUBCKT ONEBIT 1 2 3 4 5 6
+* noeuds entrees(2) ,carryin, sortie, carryout, vcc
+x1 1 2 7 6 NAND
+x2 1 7 8 6 NAND
+x3 2 7 9 6 NAND
+x4 8 9 10 6 NAND
+x5 3 10 11 6 NAND
+x6 3 11 12 6 NAND
+x7 10 11 13 6 NAND
+x8 12 13 4 6 NAND
+x9 11 7 5 6 NAND
+.ends ONEBIT
+
+.SUBCKT TWOBIT 1 2 3 4 5 6 7 8 9
+* noeuds
+x1 1 2 7 5 10 9 ONEBIT
+x2 3 4 10 6 8 9 ONEBIT
+.ends TWOBIT
+
+.SUBCKT FOURBIT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+
+x1 1 2 3 4 9 10 13 16 15 TWOBIT
+x2 5 6 7 8 11 12 16 14 15 TWOBIT
+.ends FOURBIT
+
+
+
+* Inputs/Supplies:
+
+vcc 99 0 DC 5V
+VIN1A 1 0 DC 0 pulse(0 3 0 10ns 10ns 10ns 50ns)
+VIN1B 2 0 DC 0 pulse(0 3 0 10ns 10ns 20ns 100ns)
+VIN2A 3 0 DC 0 pulse(0 3 0 10ns 10ns 40ns 200ns)
+VIN2B 4 0 DC 0 pulse(0 3 0 10ns 10ns 80ns 400ns)
+VIN3A 5 0 DC 0 pulse(0 3 0 10ns 10ns 160ns 800ns)
+VIN3B 6 0 DC 0 pulse(0 3 0 10ns 10ns 320ns 1600ns)
+VIN4A 7 0 DC 0 pulse(0 3 0 10ns 10ns 640ns 3200ns)
+VIN4B 8 0 DC 0 pulse(0 3 0 10ns 10ns 1280ns 6400ns)
+
+* Circuit description:
+x1 1 2 3 4 5 6 7 8 9 10 11 12 0 13 99 FOURBIT
+rbit0 9 0 1k
+rbit1 10 0 1k
+rbit2 11 0 1k
+rbit3 12 0 1k
+rcout 13 0 1k
+
+* Analysys:
+.tran 1ns 6ns
+.print tran v(1)
+
+
+.end
+
+
diff --git a/Windows/spice/tests/transmission/Makefile.am b/Windows/spice/tests/transmission/Makefile.am
new file mode 100644
index 00000000..0d79bbd0
--- /dev/null
+++ b/Windows/spice/tests/transmission/Makefile.am
@@ -0,0 +1,18 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ cpl_ibm2.cir \
+ cpl3_4_line.cir \
+ ltra1_1_line.cir \
+ ltra2_2_line.cir \
+ txl1_1_line.cir \
+ txl2_3_line.cir
+
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/transmission/Makefile.in b/Windows/spice/tests/transmission/Makefile.in
new file mode 100644
index 00000000..73aabe47
--- /dev/null
+++ b/Windows/spice/tests/transmission/Makefile.in
@@ -0,0 +1,519 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/transmission
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ cpl_ibm2.cir \
+ cpl3_4_line.cir \
+ ltra1_1_line.cir \
+ ltra2_2_line.cir \
+ txl1_1_line.cir \
+ txl2_3_line.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/transmission/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/transmission/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/transmission/cpl3_4_line.cir b/Windows/spice/tests/transmission/cpl3_4_line.cir
new file mode 100644
index 00000000..5f90ec21
--- /dev/null
+++ b/Windows/spice/tests/transmission/cpl3_4_line.cir
@@ -0,0 +1,36 @@
+6.3inch 4 lossy lines CPL model -- R load
+
+Ra 1 2 1K
+Rb 0 3 1K
+Rc 0 4 1K
+Rd 0 5 1K
+Re 6 0 1Meg
+Rf 7 0 1Meg
+Rg 8 0 1Meg
+Rh 9 0 1Meg
+*
+P1 2 3 4 5 0 6 7 8 9 0 LOSSYMODE
+*
+*
+VS1 1 0 PWL(15.9NS 0.0 16.1Ns 5.0 31.9Ns 5.0 32.1Ns 0.0)
+*
+.OPTION NOACCT
+.TRAN 0.2NS 50NS 0 0.05N
+.PRINT TRAN V(2) V(7) V(9)
+.MODEL LOSSYMODE CPL
++R=0.3 0 0 0
++ 0.3 0 0
++ 0.3 0
++ 0.3
++L=9e-9 5.4e-9 0 0
++ 9e-9 5.4e-9 0
++ 9e-9 5.4e-9
++ 9e-9
++G=0 0 0 0 0 0 0 0 0 0
++C=3.5e-13 -3e-14 0 0
++ 3.5e-13 -3e-14 0
++ 3.5e-13 -3e-14
++ 3.5e-13
++length=6.3
+
+.END
diff --git a/Windows/spice/tests/transmission/cpl_ibm2.cir b/Windows/spice/tests/transmission/cpl_ibm2.cir
new file mode 100644
index 00000000..912dd6e6
--- /dev/null
+++ b/Windows/spice/tests/transmission/cpl_ibm2.cir
@@ -0,0 +1,19 @@
+Simple coupled transmissionlines
+VES IN 0 PULSE (0 1 0N 1.5N 1.5N 4.5N 200N)
+R1 IN V1 50
+R2 V2 0 10
+p1 V1 V2 0 V3 V4 0 cpl1
+.model cpl1 cpl
++R = 0.5 0 0.5
++L = 247.3e-9 31.65e-9
++ 247.3e-9
++C = 31.4e-12 -2.45e-12
++ 31.4e-12
++G = 0 0 0
++length = 0.3048
+R3 V3 0 100
+R4 V4 0 100
+.OPTION NOACCT
+.TRAN 0.1N 20N
+.PRINT TRAN V(V1) V(V3)
+.END
diff --git a/Windows/spice/tests/transmission/ltra1_1_line.cir b/Windows/spice/tests/transmission/ltra1_1_line.cir
new file mode 100644
index 00000000..7b85af97
--- /dev/null
+++ b/Windows/spice/tests/transmission/ltra1_1_line.cir
@@ -0,0 +1,18 @@
+MOSdriver -- lossy line LTRA model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+o1 2 0 3 0 lline
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.OPTION NOACCT
+.TRAN 0.2N 47N 0 0.1N
+.PRINT TRAN V(2) V(3)
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.model lline ltra rel=1 r=12.45 g=0 l=8.972e-9 c=0.468e-12
++len=16 steplimit compactrel=1.0e-3 compactabs=1.0e-14
+.end
diff --git a/Windows/spice/tests/transmission/ltra2_2_line.cir b/Windows/spice/tests/transmission/ltra2_2_line.cir
new file mode 100644
index 00000000..d8a39137
--- /dev/null
+++ b/Windows/spice/tests/transmission/ltra2_2_line.cir
@@ -0,0 +1,23 @@
+MOSdriver -- 2 lossy lines LTRA model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+m1 0 3 4 0 mn0p9 w = 18.0u l=0.9u
+m2 1 3 4 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+CN4 4 0 0.025398e-12
+CN5 5 0 0.007398e-12
+o1 2 0 3 0 lline
+o2 4 0 5 0 lline
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.OPTION NOACCT
+.TRAN 0.2N 47N 0 0.1N
+.PRINT TRAN V(2) V(3) V(4) V(5)
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.model lline ltra rel=1 r=12.45 g=0 l=8.972e-9 c=0.468e-12
++len=16 steplimit compactrel=1.0e-3 compactabs=1.0e-14
+.end
diff --git a/Windows/spice/tests/transmission/txl1_1_line.cir b/Windows/spice/tests/transmission/txl1_1_line.cir
new file mode 100644
index 00000000..6993161d
--- /dev/null
+++ b/Windows/spice/tests/transmission/txl1_1_line.cir
@@ -0,0 +1,17 @@
+MOSdriver -- lossy line TXL model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+y1 2 0 3 0 ymod
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.OPTION NOACCT
+.TRAN 0.2N 47N 0 0.1N
+.PRINT TRAN V(2) V(3)
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL ymod txl R=12.45 L=8.972e-9 G=0 C=0.468e-12 length=16
+.end
diff --git a/Windows/spice/tests/transmission/txl2_3_line.cir b/Windows/spice/tests/transmission/txl2_3_line.cir
new file mode 100644
index 00000000..a7200009
--- /dev/null
+++ b/Windows/spice/tests/transmission/txl2_3_line.cir
@@ -0,0 +1,25 @@
+MOSdriver -- 3 lossy lines TXL model -- C load
+m5 0 168 2 0 mn0p9 w = 18.0u l=0.9u
+m6 1 168 2 1 mp1p0 w = 36.0u l=1.0u
+m1 0 3 4 0 mn0p9 w = 18.0u l=0.9u
+m2 1 3 4 1 mp1p0 w = 36.0u l=1.0u
+CN2 2 0 0.025398e-12
+CN3 3 0 0.007398e-12
+CN4 4 0 0.025398e-12
+CN5 5 0 0.007398e-12
+CN6 6 0 0.007398e-12
+CN7 168 0 0.007398e-12
+y1 2 0 3 0 ymod
+y2 4 0 5 0 ymod
+y3 6 0 168 0 ymod
+vdd 1 0 dc 5.0
+VS 168 0 PULSE (0 5 15.9NS 0.2NS 0.2NS 15.8NS 32NS )
+.OPTION NOACCT
+.TRAN 0.2N 47N 0 0.1N
+.PRINT TRAN V(2) V(3) V(4) V(5) V(6)
+.MODEL mn0p9 NMOS VTO=0.8 KP=48U GAMMA=0.30 PHI=0.55
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL mp1p0 PMOS VTO=-0.8 KP=21U GAMMA=0.45 PHI=0.61
++LAMBDA=0.00 CGSO=0 CGDO=0 CJ=0 CJSW=0 TOX=18000N LD=0.0U
+.MODEL ymod txl R=12.45 L=8.972e-9 G=0 C=0.468e-12 length=16
+.end
diff --git a/Windows/spice/tests/vbic/CEamp.cir b/Windows/spice/tests/vbic/CEamp.cir
new file mode 100644
index 00000000..df3096e1
--- /dev/null
+++ b/Windows/spice/tests/vbic/CEamp.cir
@@ -0,0 +1,27 @@
+VBIC Pole Zero Test
+
+Vcc 3 0 5
+Rc 2 3 1k
+Rb 3 1 200k
+I1 0 1 AC 1 DC 0
+Vmeas 4 2 DC 0
+Cshunt 4 0 .1u
+
+Q1 2 1 0 0 N1
+
+.OPTIONS NOACCT
+
+.ac dec 100 0.1Meg 10G
+.print ac db(i(vmeas))
+.print ac ph(i(vmeas))
+.pz 1 0 4 0 cur pz
+.print pz all
+
+
+.MODEL N1 NPN LEVEL=4
++ IS=1e-16 IBEI=1e-18 IBEN=5e-15 IBCI=2e-17 IBCN=5e-15 ISP=1e-15 RCX=10
++ RCI=60 RBX=10 RBI=40 RE=2 RS=20 RBP=40 VEF=10 VER=4 IKF=2e-3 ITF=8e-2
++ XTF=20 IKR=2e-4 IKP=2e-4 CJE=1e-13 CJC=2e-14 CJEP=1e-13 CJCP=4e-13 VO=2
++ GAMM=2e-11 HRCF=2 QCO=1e-12 AVC1=2 AVC2=15 TF=10e-12 TR=100e-12 TD=2e-11 RTH=300
+
+.END
diff --git a/Windows/spice/tests/vbic/FG.cir b/Windows/spice/tests/vbic/FG.cir
new file mode 100644
index 00000000..23eed0f8
--- /dev/null
+++ b/Windows/spice/tests/vbic/FG.cir
@@ -0,0 +1,17 @@
+VBIC Gummel Test
+V1 Q1_E 0 5.0
+VC Q1_C 0 0.0
+VB Q1_B 0 0.0
+Q1 Q1_C Q1_B Q1_E P1
+.DC V1 0.2 1.2 10m
+.OPTIONS GMIN=1e-13 NOACCT
+
+.print dc abs(i(vc)) abs(i(vb))
+
+.MODEL P1 PNP LEVEL=4
++ IS=1e-16 IBEI=1e-18 IBEN=5e-15 IBCI=2e-17 IBCN=5e-15 ISP=1e-15 RCX=10
++ RCI=60 RBX=10 RBI=40 RE=2 RS=20 RBP=40 VEF=10 VER=4 IKF=2e-3 ITF=8e-2
++ XTF=20 IKR=2e-4 IKP=2e-4 CJE=1e-13 CJC=2e-14 CJEP=1e-13 CJCP=4e-13 VO=2
++ GAMM=2e-11 HRCF=2 QCO=1e-12 AVC1=2 AVC2=15 TF=10e-12 TR=100e-12 TD=2e-11 RTH=300
+
+.END
diff --git a/Windows/spice/tests/vbic/FO.cir b/Windows/spice/tests/vbic/FO.cir
new file mode 100644
index 00000000..37950b23
--- /dev/null
+++ b/Windows/spice/tests/vbic/FO.cir
@@ -0,0 +1,20 @@
+VBIC Output Test
+V1 V1_P V1_N 0.0
+VB V1_N 0 0.5
+VC Q1_C 0 0.0
+Q1 Q1_C V1_P 0 N1
+
+.OPTIONS NOACCT
+
+.DC VC 0 5 50M VB 700M 1 50M
+
+.print dc -i(vc)
+.print dc -i(vb)
+
+.MODEL N1 NPN LEVEL=4
++ IS=1e-16 IBEI=1e-18 IBEN=5e-15 IBCI=2e-17 IBCN=5e-15 ISP=1e-15 RCX=10
++ RCI=60 RBX=10 RBI=40 RE=2 RS=20 RBP=40 VEF=10 VER=4 IKF=2e-3 ITF=8e-2
++ XTF=20 IKR=2e-4 IKP=2e-4 CJE=1e-13 CJC=2e-14 CJEP=1e-13 CJCP=4e-13 VO=2
++ GAMM=2e-11 HRCF=2 QCO=1e-12 AVC1=2 AVC2=15 TF=10e-12 TR=100e-12 TD=2e-11 RTH=300
+
+.END
diff --git a/Windows/spice/tests/vbic/Makefile.am b/Windows/spice/tests/vbic/Makefile.am
new file mode 100644
index 00000000..e9186f87
--- /dev/null
+++ b/Windows/spice/tests/vbic/Makefile.am
@@ -0,0 +1,19 @@
+## Process this file with automake to produce Makefile.in
+
+
+
+TESTS = CEamp.cir \
+ FG.cir \
+ FO.cir \
+ diffamp.cir \
+ noise_scale_test.cir \
+ temp.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/vbic/Makefile.in b/Windows/spice/tests/vbic/Makefile.in
new file mode 100644
index 00000000..530ef907
--- /dev/null
+++ b/Windows/spice/tests/vbic/Makefile.in
@@ -0,0 +1,518 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/vbic
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = CEamp.cir \
+ FG.cir \
+ FO.cir \
+ diffamp.cir \
+ noise_scale_test.cir \
+ temp.cir
+
+TESTS_ENVIRONMENT = $(SHELL) $(top_srcdir)/tests/bin/check.sh $(top_builddir)/src/ngspice
+EXTRA_DIST = \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/vbic/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/vbic/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/vbic/diffamp.cir b/Windows/spice/tests/vbic/diffamp.cir
new file mode 100644
index 00000000..cf1b9108
--- /dev/null
+++ b/Windows/spice/tests/vbic/diffamp.cir
@@ -0,0 +1,47 @@
+VBIC DiffAmp Test
+
+V1 VCC 0 3.3
+V2 V2_P R3_N AC 1 DC 0 Sine(0 10m 10Meg 0 0)
+R1 Q3_C 0 100k
+R2 Q4_C 0 100k
+R3 VCC R3_N 1K
+R4 R3_N 0 1K
+Q10 Q1_E I1_N 0 0 N1
+Q11 I1_N I1_N 0 0 N1
+Q12 Q9_B I1_N 0 0 N1 M=2
+Q13 Q5_B I1_N 0 0 N1 M=2
+Q1 Q5_C V2_P Q1_E 0 N1
+Q2 Q6_C R3_N Q1_E 0 N1
+Q3 Q3_C Q9_B Q5_C Q3_C P1
+Q4 Q4_C Q9_B Q6_C Q4_C P1
+I1 VCC I1_N 10u
+Q5 Q5_C Q5_B VCC Q5_C P1
+Q6 Q6_C Q5_B VCC Q6_C P1
+E1 E1_P 0 Q3_C Q4_C 1
+RH E1_P 0 1G
+Q7 Q5_B Q5_B VCC Q5_B P1
+Q8 Q8_B Q8_B VCC Q8_B P1
+Q9 Q9_B Q9_B Q8_B Q9_B P1
+
+.OPTIONS NOACCT
+
+.OP
+.TRAN 1n 1u 0 10n
+.AC DEC 25 100k 1G
+
+.print ac v(e1_p)
+.print tran v(e1_p)
+
+.MODEL N1 NPN LEVEL=4
++ IS=1e-16 IBEI=1e-18 IBEN=5e-15 IBCI=2e-17 IBCN=5e-15 ISP=1e-15 RCX=10
++ RCI=60 RBX=10 RBI=40 RE=2 RS=20 RBP=40 VEF=10 VER=4 IKF=2e-3 ITF=8e-2
++ XTF=20 IKR=2e-4 IKP=2e-4 CJE=1e-13 CJC=2e-14 CJEP=1e-13 CJCP=4e-13 VO=2
++ GAMM=2e-11 HRCF=2 QCO=1e-12 AVC1=2 AVC2=15 TF=10e-12 TR=100e-12 TD=2e-11 RTH=300
+
+.MODEL P1 PNP LEVEL=4
++ IS=1e-16 IBEI=1e-18 IBEN=5e-15 IBCI=2e-17 IBCN=5e-15 ISP=1e-15 RCX=10
++ RCI=60 RBX=10 RBI=40 RE=2 RS=20 RBP=40 VEF=10 VER=4 IKF=2e-3 ITF=8e-2
++ XTF=20 IKR=2e-4 IKP=2e-4 CJE=1e-13 CJC=2e-14 CJEP=1e-13 CJCP=4e-13 VO=2
++ GAMM=2e-11 HRCF=2 QCO=1e-12 AVC1=2 AVC2=15 TF=10e-12 TR=100e-12 TD=2e-11 RTH=300
+
+.END
diff --git a/Windows/spice/tests/vbic/noise_scale_test.cir b/Windows/spice/tests/vbic/noise_scale_test.cir
new file mode 100644
index 00000000..6d9bd5e4
--- /dev/null
+++ b/Windows/spice/tests/vbic/noise_scale_test.cir
@@ -0,0 +1,27 @@
+VBIC Noise Scale Test
+
+V1 R3_P 0 5
+V2 V2_P 0 5 AC 1
+C1 R3_N V2_P 1n
+R4 R3_N 0 100k
+Q1 VOUT R3_N Q1_E N1 M=2
+*Q2 VOUT R3_N Q1_E N1
+R1 R3_P VOUT 100k
+R2 Q1_E 0 10k
+R3 R3_P R3_N 500k
+
+.OPTIONS NOACCT
+
+.NOISE v(vout) V2 DEC 25 1k 100Meg
+
+.print noise v(inoise_spectrum)
+
+
+.MODEL N1 NPN LEVEL=4
++ IS=1e-16 IBEI=1e-18 IBEN=5e-15 IBCI=2e-17 IBCN=5e-15 ISP=1e-15 RCX=10
++ RCI=60 RBX=10 RBI=40 RE=2 RS=20 RBP=40 VEF=10 VER=4 IKF=2e-3 ITF=8e-2
++ XTF=20 IKR=2e-4 IKP=2e-4 CJE=1e-13 CJC=2e-14 CJEP=1e-13 CJCP=4e-13 VO=2
++ GAMM=2e-11 HRCF=2 QCO=1e-12 AVC1=2 AVC2=15 TF=10e-12 TR=100e-12 TD=2e-11
++ RTH=300 KFN=10e-15 AFN=1 BFN=1
+
+.END
diff --git a/Windows/spice/tests/vbic/temp.cir b/Windows/spice/tests/vbic/temp.cir
new file mode 100644
index 00000000..15355b76
--- /dev/null
+++ b/Windows/spice/tests/vbic/temp.cir
@@ -0,0 +1,19 @@
+VBIC Temp test
+
+V1 1 0 1.0
+VC 1 Q1_C 0.0
+VB 1 Q1_B 0.0
+Q1 Q1_C Q1_B 0 N1
+.OPTIONS TEMP=150 NOACCT
+.DC V1 0.2 1.2 10m
+
+.print dc i(vc) i(vb)
+
+
+.MODEL N1 NPN LEVEL=4
++ IS=1e-16 IBEI=1e-18 IBEN=5e-15 IBCI=2e-17 IBCN=5e-15 ISP=1e-15 RCX=10
++ RCI=60 RBX=10 RBI=40 RE=2 RS=20 RBP=40 VEF=10 VER=4 IKF=2e-3 ITF=8e-2
++ XTF=20 IKR=2e-4 IKP=2e-4 CJE=1e-13 CJC=2e-14 CJEP=1e-13 CJCP=4e-13 VO=2
++ GAMM=2e-11 HRCF=2 QCO=1e-12 AVC1=2 AVC2=15 TF=10e-12 TR=100e-12 TD=2e-11 RTH=300
+
+.END
diff --git a/Windows/spice/tests/xspice/Makefile.am b/Windows/spice/tests/xspice/Makefile.am
new file mode 100644
index 00000000..77f968b3
--- /dev/null
+++ b/Windows/spice/tests/xspice/Makefile.am
@@ -0,0 +1,5 @@
+## Process this file with automake to produce Makefile.in
+
+SUBDIRS = digital
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/xspice/Makefile.in b/Windows/spice/tests/xspice/Makefile.in
new file mode 100644
index 00000000..5b596649
--- /dev/null
+++ b/Windows/spice/tests/xspice/Makefile.in
@@ -0,0 +1,609 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/xspice
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+SUBDIRS = digital
+MAINTAINERCLEANFILES = Makefile.in
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/xspice/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/xspice/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+ install-am install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-generic clean-libtool \
+ ctags ctags-recursive distclean distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/xspice/digital/Makefile.am b/Windows/spice/tests/xspice/digital/Makefile.am
new file mode 100644
index 00000000..c89536ee
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/Makefile.am
@@ -0,0 +1,18 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = \
+ d_ram.cir \
+ d_source.cir \
+ d_state.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) SPICE_SCRIPTS=. $(SHELL) $(top_srcdir)/tests/bin/check.sh "$(top_builddir)/src/ngspice -r foobaz"
+
+EXTRA_DIST = \
+ d_ram-stimulus.txt \
+ d_source-stimulus.txt \
+ d_state-stimulus.txt \
+ d_state-updn.txt \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/Windows/spice/tests/xspice/digital/Makefile.in b/Windows/spice/tests/xspice/digital/Makefile.in
new file mode 100644
index 00000000..37e4f3f0
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/Makefile.in
@@ -0,0 +1,523 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/xspice/digital
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(srcdir)/spinit.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/src/include/ngspice/config.h
+CONFIG_CLEAN_FILES = spinit
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADMSXML = @ADMSXML@
+ALLOCA = @ALLOCA@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOTVLADEVDIR = @NOTVLADEVDIR@
+NOTXGRAPH = @NOTXGRAPH@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OPENMP_CFLAGS = @OPENMP_CFLAGS@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STATIC = @STATIC@
+STRIP = @STRIP@
+TCL_LIB_SPEC = @TCL_LIB_SPEC@
+TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
+VERSION = @VERSION@
+VLADEV = @VLADEV@
+VLADEVDIR = @VLADEVDIR@
+XGRAPHDIR = @XGRAPHDIR@
+XMKMF = @XMKMF@
+XSPICEDLLIBS = @XSPICEDLLIBS@
+XSPICEINIT = @XSPICEINIT@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+TESTS = \
+ d_ram.cir \
+ d_source.cir \
+ d_state.cir
+
+TESTS_ENVIRONMENT = ngspice_vpath=$(srcdir) SPICE_SCRIPTS=. $(SHELL) $(top_srcdir)/tests/bin/check.sh "$(top_builddir)/src/ngspice -r foobaz"
+EXTRA_DIST = \
+ d_ram-stimulus.txt \
+ d_source-stimulus.txt \
+ d_state-stimulus.txt \
+ d_state-updn.txt \
+ $(TESTS) \
+ $(TESTS:.cir=.out)
+
+MAINTAINERCLEANFILES = Makefile.in
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/xspice/digital/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu tests/xspice/digital/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+spinit: $(top_builddir)/config.status $(srcdir)/spinit.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ col="$$grn"; \
+ else \
+ col="$$red"; \
+ fi; \
+ echo "$${col}$$dashes$${std}"; \
+ echo "$${col}$$banner$${std}"; \
+ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
+ test -z "$$report" || echo "$${col}$$report$${std}"; \
+ echo "$${col}$$dashes$${std}"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-TESTS check-am clean clean-generic \
+ clean-libtool distclean distclean-generic distclean-libtool \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Windows/spice/tests/xspice/digital/d_ram-stimulus.txt b/Windows/spice/tests/xspice/digital/d_ram-stimulus.txt
new file mode 100644
index 00000000..36b04c84
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/d_ram-stimulus.txt
@@ -0,0 +1,36 @@
+* ram test
+* a a a d d d d d we cs
+0ns 0s 0s 0s 0r 0r 0r 0r 0r 0s 1s
+10ns 0s 0s 0s 0r 0r 0r 0r 0r 1s 1s
+20ns 0s 0s 0s 0r 0r 0r 0r 0r 0s 1s
+30ns 0s 0s 1s 0r 1r 1r 0r 1r 0s 1s
+40ns 0s 0s 1s 0r 1r 1r 0r 1r 1s 1s
+50ns 0s 0s 1s 0r 1r 1r 0r 1r 0s 1s
+60ns 0s 1s 0s 1r 1r 0r 1r 0r 0s 0s
+70ns 0s 1s 0s 1r 1r 0r 1r 0r 1s 0s
+80ns 0s 1s 0s 1r 1r 0r 1r 0r 0s 0s
+90ns 0s 1s 1s 0r 0r 1r 1r 1r 0s 1s
+100ns 0s 1s 1s 0r 0r 1r 1r 1r 1s 1s
+110ns 0s 1s 1s 0r 0r 1r 1r 1r 0s 1s
+120ns 1s 0s 0s 1r 0r 1r 0r 0r 0s 1s
+130ns 1s 0s 0s 1r 0r 1r 0r 0r 1s 1s
+140ns 1s 0s 0s 1r 0r 1r 0r 0r 0s 1s
+150ns 1s 0s 1s 0r 0r 0r 0r 1r 0s 1s
+160ns 1s 0s 1s 0r 0r 0r 0r 1r 1s 1s
+170ns 1s 0s 1s 0r 0r 0r 0r 1r 0s 1s
+180ns 1s 1s 0s 0r 1r 1r 1r 0r 0s 1s
+190ns 1s 1s 0s 0r 1r 1r 1r 0r 1s 1s
+200ns 1s 1s 0s 0r 1r 1r 1r 0r 0s 1s
+210ns 1s 1s 1s 1r 1r 0r 1r 1r 0s 1s
+220ns 1s 1s 1s 1r 1r 0r 1r 1r 1s 1s
+230ns 1s 1s 1s 1r 1r 0r 1r 1r 0s 1s
+240ns 0s 0s 0s 0r 0r 0r 0r 0r 0s 1s
+250ns 0s 0s 1s 0r 1r 1r 0r 1r 0s 1s
+260ns 0s 1s 0s 1r 1r 0r 1r 0r 0s 1s
+270ns 0s 1s 1s 0r 0r 1r 1r 1r 0s 1s
+280ns 1s 0s 0s 1r 0r 1r 0r 0r 0s 1s
+290ns 1s 0s 1s 0r 0r 0r 0r 1r 0s 1s
+300ns 1s 1s 0s 0r 1r 1r 1r 0r 0s 1s
+310ns 1s 1s 1s 1r 1r 0r 1r 1r 0s 1s
+320ns 1s 1s 1s 1r 1r 0r 1r 1r 0s 0s
+330ns 1s 1s 1s 1r 1r 0r 1r 1r 0s 1s
diff --git a/Windows/spice/tests/xspice/digital/d_ram.cir b/Windows/spice/tests/xspice/digital/d_ram.cir
new file mode 100644
index 00000000..1f1deb43
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/d_ram.cir
@@ -0,0 +1,24 @@
+Code Model Test: d_source + d_ram
+
+* (compile (concat "SPICE_SCRIPTS=. ../../../src/ngspice " buffer-file-name) t)
+
+
+vdummy dummy 0 DC=0
+
+a_source [a0 a1 a2 d0 d1 d2 d3 d4 we cs] d_source1
+aram [d0 d1 d2 d3 d4] [o0 o1 o2 o3 o4] [a0 a1 a2] we [cs] d_ram1
+
+
+.model d_source1 d_source input_file="d_ram-stimulus.txt"
+
+.model d_ram1 d_ram (select_value=1 ic=2 read_delay=1ns)
+
+
+.control
+set noaskquit
+set noacct
+tran 100ps 350ns
+eprint a0 a1 a2 d0 d1 d2 d3 d4 o0 o1 o2 o3 o4 we cs
+.endc
+
+.end
diff --git a/Windows/spice/tests/xspice/digital/d_source-stimulus.txt b/Windows/spice/tests/xspice/digital/d_source-stimulus.txt
new file mode 100644
index 00000000..7f0d5d6a
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/d_source-stimulus.txt
@@ -0,0 +1,13 @@
+* time, a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab
+0n 0s 0s Uu Uu Uu Uu Uu Uu Uu Uu Uu
+1n 1s 0s Uu Uu 0u Uu Uu Uu Uu Uu Uu
+2n Us 0s Uu Uu 0u 0u Uu Uu Uu Uu Uu
+3n Us 0r Uu Uu 0u 0u 0u Uu Uu Uu Uu
+4n Us 1r Uu Uu 0u 0u 0u 0u Uu Uu Uu
+5n Us Ur Uu Uu 0u 0u 0u 0u 0u Uu Uu
+6n Us Ur 0z Uu 0u 0u 0u 0u 0u 0u Uu
+7n Us Ur 1z Uu 0u 0u 0u 0u 0u 0u 0u
+8n Us Ur Uz Uu 0u 0u 0u 0u 0u 0u 0u
+9n Us Ur Uz 0u 0u 0u 0u 0u 0u 0u 0u
+10n Us Ur Uz 1u 0u 0u 0u 0u 0u 0u 0u
+11n Us Ur Uz Uu 0u 0u 0u 0u 0u 0u 0u
diff --git a/Windows/spice/tests/xspice/digital/d_source.cir b/Windows/spice/tests/xspice/digital/d_source.cir
new file mode 100644
index 00000000..83cc8b56
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/d_source.cir
@@ -0,0 +1,19 @@
+Code Model Test: d_source
+
+* (compile (concat "SPICE_SCRIPTS=. ../../../src/ngspice " buffer-file-name) t)
+
+
+vdummy dummy 0 DC=0
+
+a_source [a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab] d_source1
+
+.model d_source1 d_source (input_file="d_source-stimulus.txt")
+
+.control
+set noaskquit
+set noacct
+tran 100ps 30ns
+eprint a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab
+.endc
+
+.end
diff --git a/Windows/spice/tests/xspice/digital/d_state-stimulus.txt b/Windows/spice/tests/xspice/digital/d_state-stimulus.txt
new file mode 100644
index 00000000..92b493c1
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/d_state-stimulus.txt
@@ -0,0 +1,4 @@
+* time, enable, reset, up
+0 0s 1s 1s
+1n 1s 0s 1s
+9n 1s 0s 0s
diff --git a/Windows/spice/tests/xspice/digital/d_state-updn.txt b/Windows/spice/tests/xspice/digital/d_state-updn.txt
new file mode 100644
index 00000000..085159e7
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/d_state-updn.txt
@@ -0,0 +1,16 @@
+* This is an example state.in file. This file
+* defines a simple 2-bit counter with one input. The
+* value of this input determines whether the counter counts
+* up (in = 1) or down (in = 0).
+
+0 0s 0s 0 -> 3
+ 1 -> 1
+
+1 0s 1z 0 -> 0
+ 1 -> 2
+
+2 1z 0s 0 -> 1
+ 1 -> 3
+
+3 1z 1z 0 -> 2
+3 1z 1z 1 -> 0
diff --git a/Windows/spice/tests/xspice/digital/d_state.cir b/Windows/spice/tests/xspice/digital/d_state.cir
new file mode 100644
index 00000000..facc8650
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/d_state.cir
@@ -0,0 +1,35 @@
+Code Model Test: d_source + d_state
+
+* (compile (concat "SPICE_SCRIPTS=. ../../../src/ngspice " buffer-file-name) t)
+
+
+vdummy dummy 0 DC=0
+
+a_source [enable reset up] d_source1
+
+a_osc [enable clk] clk d_xor1
+
+a_counter [up] clk reset [o1 o2] d_state1
+
+
+.model d_source1 d_source (input_file="d_state-stimulus.txt")
+
+.model d_xor1 d_xor (rise_delay=1ns fall_delay=1ns)
+
+.model d_state1 d_state (clk_delay=0.1ns reset_delay=0.1ns
++ state_file="d_state-updn.txt" reset_state=0)
+
+.control
+set noaskquit
+set noacct
+tran 100ps 20ns
+eprint clk up reset o1 o2
+.endc
+
+.end
+
+
+
+
+
+
diff --git a/Windows/spice/tests/xspice/digital/spinit.in b/Windows/spice/tests/xspice/digital/spinit.in
new file mode 100644
index 00000000..d43d6aa9
--- /dev/null
+++ b/Windows/spice/tests/xspice/digital/spinit.in
@@ -0,0 +1,3 @@
+codemodel @top_builddir@/src/xspice/icm/digital/digital.cm
+set sourcepath = ( $ngspice_vpath . )
+set filetype=binary