Commit Graph

4464 Commits

Author SHA1 Message Date
dwarning 1b4aa22d0d Update some level and version entries for MOS models 2015-10-08 18:20:16 +02:00
rlar 73731bdf77 frontend/plotting/plotit.c, cleanup, reduce scope of `struct dvec *dv' 2015-10-04 15:38:27 +02:00
rlar a4c7dff570 frontend/define.c, rewrite `struct udfunc' insertion 2015-10-04 15:34:14 +02:00
rlar a5f933b3ec frontend/parse.c, bug fix, PPlex(.."dc1.@m1[vth][1]"..)
The whole string was lexed into only one TOK_STR
  instead of the actual (quasi) identifier "dc1.@m1[vth]"
2015-09-24 18:25:25 +02:00
rlar 192eeadb0b remove crufty comments which where used to support broken text editors 2015-09-24 18:23:54 +02:00
mhx a324d86878 inpcom.c, allow `temper' to be recognised when preceded by '=' 2015-08-16 20:20:50 +02:00
rlar 45bec4b8eb inpcom.c, strip braces in `inp_get_func_from_line()' 2015-08-16 19:56:12 +02:00
rlar 2ac726b265 inpcom.c, rename `struct function' member `macro' --> `body' 2015-08-16 19:56:10 +02:00
rlar dffcbddbba swallow `deprecated directive' warning emitted by newer bisons 2015-08-16 19:54:35 +02:00
rlar 2e023a6be7 inpcom.c, cleanup `inp_new_func()'
especially avoid local state in a function local static variable
2015-08-16 14:54:37 +02:00
rlar 56312b7872 inpcom.c, cleanup `inp_rem_func()' 2015-08-16 14:27:18 +02:00
rlar db9eb23b7d inpcom.c, bug fix, avoid segfault when `.ends' is missing 2015-08-15 17:05:00 +02:00
rlar 61724121aa res/restemp.c, bug fix, need to update `RESresist' in `REStemp()'
instead of `RESsetup()'
  to be effective when altering a resistor model parameter or when
  sweeping a resistor model parameter in a dc analysis.

see tests/regression/temper/temper-3.cir
2015-08-10 17:52:57 +02:00
rlar 5940bf9294 analysis/dctrcurv.c, bug fix, sweeping `temper' in a dc analysis
incorrect update of model parameters,
  need to `invoke CKTtemp()' *after* `inp_evaluate_temper()'

see tests/regression/temper/temper-2.cir
2015-08-10 17:52:54 +02:00
rlar fc6455ca99 inp.c, bug fix, `temper' in a model parameter, missing INPretrieve() invocation
The model name needs to be transformed into a `IFuid'
  before it can be searched for with `findModel()'

see tests/regression/temper/temper-1.cir
2015-08-10 17:52:21 +02:00
rlar 8a65e97c2f tests/regression/temper, several issues with `temper' in model parameters 2015-08-10 17:33:17 +02:00
rlar 0f07546db9 configure.ac, automake compatibility, we still use `serial test harness'
newer automake do have a different default setting,
  we need to be specific.
2015-08-10 17:26:51 +02:00
rlar 517b36edd0 update visual stdio project files 2015-07-08 20:52:08 +02:00
rlar 0c0bc4079f configure.ac, allow cross-compilation, especially for MinGW-w64
notably on debian gnu/linux with package `mingw-w64'
cross-compile a mingw 32bit windows executable with this incantation:

(compile "
  ./autogen.sh
  rm -rf tmp-build tmp-output
  mkdir -p tmp-build tmp-output
  ( cd tmp-build && ../configure \
      --build=$(../config.guess) \
      --host=i686-w64-mingw32 \
      --prefix='c:/spice' \
      --exec-prefix='c:/spice'\
      --with-windows --enable-xspice --enable-cider --disable-debug )
  LC_ALL=C make -C tmp-build -k -j6
  LC_ALL=C make -C tmp-build -k -j6 DESTDIR=$(pwd)/tmp-output/ install
  (cd 'tmp-output/c:/' && zip -r - .) > tmp-output.zip
")

compilation to Win64 works the same way, with
      --host=x86_64-w64-mingw32

The tmp-output.zip directory structure resembles the
  structure of our original sourceforge ngspice-26_140112.zip windows package
ready to be unzip'ed in c:/

Though the testfiles, examples and documentation is missing.
2015-07-06 21:08:05 +02:00
rlar 794df1066a update bison generated files 2015-07-05 20:26:59 +02:00
rlar 1c6efd9481 polish bison/flex makefile rules 2015-07-05 20:25:23 +02:00
rlar 9ee4db0b5b configure.ac, AC_PROG_YACC, AC_PROG_LEX, enable maintainer-mode by default
explicitly use
  configure --disable-maintainer-mode
only if you don't have bison and flex.

we still have the bison/flex generated output files in the repository,
  causing quite complex make dependencies.
2015-07-05 19:32:27 +02:00
rlar 74aaa72c39 src/xspice/icm/GNUmakefile.in, extend `make distclean' 2015-07-05 19:15:42 +02:00
rlar 9be4f753e6 remove redundant src/xspice/cmpp/ylwrap 2015-07-04 10:48:22 +02:00
rlar 8f63725cf0 autogen.sh, include local `m4' directory when invoking `aclocal' 2015-07-04 10:48:10 +02:00
rlar 39fdeb0c9a src/frontend/plotting/gnuplot.c, enforce "noenhanced text" mode
Contrary to older versions gnuplot 5 uses "enhanced text mode" per default.
The strings which we pass to gnuplot don't have "latex" semantics,
  thus consistently enforce "noenhanced text mode".

Add a function quote_gnuplot_string() to escape and quote strings
  in such a way that they will arrive in gnuplot unmodified.
2015-05-17 17:34:29 +02:00
Marcel Hendrix 02fe549be7 src/frontend/plotting/plotit.c, allow "plot xlog ylog" (equiv to "plot loglog") 2015-05-14 15:56:45 +02:00
rlar 93354e7b73 tests/regression/misc/log-functions-1.cir, check log, log10 and ln 2015-05-10 21:47:40 +02:00
rlar 53045dae53 tests/regression/parser/xpressn-1.cir, check log10 2015-05-10 21:47:34 +02:00
rlar b9abea4f88 tests/regression/pz/ac-resistance.cir, check ac resistance (op, ac and pz) 2015-05-10 21:47:18 +02:00
rlar d34ccd7208 tests/regression/model/special-names-1.cir, check "#307 define problems with the Modelname "mname" with Subcircuits" 2015-05-10 21:47:14 +02:00
rlar 1370f37f45 tests/regression/misc/resume-1.cir, regression test, "stop" and "resume" 2015-05-09 21:27:20 +02:00
rlar 5d19c99e94 src/frontend/outitf.c, bug fix, "resume" causing segment violation
introduced in commit
  "noisean, deliver results in V/sqrt(Hz) and A/sqrt(Hz)"

analysisPtr is NULL when beginPlot() is invoked to "resume"
2015-05-09 18:56:01 +02:00
rlar f4472f788e spicelib/parser/inpptree.c, bug fix, "#287 Shared library crashes on using non existing functions "
"remcirc" has the potential to invoke INPfreeTree() with a NULL IFparseTree

Thanks to Craggan, who reported this in:
  http://sourceforge.net/p/ngspice/bugs/287/
2015-05-04 20:17:28 +02:00
rlar 6ff1560487 frontend/cpitf.c, free a temporary vector which was left in `cp_istrue()'
reported by Marcel Hendrix.

Using conditional expressions within a .control sequence
  left some garbage vectors in the current plot.

For example

> let ix = 0
>
> while ix < 2
>   let ix = ix + 1
> end
>
> display

"display" reported a variable named "ix < 2"
which was an internal temporary value in said function `cp_istrue()'
2015-05-02 12:33:45 +02:00
rlar e609c7411d src/frontend/vectors.c, abstraction, introduce `vec_iszero()' 2015-05-02 12:27:35 +02:00
rlar 44425b1d0a fix commit "inpcom.c, comment_out_unused_subckt_models() #4/8, introduce `nlist_find()'"
which broke the search for binned models
2015-05-02 12:20:58 +02:00
rlar cab63eedd4 frontend/com_let.c, bug fix, "#302 Integer in Let Statement"
let 2foo = someexpression

was silently accepted, even though 2foo is an illegal identifier.
  (first letter is a digit)

This was especially irritating, since
  print 2foo
has a legal meaning, 2 femto oO, which is 2e-15
  (whatever Unit an oO might be)

Reported by Justin Fisher in
  http://sourceforge.net/p/ngspice/bugs/302/
2015-05-02 11:18:30 +02:00
rlar 7bc6374138 cleanup, use '\0' instead of 0 in char context 2015-05-02 10:24:54 +02:00
rlar 19e427e3a5 cleanup, use NULL instead of 0 in pointer context 2015-05-02 10:24:49 +02:00
rlar 6513aa5173 spicelib/devices, cleanup, 0 versus NULL in SPICEdev initialization 2015-05-02 10:24:45 +02:00
rlar 6bea757457 frontend/numparam, drop `sfix()' 2015-05-02 10:24:40 +02:00
rlar c3f851750c fix commit "devices/asrc, introduce `ASRCvars' with the indices of the controlling nodes/branches" 2015-04-24 21:45:54 +02:00
rlar 83a5c31e6f fix commit "devices/asrc, allocate `ASRCacValues' in ASRCsetup()" 2015-04-24 21:45:29 +02:00
rlar ab5cd17044 inpcom.c, workaround for "#307 define problems with the Modelname "mname" with Subcircuits"
a diode model named "1smb4148" could not be found
  because it was dropped in `comment_out_unused_subckt_models()'

as a work around the function
  is_a_modelname()
is extended to accept an additional pattern which does match "1smb4148"

Thanks to Martin who submitted the bug report here:
  http://sourceforge.net/p/ngspice/bugs/307/
2015-04-19 17:36:05 +02:00
rlar e4ba6eb602 inpcom.c, comment_out_unused_subckt_models() #8/8, drop `no_of_lines' 2015-04-19 17:07:42 +02:00
rlar 8379de8ddb inpcom.c, comment_out_unused_subckt_models() #7/8, allocation 2015-04-19 17:07:40 +02:00
rlar 341ee45314 inpcom.c, comment_out_unused_subckt_models() #6/8, cleanup 2015-04-19 17:07:10 +02:00
rlar e598da4706 inpcom.c, comment_out_unused_subckt_models() #5/8, introduce `nlist_adjoin()' 2015-04-19 16:58:30 +02:00
rlar 2e7b469cfe inpcom.c, comment_out_unused_subckt_models() #4/8, introduce `nlist_find()' 2015-04-19 16:58:11 +02:00