Commit Graph

4498 Commits

Author SHA1 Message Date
h_vogt 6535558f9e inp.c, plug memory leak 2016-10-15 12:59:13 +02:00
rlar ebbcc2d982 frontend/inpcom.c, inp_expand_macro_in_str(), shrink scope of some locals 2016-10-15 12:59:01 +02:00
rlar 6ee2088e67 frontend/inpcom.c, expand_section_ref(), rename local variables 2016-10-15 12:58:59 +02:00
rlar 00e571dc00 frontend/inpcom.c, declare search_identifier() non static 2016-10-15 12:58:56 +02:00
h_vogt c0d5d054ab gnuplot.c, ft_gnuplot(), suppress generating the .eps and .png file
when the given output file name starts with "np_"
2016-10-15 12:58:29 +02:00
h_vogt 42ac9a2859 gnuplot.c, ft_writesimple(), upgrade command 'wrdata'
- remove a bug to allow printing of vectors with differing scale lengths
- add option 'numdgt' to specify the width of the numbers printed
- add variable wr_singlescale
  use 'set wr_singlescale' to print the scale vector only once
  (vectors need to have equal scale lengths)
- add variable wr_vecnames
  use 'set wr_vecnames' to print the vector names to the first row
2016-10-15 12:57:46 +02:00
h_vogt fef2e1439d gnuplot.c, ft_writesimple(), command 'wrdata', use the given filename literally 2016-10-15 12:43:19 +02:00
h_vogt bbd7edad72 xspice, two new commands, edisplay and eprvcd
'edisplay' will show a list of all event nodes
'eprvcd' will print all event nodes in vcd format

usage: eprvcd a0 a1 a2 b0 b1 b2 clk > myvcd.vcd
2016-08-15 19:24:11 +02:00
h_vogt 71e02fd0a0 com_linarize(), support load'ed vectors
if there is no circuit loaded then command 'linearize'
  will take time data from transient analysis vector.
(tstart, tstop, tstep)
2016-08-15 11:32:01 +02:00
h_vogt 9f62057973 introduce include file "ngspice/randnumb.h" 2016-08-15 11:30:26 +02:00
rlar c4cd2270ed com_history.c, static declaration for 'cp_hprint()' 2016-08-15 11:27:15 +02:00
rlar 6156ebd930 fteext.h, remove prototype for nonexistant 'zigset()' 2016-08-15 11:27:03 +02:00
rlar 78efbcbff8 dctran.c, remove unused variable 'del_before' 2016-08-15 11:27:00 +02:00
h_vogt 33b11f9598 comments improved 2016-08-15 11:26:55 +02:00
h_vogt 27053b877f devices/asrc, remove memory leak 2016-07-30 21:14:29 +02:00
rlar b92b25950e devices/asrc, rewrite asrc_vals, asrc_derivs allocation 2016-07-30 21:10:36 +02:00
rlar 4d79617cf1 spicelib/devcies/*dest.c, rewrite DEVdestroy() functions 2016-07-30 21:10:32 +02:00
rlar d9e0ae3504 parser/glob.c, bug fix, access to already freed memory 2016-07-30 21:04:11 +02:00
rlar a5817192e1 ni/niiter.c, #5/5, whitespace 2016-07-30 21:03:55 +02:00
rlar 266e6da24b ni/niiter.c, #4/5, cleanup 2016-07-30 21:03:49 +02:00
rlar dda415a0e3 ni/niiter.c, #3/5, use `copy()' 2016-07-30 21:03:29 +02:00
rlar 86bb88b546 ni/niiter.c, #2/5, reduce scope 2016-07-30 21:03:19 +02:00
rlar 2978621931 ni/niiter.c, #1/5, cleanup 2016-07-30 21:03:00 +02:00
rlar 3715947529 dctrcurv.c, #7/7, cleanup 2016-07-30 21:02:35 +02:00
rlar 1cdd68f787 dctrcurv.c, #6/7, use the fact 'i' being 0 2016-07-30 21:02:31 +02:00
rlar 9b75fcb9ce dctrcurv.c, #5/7, cleanup while loop 2016-07-30 21:02:26 +02:00
rlar 437bc36a8f dctrcurv.c, #4/7, polish comments 2016-07-30 21:02:21 +02:00
rlar f77485b081 dctrcurv.c, #3/7, express the value of 'i' more verbosely 2016-07-30 21:02:17 +02:00
rlar b43a98e0c9 dctrcurv.c, #2/7, use 'j' here for simplicity 2016-07-30 21:02:12 +02:00
rlar 8baf4f435f dctrcurv.c, #1/7, whitespace cleanup 2016-07-30 21:02:07 +02:00
rlar 5b42d09618 unify, use memcpy for CKTstate copy operations 2016-07-30 21:00:29 +02:00
rlar d298d5cc2f use memset() instead of deprecated bzero() 2016-07-30 20:58:33 +02:00
rlar 141ed61ec8 use memcpy() instead of deprecated bcopy() 2016-07-30 20:58:19 +02:00
h_vogt 9ab2960e87 frontend/measure.c, remove memory leak 2016-07-30 20:56:32 +02:00
h_vogt 4047a794e7 bsim3v3.24: add OMP support
model is still used by commercial (e.g. X-fab) libraries
2016-07-30 20:18:07 +02:00
h_vogt 151fed6084 bsim3v3.24: add model parameter lmlt (Channel length scaling) 2016-07-30 20:18:01 +02:00
h_vogt af53cbb415 bsim4, bug fix (when USE_OMP), uninitialised variable `here->BSIM4_27' 2016-07-30 20:00:11 +02:00
h_vogt f22e8dd970 b4v5dest.c, b4v6dest.c, remove memory leak 2016-07-30 12:19:15 +02:00
h_vogt f997203c6d add OMP support to BSIM4.5 model 2016-07-30 12:19:05 +02:00
h_vogt c74ad9b3ee control.c, remove memory leaks 2016-07-28 21:25:05 +02:00
rlar c0513ed573 inp.c, rewrite inp_savecurrents() 2016-07-26 20:18:33 +02:00
h_vogt 893157b11f inp.c, inp_savecurrents(), remove a memory leak 2016-07-20 20:02:21 +02:00
h_vogt 29cb659235 runcoms2.c, com_remcirc(), remove a memory leak 2016-07-20 20:02:18 +02:00
h_vogt da92a2483e inpcom.c, inp_expand_macro_in_str(), remove a memory leak 2016-07-20 20:02:16 +02:00
rlar 88ee1f9196 com_option.c, com_option(), cleanup, rename variables 2016-07-20 20:02:14 +02:00
h_vogt fa9eb77c0a com_option.c, com_option(), remove a memory leak 2016-07-20 20:02:12 +02:00
h_vogt 3c2c6e8cde vectors.c, vec_get(), remove a memory leak 2016-07-20 20:02:10 +02:00
h_vogt 1ef05dc51b inpcom.c, free_function(), remove a memory leak 2016-07-20 18:09:38 +02:00
h_vogt fca8ab3146 cmath4.c, cx_deriv(), remove a memory leak 2016-07-20 18:09:18 +02:00
rlar 51fa006c63 INPparseNumMod(), #14/14, whitespace cleanup 2016-07-17 18:28:23 +02:00
rlar 0b1c79172c INPparseNumMod(), #13/14, invert 'if' statement 2016-07-17 18:26:48 +02:00
rlar aa5afccf15 INPparseNumMod(), #12/14, use 'info' instead of 'lastType'
to signify having read a cardName
2016-07-17 18:26:41 +02:00
rlar c4d39d66de INPparseNumMod(), #11/14, remove unused 'cardType' 2016-07-17 18:26:27 +02:00
rlar 521fd16c11 INPparseNumMod(), #10/14, don't fall through into the 'default:'
instead, duplicate the code of the 'default:' and break
2016-07-17 18:26:21 +02:00
rlar 6b305744d9 INPparseNumMod(), #9/14, invert the 'if' statement 2016-07-17 18:26:16 +02:00
rlar 1483e2df9a INPparseNumMod(), #8/14, move the 'default:' body out of the 'switch'
this body is inevitable, as there is no other break out of the 'switch'
2016-07-17 18:25:44 +02:00
rlar 1a9bcf6b33 INPparseNumMod(), #7/14, use 'lastType' instead of the identical 'cardType'
there is no further access to cardType
thus can drop the reduntandant assignments to cardType
2016-07-17 18:25:41 +02:00
rlar 110f16b361 INPparseNumMod(), #6/14, again, assign 'lastType' sooner
in the block in-between those two positions
  there is no access to lastType
  there is no 'continue'
  there is no 'break' out of the enclosing switch
thus the assignment is inevitable

there is one position where cardType is modified,
  need to assign to lastType there too to keep it in sync
2016-07-17 18:25:29 +02:00
rlar 18d6679c02 INPparseNumMod(), #5/14, use 'lastType' instead of the identical 'cardType' 2016-07-17 18:25:26 +02:00
rlar 11f3907139 INPparseNumMod(), #4/14, assign 'lastType' sooner
in the block in-between those two positions
  there is no access to lastType or cardType
  there is no 'continue'
  there is no 'break' out of the enclosing 'switch'
thus the assignment is inevitable
2016-07-17 18:25:20 +02:00
rlar 7862a4f59f INPparseNumMod(), #3/14, `continue' the loop instead of
'break'ing out of the `switch'

this is equivalent because the 'switch' is the last statement in the loop body
2016-07-17 18:24:35 +02:00
rlar c1c7b5305e INPparseNumMod(), #2/14, transform the `while' loop into a `for' loop
there was no 'continue' for this loop
there was no 'break' out of this loop
there was no assignment to txtCard, thus txtCard can't be NULL
2016-07-17 18:24:30 +02:00
rlar e824cbd193 INPparseNumMod(), #1/14, return sooner
setting txtCard to 0 and cardType to E_MISSING (which is < 0)
caused the following `if (cardType >= 0)' to be skipped
  and then broke out of the enclosing 'while' loop
in this case, there where no other statements executed
2016-07-17 18:24:20 +02:00
h_vogt 77380219d8 breakp2.c, prevent crash in `save' command if no circuit is loaded 2016-07-17 18:12:53 +02:00
rlar 34f8841805 cpl/cplsetup.c, cleanup 2016-07-17 11:49:42 +02:00
h_vogt 7ea4e99842 numparam/general.h, remove redundant memory management functions 2016-07-17 11:45:22 +02:00
rlar a6f530b95c USE_OMP, cleanup initialisation of local variable `model' 2016-07-17 11:36:47 +02:00
rlar 5b2fa579f1 USE_OMP, rename variables, `good' --> `error'
to express the actual meaning of these variables
2016-07-17 11:35:58 +02:00
rlar fddbb7d9eb USE_OMP, fix type of local variables `idx' and `InstCount' 2016-07-17 11:32:56 +02:00
rlar 994bec7859 declare free() / realloc() arguments `const void *'
to avoid extra casting when freeing `const' strings
2016-07-17 11:19:34 +02:00
h_vogt 6a7895fbc1 frontend/options.c, fix memory leak (pl_name, pl_title, pl_date) 2016-07-17 11:12:24 +02:00
rlar 1c565a1a89 frontend/rawfile.c, raw_write(), fix memory ownership for pl_title and pl_date
avoid assigning cloned strings
  to pl_date/pl_title fields of multiple plots

avoid excess allocation
2016-07-17 11:12:22 +02:00
h_vogt 236b99f2b1 cktdest.c, xspice, set g_mif_info.ckt = NULL
when destroying/remcirc'ing a circuit

to avoid a crash in EVTfindvec()
  which might try to access fields in the destroyed CKTcircuit

( excercise: tran, remcirc, load rawfile, plot something_nonexistant )
2016-07-17 10:57:49 +02:00
h_vogt f66e76fb5f implement option 'xmu' to control trapezoidal integration method
default is 0.5

option xmu=0.49
  can be used to add some damping to reduce trap ringing

set xmu=0.49
  or
.option xmu=0.49
  works as well
2016-07-16 15:21:27 +02:00
Francesco Lannutti ef0dcfe5f2 avoid bison dependency `version >= 2.7' 2016-07-09 20:58:17 +02:00
Francesco Lannutti 99a20162d5 bsimsoi/b4soiset.c, bug fix, don't allocate `B4SOIEbPtr' twice 2016-06-14 19:38:43 +02:00
h_vogt b14e7cb040 sharedspice.c, remove meory leaks 2016-05-28 16:52:50 +02:00
rlar 4c60783e4d xspice, implement EVTdest() to fix xspice memory leaks 2016-05-07 15:50:34 +02:00
rlar af93d79675 ngspice/mifparse.h, ngspice/mifcmdat.t, reduce scope of these include files 2016-05-07 15:44:50 +02:00
rlar 97cc400efb ngspice/evt.h, ngspice/enh.t, reduce scope of these include files 2016-05-07 15:36:43 +02:00
h_vogt efcd8584f1 error.c, ft_sperror(), memory leak, free memory returned by `if_errstring()' 2016-04-03 18:50:28 +02:00
rlar 5611ca4f10 harmonise all incarnations of `if_errstring()' to return malloced memory 2016-04-03 18:44:48 +02:00
h_vogt 50bd157349 parser/inppas3.c, fix memory leak 2016-04-03 11:26:41 +02:00
h_vogt ffee2a6b5f parser/inppas3.c, fix memory ownership
`INPgetTok()' creates `nodename' which is then committed to `INPtermInsert()'
2016-04-03 11:26:40 +02:00
rlar ddf01dbe3f parser/inppas3.c, shrink scope of local variable `name' 2016-04-03 11:26:38 +02:00
rlar cff23b8d38 fix commit "ngspice.h, cm.h, cleanup NAN defines" 2016-04-02 18:01:17 +02:00
rlar d58fd306f3 input.c, inchar(), cleanup 2016-04-01 20:05:37 +02:00
rlar 1aab43dd1a xspice/cmpp/*.l, flex file cleanup and use %option noinput, nounput 2016-04-01 19:36:51 +02:00
h_vogt 9154ab103a inp2dot.c, dot_tran(), fix a memory leak 2016-04-01 19:36:36 +02:00
h_vogt 0443a2690c glob.c, brac1(), fix a memory leak 2016-04-01 18:25:10 +02:00
h_vogt 841f2846fe plotit.c, properly free a reversed wordlist 2016-04-01 18:05:40 +02:00
rlar 5299f8cdb6 ngspice.h, cm.h, cleanup NAN defines 2016-04-01 18:03:38 +02:00
h_vogt 8480898399 frontend/variable.c, remove memory leak 2016-04-01 17:40:17 +02:00
rlar ac726f0cf4 struct variable, #18/18, clean 2016-04-01 17:39:53 +02:00
rlar a6cd5eea45 struct variable, #17/18, clean 2016-04-01 17:39:22 +02:00
rlar af81e6810e struct variable, #16/18, drop intermediate variable 2016-04-01 17:37:27 +02:00
rlar 212121d373 struct variable, #15/18, rewrite in terms of `var_alloc_xxx()' (do-3) 2016-04-01 17:36:57 +02:00
rlar 57f56f53a6 struct variable, #14/18, introduce `var_alloc_xxx()' 2016-04-01 17:34:55 +02:00
rlar bf5acda362 struct variable, #13/18, reorder var_alloc() invocation 2016-04-01 17:34:25 +02:00
rlar eb53b4d703 struct variable, #12/18, rewrite in terms of `var_alloc()' (do-2) 2016-04-01 17:34:03 +02:00
rlar 8691368a81 struct variable, #11/18, introduce `var_alloc()' 2016-04-01 17:32:36 +02:00
rlar 68042b3d1b struct variable, #10/18, rewrite in terms of `var_set_xxx()' (do-1) 2016-04-01 17:32:12 +02:00
rlar bbbd531d8d struct variable, #9/18, introduce `var_set_xxx()' 2016-04-01 17:29:58 +02:00
rlar cc3a124120 struct variable, #8/18, collect struct variable operations 2016-04-01 17:29:36 +02:00
rlar 41b5f17906 struct variable, #7/18, reorder struct variable operations 2016-04-01 17:28:57 +02:00
rlar f4f0ae3f61 struct variable, #6/18, collect struct variable operations 2016-04-01 17:27:29 +02:00
rlar e0ae0bcff1 struct variable, #5/18, reorder struct variable initialisation 2016-04-01 17:26:51 +02:00
rlar b748f2d6d0 struct variable, #4/18, shrink scope of local variables 2016-04-01 17:26:22 +02:00
rlar 830b4f443f struct variable, #3/18, cleanup struct variable field initialisation 2016-04-01 17:25:46 +02:00
rlar 01a0449420 struct variable, #2/18, reorder struct variable field initialisation 2016-04-01 17:24:50 +02:00
rlar cb4c07b7f0 struct variable, #1/18, cleanup for loops 2016-04-01 17:23:14 +02:00
rlar a9aca09320 frontend/ftesopt.c, getFTEstat(), collect struct variable operations 2016-04-01 17:22:13 +02:00
rlar cdf2b69a38 frontend/ftesopt.c, getFTEstat(), prepare for rewrite 2016-04-01 17:22:12 +02:00
rlar 1d15f6bfce fix struct variable initialisation 2016-04-01 17:22:07 +02:00
rlar 698cbe20dd frontend/options.c, fix `cp_enqvar(char *word)', missing `copy()' 2016-04-01 17:22:05 +02:00
rlar 81bf9fb9ba frontend/ftesopt.c, ft_getstat(), cleanup 2016-04-01 17:22:02 +02:00
rlar 371bbf487b frontend/ftesopt.c, getFTEstat(), include struct variable initialisation 2016-04-01 17:22:00 +02:00
rlar 53531da715 frontend/ftesopt.c, getFTEstat(), add `next' to the function arguments 2016-04-01 17:21:59 +02:00
rlar a98dde245c frontend/ftesopt.c, shrink scope of local variables 2016-04-01 17:21:58 +02:00
rlar 413ae5784c frontend/ftesopt.c, ft_getstat(), cleanup for loop variable consing 2016-04-01 17:21:56 +02:00
rlar 44de319c34 frontend/ftesopt.c, getFTEstat(), cleanup signature 2016-04-01 17:21:55 +02:00
rlar a8d96c0d17 frontend/ftesopt.c, getFTEstat(), cleanup signature 2016-04-01 17:21:53 +02:00
h_vogt e60f2f63e1 frontend/cpitf.c, cp_istrue(), cleanup comments 2016-03-26 22:48:49 +01:00
h_vogt f52a12a95a cktsetup.c, invoke `SetAnalyse("Device Setup",...)' only once 2016-03-26 22:24:54 +01:00
h_vogt 494a58cca9 main.c, add variable 'batchmode'
which is set when command line option `-b' is active
2016-03-26 22:14:11 +01:00
h_vogt 8b709a394f cpitf.c, cp_istrue(), avoid surplus Warning Message when an `if' condition expands to nothing
When in expression
  if $var ...
the variable `var' was undefined, then
ngspice printed a surplus warning message
>  Warning: NULL arithmetic expression
in addition to the error message
>  Error: var: no such variable.

ngspice continues to process the conditional construct
  and evaluates the condition as "FALSE"
2016-03-26 21:58:39 +01:00
rlar 059f2b6c0d fix garbage collection of vectors returned by ft_evaluate() 2016-03-26 18:48:50 +01:00
rlar 9652cc46c8 plotting/graf.c, cleanup 2016-03-23 17:04:55 +01:00
h_vogt c332b33d23 parser/lexical.c, #10/10, add some comments 2016-03-22 15:51:58 +01:00
rlar a551f87652 parser/lexical.c, #9/10, use dynamic buffer allocation 2016-03-22 15:51:48 +01:00
rlar 2d480637c9 parser/lexical.c, #8/10, use a struct to store the buffer state 2016-03-22 15:51:36 +01:00
rlar 615b8a4598 parser/lexical.c, #7/10, use `copy_substring()' 2016-03-22 15:51:13 +01:00
rlar 9a7e915a9f parser/lexical.c, #6/10, cleanup 2016-03-22 15:51:04 +01:00
rlar 8f09c35c5a parser/lexical.c, #5/10, change buf/linebuf usage
properly '\0' terminate the buffers where needed
instead of an unspecific bzero() invocation
2016-03-22 15:50:52 +01:00
rlar b7f3dbc0fe parser/lexical.c, #4/10, rename `cw' --> `wlist_tail' 2016-03-22 15:50:48 +01:00
rlar 4cabf8fa6c parser/lexical.c, #3/10, move the `wlist' and `cw' resetting
to the label `nloop'
2016-03-22 15:50:09 +01:00
rlar a0f5111436 parser/lexical.c, #2/10, move the `wlist' and `cw' resetting
nearer to the `goto nloop'
2016-03-22 15:50:03 +01:00
rlar a2af93685f parser/lexical.c, #1/10, this condition is allways true 2016-03-22 15:26:33 +01:00
rlar 521db88eff frontend/rawfile.c, use "stringskip.h" 2016-03-22 15:26:28 +01:00
rlar f3e61b838e frontend/inpcom.c, use "stringskip.h" 2016-03-22 15:26:21 +01:00
rlar 5e04924890 cleanup `skip_ws()' usage 2016-03-22 15:26:11 +01:00
rlar b1d8b99018 skip-ws, #6/6, rename to match inpcom.c 2016-03-22 15:26:10 +01:00
rlar 22875d056b skip-ws, #5/6, use functional style 2016-03-22 15:26:09 +01:00
rlar d12679fccd skip-ws, #4/6, drop `TEMPORARY_SKIP_WS_X0'
use TEMPORARY_SKIP_WS_X1 instead of TEMPORARY_SKIP_WS_X0
2016-03-22 15:26:08 +01:00
rlar a86f2068c8 skip-ws, #3/6, use TEMPORARY macros, obj-invariant 2016-03-22 15:26:06 +01:00
rlar 6d1171ad6f skip-ws, #2/6, introduce "ngspice/stringskip.h"
with some temporary macros to skip whitespace
2016-03-22 15:26:05 +01:00
rlar 1ad65120d5 skip-ws, #1/6, prepare for rewrite, obj-invariant 2016-03-22 15:26:04 +01:00
rlar deeb06b063 inpcom.c, inline and rename the `skip' family, depreciate some of them 2016-03-22 15:26:02 +01:00
rlar 88983b079b numparam/spicenum.c, prevent memory access beyond end of string 2016-03-22 15:25:47 +01:00
rlar 1578348fdf frontend/inp.c, inp_evaluate_temper(), fix memory hole 2016-03-22 15:25:43 +01:00
rlar cc8f84ab84 frontend/inp.c, inp_parse_temper(), bug fix, prevent multiple free'ed memory 2016-03-22 15:25:39 +01:00
rlar c9ee5a4501 frontend/inp.c, inp_parse_temper(), rewrite linked list insertion 2016-03-22 15:25:33 +01:00
rlar f9794431c3 xspice/icm/digital/d_osc/cfunc.mod, swallow a warning 2016-03-22 15:24:53 +01:00
rlar 297c1e90b6 xspice/icm/digital/d_state/cfunc.mod, swallow warnings
current state and next_state are denoted by integers,
  though parsed with a parser written for double values.
2016-03-22 15:24:45 +01:00
rlar 2b0c60dadf xspice/ipc/ipcsockets.c, choke some warnings
Fixme, this code is simply broken,
nobody seems to use it.
One would need to change the socket protocol (message length)
  in agreement with the users of the protocol.

For the time beeing,
  just suffocate the warnings in a way which does not change
  the broken behaviour of this code.
2016-03-22 15:24:41 +01:00
rlar 20aaa3973a frontend/trannoise/wallace.c, avoid warnings
drop unused `s' and `cob'
chage type of `coa', which is used exclusively in `unsigned int' context
2016-03-22 15:24:31 +01:00
rlar 4b5669a51c frontend/resource.c, fix bizarre time mathematics 2016-03-22 15:24:25 +01:00
rlar 36064b624a frontend/resource.c, rename time variables to denote their actual units 2016-03-22 15:24:20 +01:00
rlar 1125b293e3 frontend/resource.c, bug fix, lastusec actually denotes milliseconds 2016-03-22 15:23:53 +01:00
rlar 03630efb8c remove ancient artefact `#ifdef ipsc' 2016-03-22 15:23:46 +01:00
rlar 40a0cea0d2 swap some `SWAP' arguments for readability 2016-03-22 15:23:05 +01:00
rlar bd0bc3038b use `SWAP' macro 2016-03-22 13:04:13 +01:00
rlar b36385e333 improve `SWAP' macro 2016-03-22 13:03:59 +01:00
rlar f84d2d4e44 misc/wlist.c, minor cleanup 2016-03-22 11:22:53 +01:00
rlar 273be42cfd improve `ABORT' macro 2016-03-21 21:22:26 +01:00
rlar 6fe937f931 drop unused `SWAPINT' macro 2016-03-21 21:22:23 +01:00
rlar 6342bec8ec everywhere, drop `MALLOC()' and `REALLOC()' 2016-03-21 21:22:15 +01:00
rlar 4c1c95e20f everywhere, use `TMALLOC()' instead of `alloc()' 2016-03-21 21:22:07 +01:00
h_vogt 7d8e287fa3 enable backquote substitution for Visual Studio console apps 2016-03-09 20:24:37 +01:00
h_vogt 25264b3980 memory.h: hrealloc not used anywhere 2016-03-09 20:24:37 +01:00
rlar d0897fd0c4 src/spicelib/parser/inpptree.c, bug fix, B expression of kind `max(0,expr)'
identified and reported by Marcel Hendrix,
expressions of this kind could trigger a segmentation violation.

PTdifferentiate() roughly evaluates to
  ternary_fcn(ge0(0-expr), 0, PTdifferentate(expr))
and mkb() optimizes
  0 - expr --> unary_minus(expr)

IFeval() invokes PTeval() for the derivative too,
PTeval() looks at the incorrect tree->funcnum
  and tries to PTeval for a second argument which is not there,
     (unary_minus does not have a second argument)
  causing a segmentation fault.
2016-03-09 20:24:37 +01:00
rlar 0932120a7f special cases of the char variants of the <ctype.h> family 2016-03-09 20:24:36 +01:00
rlar 726d0be34c use char variants of the <ctype.h> toxxxx() family 2016-03-09 20:24:36 +01:00
rlar 71a7c3459b use char variants of the <ctype.h> isxxxx() family 2016-03-09 20:24:36 +01:00
rlar d0c5a495ca ngspice.h, cm.h, cmpp.h, introduce char variants of the <ctype.h> family 2016-03-09 20:24:36 +01:00
rlar 07aba2e2ae frontend/variable.c, used `isalnum()' instead of homegrown `isalphanum()' 2016-03-09 20:24:36 +01:00
rlar 7a51ead0a5 frontend/inpcom.c, char argument for `identifier_char()' 2016-03-09 20:24:36 +01:00
rlar ea0cd17974 numparam/xpressn.c, fix a warning 2016-03-09 20:24:36 +01:00
rlar 1a257cd55a frontend/breakp.c, cleanup `dbfree1()' and `dbfree()' 2016-03-09 18:23:23 +01:00
rlar 8ce99a3c66 plotting/graf.c, bug fix, dbfree1() is wanted instead of dbfree() 2016-03-09 18:23:22 +01:00
mhx d97e12b1ab frontend/breakp.c, avoid segfault on/after "delete all" 2016-03-09 18:23:21 +01:00
rlar 6d356f439d autogen.sh, src/Makefile.am, fix a build problem
in autogen.sh:
  libtoolize generates m4/*.m4 files
  autoheader generates config.h.in
    but only when needed

Thus a second autogen.sh invocation generated new .m4 files
  but left config.h.in untouched with old timestamp

The makefiles did recognice this situation and tried to regenerate
  config.h.in and config.h
But the subdir src/include was not the first one in src/Makefile.am
  and thus this update did occure too late,
  causing further rebuilds in the next make invocation.

Avoid this with --force arguments to the autotools,
  and put src/include into the first position.
2016-03-09 18:23:20 +01:00
rlar d59b74471b xspice/icm, fix some warnings 2016-03-09 18:23:18 +01:00
h_vogt 51bc944def xspice/cmpp, compatibility with MS Visual Studio 2016-02-07 17:45:43 +01:00
h_vogt fc83bd099a miscoms.c, mscvars.c, spinit.in, variable 'askquit' instead of 'noaskquit' 2016-02-07 17:37:42 +01:00
h_vogt db0849d076 terminal.c, miscvars.c, variable 'moremode' instead of 'nomoremode', new default
the `more' pager is now disabled by default
2016-02-07 17:37:34 +01:00
h_vogt eef5a058d2 inp.c, disable command `edit' unless `interactive' has been set 2016-02-07 17:36:54 +01:00
h_vogt 888bcce829 spicenum.c, new variable `interactive'
when set enables interactive numparam error handling
2016-02-07 17:34:26 +01:00
h_vogt e6034b0e95 postcoms.c, change command `setplot'
`setplot'
  print a list of plots available
`setplot <plotname>'
  make <plotname> the current plot
`setplot new'
  create a new plot
2016-02-07 17:34:15 +01:00
h_vogt 5527325a67 runcoms.c, change command `setcirc'
`setcirc'
  print a list of circuits loaded
`setcirc <n>'
  switch to circuit number <n>
2016-02-07 17:34:08 +01:00
h_vogt a162ecec9f src/xspice/evt/evtprint.c, bug fix, avoid segfault
print an error message if no circuit has been loaded
2016-02-07 17:33:54 +01:00
h_vogt 9531318d8f src/frontend/commands.c, cleanup 2016-02-07 17:33:45 +01:00
rlar d07b76610b visualc/.gitignore, src/spinit.in, cleanup 2016-02-07 17:33:39 +01:00
h_vogt 85bfaaabef src/xspice/examples/io_types.deck, bug fix, instance name
instance `again' occured twice
2016-02-07 17:33:25 +01:00
rlar da5f86c50b spicelib/analysis/transetp.c, fix typo, `TST0P' -> `TSTOP' 2016-01-22 22:41:32 +01:00
h_vogt 356a262f7f cktdefs.h, some parameter descriptions added 2016-01-22 22:41:30 +01:00
rlar 885e7df8a5 xspice, introduce cm_message_printf() 2016-01-07 16:55:09 +01:00
h_vogt 137f8e9641 com_option.c, mif_inp2.c: remove memory leaks 2016-01-07 16:54:59 +01:00
Krzysztof Blaszkowski 03b47b3e34 src/frontend/outif.c, plotAddRealValue() etc, rallocate more coarsely
reallocate in chunks, instead of once per time step.
2016-01-07 09:05:00 +01:00
rlar 9d32a0a5a9 simplify complex assignments 2015-12-29 18:15:06 +01:00
Krzysztof Blaszkowski 2c63d0f6d3 frontend/outitf.c, #4/4, reorder, first do the work, then print 2015-12-29 14:58:19 +01:00
Krzysztof Blaszkowski e952014016 frontend/outitf.c, #3/4, abstraction, `&run->data[i]' --> `d' 2015-12-29 14:58:04 +01:00
Krzysztof Blaszkowski 7720ae936f frontend/outitf.c, #2/4, avoid repeated access to `run->numData' 2015-12-29 14:57:51 +01:00
Krzysztof Blaszkowski 6fa60faf7e frontend/outitf.c, #1/4, abstraction, introduce `OUTpD_memory()' 2015-12-29 14:57:42 +01:00
rlar df70661c3a dvec abstraction, #11/11, introduce `dvec_realloc()' 2015-12-28 20:34:42 +01:00
rlar c2a7821449 dvec abstraction, #10/11, introduce `dvec_trunc()' 2015-12-28 20:34:42 +01:00
rlar 3962453739 dvec abstraction, #9/11, introduce `dvec_free()' 2015-12-28 20:34:42 +01:00
rlar 8243696338 dvec abstraction, #8/11, upgrade `dvec_alloc()' 2015-12-28 20:34:42 +01:00
rlar fdae9b7c06 dvec abstraction, #7/11, emphasise `v_scale = NULL' initialisation 2015-12-28 20:34:42 +01:00
rlar 1304001739 dvec abstraction, #6/11, emphasise `v_plot = NULL' initialisation 2015-12-28 20:34:42 +01:00
rlar cea2664db0 dvec abstraction, #5/11, emphasise `v_numdims = 0' initialisation 2015-12-28 20:34:42 +01:00
rlar 8a4a37b5bb dvec abstraction, #4/11, emphasise `ZERO(dvec)' initialisation 2015-12-28 20:34:42 +01:00
rlar 908c650f72 dvec abstraction, #3/11, use `dvec_alloc()' 2015-12-28 20:34:42 +01:00
rlar 9d99a06bcd dvec abstraction, #2/11, introduce `dvec_alloc()' 2015-12-28 20:34:42 +01:00
rlar 08ad3f6ab5 dvec abstraction, #1/11, reorder 2015-12-28 20:34:42 +01:00
rlar 3ab568fcba frontend/device.c, com_alter_common(), #4/4 rename and reuse locals 2015-12-28 12:57:30 +01:00
rlar dcef3da677 frontend/device.c, com_alter_common(), #3/4 use `wl_cons()' 2015-12-28 12:57:29 +01:00
rlar 335a47f70a frontend/device.c, com_alter_common(), #2/4 shrink scope of locals 2015-12-28 12:57:28 +01:00
rlar a3e06831fd frontend/device.c, com_alter_common(), #1/4 rewrite for readability 2015-12-28 12:57:27 +01:00
rlar c442994a0a frontend/evaluate.c, apply_func(), reorder 2015-12-27 19:03:22 +01:00
rlar 814c51659e frontend/rawfile.c, raw_read(), reorder 2015-12-27 18:52:52 +01:00
h_vogt 88414a58ce frontend/control.c, bug fix, "#310 Command parser problem with wrdata"
make all commands (see manual 17.5) entered manually,
  with .control section or by script case insensitive.

generally in inpcom.c everything is converted to lowercase,
  but there are exceptions, e.g. "wrdata", which might be
  followed by arguments whose case needs to be preserved.
  (most notably filenames)

Thanks to Mathias Gebhardt, who reported this bug in
  #310 Command parser problem with wrdata
  http://sourceforge.net/p/ngspice/bugs/310/
2015-12-27 15:36:04 +01:00
Krzysztof Blaszkowski 0bfee6575b ngspice/dvec.h, struct member `v_rlength', improve comment 2015-12-27 12:58:52 +01:00
rlar 68bd883535 plotting/graf.c, collect related global variables in a struct 2015-12-27 12:08:48 +01:00
rlar c405d0ff86 plotting/graf.c, cleanup initialisation, `gr_init()' is in charge to do that 2015-12-27 12:08:44 +01:00
rlar 299849c0db plotting/gnuplot.c, ft_gnuplot(), bug fix, allow plotting a family of curves
in the vein of plotcurv.c, ft_graf()
2015-12-27 12:05:55 +01:00
rlar be3c60badd sharedspice.c, add prototype for `getisrcval()' 2015-12-27 12:03:34 +01:00
h_vogt 8ae0b53b9f sharedspice.c, fix `retval' parameter for `pthread_exit()' 2015-12-27 12:03:29 +01:00
rlar 1c1fa6b333 frontend/vectors.c, vec_mkfamily(), #6/6 reorder 2015-12-27 11:42:27 +01:00
rlar a3bf161f89 frontend/vectors.c, vec_mkfamily(), #5/6 fuse those two `for' loops 2015-12-27 11:42:26 +01:00
rlar f86d5c60e4 frontend/vectors.c, vec_mkfamily(), #4/6 drop `j', reuse `i' 2015-12-27 11:42:25 +01:00
rlar e52b85ac6c frontend/vectors.c, vec_mkfamily(), #3/6 earlier initialisation of `count[]' 2015-12-27 11:42:24 +01:00
rlar 83ac9c1d2d frontend/vectors.c, vec_mkfamily(), #2/6 rewrite v_link2 consing 2015-12-27 11:42:23 +01:00
rlar d4558079e3 frontend/vectors.c, vec_mkfamily(), #1/6 bug fix, set v_dims[] properly 2015-12-27 11:42:22 +01:00
rlar 5a678e38dc plotting/plotit.c, xtend(), #7/7 reorder 2015-12-27 11:21:46 +01:00
rlar 64d6a5d7c0 plotting/plotit.c, xtend(), #6/7 drop some local variables 2015-12-27 11:21:45 +01:00
rlar d1a68482a5 plotting/plotit.c, xtend(), #5/7 use `TREALLOC()' 2015-12-27 11:21:44 +01:00
rlar 64b43b0c68 plotting/plotit.c, xtend(), #4/7 support vector of zero length 2015-12-27 11:21:43 +01:00
rlar 7c6fc1343b plotting/plotit.c, xtend(), #3/7 complex assignment 2015-12-27 11:21:42 +01:00
rlar 13e649209c plotting/plotit.c, xtend(), #2/7 fix index `i' 2015-12-27 11:21:41 +01:00
rlar 83fc07e770 plotting/plotit.c, xtend(), #1/7 don't free already freed data 2015-12-27 11:21:40 +01:00
rlar c1b9f746a3 frontend/device.c, com_alter_common(), #10/11 whitespace 2015-12-26 19:00:12 +01:00
rlar 78a0f74bbc frontend/device.c, com_alter_common(), #9/11 useless allocation 2015-12-26 19:00:08 +01:00
rlar f04d6cffc2 frontend/device.c, com_alter_common(), #8/11 reorder 2015-12-26 19:00:04 +01:00
rlar 245ef2bbf1 frontend/device.c, com_alter_common(), #7/11 reorder 2015-12-26 19:00:00 +01:00
rlar 8fb0143043 frontend/device.c, com_alter_common(), #6/11 thats always true, drop `type' 2015-12-26 18:59:56 +01:00
rlar 88fa0bc8d2 frontend/device.c, com_alter_common(), #5/11 cleanup `i' usage 2015-12-26 18:59:52 +01:00
rlar 247767e3bf frontend/device.c, com_alter_common(), #4/11 rewrite while() loop 2015-12-26 18:59:48 +01:00
rlar 80b76ebeb2 frontend/device.c, com_alter_common(), #3/11 rewrite while() loop 2015-12-26 18:59:44 +01:00
rlar c284161949 frontend/device.c, com_alter_common(), #2/11 set `v_type' and `v_flags' too 2015-12-26 18:59:38 +01:00
rlar fd2329c7e9 frontend/device.c, com_alter_common(), #1/11 fix error return 2015-12-26 18:59:27 +01:00
h_vogt a18ac9c474 include/ngspice/cm.h, xspice, introduce NAN for visual studio 2015-12-23 14:04:23 +01:00
rlar 8e50275345 frontend/evaluate.c, apply_func(), reorder 2015-12-23 10:56:12 +01:00
rlar 6709ab900a frontend/outitf.c, plotInit(), reorder 2015-12-23 10:55:06 +01:00
rlar 08feced9b6 frontend/rawfile.c, raw_read(), reorder 2015-12-23 10:46:42 +01:00
rlar da5ebd8645 frontend/evaluate.c, doop(), emphasise `v_type' initialisation 2015-12-23 10:37:44 +01:00
rlar 9e353fbae8 frontend/rawfile.c, raw_read(), emphasise `v_type' initialisation 2015-12-23 10:37:41 +01:00
rlar 7bab434504 frontend/rawfile.c, fixdims(), turn `if' upside-down for readability 2015-12-23 10:33:53 +01:00
rlar 1b62c1f050 plotting/plotit.c, plotit(), `v_length' shall be updated (lpr device, asciiplot) 2015-12-23 10:30:47 +01:00
rlar d632e3314d frontend/parse.c, PP_mknnode(), reorder 2015-12-22 20:45:08 +01:00
rlar 30becb4509 frontend/vectors.c, vec_get(), #2/2 rewrite 2015-12-22 18:24:17 +01:00
rlar d360023e14 frontend/vectors.c, vec_get(), #1/2 drop unused allocation 2015-12-22 18:24:14 +01:00
rlar d37f18d777 misc/string.c, sprinkle some const'ness 2015-12-22 16:47:42 +01:00
rlar 9473ec575f drop some remaining `NEW*' macros, use TMALLOC instead 2015-12-19 19:39:29 +01:00
rlar 9546b178fb drop macro `NEW', use TMALLOC instead 2015-12-19 19:38:55 +01:00
rlar 9fde8e374a txl/txlsetup.c, avoid warning, drop static `GdC' and `RdL' 2015-12-17 21:59:37 +01:00
rlar cd7e77d21f src/frontend/inp.c, avoid warning, drop nested local `wl' 2015-12-17 21:45:18 +01:00
rlar d47f073550 txl/txlsetup.c, cpl/cplsetup.c, avoid warning, rename nested local `x1' 2015-12-17 20:48:59 +01:00
rlar 36aa107c0e src/spicelib/parser/inpptree.c, avoid warning, drop nested local `arg1' ... 2015-12-17 20:40:31 +01:00
rlar 0e0c2785a4 src/spicelib/analysis/dcpss.c, avoid warning, drop a nested local `i' 2015-12-17 20:35:11 +01:00
rlar 1aab57d17e src/spicelib/analysis/cktdisto.c, avoid warning, drop a nested local `size' 2015-12-17 20:31:53 +01:00
rlar 270f508b56 src/frontend/postsc.c, avoid warning, rename local variable `scale' 2015-12-17 19:50:49 +01:00
rlar 053a56e267 src/ciderlib/oned/onesetup.c, bug fix, access beyond array bounds 2015-12-17 18:51:21 +01:00
rlar c94d7153fd fix commit, "src/sharedspice.c, add vfprintf to interface for transferring ..." 2015-12-16 21:14:11 +01:00
h_vogt 1cd8bbf744 frontend/postcoms.c, add variable `width' to command "print line ..." 2015-12-16 20:12:01 +01:00
rlar 876086f768 fix commit "frontend/parse.c, bug fix, PPlex(.."dc1.@m1[vth][1]"..)"
which broke
  let something = foo[var]
notably used in
  examples/Monte_Carlo/MC_ring.sp
2015-12-16 19:17:41 +01:00
h_vogt 0b92d8cfe1 src/sharedspice.c, add vfprintf to interface for transferring messages 2015-12-15 22:16:47 +01:00
rlar 33487b7d68 src/sharedspice.c, add ATTRIBUTE_NORETURN to function `shared_exit()' declaration 2015-12-15 22:05:14 +01:00
rlar 8ec9e1a040 src/xspice/ipc/ipcstdio.c, fix ancient style function definition 2015-12-15 20:39:56 +01:00
h_vogt 23308f7fcf src/Makefile.am, libpsapi not required when linking shared ngspice,
prevents creating dll with actual libtool
2015-12-15 20:27:03 +01:00
rlar 9e237d700e txl/txlsetup.c, cpl/cplsetup.c, rename static variable `ndn' --> `ndn_btree' 2015-12-15 20:19:12 +01:00
rlar f56fae2915 frontend/com_ghelp.c, avoid unused variables 2015-12-15 20:08:31 +01:00
rlar a1439f5d4d plotting/plotit.c, rename local variable `j' --> `y_type' 2015-12-15 19:58:11 +01:00
rlar f97e4a2a35 plotting/plotit.c, cleanup search for common y_type 2015-12-15 19:57:12 +01:00
rlar 18426c755d harmonise `struct circ' variables, `ckt' --> `ci' 2015-12-15 18:36:59 +01:00
rlar f6716af635 frontend/ftesopt.c, rename local variable `ft_curckt' --> `ci'
to avoid compiler warning:
  'ft_curckt' hides global declaration
2015-12-15 18:36:45 +01:00
rlar f826ff82f8 introduce `ATTRIBUTE_NORETURN' for `controlled_exit()' and `sp_shutdown()' 2015-12-15 18:10:18 +01:00
h_vogt 84e31cae82 xspice/icm/digital/d_source/cfunc.mod, bug #301, increase MAX_STRING_SIZE for input file reading
Thats a workaround for a segmentation fault (buffer overrun)
  caused by too long lines in the input file for a xspice "d_source"

Thanks to Siddhant Saraf, who reported this in
  #301 d_source gives wrong error and then SIGSEGV (Address boundary error)
  http://sourceforge.net/p/ngspice/bugs/301/
2015-12-13 12:28:46 +01:00
h_vogt ab05d9df04 numparm/spicenum.c, rename local variable `cp_out' --> `fp'
to avoid a "hides global declaration" compiler warning
2015-12-13 12:24:38 +01:00
h_vogt f7d387005f numparam/spicenum.c, bug #300, exit gracefully upon numparam error (SHARED_MODULE)
Thanks to Sergii Baitala, who reported this in
  #300 Shared ngspice: ngspice hangs on getchar
  http://sourceforge.net/p/ngspice/bugs/300/
2015-12-13 11:46:11 +01:00
h_vogt 806fdfb029 vsrc/vsrcask.c, bug #299, add "nop" handler for VSRC_EXTERNAL in SHARED_MODULE
Avoid NAN error when executing "show all"

Thanks to Sergii Baitala, who reported this in
  #299 Shared ngspice: missed VSRC_EXTERNAL handler in VSRCask
  http://sourceforge.net/p/ngspice/bugs/299/
2015-12-13 11:46:09 +01:00
dwarning 7fb8368133 favor exponential temperatur equation if all parameters tc1, tc2 and tce are given 2015-11-22 10:43:42 +01:00
h_vogt df846346a1 visualc, cope with `bool' and `isnan()' in visual studio 2015
now they have isnan(),
  (presumably in math.h)

now they have a C99 `bool',
  (maybe even though not asked for with <stdbool.h>)
2015-11-15 15:09:27 +01:00
rlar 917ae030c9 src/sharedspice.c, fix #include style 2015-11-15 15:09:26 +01:00
rlar f33d9953b3 frontend/define.c, cleanup `ft_substdef()' 2015-11-13 20:17:18 +01:00
rlar 8f69a04833 frontend/define.c, cleanup `numargs()' 2015-11-13 20:17:17 +01:00
rlar 22d5a7124a frontend/define.c, abstraction, introduce `numargs()' 2015-11-13 20:17:16 +01:00
rlar 37979de65a frontend/define.c, trcopy(), rename `nn' --> `args' 2015-11-13 20:17:16 +01:00
rlar e99ba7478b frontend/define.c, trcopy(), rename `args' --> `arg_names' 2015-11-13 20:17:15 +01:00
rlar bc44be41ad frontend/define.c, ft_substdef(), rename `s' --> `arg_names' 2015-11-13 20:17:14 +01:00
rlar 045de93d3b frontend/define.c, cleanup `prtree1()' 2015-11-13 20:17:13 +01:00
rlar 83938330eb frontend/define.c, cleanup `prdefs()' 2015-11-13 20:17:13 +01:00
rlar e7c7e7052b frontend/define.c, cleanup `prtree()' 2015-11-13 20:17:12 +01:00
rlar 15f0f5f22f frontend/define.c, com_undefine(), rename `ludf' --> `prev_udf' 2015-11-13 20:17:11 +01:00
rlar 3be8335224 frontend/define.c, abstraction, use `strchr()' 2015-11-13 19:51:50 +01:00
rlar 501c0238d7 frontend/define.c, cleanup 2015-11-13 19:50:56 +01:00
rlar 29dde7206a frontend/parse.c, introduce `alloc_pnode()' 2015-11-12 18:32:39 +01:00
rlar 381a690cd8 frontend/define.c, ntharg(), bug fix, fix check for end of PT_OP_COMMA args list
ancient bug, yet not much of a consequence because there was already
  another check for correct arity of a function application.
("define"'ed function in the .control section)
2015-11-10 19:44:54 +01:00
rlar 5706fbd890 parser/inpptree-parser.y, bug fix, allow unary `+'
reported by Andy Fierman on the ngspice-users mailing list in message
  "Help to identify 'parameter value out of range or the wrong type' error please?"
2015-11-07 21:02:21 +01:00
rlar 97c1ec733a frontend/define.c, ntharg(), #15/15 whitespace and indentation 2015-11-07 20:26:54 +01:00
rlar a7f776872b frontend/define.c, ntharg(), #14/15 rewrite for(;;) loop 2015-11-07 20:26:45 +01:00
rlar 101b5ada81 frontend/define.c, ntharg(), #13/15 delay `num--' a bit 2015-11-07 20:26:36 +01:00
rlar 06b6237199 frontend/define.c, ntharg(), #12/15 delay `num--' a bit 2015-11-07 20:26:28 +01:00
rlar bd40bbd437 frontend/define.c, ntharg(), #11/15 `args' can't be NULL here 2015-11-07 20:26:18 +01:00
rlar cd0941367a frontend/define.c, ntharg(), #10/15 can move this up 2015-11-07 20:26:09 +01:00
rlar 3b6b71f680 frontend/define.c, ntharg(), #9/15 can move this up 2015-11-07 20:25:47 +01:00
rlar bc793fbf27 frontend/define.c, ntharg(), #8/15 this `if' condition can't be true 2015-11-07 20:25:27 +01:00
rlar e93327fdb7 frontend/define.c, ntharg(), #7/15 substitute tail of ntharg() for `break' 2015-11-07 20:25:20 +01:00
rlar e98bfc720f frontend/define.c, ntharg(), #6/15 rewrite while() --> for(;;) 2015-11-07 20:25:12 +01:00
rlar 67301b25fe frontend/define.c, ntharg(), #5/15 make use of `fact: num >= 1' 2015-11-07 20:25:04 +01:00
rlar f538b4dba3 frontend/define.c, ntharg(), #4/15 express some facts 2015-11-07 20:24:56 +01:00
rlar 71908ef194 frontend/define.c, ntharg(), #3/15 drop redundant `if', already guarded by `while' 2015-11-07 20:24:48 +01:00
rlar 8ac0329bd9 frontend/define.c, ntharg(), #2/15 minor cleanup 2015-11-07 20:24:39 +01:00
rlar f91f8c2a09 frontend/define.c, ntharg(), #1/15 drop `struct pnode *ptry', use `args' instead 2015-11-07 20:24:26 +01:00
rlar 600d289000 frontend/define.c, ntharg(), avoid segfault when out of `args'
return NULL instead
2015-11-07 20:15:53 +01:00
rlar b137930330 xpressn.c, formula(), #6/6 simplify 2015-11-07 19:11:54 +01:00
rlar a805fe6b56 xpressn.c, formula(), #5/6 whitespace and indentation 2015-11-07 19:10:25 +01:00
rlar 577352e6bb xpressn.c, formula(), #4/6 move around 2015-11-07 19:09:44 +01:00
rlar b156921ea0 xpressn.c, formula(), #3/6 refactor fetchid(), pass substring, include `upcase()' 2015-11-07 19:08:40 +01:00
rlar 1d9592c591 xpressn.c, formula(), #2/6 move dstring buildup out of `fetchid()' 2015-11-07 19:08:23 +01:00
rlar d6ce788539 xpressn.c, formula(), #1/6 upside-down an `if..else..' 2015-11-07 18:59:07 +01:00
rlar b447f26703 `E..table {expr} {pairs}', `G..', allow an optional `=' after `table' 2015-11-07 17:52:19 +01:00
rlar 7479e48f7a `E..value=', `G..value=', allow `=' being optional 2015-11-07 17:49:06 +01:00
rlar 28c0c96bbc devices/res, introduce TCE, exponential temperature coefficient 2015-11-02 19:25:43 +01:00
rlar 45117c94fd drop yyparse() prototypes, require bison >= 2.7 which emits them 2015-10-18 00:46:13 +02:00
rlar 76aedfae40 numparam/xpressn.c, cleanup `getidtype()' 2015-10-11 14:21:04 +02:00
rlar 813024678d numparam/xpressn.c, cleanup `fetchnumentry()' 2015-10-11 14:02:45 +02:00
rlar c9e8c7651f numparam/xpressn.c, cleanup `keyword()' 2015-10-11 11:56:35 +02:00
rlar 0390736faa xpressn.c, fetchid(), #15/15 cleanup 2015-10-10 20:20:45 +02:00
rlar ba9c7f060b xpressn.c, fetchid(), #14/15 rewrite 2015-10-10 20:20:45 +02:00
rlar ff74222538 xpressn.c, fetchid(), #13/15 local scope 2015-10-10 20:20:45 +02:00
rlar 9041bf93ca xpressn.c, fetchid(), #12/15 use fact 2015-10-10 20:20:45 +02:00
rlar c8020f4811 xpressn.c, fetchid(), #11/15 reorder 2015-10-10 20:20:44 +02:00
rlar 880b41bb7f xpressn.c, fetchid(), #10/15 rewrite 2015-10-10 20:20:44 +02:00
rlar 16b53e3784 xpressn.c, fetchid(), #9/15 reorder 2015-10-10 20:20:44 +02:00
rlar 3fea077ebe xpressn.c, fetchid(), #8/15 rewrite 2015-10-10 20:20:44 +02:00
rlar aa87d90ba9 xpressn.c, fetchid(), #7/15 use fact 2015-10-10 20:20:44 +02:00
rlar 9a69f79feb xpressn.c, fetchid(), #6/15 use fact 2015-10-10 20:20:44 +02:00
rlar 16496f8ff7 xpressn.c, fetchid(), #5/15 express some facts 2015-10-10 20:20:44 +02:00
rlar cc68d8fadb xpressn.c, fetchid(), #4/15 use fact 2015-10-10 20:20:44 +02:00
rlar e8fa81e382 xpressn.c, fetchid(), #3/15 express some facts 2015-10-10 20:20:44 +02:00
rlar 7142e0e1fc xpressn.c, fetchid(), #2/15 rename `iptr' --> `s' 2015-10-10 20:20:44 +02:00
rlar af0ba9bed5 xpressn.c, fetchid(), #1/15 swap arguments 2015-10-10 20:20:44 +02:00
rlar 0178dcd5f3 remove bison generated files from the repository
Their presence breaks automake rules when running
  in a separate build directory.
And when regenerated cause unwanted "changed files"
  in the repository.

As a consequence visual C compilation will fail.
It will still work with a "make dist" generated tar ball.
We need to upgrade the visual C project files
  to invoke bison and flex on windows,
or we have to provide these generated files
  in a visual C specific directory. (very annoying of course)
2015-10-10 20:14:50 +02:00
rlar 2f061b441e Makefile.am, fix dependency rules for bison generated files
which have been lost in commit
> Date:   Sun Jul 5 19:34:25 2015 +0200
>
>     polish bison/flex makefile rules
2015-10-10 20:04:27 +02:00
rlar a0a5e0f9c2 inpptree-parser.y, fix type of function `PTparse()' 2015-10-10 10:40:42 +02:00
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 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 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 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 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
rlar d8807c00c4 inpcom.c, comment_out_unused_subckt_models() #3/8, drop ´tmp_cnt', `new_names[]' 2015-04-19 16:57:30 +02:00
rlar 5ec24f4ed0 inpcom.c, comment_out_unused_subckt_models() #2/8, cleanup 2015-04-19 16:56:18 +02:00
rlar d2e138c592 inpcom.c, comment_out_unused_subckt_models() #1/8, use a struct to collect data 2015-04-19 16:54:51 +02:00
rlar 84a945ca45 inpcom.c, comment_out_unused_subckt_models(), reduce scope of local variables 2015-04-18 22:03:19 +02:00
rlar a8d90775ca inpcom.c, get_subckts_for_subckt(), reduce scope of local variables 2015-04-18 21:56:07 +02:00
rlar e2dabb2e75 inpcom.c, introduce `is_a_modelname()' to encapsulate highly dubious code 2015-04-18 12:50:19 +02:00
Marcel Hendrix f9432cb3da frontend/com_measure2.c, bug fix for "meas AVG"
meas "AVG" did merely the average of the given values,
  without consideration of their spacing on the "scale" axis.

now use trapezoidal summing to calculate the AVG

note, there is "meas INTEG"
  which goes beyond trapezoidal summing
2015-04-16 21:20:20 +02:00
rlar 8be0829b9b frontend/breakp.c, bug fix, "#306 Deleting breakpoint causes Internal Error in status"
The "delete" command destroyed the whole list of stored breakpoints
  instead of just the specified one.

Thanks to "jpcgt", who reported this in
  "#306 Deleting breakpoint causes Internal Error in status"
  http://sourceforge.net/p/ngspice/bugs/306/
2015-04-16 19:58:58 +02:00
rlar 0b4bcf31f4 devices/res, bug fix, extend ac-resistance to the pz analysis 2015-04-15 19:52:36 +02:00
rlar b6b76ad035 devices/asrc, introduce `ASRCvars' with the indices of the controlling nodes/branches 2015-04-12 21:36:22 +02:00
rlar b4f1c1dda3 devices/asrc, allocate `ASRCacValues' in ASRCsetup() 2015-04-12 21:34:16 +02:00
rlar 232debc6ec drop `NEWN', use `TMALLOC' 2015-04-12 20:10:07 +02:00
rlar ad869c6d2d devices/asrc, rewrite #10/10, emphasise matrix for the two cases VSRC vs ISRC 2015-04-12 18:23:22 +02:00
rlar 66a0da8ab9 devices/asrc, rewrite #9/10, combine common code 2015-04-12 18:22:06 +02:00
rlar 704e50b62a devices/asrc, rewrite #8/10, cleanup and reorder 2015-04-12 18:18:20 +02:00
rlar 3a1c094682 devices/asrc, rewrite #7/10, allocate in one go 2015-04-12 18:18:14 +02:00
rlar b3860ac599 devices/asrc, rewrite #6/10, check for errors right at the beginning 2015-04-12 18:17:52 +02:00
rlar 1c53a425f0 devices/asrc, rewrite #5/10, combine common code 2015-04-12 18:17:46 +02:00
rlar 6ea1e1932d devices/asrc, rewrite #4/10, drop `ASRCcont_br' 2015-04-12 18:11:41 +02:00
rlar ce49a4977d devices/asrc, rewrite #3/10, combine TSTALLOC and MY_TSTALLOC 2015-04-12 18:11:38 +02:00
rlar e902ebd34d devices/asrc, rewrite #2/10, simplify incremental memory allocation 2015-04-12 18:11:33 +02:00
rlar e13e1690d2 devices/asrc, rewrite #1/10, add a return (E_BADPARM) 2015-04-12 18:11:29 +02:00
rlar 7afb450e66 devices/asrc, cleanup #9/9, polish local variables 2015-04-11 21:31:02 +02:00
rlar 21ff522441 devices/asrc, cleanup #8/9, cleanup parentheses and braces 2015-04-11 21:31:02 +02:00
rlar 39a25ba114 devices/asrc, cleanup #7/9, use '[]' to access array elements 2015-04-11 21:31:02 +02:00
rlar 036a45f348 devices/asrc, cleanup #6/9, cleanup 2015-04-11 21:31:02 +02:00
rlar bd5ac3e4fc devices/asrc, cleanup #5/9, drop explicit NULL comparsion 2015-04-11 21:31:02 +02:00
rlar b91386222e devices/asrc, cleanup #4/9, unify model cast 2015-04-11 21:31:01 +02:00
rlar 03ef81785a devices/asrc, cleanup #3/9, polish comments 2015-04-11 21:31:01 +02:00
rlar 2cb727476f devices/asrc, cleanup #2/9, whitespace 2015-04-11 21:31:01 +02:00
rlar df147cd8b8 devices/asrc, cleanup #1/9, invert `if' 2015-04-11 21:31:01 +02:00
rlar bfe9df8511 devices/ind.c, bug fix, use 'm' in pz analysis 2015-04-07 20:43:43 +02:00
rlar 685d684c88 devices/ind: bug fix, multiplier `m'
multiplier `m' was applied twice,
  because it was already implemented in indtemp.c before this commit :

> Date:   Thu May 9 10:28:38 2013 +0200
>
>     devices/ind: implement multiplier `m'
2015-04-06 21:19:44 +02:00
dwarning 7c5f3173e2 hisimhv2: fix naming problems by MS linker 2015-03-29 11:43:30 +02:00
rlar 5ac7858a79 rewrite, use tprintf 2015-03-28 20:10:29 +01:00
rlar 6b5bbb71d0 rawfile.c, bug fix, missing memory allocation and a memory leak 2015-03-28 19:51:50 +01:00
rlar be283109dc numconst.h, fix pi 2015-03-28 12:57:03 +01:00
rlar 4b7092633c hisimhv1, remove unused variables 2015-03-28 12:15:18 +01:00
rlar 5042ffc5cc hisimhv1, remove excess casts 2015-03-28 12:15:17 +01:00
rlar 7464d4423a hisimhv1, drop of non __STDC__ code 2015-03-28 12:15:16 +01:00
rlar 90d0bb3d2d hisimhv1, append `;' when using `BINNING' to be auto indentation friendly 2015-03-28 12:15:15 +01:00
rlar c5a3788f6b hisimhv2, TMFx, globals need to be static or need an own namespace
Fixme, actually these should have block local scope.
  (local in the blocks of the macros where these variables are actually used)
Thats safer, much easier to understand, at least as fast,
  and won't defeat parallelisation.
2015-03-28 12:15:11 +01:00
rlar 6ac641e906 hisimhv2, remove excess casts 2015-03-28 11:26:12 +01:00
rlar 970299bdc2 hisimhv2, drop of non __STDC__ code 2015-03-28 11:26:11 +01:00
rlar 0ef07aad20 hisimhv2, append `;' when using `BINNING' and `TSTALLOC' to be auto indentation friendly 2015-03-28 11:26:11 +01:00
rlar 6ad8b96dbb hisimhv2, apply "mark end of struct GENmodel overlay" 2015-03-28 11:26:11 +01:00
rlar 1f5b0f852b hisimhv2, apply commit "use TMALLOC, funcall, and NULL casts" 2015-03-28 11:26:11 +01:00
rlar 53555ac8c6 hisimhv2, extend rename from hisimhv --> hsimhv2 2015-03-28 11:26:11 +01:00
rlar 87a9c67a8f hisim2, remove excess casts 2015-03-27 17:53:36 +01:00
rlar efd8a0dce8 hisim2, append `;' when using `BINNING' to be auto indentation friendly 2015-03-27 17:52:05 +01:00
rlar 495988608a hisim2, apply commit "use TMALLOC, funcall, and NULL casts" 2015-03-27 16:45:48 +01:00
dwarning 26937f8dfb hisimhv1: less verbosity, remove useless printout 2015-03-26 10:30:57 +01:00
dwarning eb99465713 hisimhv1: prevent a nonsens range check for model parameter qme2 2015-03-26 10:21:37 +01:00
dwarning 6dbe8e618d correct node assignment for hisimhv 2015-03-26 10:08:09 +01:00
rlar 00ed1122b7 hisim2, reintroduce "rewrite, useing IFerrorf()" 2015-03-25 18:49:44 +01:00
rlar a87bf334b8 hisim2, reintroduce "rewrite `TSTALLOC()' macro for auto indentation" 2015-03-25 18:49:43 +01:00
rlar 9141e86926 hisim2, reintroduce "mark end of struct GENmodel overlay" 2015-03-25 18:49:43 +01:00
rlar 48ff3df6eb hisim2, reintroduce "hsm2eval.c, avoid static variables to allow multithreading" 2015-03-25 18:49:43 +01:00
dwarning 2b71713498 get the hisimhv v2 device info 2015-03-25 15:34:34 +01:00
dwarning 9ed2da9ad9 new hisimhv model version 2.2.0 in a separate directory 2015-03-25 15:17:16 +01:00
dwarning adcec9fa5f Revert "update hisimhv model to version 2.2.0"
This reverts commit c2ef7aeff3.
2015-03-25 14:13:07 +01:00
dwarning db52073f5d cpitf.c: bugfix #304 reported by Dave Clarc, correct base of natural logarithm 2015-03-25 07:01:26 +01:00
dwarning c2ef7aeff3 update hisimhv model to version 2.2.0 2015-03-25 06:47:32 +01:00
dwarning 339e7fe819 update hisim model to version 2.8.0 2015-03-23 21:47:00 +01:00
rlar 7d92eae124 noisean, introduce a .control variable "sqrnoise" to deliver noise data in squared representation
use "set srqrnoise" (and "unset sqrnoise") to control this.
2015-03-23 19:32:33 +01:00
rlar 8d6726f0f4 noisean, deliver results in V/sqrt(Hz) and A/sqrt(Hz) 2015-03-22 21:44:50 +01:00
rlar e755b45281 fix commit "noise analysis, bug fix, override ac magnitude of all vsrc/isrc devices" 2015-03-22 20:22:01 +01:00
rlar 64da5a99bf src/frontend/com_measure2.c, cleanup, rewrite `correct_vec()' 2015-03-22 19:16:36 +01:00
rlar 27aae75ade src/frontend/com_measure2.c, bug fix, typo when setting `m_vectype2'
this doesn't change anything, because m_vectype2 is nowhere used.
2015-03-22 19:15:44 +01:00
rlar c16701b66c swallow compiler warning caused by "noise analysis, bug fix, override ac magnitude of all vsrc/isrc devices" 2015-03-22 18:25:17 +01:00
rlar 76a48c161d src/frontend/outif.c, introduce guess_type() for common code in plotInit() and fileInit_pass2() 2015-03-22 12:30:45 +01:00
rlar 54c0f47dde src/frontend/outif.c, fileInit_pass2(), add inoise/onoise types
which were missing in commit:
> Date:   Fri Mar 18 20:15:10 2011 +0000
>     bug no. 3214252 fixed
2015-03-22 11:12:59 +01:00
rlar bcda90e258 src/frontend, cleanup, drop `GENcircuit' 2015-03-21 13:56:57 +01:00
rlar b69e61d010 src/frontend/device.c, cleanup usage of `IFparm.dataType' 2015-03-21 13:52:55 +01:00
rlar 426f567287 spiceif.c, parmlookup(), allow more than one `IF_REDUNDANT' parameter alias 2015-03-18 17:52:52 +01:00
dwarning dd24406234 allow alternativ model parameter tref for vbic models 2015-03-16 17:21:42 +01:00
dwarning c44f101c49 extend bsim4 instance parameter with mulu0 for local mobility multiplier 2015-03-16 16:08:59 +01:00
dwarning 4402897a07 allow alternate instance parameter name delvt0 for bsim4 models 2015-03-16 15:27:42 +01:00
dwarning 759ec4a3d0 allow r=value as an alternative instance parameter 2015-03-15 10:38:06 +01:00
dwarning 88ef78e53b introduce geometry and frequency dependency for the flicker noise model 2015-03-15 10:16:16 +01:00
dwarning 82b0bc070f sorting parameter for resistor setup and temperature update routines 2015-03-14 00:29:55 +01:00
dwarning 95f45e2ee6 allow redundant instance parameter noise for compatibility reasons 2015-03-13 22:04:01 +01:00
rlar 62d2f5d5f4 use `enum simulation_types' 2015-03-10 21:34:24 +01:00
rlar d98c5c90f3 src/maths/cmaths/cmath4.c, bug fix, cx_fft, cx_ifft, cx_derive
incorrect check for VF_COMPLEX in field v_type instead of v_flags
2015-03-10 20:09:20 +01:00
rlar 6f21c3b9db use `enum simulation_types' 2015-03-10 18:27:39 +01:00
rlar 07ee771a96 noise analysis, bug fix, override ac magnitude of all vsrc/isrc devices
Bug report due to Hartmut Henkel in
>> [Ngspice-users] Noise analysis depends on ac parameter

The noise analysis internally depends on an ac analysis
  to derive "inoise" from "onoise"
("onoise" is multiplied with the inverse ac gain from input to output)

This AC analysis used all the given ac magnitudes for all vsrc/isrc
  devices in the deck.

This fix overrides all ac magnitudes with zero,
  except for the given input device,
  whose magnitude is set to one.
2015-03-09 20:02:36 +01:00
rlar b3b543c1c7 typesdef.c, rewrite 2015-03-08 21:04:59 +01:00
rlar 95d2166946 typesdef.c, bug fix, incorrect `notypes', `capacitance' and `charge' doomed
introduced in
Date:   Wed Oct 3 15:01:36 2012 +0200
    outif.c, typesdef.c, sim.h: correct labeling of cap, cur, and charge data
2015-03-08 20:39:02 +01:00
rlar 73d581f9a6 graph.h, struct graph, remove unused elements 2015-03-08 19:38:33 +01:00
rlar 2b3220086d graph.h, grid.c, enforce consistent string buffer size (plot "units", LABEL_CHARS) 2015-03-08 19:36:46 +01:00
dwarning 032b1c32c4 separate diode bottom and sidewall contributions for depletion capacitance 2015-03-08 17:54:49 +01:00
dwarning ea4c438311 Limiting the junction potential to a usual values for silicon diodes 2015-03-08 17:54:30 +01:00
dwarning c30373e37e correct formula for temperature dependent depletion capacitance (tlevc=1) 2015-03-04 06:54:34 +01:00
rlar a21770aab9 parser/inpgtok.c, remove unused function `INPgetU2Tok()'
INPgetU2Tok() was introduced in commit
Date:   Fri Sep 3 12:51:42 2010 +0000
    bug in B source parsing removed

and later unused in commit
Date:   Thu Apr 28 19:27:45 2011 +0000
    bug fix, (#329233)
2015-02-28 20:43:25 +01:00
rlar 1b7f3a9f2c parser/inpeval.c, this cannot happen here 2015-02-28 19:41:31 +01:00
rlar 548a1045a4 parser/inpeval.c, simplify mil/meg/milli processing 2015-02-28 19:22:01 +01:00
rlar c018b328b9 parser/inpeval.c, whitespace cleanup 2015-02-28 19:03:41 +01:00
rlar 4555107013 parser/inpeval.c, use '\0' 2015-02-28 19:03:39 +01:00
rlar a2b5288a3d parser/inpeval.c, bug fix, allow at most one sign char when parsing a number 2015-02-28 19:03:37 +01:00
rlar 12e8ee750b parser/inpeval.c, bug fix, incorrect restore of `*line' 2015-02-28 19:03:32 +01:00
rlar 2cbc84ccd1 parser/inpgtok.c, use copy_substring() 2015-02-28 11:05:46 +01:00
rlar 39d391fe33 parser/inpgtok.c, whitespace cleanup 2015-02-28 11:05:43 +01:00
rlar 4ae35e8974 parser/inpgtok.c, bug fix, introduced in "memory leaks: code improved"
commit "memory leaks: code improved"
Date:   Sun Apr 5 08:57:55 2009 +0000

'point' has not been incremented for so called
   "Weird items" with string length == 1
2015-02-28 11:05:23 +01:00
rlar 3c133c95b3 update bison generated files 2015-02-21 15:08:06 +01:00
rlar 788a5e5fa0 inpptree parser, bug fix, segfault due to usage of an unknown function
for example:
B1  1 0  V = {log(2.0, 1.3) + nosuchthing(2.0, 1.3)}
2015-02-21 15:08:04 +01:00
rlar 8e65614d31 spfactor.c, cktnames.c, don't crash when simulating "nothing"
reported by Siddhant Saraf in
> [ngspice:discussion] "out of memory" error : simulating a 2bit AND gate"

This comes in two flavours,
   1) an empty circuit
   2) a xspice circuit with exclusively xspice event nodes
2015-02-08 22:07:14 +01:00
rlar 8d44da4741 sharedspice.c, disable unused code 2015-01-22 17:50:16 +01:00
rlar ae62187d06 sharedspice.c, bug fix, #298 Wrong define in sharedspice.c
thanks to "Sergii" who reported this here:
http://sourceforge.net/p/ngspice/bugs/298

This bug did not have any effect
2015-01-22 17:49:47 +01:00
rlar ccc4c60d81 src/frontend/variable.c, swallow "warning: conversion to 'int' from 'size_t' may change the sign of the result" 2015-01-04 20:37:16 +01:00
rlar 7b0275ebf7 string.c, swallow "warning: value computed is not used" 2015-01-04 20:31:45 +01:00
rlar e57b8b5426 main.c, volatile, make shure they are up to date in memory when LONGJMP is executed 2015-01-04 16:06:15 +01:00
rlar f8df1a7b2f src/main.c, whitespace cleanup 2015-01-03 21:50:19 +01:00
rlar 8369732e7b src/main.c, cleanup 2015-01-03 21:50:18 +01:00
rlar 42d0e42e0d src/main.c, prompt(), rewrite 2015-01-03 21:17:18 +01:00
rlar 15a04192da src/main.c, prompt(), fix incorrect backslash expansion in promptstrings 2015-01-03 20:56:47 +01:00
rlar a65a028067 src/main.c, prompt(), drop ancient workaround for editline v2.9
thats dead now for some years.
2015-01-03 20:56:45 +01:00
rlar 6aff8d5418 src/main.c, rewrite to be autoindent friendly 2015-01-03 20:56:42 +01:00
rlar 86c61c1909 src/main.c, nutmeg, cleanup `ft_loadfile()' invocation
drop non functional code which might originally have been meant
  to read a default `ft_rawfile' when no other file
  was given on the command line.

this would be disturbing behaviour anyway,
  since it would be impossible to start
  nutmeg interactively without any file.
2015-01-03 16:37:43 +01:00
rlar a820d11451 inpcom.c, inp_remove_ws(), allow netsted braces `{}' 2014-12-31 16:58:25 +01:00
rlar 9ee7888033 inpcom.c, inp_remove_ws(), copy() only when necessary 2014-12-31 16:58:24 +01:00
rlar 3fd1f56a10 inpcom.c, inp_remove_ws(), fix processing after skipped whitespace 2014-12-31 16:58:20 +01:00
rlar d623763e58 inpcom.c, cleanup inp_remove_ws(), reorder loop, reveal obscure behaviour 2014-12-31 16:52:41 +01:00
rlar bd055c1a98 inpcom.c, cleanup inp_remove_ws(), #4/4, minor 2014-12-31 16:33:45 +01:00
rlar e25620f117 inpcom.c, cleanup inp_remove_ws(), #3/4, common code in if-then-else 2014-12-31 16:33:21 +01:00
rlar d1260f4e4d inpcom.c, cleanup inp_remove_ws(), #2/4, dup some code down into if-then-else 2014-12-31 15:59:51 +01:00
rlar 91658bc856 inpcom.c, cleanup inp_remove_ws(), #1/4, thats inevitably true 2014-12-31 15:59:28 +01:00
rlar 82a5c1c48a inpcom.c, inp_remove_ws(), avoid appending a surplus '\0' 2014-12-31 15:49:57 +01:00
rlar 07ba16192e inpcom.c, cleanup inp_remove_ws(), #5/5, introduce `d' instead of `big_buffer_index' 2014-12-31 15:12:40 +01:00
rlar f1fcc943f9 inpcom.c, cleanup inp_remove_ws(), #4/5, minor 2014-12-31 15:12:22 +01:00
rlar e290e55f31 inpcom.c, cleanup inp_remove_ws(), #3/5, drop `curr', use `s' instead 2014-12-31 15:12:06 +01:00
rlar 0081ec9b51 inpcom.c, cleanup inp_remove_ws(), #2/5, highlight `s' beeing almost unused 2014-12-31 15:11:46 +01:00
rlar 179d55547c inpcom.c, cleanup inp_remove_ws(), #1/5, highlight `s' beeing const 2014-12-31 15:11:05 +01:00
rlar 9b1f248c52 inpcom.c, inp_remove_ws(), #7/7, invert 'if' expression 2014-12-28 20:07:20 +01:00
rlar d2371be535 inpcom.c, inp_remove_ws(), #6/7, reorder condition, highlight similiarity 2014-12-28 20:06:12 +01:00
rlar cf6582ea8c inpcom.c, inp_remove_ws(), #5/7, simplify condition 2014-12-28 20:05:41 +01:00
rlar 2c200ae453 inpcom.c, inp_remove_ws(), #4/7, simplify condition 2014-12-28 20:04:59 +01:00
rlar 0e74b5be15 inpcom.c, inp_remove_ws(), #3/7, combine `if' expressions 2014-12-28 20:04:19 +01:00
rlar 70c9350359 inpcom.c, inp_remove_ws(), #2/7, combine `if' expressions 2014-12-28 20:03:27 +01:00
rlar 51914a4088 inpcom.c, inp_remove_ws(), #1/7, split if-then-else 2014-12-28 20:02:27 +01:00
rlar 718c85a545 inpcom.c, inp_remove_ws(), don't insert whitespace at end of line 2014-12-28 20:01:44 +01:00
Thomas Uhle 2851e650d3 sharedspice.c, use GetCurrentThreadId() instead of GetTreadID()
Thanks to Thomas Uhle for this patch, see
  http://sourceforge.net/p/ngspice/patches/26/
  #26 GetThreadId() missing in older Win32 API, proposing to use GetCurrentThreadId() instead
2014-12-20 20:17:29 +01:00
rlar ed73bf393e inpcom.c, `inp_quote_params()', fixme, express doubts 2014-12-20 19:02:56 +01:00
rlar 8adb888300 inpcom.c, cleanup `inp_quote_params()', local scope for some variables 2014-12-20 18:51:39 +01:00
rlar 47d6b50f2e inpcom.c, cleanup `inp_quote_params()', drop `beg' 2014-12-20 18:50:48 +01:00
rlar 075b96bb05 inpcom.c, cleanup `inp_quote_params()', drop `new_str' 2014-12-20 18:50:27 +01:00
rlar 1b49bb6ea4 inpcom.c, cleanup `inp_quote_params()', don't poke string 2014-12-20 18:49:34 +01:00
rlar 6a6c9a9409 inpcom.c, cleanup `inp_quote_params()', use `skip_ws()' 2014-12-20 18:49:25 +01:00
rlar 7a2dfd46eb inpcom.c, `inp_quote_params()', bug fix, starting point for search of next identifier 2014-12-20 18:49:06 +01:00
rlar d6c280c9b1 inpcom.c, `inp_sort_params()', move `inp_quote_params()' invocation to the epilogue 2014-12-15 20:30:50 +01:00
rlar 9294b42327 inpcom.c, `inp_reorder_params_subckt()', don't process the .subckt card itself by `inp_quote_params()'
actually, any .dot card is ignored by `inp_quote_params()' anyway
2014-12-15 20:04:34 +01:00
rlar 2e2f4fc69c inpcom.c, cleanup `inp_reorder_params()', use NULL instead of `end' 2014-12-15 19:52:31 +01:00
rlar aee2561f5a inpcom.c, `inp_sort_params()', do not unnecessarily swap params 2014-12-14 22:41:46 +01:00
rlar 84252fee5e inpcom.c, cleanup `inp_fix_subckt()', use `line_free_x()' 2014-12-14 22:30:58 +01:00
rlar e9d37d0637 inpcom.c, cleanup `inp_fix_subckt()', simplify list concatenation 2014-12-14 22:30:53 +01:00