Commit Graph

3997 Commits

Author SHA1 Message Date
rlar 8c7ae0d61c lexical.c, simplify using cp_readchar() 2014-04-15 21:16:46 +02:00
rlar 448099ef94 lexical.c, new function cp_readchar() for abstraction 2014-04-15 21:12:46 +02:00
rlar 9bd2cdfc7b modtranslate(), cleanup using tprintf() 2014-04-13 19:58:47 +02:00
rlar 7813f6cf6a cleanup, use tprintf() 2014-04-12 21:34:16 +02:00
rlar cc56c90b9d drop asprintf() 2014-04-12 21:02:31 +02:00
rlar 80dd41451f introduce tvprintf() 2014-04-12 21:01:36 +02:00
rlar 03f0ef778f bug fix, need va_copy() when reusing a va_list 2014-04-12 20:37:36 +02:00
rlar a9bdfe3b00 cleanup spice_format_length() 2014-04-12 20:31:04 +02:00
rlar 0750749962 mktemp.c, use tprintf() 2014-04-05 19:44:13 +02:00
rlar 7aa454e5b4 rewrite, using tprintf() 2014-04-05 19:10:12 +02:00
rlar a4780f8e34 string.c, introduce tprintf() 2014-04-05 18:44:27 +02:00
rlar 2881eef750 ngmultidec.c, drop superfluous TMALLOC string allocation 2014-04-05 18:44:16 +02:00
rlar 1a0a00c9c2 inp.c, nicer printout of multi line error messages 2014-04-05 18:44:04 +02:00
rlar 575d42b0a5 mifgetmod.c, rewrite error report for 'unrecognized parameter' 2014-04-05 18:39:13 +02:00
rlar 4049e8ec1f rewrite, using IFerrorf() 2014-04-04 21:58:08 +02:00
rlar ea7372efe7 rewrite, useing IFerrorf()
OUTerror() and IFerror() are no more used,
  but kept for compatibility
2014-04-04 21:22:48 +02:00
rlar f26c1b71f9 introduce OUTerrorf() and IFerrorf()
a varargs variant of the older variants OUTerror() and IFerror()
2014-04-04 21:22:47 +02:00
rlar 0182f2f7ca swallow an unused format argument warning 2014-04-04 21:22:45 +02:00
Y.Niitsu 4de727f4a9 update bison generated files 2014-04-02 21:15:04 +02:00
Y.Niitsu 6e3f60c6bd frontend/parse.c, allow nested `indexing', for example foo[bar[n]]
.control
compose ex1 values 111 222 333
compose ex2 values 1 2 3
print ex1 ex2 ex1[ex2[1]]
.endc
2014-04-02 21:14:10 +02:00
rlar 08ca40fe73 sharedspice.c, bug fix, don't write beyond size of array `p' 2014-04-01 21:30:02 +02:00
rlar b6ed9a3620 bug fix, `#279 Problem when using a function to set initial value"
reported by Marcel Hendrix in
  http://sourceforge.net/p/ngspice/bugs/279/

"SPF_time" erroneously did match "time"

introduce a saver matcher for
  `v(' `i(' `temper' `time' and `hertz'
when checking for behavioural R,L,C devices
2014-04-01 21:17:00 +02:00
rlar 060257a468 inpcom.c, sharedlib, strip leading whitepace from circuit deck
this was traditionally done in inp_read() by readline(),
  and was missing for circuit decks passed by 'circarray'
2014-03-09 17:10:55 +01:00
h_vogt 8499ef0428 .option 'savecurrents' for storing all current of relevant devices 2014-02-07 22:47:09 +01:00
h_vogt 17185a601c asrcask.c: allow current readout like @bcur[i], if in current mode 2014-02-07 22:40:26 +01:00
dwarning 461026f2b9 fix to use garbage collector with --enable-gc 2014-02-07 13:19:35 +01:00
h_vogt bdb54257c7 outitf.c: new option interp to plot interpolated raw file data
during transient analysis
2014-02-01 14:24:04 +01:00
h_vogt 0609d231c0 runcoms2.c: prevent crash after 'remcirc' if no circuit is loaded 2014-01-29 21:21:16 +01:00
Henrik Forsten 3794c1eb20 mark end of struct GENmodel overlay 2014-01-19 17:38:32 +01:00
rlar 66281cad4e inpcom.c: exclude command 'shell' from lower case letter transformation
reported by Dominique Michel
[Ngspice-users] gs is confused with the shell command

shell gs -dBATCH -dNOPAUSE -sDEVICE=png256 -sOutputFile="plot.png"
2014-01-19 17:14:13 +01:00
h_vogt e58de3187c make use of Infile_Path in function open_with_path.
We may now use the following sequence for a file
search from a code model:
Infile_Path/<infile>
NGSPICE_INPUT_DIR/<infile>, where the path is given by the environmental variable
<infile>, where the path is the current directory
2014-01-18 19:17:38 +01:00
h_vogt 0a17d46509 new callback function cm_get_path, which makes the global
ngspice variable Infile_Path available to XSPICE code models
2014-01-18 19:14:42 +01:00
h_vogt 1f5de32512 global variable Infile_Path, which contains the
input netlist file path
2014-01-18 19:10:29 +01:00
h_vogt 57091b15f2 d_state: improved error messages 2014-01-18 18:54:01 +01:00
h_vogt 2877cfba22 file source: use open_with_path() 2014-01-18 18:50:50 +01:00
h_vogt bf1fb3f105 inp.c: prevent crash upon if_inpdeck() returning NULL 2014-01-17 20:24:44 +01:00
rlar ed23c7e315 set X11 window title from `graph->plotname'
in response to a bug report by Dominique Michel
  "#272 no title in plots"
  http://sourceforge.net/p/ngspice/bugs/272/
2014-01-11 16:24:25 +01:00
h_vogt 74b32f392c inpcom.c: E, G source, improved search for 'vol' and 'cur'
in response to a bug report by Marlize Schoeman
  "#274 VCVS Exxxx name and node names do not allow VOL as text"
  http://sourceforge.net/p/ngspice/bugs/274/
2014-01-11 16:24:23 +01:00
rlar f2093b17e8 parseunit(), support 'T' for "Tera"
in response to a bug report by Andy Fierman
  "#273 T = Tera = 1e12 suffix is ignored when used in a parameter in a subcircuit."
  http://sourceforge.net/p/ngspice/bugs/273/
2014-01-11 16:24:21 +01:00
h_vogt d5b2460123 inp.c, inp2q.c improve error message
when we exit() in batch mode due to a missing model definition
2014-01-11 16:24:19 +01:00
rlar bb28578956 workaround, avoid batch termination when there are .model issues
these were introduced by commit
  "inp.c, evtinit.c: improved error message suggested by Calin Andrian"
and caused ngspice checks to fail unexpectedly
2014-01-11 16:24:17 +01:00
h_vogt bd1b4a2162 gnuplot.c: enable correct terminal for non MINGW/MSVC 2014-01-11 16:24:14 +01:00
rlar 8803edc16b tfanal.c noisean.c, bug fix which was introduced in "CKTfndDev(), rewrite"
the original CKTfndDev() was able to limit its search
  for an instance with given name
  to instances of a certain "type"
(this was a speed optimisation which is of no use anymore,
  because we use a hashtable now)

the new CKTfndDev() does not consider "type"

thus, here in tfanal.c and noisean.c we have to check the "type"
  after CKTfndDev() since we no longer can limit its search
  to the given "type"
2014-01-11 16:24:12 +01:00
h_vogt 23ffcbf7d1 variable.c: prevent buffer overflow by limiting variable output to BSIZE_SP characters 2014-01-11 16:24:11 +01:00
h_vogt 52d8c7ec6e cm.h: add config.h to access #defines 2014-01-11 16:24:09 +01:00
h_vogt dfbaeaea29 com_ghelp.c: add info on non-availability of help to console versions w/o X display. 2014-01-11 16:24:08 +01:00
rlar a7a48ac8d3 analog/{square,triangle}, store boolean tran_init in STATIC_VAR itself 2014-01-02 09:57:17 +01:00
rlar 70f12fb1fd analog/{sine,square,triangle}, xtradev/core, change array access
avoid copy of parameter array,
which would need to be freed to avoid a memory leak

this is a modified and partial version of a patch provided by
Krzysztof Blaszkowski <kb@sysmikro.com.pl>
2014-01-02 09:57:14 +01:00
rlar 91449d438c analog/{sine,square,triangle}, xtradev/core, drop .h files 2014-01-02 09:57:03 +01:00
rlar 2bbfdd55cb analog/{sine,square,triangle}, xtradev/core, whitespace cleanup 2014-01-02 09:56:27 +01:00
dwarning 1e448f497d 1-f-code.c, correct the printout for noise generation 2014-01-02 09:54:01 +01:00
dwarning b535b43980 1-f-code.c, use fftw3 2014-01-02 09:54:00 +01:00
dwarning 9e01e1c384 com_fft.c, set hanning as default window 2014-01-02 09:53:58 +01:00
dwarning 38ad8f7602 com_fft.c, rename variable `tlen' --> `length' 2014-01-02 09:53:57 +01:00
dwarning dd290c1886 com_fft.c, correct array size and relay to specific array order for r2c transformation 2014-01-02 09:53:56 +01:00
dwarning 8ed75d166d com_fft.c, use FFTW3 for com_fft() and com_psd() 2014-01-02 09:53:54 +01:00
dwarning a90f916883 fftext.c, move the Bourke FFT code to fftext.c (rename macro) 2014-01-02 09:53:53 +01:00
dwarning c61e1bc8c6 fftext.c, move the Bourke FFT code to fftext.c (as a backup) 2014-01-02 09:53:52 +01:00
dwarning 2e79c16f55 cmath4.c, drop unused doubledouble() 2014-01-02 09:53:51 +01:00
dwarning 2671aef5cd cmath4.c, correct array size and relay to specific array order for r2c transformation 2014-01-02 09:53:49 +01:00
dwarning dc398f1387 cmath4.c, correct scale for ifft 2014-01-02 09:53:48 +01:00
dwarning 51c7f17186 cmath4.c, use FFTW3 for cx_fft() and cx_ifft() 2014-01-02 09:53:47 +01:00
dwarning cd8aa1ee04 cmath4.c, com_fft.c, cleanup 2014-01-02 09:51:41 +01:00
dwarning f989219f6f cmath4.c, com_fft.c, rename `size' --> `N' and `mm' --> `M' 2014-01-02 09:51:39 +01:00
h_vogt 75b144e17a polyfit.c, speed up fitting process when degree == 1
this patch war provided by Henrik Forstén in
  "#14 Special case for polyfit, move initw()"
  http://sourceforge.net/p/ngspice/patches/14/
2014-01-02 09:33:34 +01:00
h_vogt 0e2fc3ceef inpcom.c: allow node names and .func parameters having
equal string representation
2014-01-02 09:33:33 +01:00
h_vogt e2f3ea24c0 main.c, suppress progress report when '-o' is used to redirect output 2014-01-02 09:33:31 +01:00
h_vogt 2355bfc0ff main.c, fix stdout and stderr redirection and buffering with regard to '-o' and '-p'
in response to a bug report from  Johann Glaser
  "#259 Pipe mode: buffering"
  http://sourceforge.net/p/ngspice/bugs/259/
2014-01-02 09:33:30 +01:00
h_vogt a717fd01ab inpcom.c: enable .include with $end-of-line in .control section 2014-01-02 09:33:28 +01:00
h_vogt e97de24041 C99 functions are only available in MSVC 2013 and newer. Still needs testing! 2014-01-02 09:33:25 +01:00
rlar d146502fc9 ptfuncs.c, drop inaccurate replacements for ashinh() acosh() and atanh() 2014-01-02 09:33:23 +01:00
rlar d225c4f958 xpressn.c, introduce fortran style nint() rounding function 2014-01-02 09:33:21 +01:00
rlar a088a6e0e6 subckt.c, fix .model processing (scope) 2014-01-02 09:33:18 +01:00
h_vogt 59de942bdf enable parameter replacement in R, L, C lines, if equation is
without {} and not in a subcircuit
2014-01-02 09:33:16 +01:00
h_vogt 8dbefe2153 inpcom.c: allow proper 'temper' substitution
if device name and parameter name are the same,
or if parameter name is the last token in the line.
2014-01-02 09:33:09 +01:00
h_vogt bdcd7dc1a7 inp.c: evaluate for 'temper' only the models which have
been entered into the hash table ckt->MODnameHash
2014-01-02 09:33:07 +01:00
h_vogt 4e1c23780c dctran.c bug fix, reported by Berk Özer 2014-01-02 09:33:05 +01:00
h_vogt 75eee691c4 inpcom.c remove bug: parens around equation h, f
add equation + temper capability to gain of F-Source
2014-01-02 09:33:03 +01:00
h_vogt 606c98904d inpcom.c: H Source with equation and temper in transresistance 2014-01-02 09:33:01 +01:00
dwarning 2838eeb1ac devices/vbic, implement VBICsoaCheck() 2014-01-02 09:32:55 +01:00
dwarning 2875ac632f devices/hisim2, implement HSM2soaCheck() 2014-01-02 09:32:54 +01:00
dwarning f6c6fa85a0 devices/hisimhv1, implement HSMHVsoaCheck() 2014-01-02 09:32:52 +01:00
dwarning 7bafe7c238 devices/bsimsoi, implement B4SOIsoaCheck() 2014-01-02 09:32:51 +01:00
dwarning 8a005d8e4c devices/bsim4v6, implement BSIM4v6soaCheck() 2014-01-02 09:32:49 +01:00
dwarning 4b643d6b3f devices/bsim4v5, implement BSIM4v5soaCheck() 2014-01-02 09:32:48 +01:00
dwarning 5a64b7849c devices/bsim4, implement BSIM4soaCheck() 2014-01-02 09:32:46 +01:00
dwarning f9c05885fa devices/bsim3v32, implement BSIM3v32soaCheck() 2014-01-02 09:32:45 +01:00
dwarning 4e4ea00ba7 devices/bsim3, implement BSIM3soaCheck() 2014-01-02 09:32:43 +01:00
dwarning d44eeb05a4 devices/bjt, implement BJTsoaCheck() 2014-01-02 09:32:42 +01:00
dwarning b71a83f100 devices/dio, implement DIOsoaCheck() 2014-01-02 09:32:40 +01:00
dwarning 542bb9cd26 devices/cap, implement CAPsoaCheck() 2014-01-02 09:32:39 +01:00
dwarning 51f660d5f2 devices/res, implement RESsoaCheck() 2014-01-02 09:32:37 +01:00
rlar 5d3f4e7f55 introduce CKTsoaInit() 2014-01-02 09:32:36 +01:00
dwarning c8f5d49ddd implement CKTsoaCheck() 2014-01-02 09:32:34 +01:00
dwarning bf9ad0bdfd introduce new SPICEdev operation `DEVsoaCheck()' 2014-01-02 09:32:32 +01:00
rlar e2292cc5c4 inpcom.c, drop cp_tildexpand() in expand_this(), inp_pathresolve_at() shall do this 2014-01-02 09:32:29 +01:00
rlar 71fc51871e inpcom.c, rewrite .lib reading
use canonical file names to remember known .lib files
remember their directories in `habitat'
use inp_pathresolve_at() to find .lib files with regard to `searchpath' and current directory
2014-01-02 09:32:27 +01:00
rlar f2d3c9f122 inpcom.c, recurse expand_section_ref() 2014-01-02 09:32:25 +01:00
rlar 366d79b9b9 inpcom.c, cleanup 2014-01-02 09:32:24 +01:00
rlar 0420c0604b inpcom.c, whitespace cleanup 2014-01-02 09:32:22 +01:00
rlar 8fe86bb1c9 inpcom.c, reorder 2014-01-02 09:32:20 +01:00
rlar 0a2f5d2e55 inpcom.c, abstraction, introduce expand_section_ref() 2014-01-02 09:32:19 +01:00
rlar 6c30ad1b1e inpcom.c, simplify `.include' file processing using inp_pathresolve_at() 2014-01-02 09:32:17 +01:00
rlar 196102ee88 inpcom.c, introduce inp_pathresolve_at() 2014-01-02 09:32:15 +01:00
h_vogt 6480fabeaf tilde.c, enable search for home dir under MS Windows 2014-01-02 09:32:13 +01:00
rlar 51bbd8c4d4 inpcom.c, introduce inp_pathresolve(), rewrite inp_pathopen() using this 2014-01-02 09:32:11 +01:00
h_vogt 9959030765 inpcom.c, for mingw absolute pathnames may begin with /d/
allow this when variable 'mingwpath' is set in .spinit
2014-01-02 09:32:08 +01:00
h_vogt 85ddc5b6db inpcom.c, remove variable "sourcefile" and references to "sourcefile"
this will no longer be required for access to input file residing
in the executable's directory
2014-01-02 09:32:06 +01:00
rlar 9b4238ed04 inpcom.c, fix inp_pathopen(), always try to fopen() relative to the current working directory first 2014-01-02 09:32:03 +01:00
rlar 0ce23e6f10 inpcom.c, fix inp_pathopen(), relative path shall be expanded regarding "sourcepath" 2014-01-02 09:31:58 +01:00
rlar 7524882f67 inpcom.c, simplify using is_plain_filename(), fix incorrect comments 2014-01-02 09:31:56 +01:00
rlar e0c398024f inpcom.c, implement is_absolute_pathname() and is_plain_filename() 2014-01-02 09:31:55 +01:00
h_vogt 0b9df46e16 remove redundant #include 2014-01-02 09:31:51 +01:00
h_vogt bb121fe903 inp.c, evtinit.c: improved error message
suggested by Calin Andrian
2014-01-02 09:31:23 +01:00
h_vogt 780ccbfb3c prevent crash, if due to input bug ckt is not created,
reported by  Andrian
2014-01-02 09:31:21 +01:00
rlar 6af85a6389 xspice, move `-lm' to the end of the linker command line 2014-01-02 09:31:18 +01:00
h_vogt 8ad6bd209d replacements for functions missing in the msvc world 2014-01-02 09:31:10 +01:00
Calin Andrian c38f7236b1 MIFget_boolean(), allow numeric values 0 and 1 too 2014-01-02 09:26:28 +01:00
Anthony J. Bentley 7a9abebfe7 remove unnecessary include of sys/timeb.h. 2014-01-02 09:26:23 +01:00
rlar 492f1f006c numparam, almost full precision for stringified double float numbers 2014-01-02 09:25:48 +01:00
rlar 6a2060e472 xpressn.c, drop initkeys() 2013-12-31 16:42:06 +01:00
rlar 7463410a5e xpressn.c, drop "AND OR NOT DIV MOD DEFINED" keywords 2013-12-31 16:42:05 +01:00
rlar 6b1363dcf7 xpressn.c, use C strings for the arguments of `keywords()' 2013-12-31 16:42:04 +01:00
rlar a855a19d2c xpressn.c, drop '&' and '|' operators, (we have '&&' and '||') 2013-12-31 16:42:04 +01:00
rlar 719b5e5c20 inpcom.c, exclude currently unused functions 2013-12-31 16:42:03 +01:00
rlar df0d1826ca inpcom.c, drop ternary_fcn code in inpcom.c, the extended "formula" shall process ternary expressions 2013-12-31 16:41:36 +01:00
rlar ef3580d590 xpressn.c, whitespace cleanup 2013-12-31 16:41:35 +01:00
rlar 1ac45bfd57 xpressn.c, implement a?b:c in the "formula" parser 2013-12-31 16:41:34 +01:00
rlar 1b959e6a50 xpressn.c, drop XFU_V
probably accidentally introduced in commit

> Author: h_vogt <h_vogt>
> Date:   Sun Feb 7 11:27:59 2010 +0000
>
>     improved numparam error message
2013-12-31 16:41:34 +01:00
rlar 9cb20e97d0 xpressn.c, use enums instead of literals 2013-12-31 16:41:33 +01:00
rlar 297778127b xpressn.c, drop "Defd" enum, to be incorporated into a bigger enum 2013-12-31 16:41:32 +01:00
rlar 76c7cd6fbd xpressn.c, fix semantics of `int(x)' and remove dangerous macros
int(x) most probably shall be trunc(x) instead of floor(x)
  note trunc(x) was #defined beeing floor(x)
  note ln(x) was #defined beeing log(x)
2013-12-31 16:41:32 +01:00
rlar 2854fa71d4 fix an endless loop waiting for y/n when the input is at EOF
reported by Calin Andrian
  Subject: [Ngspice-devel] Invaild number bug
2013-12-31 16:41:31 +01:00
rlar 467eb58244 xpressn.c, fix semantics of '&&' and '||'
these shall interpret a value as a bool according to (value != 0)
and these shall evaluate to either 1.0 or 0.0
2013-12-31 16:41:30 +01:00
rlar f6d610a1b6 xpressn.c, whitespace cleanup 2013-12-31 16:41:30 +01:00
rlar 0a42a19b02 xpressn.c, fix `truth' for ternary_fcn()
0.0 is `false', everything else is `true'
2013-12-31 16:41:29 +01:00
rlar 589ded417a update bison generated files 2013-12-31 16:41:29 +01:00
rlar b32ae9f79b .control and `B' parser, fix precedence of '-' versus '^'
-2^2 shall be -(2^2) instead of (-2)^2
2013-12-31 16:41:28 +01:00
h_vogt ad5c09a865 remove unused code 2013-12-31 16:41:27 +01:00
rlar a4ac854d50 devices/hisimhv1, devices/hisim2, avoid overlapping globals TMF1 ... TMF6
reported by James Jackson in message:
  [Ngspice-users] Problem building git head --with-ngspice Mac OS X
2013-12-31 16:41:27 +01:00
rlar aae92bf259 avoid overlapping "Dummy" symbols
reported by James Jackson in message:
  [Ngspice-users] Problem building git head --with-ngspice Mac OS X
2013-12-31 16:41:26 +01:00
rlar a235b46795 inpcom.c, add missing condition `!comfile' for .title and .end processing 2013-12-31 16:41:25 +01:00
dwarning 5bc8429b2f correct the step incrementing type to SENS_LINEAR 2013-12-31 16:41:25 +01:00
h_vogt 3c49c4eb8f fix criterion to start `.lib' and `.global gnd' processing 2013-12-31 16:41:24 +01:00
rlar 10f651da35 inpcom.c: MSVC compatibility 2013-12-31 16:41:23 +01:00
rlar dc2cd6fe01 inpcom.c, cleanup inp_readall() #7/7, drop misleading comment 2013-12-31 16:41:22 +01:00
rlar 11573327f4 inpcom.c, cleanup inp_readall() #6/7, tautology `call_depth == 0' 2013-12-31 16:41:22 +01:00
rlar 893e094faa inpcom.c, cleanup inp_readall() #5/7, use `rv . line_number' itself 2013-12-31 16:41:21 +01:00
rlar 4b1cbd8c8b inpcom.c, cleanup inp_readall() #4/7, move inp_read() epilog to inp_readall() 2013-12-31 16:40:38 +01:00
rlar f29ef643dc inpcom.c, cleanup inp_readall() #3/7, return `line_number' too 2013-12-31 16:26:15 +01:00
rlar ab607102e6 inpcom.c, cleanup inp_readall() #2/7, move inp_read() prolog to inp_readall() 2013-12-31 16:26:14 +01:00
rlar d598630b72 inpcom.c, cleanup inp_readall() #1/7, introduce inp_read() 2013-12-31 16:26:12 +01:00
rlar 9b7a5ab54d bug fix, .include and .lib files don't have a `title' line 2013-12-31 16:26:11 +01:00
dwarning bdf3dced00 add missing tc1 and tc2 parameter entries in ask function 2013-12-31 16:26:10 +01:00
dwarning 5d2fd1ece0 whitespaces 2013-12-31 16:26:09 +01:00
dwarning 4965d02b5f fix an overlap in parameter definitions 2013-12-31 16:26:07 +01:00
rlar 6d371c9532 cleanup getopt_long() options 2013-12-31 16:26:06 +01:00
rlar e2bc7b4d89 read_a_lib(), drop call_depth, its always zero 2013-12-31 16:26:05 +01:00
rlar b19bd3fb3f expand_section_references(), drop call_depth, its always zero 2013-12-31 16:26:03 +01:00
rlar a009dfdbbe harmonize delete_libs() 2013-12-31 16:26:02 +01:00
h_vogt 02555fbe99 bug reported by Yamamaya: revert deleting dicoS structure in inp.c and measure.c:
still to be used by 'listing param'
deletion moved to com_remcirc()
2013-12-31 16:26:01 +01:00
h_vogt a2522def52 inpcom.c: patch provided by Krzysztof Blaszkowski
Allow spaces like { token } during parameter substitution
2013-12-31 16:25:59 +01:00
rlar d5b1c4faa5 inpcom.c, rewrite, collapsing find_lib() into read_a_lib() 2013-12-31 16:25:58 +01:00
rlar cf2f74c9e0 inpcom.c: '$' as end-of-line comment delimiter outside of .control section, '$ ' inside of .control section, # untabify 2013-12-31 16:25:57 +01:00
h_vogt 90a4be3a93 inpcom.c: '$' as end-of-line comment delimiter
outside of .control section,
'$ ' inside of .control section
2013-12-31 16:25:56 +01:00
h_vogt bee18c3b25 inpcom.c: allow special characters in function names 2013-12-31 16:25:54 +01:00
rlar a921b5444e inpcom.c: patch provided by Simon Chang: correct function name substitution #2 2013-12-31 16:25:53 +01:00
h_vogt 2c38a69f92 inpcom.c: patch provided by Simon Chang: correct function name substitution 2013-12-31 16:25:52 +01:00
rlar a94170d2ab gettok_node(), use copy_substring() 2013-12-31 16:25:50 +01:00
Krzysztof Blaszkowski 493aaba468 gettok_node(), avoid segfault when *s == NULL 2013-12-31 16:25:49 +01:00
Krzysztof Blaszkowski 23cdd5e53f inpcom.c: avoid segfault when `TABLE' is used without parentheses 2013-12-31 16:25:48 +01:00
rlar bf9551287e inp_stripcomments_line(), drop support for '--' comment style
seems to be not common in the spice world,
and interferes too much with mathematical expressions like
   {3--2}
2013-12-31 16:25:46 +01:00
Krzysztof Blaszkowski 9d223d6778 execute ft_sigintr_cleanup() outside of the signal handler
to avoid execution of non-reentrant functions
2013-12-31 16:25:45 +01:00
Krzysztof Blaszkowski 1cf3dc81bb abstraction, introduce ft_sigintr_cleanup() 2013-12-31 16:25:44 +01:00
Krzysztof Blaszkowski fde7be49b9 ft_sigintr(), reorder, side effect: if `ft_setflag' then gr_clean() won't be invoked
and can't be invoked anyway
  from inside of the signal handler
2013-12-31 16:25:43 +01:00
dwarning 06dd6abcf2 fix an overlap in parameter definitions 2013-12-31 16:25:41 +01:00
Krzysztof Blaszkowski 6a00876731 nipred.c, cleanup 2013-12-31 16:25:40 +01:00
Krzysztof Blaszkowski 30f1607a0a nipred.c, bug fix NIpred() when running 'TRAPEZOIDAL'
a long standing serious bug, allready in the very first commit from
  Date:   Thu Apr 27 20:03:57 2000 +0000

Nipred() after evaluating TRAPEZOIDAL case fell through into GEAR case.

see:
  http://sourceforge.net/p/ngspice/support-requests/18/
2013-12-31 16:25:39 +01:00
rlar bbdf2a2da0 revert, msvc doesn't support `#warning' 2013-12-31 16:25:37 +01:00
h_vogt 8015442a22 inpcom.c: improved character check around 'temper' 2013-12-31 16:25:36 +01:00
rlar feb43795b2 numparm, fix pow() implementation 2013-12-31 16:25:35 +01:00
rlar 1dda94fb7a numparm, cleanup formula() 2013-12-31 16:25:34 +01:00
h_vogt 3fae8e0ba9 xpressn.c: add domain check for acosh, atanh replacement functions 2013-12-31 16:25:32 +01:00
rlar 2f508696a6 numparm, cleanup rewrite formula() 2013-12-31 16:25:31 +01:00
h_vogt e5e08b6f93 xpressn.c: asinh, acosh, atanh replacement functions added 2013-12-31 16:25:30 +01:00
rlar 3e721d871a xpressn.c, cleanup `maximize' operation 2013-12-31 16:25:29 +01:00
rlar dbb8a76adb xpressn.c, cleanup char index bistromatic 2013-12-31 16:25:27 +01:00
rlar 5db94276d3 sprinkle some constness 2013-12-31 16:25:26 +01:00
rlar d3c0b7f5fa xpressn.c, use symbolic `state' constants 2013-12-31 16:25:25 +01:00
rlar b232a25fb6 xpressn.c, prepare 2013-12-31 16:25:24 +01:00
rlar 37e4ec8f05 inpcom.c, emphasize the inp_readall() tail processing 2013-12-31 16:25:22 +01:00
rlar 632add21c5 inpcom.c, delete_libs() can use line_free_x() now 2013-12-31 16:25:21 +01:00
rlar 6a466f7490 line_free_x(), prevent stack overflow due to non-trivial recursion 2013-12-31 16:25:20 +01:00
rlar b3cb5cedd5 inpcom.c, local scope for `ipc_status' 2013-12-31 16:25:18 +01:00
rlar cb932803b6 inp_fix_ternary_operator_str, pinpoint serious bugs 2013-12-31 16:25:17 +01:00
rlar dfcbc52ee6 inp_fix_ternary_operator_str, use a local variable to improve readability 2013-12-31 16:25:16 +01:00
rlar 7452971177 inp_fix_ternary_operator_str, use `copy_substring()' 2013-12-31 16:25:14 +01:00
rlar 92f9d7a309 inp_fix_ternary_operator_str, limit backward search 2013-12-31 16:25:13 +01:00
rlar b51fe0eb8b inp_fix_ternary_operator_str, cleanup 2013-12-31 16:25:12 +01:00
rlar 1883edb12b xpressn.c, tan, asin, acos, atan, asinh, acosh, atanh, pwr, tanh
add tan() asin() acos() atan() asinh() acosh() atanh()
rewrite pwr() and tanh()
2013-12-31 16:25:11 +01:00
rlar b40f748ccc inp_fix_ternary_operator_str(), rewrite 2013-12-31 16:25:09 +01:00
rlar 3e3cbab668 inp_search_opening_paren(), rewrite 2013-12-31 16:25:08 +01:00
rlar 87f53913bd inp_search_opening_paren(), cleanup 2013-12-31 16:25:07 +01:00
rlar 23b4722bc0 inp_search_opening_paren(), static scope instead of local C99 scope 2013-12-31 16:25:05 +01:00
rlar 0ab86ddaf0 inp_fix_ternary_operator_str(), abstraction, new function inp_search_opening_paren() 2013-12-31 16:25:04 +01:00
rlar bdd65ddb89 inp_fix_ternary_operator_str(), local scope for str_ptr3 2013-12-31 16:25:03 +01:00
rlar 0260a5b61a cleanup 2013-12-31 16:25:01 +01:00
rlar c32b6934a3 cleanup 2013-12-31 16:25:00 +01:00
h_vogt 0d1666da29 inpcom.c: repeated call to inp_fix_ternary_operator_str
in inp_fix_ternary_operator, only lines beginning with .
selected, comments updated
2013-12-31 16:24:59 +01:00
rlar 4a20c45db2 inp_fix_ternary_operator_str(), rewrite using strchr() 2013-12-31 16:24:58 +01:00
rlar 246dc2e614 inp_search_closing_paren(), finally fold them 2013-12-31 16:24:56 +01:00
rlar a683431d57 inp_search_closing_paren(), rewrite, considering the assertion 2013-12-31 16:24:55 +01:00
rlar 3b5c475216 inp_search_closing_paren(), increase similarity 2013-12-31 16:24:54 +01:00
rlar 59be847d28 inp_search_closing_paren(), rewrite 2013-12-31 16:24:52 +01:00
rlar ff2e850f1c inp_search_closing_paren(), rewrite 2013-12-31 16:24:51 +01:00
rlar 77478d8286 inp_search_closing_paren(), rewrite 2013-12-31 16:24:50 +01:00
rlar f8a06900c2 inp_search_closing_paren(), cleanup 2013-12-31 16:24:48 +01:00
rlar 8c68b0194d inp_search_closing_paren(), drop found_paren, its always true 2013-12-31 16:24:47 +01:00
rlar c1594627b4 inp_search_closing_paren(), cleanup 2013-12-31 16:24:46 +01:00
rlar 1a66841e36 inp_fix_ternary_operator_str(), cleanup 2013-12-31 16:24:44 +01:00
rlar be4ce38eff inp_search_closing_paren(), static scope instead of local C99 scope 2013-12-31 16:24:43 +01:00
rlar 3f52f88244 inp_fix_ternary_operator_str(), abstraction, new function inp_search_closing_paren() 2013-12-31 16:24:05 +01:00
rlar 2c74e02d42 inp_fix_ternary_operator_str(), prepare for abstraction 2013-12-31 16:24:04 +01:00
rlar 3c71863c05 inp_fix_ternary_operator_str(), local scope for `count' 2013-12-31 16:24:02 +01:00
h_vogt 6dc46a56b1 inpcom.c: hot fix for ternary function for numparam 2013-12-31 16:24:01 +01:00
rlar 9b2aea70f9 use Tcl_SetObjResult() instead of poking into Tcl_Interp.result 2013-12-31 16:24:00 +01:00
rlar 468dcd8f4d avoid `enumerated type mixed with another type' compiler warning 2013-12-31 16:23:59 +01:00
rlar f12306542c avoid a `constant expression' compiler warning 2013-12-31 16:23:57 +01:00
h_vogt 23c8a027f6 inpcom.c: some cleanups 2013-12-31 16:23:05 +01:00
rlar e2c0303865 avoid `unreachable code' warnings 2013-12-31 16:21:46 +01:00
rlar 5ec3042c19 FastNorm3.c, use int32_t for some 32 bit specific operations 2013-12-31 16:21:45 +01:00
rlar 1156164056 fix incorrect fprintf() usage 2013-12-31 16:21:44 +01:00
h_vogt 8da34ab7c6 inpcom.c: plug a memory leak, add some comments 2013-12-31 16:21:42 +01:00
dwarning a05f9f3489 remove unused variable sign 2013-12-31 16:21:41 +01:00
h_vogt dad80811f9 inp2m.c: plug memory leak 2013-12-31 16:21:40 +01:00
h_vogt 4d1b4bfa0a inp2m.c: indentation 2013-12-31 16:21:39 +01:00
h_vogt 35b49bc016 inpcom.c: plug two memory leaks 2013-12-31 16:21:37 +01:00
h_vogt 962c73e14e dctran.c, sharedspice.c: function sharedsync has modified parameter list 2013-12-31 16:21:36 +01:00
dwarning 06c891933c allow geometry scaling by option `scale' 2013-12-31 16:21:35 +01:00
dwarning 88d108f139 index `i' was definitively overwritten 2013-12-31 16:21:34 +01:00
h_vogt 1096d60e53 inpcom.c: exclude command 'echo' and some others
from lower case letter transformation
2013-12-31 16:19:53 +01:00
h_vogt b821e7e6cf xpressn.c, numparam.h: fcn del_attrib with void* argument,
required by nghash_free()
2013-12-31 16:19:52 +01:00
h_vogt 61fefe31bb inpcom.c: move delete_libs to a safer place outside of recursions 2013-12-31 16:19:51 +01:00
dwarning 921aca9d7e allow geometry scaling by option `scale' 2013-12-31 16:19:49 +01:00
h_vogt 750b42e767 inpcom.c: add fcn delete_libs to free libraries[] 2013-12-31 16:19:48 +01:00
h_vogt fe7a61c612 inpcom.c: plug memory leak 2013-12-31 16:19:47 +01:00
rlar 7528d45740 inp_expand_macro_in_str() needs recursive invocation to expand macros 2013-12-31 16:19:45 +01:00
rlar 534694645d counteract the tfree(macro_str) introduced in 'inpcom.c: plug memory leaks'
this one:
commit 810f72f850f8177275f17fc635d97b71b911ec0d
Author: h_vogt <h_vogt>
Date:   Sun Sep 8 13:01:26 2013 +0200

    inpcom.c: plug memory leaks
2013-12-31 16:19:44 +01:00
h_vogt a737ab1743 inpcom.c: fix a bug in ternary function 2013-12-31 16:19:43 +01:00
h_vogt 1edb51ccb7 inpcom.c: cleanup 2013-12-31 16:19:42 +01:00
h_vogt ada308e916 inpcom.c: further inprovement of 'temper', but still not there: problem with replacement of .func (nesting?) 2013-12-31 16:19:40 +01:00
h_vogt c2d1130db4 inpcom.c: dynamic array size in `inp_split_multi_param_lines()' 2013-12-31 16:19:39 +01:00
h_vogt 321450366e inpcom.c: remove name_buf length limitation 2013-12-31 16:19:38 +01:00
h_vogt 1bb7079dc5 inp.c, inpcom.c: improved debug printout debug-outx.txt 2013-12-31 16:19:36 +01:00
h_vogt d8fe6bd671 inp2m.c: plug a small memory leak 2013-12-31 16:19:35 +01:00
h_vogt 3018a64697 inpcom.c: plug memory leaks 2013-12-31 16:19:34 +01:00
h_vogt 4d7c993c6e inpcom.c: plug a memory leak 2013-12-31 16:19:32 +01:00
h_vogt d875687752 inpcom.c: `rewrite expand_section_references()' 2013-12-31 16:19:31 +01:00
h_vogt f17ab06e66 inpcom.c: fix huge memory leak during library handling 2013-12-31 16:19:30 +01:00
h_vogt cdbdd17136 inpcom.c: plug memory leak 2013-12-31 16:19:28 +01:00
h_vogt 984de3f511 inpcom.c: patch by Simon Chang added, severe trash code identified, to be repaired. 2013-12-31 16:19:27 +01:00
h_vogt 1978e75c13 inpcom.c: comment added 2013-12-31 16:19:26 +01:00
h_vogt 419da12d36 inp.c: inp_parse_temper(), plug memory leak 2013-12-31 16:19:25 +01:00
h_vogt 0c57bad2ff inpcom.c: simplify a condition in `inp_fix_for_numparam()' 2013-12-31 16:19:23 +01:00
h_vogt 5b06bdcd5b inpcom.c: modify only subckt used 2013-12-31 16:19:22 +01:00
h_vogt 62d9199cd6 inpcom.c: plug memory leaks in new TEMPER code 2013-12-31 16:19:21 +01:00
h_vogt d70865a162 allow 'temper' keyword in .param, .model and device instance lines
inpcom.c: fcns inp_fix_temper_in_param(), inp_new_func(), inp_rem_func()
  to convert .param with 'temper' to .func, and replace all affected
  parameter tokens xxx by their func counterpart xxx()

inpcom.c; fcns inp_temper_compat(), inp_modify_exp() added
  to prepare expression with 'temper' for numparam

inp.c: fcns inp_parse_temper(), inp_parse_temper_trees() added

inp_evaluate_temper()
  to prepare, parse and evaluate the expressions containing 'temper'

cktdefs.h: add global variable to expressions with 'temper'

dctrcurv.c: add fcn inp_evaluate_temper()
   when temp has changed
2013-12-31 16:19:19 +01:00
h_vogt 8c85064018 inperrc.c: new function `INPstrCat()' to concatenate two strings 2013-12-31 16:19:18 +01:00
h_vogt e7e16e06e7 inpcom.c: debug printout to debug-out.txt improved 2013-12-31 16:19:17 +01:00
h_vogt 21f5fce1f8 inpcom.c: update some comments 2013-12-31 16:19:16 +01:00
dwarning 845dd554e2 com_psd(), reuse the window function `fft_windows()' 2013-12-31 16:19:14 +01:00
dwarning fe01e537cd cleanup some compiler warnings 2013-12-31 16:19:13 +01:00
dwarning 54529d0e42 allow cshell $variable substitution with and without $&var 2013-12-31 16:19:12 +01:00
h_vogt 73bec459fa inperrc.c: comments added, white spaces 2013-12-31 16:19:11 +01:00
h_vogt 4524d514e1 inp.c: comments added 2013-12-31 16:19:09 +01:00
h_vogt 3dff06228e dctran.c, runcoms2.c: shared ngspice: remove plot data upon 'bg_halt' and 'remcirc' 2013-12-31 16:19:08 +01:00
h_vogt b33f374d22 sharedspice.c: improve progress analysis 2013-12-31 16:19:07 +01:00
h_vogt 28dcedbfa6 misccoms.c: add more deleting function in 'quit' for shared ngspice 2013-12-31 16:19:06 +01:00
h_vogt 9520044a0f runcoms2.c: remove ci_options upon remcirc 2013-12-31 16:19:04 +01:00
h_vogt 5f6f53f9ad runcoms2.c: plug memory leak during remcirc 2013-12-31 16:19:03 +01:00
h_vogt abbda029e1 BSIM 4.7.0 plug memory leak during remcirc 2013-12-31 16:19:02 +01:00
h_vogt d38d907fbc BSIM 3.2.4 plug memory leak during remcirc 2013-12-31 16:19:01 +01:00
h_vogt d6946705f8 BSIM 3.3.0 plug memory leak during remcirc 2013-12-31 16:18:59 +01:00
h_vogt 9e8219da67 runcoms2.c: plug memory leak during 'remcirc' 2013-12-31 16:18:58 +01:00
h_vogt be45a5ca37 outitf.c: plug memory leak 2013-12-31 16:18:57 +01:00
h_vogt 94595c06df spicenum.c, xpressn.c: plug setup memory leak
by adding user defined delete function for hash table entries
2013-12-31 16:18:56 +01:00
h_vogt fceefb700c runcoms2.c: plug setup memory leak 2013-12-31 16:18:54 +01:00
h_vogt a97b330965 vsrcdest.c, isrcdest.c: fix memory leak by freeing VSRCcoeffs, ISRCcoeffs 2013-12-31 16:18:53 +01:00
dwarning 075b620a86 introduce `cx_sortorder()' function 2013-12-31 16:18:52 +01:00
h_vogt e308f52e26 runcoms2.c: set freed pointers to NULL 2013-12-31 16:13:25 +01:00
h_vogt 0c503429e0 breakp2.c: plug some tiny memory leaks 2013-12-31 16:13:24 +01:00
h_vogt 777fe07e83 breakp.c: repair nonworking function dbfree() 2013-12-31 16:13:23 +01:00
h_vogt 3cc06c8e49 dotcards.c: plug some memory leaks 2013-12-31 16:13:21 +01:00
h_vogt 3f23287bdd spicenum.c: fix memory leak completely 2013-12-31 16:13:20 +01:00
h_vogt da10f49755 remove memory leak freeing dicoS
reported by Jonathan Knott
2013-12-31 16:13:19 +01:00
dwarning 4635a19ba9 introduce unwrap, minimum and maximum function 2013-12-31 16:13:17 +01:00
dwarning 20c375bcc2 fix a bug on spurious output to console during fprintf reported by Evan Lavelle 2013-12-31 16:13:16 +01:00
dwarning 68da03f9de preserve vector length for fft by interpolation, window by default: none 2013-12-31 16:13:15 +01:00
h_vogt d2dbe6145f sharedspice.c: modified callback interface
enhanced function ngSpice_Init_Sync()
three new callback functions for synchronization
2013-12-31 16:13:12 +01:00
h_vogt a0757d3143 dctran.c: synchronization option for shared library 2013-12-31 16:13:11 +01:00
h_vogt 2c97c31658 devices/isrc: EXTERNAL option for independent current source ISRC 2013-12-31 16:13:10 +01:00
dwarning 6a3da0105b fft and ifft as vector functions 2013-12-31 16:13:08 +01:00
dwarning 0b1bff9fd8 fix type of length in fft window function 2013-12-31 16:13:07 +01:00
dwarning e1fa276ddc whitespace 2013-12-31 16:13:06 +01:00
dwarning c8cd8b95a8 specific MS adaption 2013-12-31 16:13:04 +01:00
dwarning f3e7bf141d move the `fft_windows()' function to fft/fftext.c 2013-12-31 16:13:03 +01:00
h_vogt c972744ff1 inpcom.c, rewrite .subckt parameter processing 2013-12-31 16:13:02 +01:00
rlar 2555eeadef fix the csh-problem $foo[$bar] and $foo[$&baz] 2013-12-31 16:13:00 +01:00
rlar 909f087237 cp_variablesubst() and cp_bquote(), rewrite 2013-12-31 16:12:59 +01:00
rlar 9eab66131d cp_variablesubst() and cp_bquote(), rewrite 2013-12-31 16:12:58 +01:00
rlar c2927128cd whitespace 2013-12-31 16:12:56 +01:00
rlar 23d0f41e66 ft_find_analysis_parm(), change signature 2013-12-31 16:12:55 +01:00
rlar 4d65fb908d use type `IFparm' to abbreviate some expressions 2013-12-31 16:12:53 +01:00
rlar 31b455afd4 if_getstat(), rewrite 2013-12-31 16:12:52 +01:00
rlar fc2dd436fe abstraction, new function `ft_find_analysis_parm()' 2013-12-31 16:12:51 +01:00
rlar 9d0500027c abstraction, new function `ft_find_analysis()' 2013-12-31 16:12:49 +01:00
h_vogt 49c1385ba6 bug fix, `#248 Subcircuit call cannot have a node with same name as the subcircuit'
reported by  Henrik Forstén
http://sourceforge.net/p/ngspice/bugs/248/
2013-12-31 16:12:48 +01:00
h_vogt 88cd0f324d bug fix, `#250 "<<NAN, error = 7>>" in op analysis'
http://sourceforge.net/p/ngspice/bugs/250/
2013-12-31 16:12:45 +01:00
rlar 6050e2e0ea cleanup some extra parentheses 2013-12-31 16:12:44 +01:00
rlar bedbdb65bb cleanup some line wraps 2013-12-31 16:12:43 +01:00
rlar ed6d7df0ce inpdoopt.c, bug fix, `i' incremented twice when searching for "options" 2013-12-31 16:12:41 +01:00
rlar 852bb7a89f minor, prepare for automatic indentation 2013-12-31 16:12:40 +01:00
rlar 7381081226 ciderlib, proper types for newCard(), setCardParm(), askCardQuest() 2013-12-31 16:12:39 +01:00
rlar ccb600f3c1 drop `NIL' macro 2013-12-31 16:12:37 +01:00
rlar f973e7107f memory.h, polish macros 2013-12-31 16:12:36 +01:00
Henrik Forstén 44ef3db000 dstring_append_char(), rewrite 2013-12-31 16:12:35 +01:00
rlar ade2f8c2c2 CKTmodCrt(), cleanup 2013-12-31 16:12:33 +01:00
rlar 86264b9879 CKTmodCrt(), cleanup, always assign to `*modfast'
for all invocations of CKTmodCrt() alias newModel()
the following is true
   (modfast != NULL) && (*modfast == NULL)
see
    (grep "git --no-pager grep -nH -e 'CKTmodCrt\\|newModel'")
2013-12-31 16:12:32 +01:00
rlar df5c785a84 drop `INPmodUsed' which is redundant to `INPmodfast' 2013-12-31 16:12:31 +01:00
rlar 468b4b973c nghash_delete() models and instances in CKTdltMod() 2013-12-31 16:12:30 +01:00
rlar f29d683770 CKTfndMod(), cleanup 2013-12-31 16:12:28 +01:00
rlar f0d36d956e CKTfndMod(), cleanup 2013-12-31 16:12:27 +01:00
rlar e7def1a0bc CKTfndMod(), drop unused arguments `type' and `modfast' 2013-12-31 16:12:26 +01:00
rlar 7b495e0a7b CKTfndMod(), use a hashtable 2013-12-31 16:12:24 +01:00
rlar 59309e196b CKTfndMod(), cleanup 2013-12-31 16:12:23 +01:00
rlar b32c15d85f CKTfndMod(), dont pass the `type' argument by reference any more 2013-12-31 16:12:22 +01:00
rlar 494ef3f628 CKTfndMod(), cleanup 2013-12-31 16:12:20 +01:00
rlar 247ae92ae8 CKTfndMod(), unuse the `type' argument 2013-12-31 16:12:19 +01:00
rlar f46dbc883b CKTfndMod(), this wont happen any more and `*type' will be overwritten anyway 2013-12-31 16:12:18 +01:00
rlar 213304f745 CKTfndMod(), rewrite error expressions 2013-12-31 16:12:16 +01:00
rlar f0882dbdfd CKTfndMod(), return the found model instead of error code 2013-12-31 16:12:15 +01:00
rlar b97c2ba5d1 CKTfndMod(), express error return value outside of this function 2013-12-31 16:12:14 +01:00
rlar 4cc57bdfd6 CKTfndMod(), this will never happen, when this series of rewrites is finished 2013-12-31 16:12:12 +01:00
rlar bd7e93de6c CKTfndMod(), assert some facts 2013-12-31 16:12:11 +01:00
rlar e79135c556 CKTfndDev(), cleanup 2013-12-31 16:12:10 +01:00
rlar ddc78067cc CKTfndDev(), drop `type' and `fast' argument 2013-12-31 16:12:08 +01:00
rlar 6a9a246526 CKTfndDev(), rewrite invocations where `*fast == NULL' 2013-12-31 16:12:07 +01:00
rlar f375ec6c10 CKTfndDev(), rewrite invocations where `type == NULL' 2013-12-31 16:12:06 +01:00
rlar 6c80cb4062 CKTfndDev(), unuse the type argument 2013-12-31 16:12:04 +01:00
rlar 390dccd44b CKTfndDev(), rewrite error expressions 2013-12-31 16:12:03 +01:00
rlar 5daa676163 CKTfndDev(), return the found instance instead of error code
now if (fast != NULL)
  CKTfndDev(,,fast, )
is equivalent to
  *fast = CKTfndDev(,,fast, )
2013-12-31 16:12:01 +01:00
rlar 7bacfc73d1 CKTfndDev(), express error return value outside of this function
if (fast != NULL) then
     err = CKTfndDev(,, fast, );
is equivalent to
     err = CKTfndDev(,, fast, );
     err = *fast ? OK : E_NODEV;
2013-12-31 16:12:00 +01:00
rlar 6e7d70e4bb CKTfndDev(), assert some facts 2013-12-31 16:11:59 +01:00
rlar d9fbb36ac7 CKTfndDev(), unuse `type' argument 2013-12-31 16:11:57 +01:00
rlar 7048bf7c15 CKTfndDev(), cleanup usage of `type' argument 2013-12-31 16:11:56 +01:00
rlar 8a98c784f6 CKTfndDev(), cleanup usage of impossible error codes 2013-12-31 16:11:55 +01:00
rlar 0ab6a6e463 CKTfndDev(), drop unused argument `modfast' 2013-12-31 16:11:53 +01:00
Henrik Forstén 771d1fa697 CKTfndDev(), rewrite 2013-12-31 16:11:52 +01:00
Henrik Forstén b96be8d576 CKTfndDev(), use a hashtable to speed up this function 2013-12-31 16:11:51 +01:00
h_vogt 7911ed9eb9 subckt.c: `A' device , no special translation when nodename starts with `v' 2013-12-31 16:11:49 +01:00
rlar 503f5d5c26 simplify #ifdef nesting #4/4 2013-12-31 16:11:48 +01:00
rlar 2c33cd49b2 simplify #ifdef nesting #3/4 2013-12-31 16:11:47 +01:00
rlar 71e953e1b9 simplify #ifdef nesting #2/4 2013-12-31 16:11:45 +01:00
rlar b1a2eef4d0 simplify #ifdef nesting #1/4 2013-12-31 16:11:44 +01:00
h_vogt e929275cdf sharedspice.c, .h: fcn to initialize Sync, fcn to set breakpoint, callback fcn to read vsrc external inputs 2013-12-31 16:11:43 +01:00
h_vogt 89ae9e36a6 shared ngspice, dctran.c fcn to add breakpoints 2013-12-31 16:11:41 +01:00
h_vogt 8147b03465 shared ngspice: external voltage source 2013-12-31 16:11:40 +01:00
rlar 96e1d7eec6 cleanup OUTattributes() invocations
checked for object file invariance
2013-12-31 16:11:38 +01:00
rlar 29c57dd857 cleanup IFnewUid() invocations
checked for object file invariance
2013-12-31 16:11:37 +01:00
rlar 2f2da2bab2 cleanup OUTpBeginPlot() invocations
checked for object file invariance
2013-12-31 16:11:36 +01:00
rlar 40414ead49 cleanup stuttered semicolon 2013-12-31 16:11:34 +01:00
rlar 11abda7a6b noisean.c, cleanup comment 2013-12-31 16:11:33 +01:00
rlar 4473419cb8 polish `PARSECALL' macro
checked for object file invariance
2013-12-31 16:11:32 +01:00
rlar 31ff2ee073 polish `LITERR' macro
checked for object file invariance
2013-12-31 16:11:30 +01:00
rlar 1b3e77ca32 polish `GCA' macro
checked for object file invariance
2013-12-31 16:11:29 +01:00
rlar d52c9e401a polish `IFC' macro
checked for object file invariance,
different code for inppas3.c, seems to be ok
2013-12-31 16:11:28 +01:00
rlar 14a6bd9314 polish `MERROR' macro
checked for object file invariance
2013-12-31 16:11:26 +01:00
h_vogt a072a13cb0 misc_time.c: make timediff always availabe when timeb.h is found 2013-12-31 16:11:25 +01:00
dwarning 1bb270e301 inp2y.c, TXL bug fix
reported by John Reuben P on the ngspice-users mailing list
need to insert instance names into the symbol table with INPinsert()
2013-12-31 16:11:24 +01:00
rlar 4ad4877e30 CKTfndDev(), drop unused argument `modname' which is always NULL 2013-12-31 16:11:23 +01:00
rlar 156c9ea086 cleanup CKTfndDev(), findInstance() invocation 2013-12-31 16:11:21 +01:00
rlar 7c9e6e6569 unify, use `ckt' instead of `ck' 2013-12-31 16:11:20 +01:00
rlar 7c15b99ebc CKTfndDev(), #6/6, cleanup 2013-12-31 16:11:19 +01:00
rlar a2b50f5c1e CKTfndDev(), #5/6, cleanup 2013-12-31 16:11:17 +01:00
rlar 235283d96a CKTfndDev(), #4/6, cleanup 2013-12-31 16:11:16 +01:00
rlar 52c0731b69 CKTfndDev(), #3/6, cleanup 2013-12-31 16:11:15 +01:00
rlar 8c91149625 CKTfndDev(), #2/6, cleanup 2013-12-31 16:11:13 +01:00
rlar 8a69f5c1c8 CKTfndDev(), #1/6, whitespace 2013-12-31 16:11:12 +01:00
rlar 025c1e751e abstraction, new function `find_instance()' 2013-12-31 16:11:11 +01:00
Henrik Forstén c9c23342bc numparm, speedup modernizeex() for the common case 2013-12-31 16:11:10 +01:00
Henrik Forstén 30d7647378 search just once for basic device types 2013-12-31 16:11:08 +01:00
Henrik Forstén f284de7f49 inpcom.c: fix "sytax" spelling 2013-12-31 16:11:07 +01:00
dwarning 57f36319a1 allow format like .5 in b-sources 2013-12-31 16:11:05 +01:00
dwarning ae78dd06ef devices/mos*: prevent NaN in sqrt for negative value of model parameter `PHI' 2013-12-31 16:11:04 +01:00
Henrik Forstén 9c04f01991 rewrite AlmostEqualUlps() to avoid compiler warnings concerning `strict-aliasing' 2013-12-31 16:11:03 +01:00
Henrik Forstén 97d99067a6 inpsymt.c, use "Daniel J. Bernstein" hash function
instead of a simple sum.

just for note,
there is a wealth of newer hash functions.

For example "The FNV Non-Cryptographic Hash Algorithm"
from http://tools.ietf.org/html/draft-eastlake-fnv-03
2013-12-31 16:11:02 +01:00
rlar 2eb5a7ac00 avoid `(IFuid) 0' cast 2013-12-31 16:11:00 +01:00
rlar daf4fba6db convert K&R function definitions to ansi style 2013-12-31 16:10:59 +01:00
rlar 9b9bf075d1 fix for automatic indention
this part of

> commit f9144f90b3
> Author: pnenzi <pnenzi>
> Date:   Tue May 23 20:04:32 2000 +0000
>
>     Applied Widlok patch

is hostile to automatic indention
2013-12-31 16:10:58 +01:00
h_vogt c19d7e6a51 sharedspice.c: preliminary fixes: ftime() usage, prevent crash if controlled_exit from worker thread 2013-12-31 16:10:56 +01:00
dwarning 0fd9956a56 devices/res: use model parameter `r' and `res' as default for instances w/o value
and set minimal resistor value to 1 mOhm
2013-12-31 16:10:55 +01:00
dwarning f120c30ae4 devices/res: whitespace cleanup 2013-12-31 16:10:54 +01:00
h_vogt e4921933ba nicomcof.c: xmu used to calculate trap integration coefficient 2013-12-31 16:10:52 +01:00
h_vogt 6ce0412690 cktop.c: indentation 2013-12-31 16:10:51 +01:00
rlar 42066c2293 inpcom.c, whitespace 2013-12-31 16:10:50 +01:00
rlar 46a8f9bf0f inpcom.c, cleanup 2013-12-31 16:10:48 +01:00
rlar 9181e7a008 inpcom.c, use strchr(,'\0') 2013-12-31 16:10:47 +01:00
rlar a10a0b5e68 inpcom.c, use better skip_back functions 2013-12-31 16:10:45 +01:00
rlar cbc2abdd13 inpcom.c, rewrite `chk_for_line_continuation()' 2013-12-31 16:10:44 +01:00
rlar c8a94fb1d4 inpcom.c, introduce better skip_back functions 2013-12-31 16:10:43 +01:00
rlar 6e042f4147 inpcom.c, minor cleanup 2013-12-31 16:10:41 +01:00
rlar 82f70e3986 inpcom.c, rewrite `inp_fix_param_values()' 2013-12-31 16:10:40 +01:00
rlar ad47b00e0f inpcom.c, cleanup 2013-12-31 16:10:38 +01:00
rlar 863996228b inpcom.c, cleanup `inp_add_params_to_subckt()' 2013-12-31 16:10:37 +01:00
rlar c07038dfa9 inpcom.c, minor rewrites 2013-12-31 16:10:36 +01:00
rlar 14687910d9 rewrite `TSTALLOC()' macro for auto indentation
checked for object code invariance
2013-12-31 16:10:34 +01:00
h_vogt 83205d6c30 inp.c: skip title line when searching for .if in dotifeval() 2013-12-31 16:10:33 +01:00
rlar 15fab1ea12 inpcom.c, abstraction, new function `find_assignment()' 2013-12-31 16:10:31 +01:00
rlar ffefd7a96f inpcom.c, cleanup 2013-12-31 16:10:30 +01:00
rlar b18854c3c0 inpcom.c, abstraction, new function inp_split_multi_param_lines() 2013-12-31 16:10:29 +01:00
rlar 52620edc72 inpcom.c, cleanup `inp_split_multi_param_lines()' 2013-12-31 16:10:27 +01:00
dwarning e0a4373553 add `rgeomod' as model parameter for bsim4 2013-12-31 16:10:26 +01:00
dwarning 2dcea6d7c1 parser/*.c: correct the `pwr' derivative 2013-12-31 16:10:24 +01:00
rlar c747498324 inpcom.c, local scope for `newcard' 2013-12-31 16:10:23 +01:00
h_vogt c485cd4b8b inpcom.c: G source, fix a bug and add `m' to TABLE 2013-12-31 16:10:22 +01:00
rlar df00c189d1 inpcom.c, rewrite `append' of some decks 2013-12-31 16:10:20 +01:00
rlar f6117a0cb8 inpcom.c, drop unused assignment 2013-12-31 16:10:19 +01:00
rlar 766cb12c13 inpcom.c, rewrite deck allocation 2013-12-31 16:10:18 +01:00
rlar bacfc6a309 inpcom.c, local scope for some vars 2013-12-31 16:10:16 +01:00
h_vogt f58a255651 inpcom.c: multiplier `m' for behavioral G source 2013-12-31 16:10:15 +01:00
h_vogt 05a6ec222e inp.c, inpcom.c: implement a very basic .if/.else block 2013-12-31 16:10:13 +01:00
dwarning 91ab0a3c74 parser/*.c: implement a signed power function `pwr' for controlled sources 2013-12-31 16:10:12 +01:00
h_vogt 7857a300ad subckt.c: prevent crash if 5/6 MOS nodes w/o L, W 2013-12-31 16:10:11 +01:00
h_vogt 5cbdca2cc6 subckt.c: MOS model in subckt w/o L, W 2013-12-31 16:10:09 +01:00
rlar 4d4d51c27b inpcom.c, reorder some statements 2013-12-31 16:10:08 +01:00
rlar d19f75381c inpcom.c, local scope for `str' 2013-12-31 16:10:07 +01:00
rlar 245bd13cec inpcom.c, local scope for `global_card' 2013-12-31 16:10:05 +01:00
rlar e0e30a9d93 inpcom.c, drop variable `prev' 2013-12-31 16:10:04 +01:00
rlar 855e504b9a inpcom.c, get rid of the global `global' 2013-12-31 16:10:02 +01:00
rlar 761ca9963d inpcom.c, rewrite subckt_w_params business 2013-12-31 16:10:01 +01:00
rlar 956e7ad625 inpcom.c, execute inp_fix_for_numparam() just once when call_depth == 0 2013-12-31 16:10:00 +01:00
h_vogt a469aa9387 devices/vccs: implement multiplier `m' (G source) 2013-12-31 16:09:58 +01:00
h_vogt 2ccf0a7097 devices/cccs: implement multiplier `m' (F source) 2013-12-31 16:09:57 +01:00
rlar 1c3a8670d8 inpcom.c, drop superflous initialisation 2013-12-31 16:09:56 +01:00
rlar 5425ce387e inpcom.c, improve readability of skip_back_non_ws() and skip_back_ws() 2013-12-31 16:09:54 +01:00
rlar 7fff6c27cd inpcom.c, cleanup 2013-12-31 16:09:53 +01:00
rlar fb3d474cc2 inpcom.c, drop some local variables 2013-12-31 16:09:51 +01:00
rlar cde7286721 inpcom.c, simplify error processing 2013-12-31 16:09:50 +01:00
rlar e94a7e240f inpcom.c, simplify tfree() usage 2013-12-31 16:09:49 +01:00
rlar 40343f164b inpcom.c, local scope for some variables 2013-12-31 16:09:47 +01:00
Francesco Lannutti d84f3af2d3 vcvsset.c, cleanup order of TSTALLOC() invocations 2013-12-31 16:09:46 +01:00
dwarning b9a954df60 inpptree.c, ptfuncs.c: whitespace cleanup 2013-12-31 16:09:45 +01:00
rlar 153b4ac1c3 inpcom.c, cleanup deck loops #4/4 2013-12-31 16:09:43 +01:00
rlar 0d7020067e inpcom.c, cleanup deck loops #3/4 2013-12-31 16:09:42 +01:00
rlar 5c82547109 inpcom.c, cleanup deck loops #2/4 2013-12-31 16:09:40 +01:00
rlar d4e693632b inpcom.c, cleanup deck loops #1/4 2013-12-31 16:09:39 +01:00
h_vogt d4d3910e5a xpressn.c: reduce number of (forbidden) keywords
to what is actually used
2013-12-31 16:09:38 +01:00
rlar b76f9084bd inpcom.c, inp_chk_for_multi_in_vcvs() shrink scope of variables 2013-12-31 16:09:36 +01:00
rlar 9b404a2265 inpcom.c, cleanup 2013-12-31 16:09:35 +01:00
rlar 30b4451433 inpcom.c, bug fix (incorrect check for mal formed line) 2013-12-31 16:09:34 +01:00
rlar 0f14ee3c22 inpcom.c, cleanup 2013-12-31 16:09:32 +01:00
rlar 129b1f36ed inpcom.c, simple cleanups 2013-12-31 16:09:31 +01:00
rlar 30a88925da inpcom.c, change semantics of skip_back_non_ws() and skip_back_ws() 2013-12-31 16:09:29 +01:00
rlar 144452c96c inpcom.c, unify skip_back() usage #2/2 2013-12-31 16:09:28 +01:00
rlar 7fd93a8bd6 inpcom.c, unify skip_back() usage #1/2 2013-12-31 16:09:27 +01:00
rlar 8bff6db927 inpcom.c, cleanup inp_get_func_from_line() 2013-12-31 16:09:25 +01:00
rlar 687de9fc02 inpcom.c, drop artifact, now this isn't any more a bug 2013-12-31 16:09:24 +01:00
rlar b20c6e149c inpcom.c, use a list to store the `.func' lookup table 2013-12-31 16:09:22 +01:00
rlar 9093ec8fac inpcom.c, use a `rib cage' to store the .subckt lexical scoping of `.func' 2013-12-31 16:09:21 +01:00
rlar 777dbede9b inpcom.c, cleanup inp_expand_macros_in_deck() recursion 2013-12-31 16:09:20 +01:00
dwarning 2b6737e164 devices/bsim3, devices/bsim3v32: add `nqsmod' as model parameter 2013-12-31 16:09:18 +01:00
rlar 9782542b62 bug fix, .func expansion for nested .subckt 2013-12-31 16:09:17 +01:00
rlar 4fee1ed6c1 inpcom.c, cleanup some while(struct line * ...) loops 2013-12-31 16:09:16 +01:00
dwarning 0a5ac78e8a devices/hisimhv1: correct the `qme2' rangecheck 2013-12-31 16:09:14 +01:00
dwarning d5e3f1978a devices/bsim3: whitespace cleanup 2013-12-31 16:09:13 +01:00
dwarning b51f84e0ff devices/bsim3: complete the ACM parameter set with xl and xw 2013-12-31 16:09:12 +01:00
dwarning 708fcbaed1 devices/bsim3: apply Area Calculation Method (ACM) to the bsim3v3.3 model 2013-12-31 16:09:10 +01:00
dwarning c7c89c28a9 devices/bsim3: reposition sourceConductance block 2013-12-31 16:09:09 +01:00
dwarning 02dc233bc5 devices/bsim3: reposition DrainSatCurrent block 2013-12-31 16:09:08 +01:00
h_vogt 31405ed9cb hsm2set, hsmhvset.c: error message 2013-12-31 16:09:06 +01:00
h_vogt 7387d59b1a dctran.c, bug fix `#235 When Using .TRAN analysis with UIC, ...'
add a breakpoint for UIC

#235 When Using .TRAN analysis with UIC, unconnected pulse bug
http://sourceforge.net/p/ngspice/bugs/235/
2013-12-31 16:09:05 +01:00
Francesco Lannutti fee628b6df unify, use #include "vccsext.h" the same way as in all other models 2013-12-31 16:09:02 +01:00
rlar 60d9e79870 inpcom.c, cleanup 2013-12-31 16:08:59 +01:00
rlar c397bb2013 inpcom.c, abstraction, find_subckt_w_params() 2013-12-31 16:08:58 +01:00
rlar 09a2ea3b0d inpcom.c, cleanup, emphasize a search in subckt_w_params[] 2013-12-31 16:08:57 +01:00
rlar ee626636c3 inpcom.c, abstraction, new_subckt_w_params() 2013-12-31 16:08:55 +01:00
rlar f9dca702c9 inpcom.c, abstraction, new_lib() 2013-12-31 16:08:54 +01:00
rlar ec93de4a5d inpcom.c, cleanup usage of free_function() 2013-12-31 16:08:52 +01:00
rlar 5e00cbb3dd inpcom.c, abstraction, free_function() 2013-12-31 16:08:51 +01:00
rlar cb6340bf5b inpcom.c, think in terms of struct functions instead of an integer 2013-12-31 16:08:50 +01:00
rlar 2929b7b885 inpcom.c, emphasize a potential bug 2013-12-31 16:08:48 +01:00
rlar 77484595a0 inpcom.c, think in terms of struct library instead of an integer 2013-12-31 16:08:47 +01:00
rlar 00f26c7e69 inpcom.c, collect globals into a struct 2013-12-31 16:08:45 +01:00
rlar 936096ed6b inpcom.c, rename N_FUNCS and N_LIBRARY 2013-12-31 16:08:44 +01:00
h_vogt 07a662b271 traninit.c, cleanup indentation 2013-12-31 16:08:43 +01:00
h_vogt bba1d2f5b9 b4v4getic.c, cleanup indentation 2013-12-31 16:08:41 +01:00
rlar e0b56ca877 inpcom.c: rewrite .lib processing 2013-12-31 16:08:40 +01:00
h_vogt 0cf4fa381c inpcom.c: debug output streamlined 2013-12-31 16:08:39 +01:00
h_vogt 87352b7f04 inpcom.c: larger array size, debug output modified 2013-12-31 16:08:37 +01:00
rlar 8fa71d2ae1 inpcom.c: array bounds check 2013-12-31 16:08:36 +01:00
dwarning ff6a4990bd devices/bsim3v32: whitespace cleanup 2013-12-31 16:08:35 +01:00
dwarning 7b2bd10b64 devices/bsim3v32: apply Area Calculation Method (ACM) to the bsim3v3.2.4 model 2013-12-31 16:08:33 +01:00
dwarning 959ee9cfbb devices/bsim3v32: reposition DrainSatCurrent block 2013-12-31 16:08:32 +01:00
dwarning 05a9a8931d devices/bsim3v32: remove duplicate `SourceSatCurrent' block 2013-12-31 16:08:30 +01:00
dwarning af0361d5b4 devices/bsim3v32: single out duplicate `SourceSatCurrent' block 2013-12-31 16:08:29 +01:00
dwarning 85b072f2bb devices/bsim3v32: remove duplicate `DrainSatCurrent' block 2013-12-31 16:08:28 +01:00
dwarning 751c642db2 devices/bsim3v32: single out duplicate `DrainSatCurrent' block 2013-12-31 16:08:27 +01:00
dwarning ecbaf5063a devices/bsim3v32: correct `rdc' and `rsc' definition 2013-12-31 16:08:25 +01:00
h_vogt 8b8f275645 defines.h, winmain.c, .h: fix --with-wingui for CYGWIN 2013-12-31 16:08:24 +01:00
h_vogt a146e6abfb inpcom.c: disable `m' for E, H 2013-12-31 16:08:22 +01:00
dwarning 0aee9a07c4 devices/bsim3v32: whitespace cleanup 2013-12-31 16:08:21 +01:00
dwarning 6801f77cc1 devices/isrc: implement multiplier `m' for current sources 2013-12-31 16:08:20 +01:00
dwarning 56449f54a3 allow Multiplier for current source in subckts 2013-12-31 16:08:18 +01:00
h_vogt 104f795a3e inpcom.c: add some some comments 2013-12-31 16:08:17 +01:00
h_vogt 4d4f05c380 inpcom.c: no multiplier 'm' added to V, I lines in subckt 2013-12-31 16:08:15 +01:00
dwarning 08df80cebe alternative geometry correction `del' for semiconductor capacitors 2013-12-31 16:08:14 +01:00
dwarning 661314a397 someone gives version=3.30e+00 in bsim models 2013-12-31 16:08:13 +01:00
h_vogt 745ea9ff3e measure.c: disable autostop, if no .meas commands found 2013-12-31 16:08:11 +01:00
h_vogt d4e5d1f836 subckt.c: enable correct model renaming for inductors 2013-12-31 16:08:10 +01:00
h_vogt f102bd985d devices/ind: implement multiplier `m' 2013-12-31 16:08:09 +01:00
h_vogt edce7230c2 resload.c: `m' already set in ressetup.c 2013-12-31 16:08:07 +01:00
h_vogt 025c0870d9 devices/res: whitespace cleanup 2013-12-31 16:08:06 +01:00
h_vogt 155e082641 devices/ind: whitespace cleanup 2013-12-31 16:08:05 +01:00
h_vogt b63cae8798 devices/cap: whitespace cleanup 2013-12-31 16:08:03 +01:00
h_vogt 4a1cdf0ada devices/ind: implement `tc1', `tc2' instance parameters 2013-12-31 16:08:02 +01:00
h_vogt b50f9b97bb devices/cap: implement `tc1', `tc2' instance parameters 2013-12-31 16:08:01 +01:00
h_vogt 0facd43319 move instance m-factor into ressetup 2013-12-31 16:07:59 +01:00
h_vogt 4b8f031971 resload.c, restemp.c: tc1, tc2 instance parameters override model parameters 2013-12-31 16:07:58 +01:00
dwarning 08beef9152 bsim3: fix incorrect version printout 2013-12-31 16:07:57 +01:00
dwarning 8cc75de0b5 this is the delvto/mulu0 instance extension to bsim3v3 2013-12-31 16:07:55 +01:00
dwarning 5f0a6aa0fb devices/bsim3: whitespace cleanup 2013-12-31 16:07:54 +01:00
h_vogt e953d9a796 inpcom.c: hot fix for nested ternary expressions 2013-12-31 16:07:52 +01:00
dwarning ba0529cef0 devices/cap, devices/res: some parameter aliases for compatibility 2013-12-31 16:07:51 +01:00
rlar 93052df7d0 sparse/*.c, whitespace 2013-12-31 16:07:50 +01:00
rlar 075b30d686 sparse/*.c, rename `eMatrix' --> `Matrix' (comments) 2013-12-31 16:07:48 +01:00
rlar 7ed0b5cef6 sparse/*.c, rename `eMatrix' --> `Matrix' (prototypes) 2013-12-31 16:07:47 +01:00
rlar f30796a7e6 sparse/*.c, rename `eMatrix' --> `Matrix' 2013-12-31 16:07:46 +01:00
rlar 9c48863912 sparse/*.c, simplify, drop the local copy `Matrix' 2013-12-31 16:07:44 +01:00
rlar b02d34280c sparse/*.c, unify, use local copy `Matrix' instead of `eMatrix' 2013-12-31 16:07:43 +01:00
rlar ec8a3b79a2 sparse/*.c, drop unnecessary (spREAL) cast 2013-12-31 16:07:42 +01:00
rlar f10d9f75c1 sparse/*.c, drop unnecessary (double) cast 2013-12-31 16:07:41 +01:00
rlar a5d131d8a5 sparse/*.c, drop unnecessary (int *) cast 2013-12-31 16:07:39 +01:00
rlar 2517756eff sparse/*.c, drop unnecessary (MatrixPtr) cast 2013-12-31 16:07:38 +01:00
rlar 5c903a6f5c sparse/*.c, avoid (RealNumber *) casts by proper use of ElementPr 2013-12-31 16:07:37 +01:00
rlar 6d858200b6 sparse/*.c, drop unnecessary (void *) cast 2013-12-31 16:07:35 +01:00
rlar 35f1c18c61 sparse/*.c, drop unused artifacts 2013-12-31 16:07:34 +01:00
dwarning bef25a8b58 adapt the sense2 code to ngspice
workaround, make the opaque struct MatrixElement partially visible

this struct is private to the `sparse' world,
  and lives in "maths/sparse/spdefs.h"
which can't be included here, because
  it is incompatible to the rest of ngspice.

this is the same problem as in
  ciderlib/oned/oneprint.c
  ciderlib/twod/twoprint.c
2013-12-31 16:07:33 +01:00
rlar 0440f0584e fix an incorrect typedef and cast
which was of no consequence,
  because nobody made use of it.

ancient, already in the very first commit of ngspice
  Date:   Thu Apr 27 20:03:57 2000 +0000
2013-12-31 16:07:31 +01:00
dwarning 4ef874bdae fix a wrong GMIN implementation 2013-12-31 16:07:30 +01:00
rlar dc0fbe4220 bug fix, preserve filename case for `codemodel', `load' and `use'
reported and fixed by Emil Lambrache on the bug tracker
http://sourceforge.net/p/ngspice/bugs/241/
  "#241 case sensitivity not preserved for file names"
2013-12-31 16:07:29 +01:00
dwarning caf9a9abe7 fix Makefile.am for SENSDEBUG code 2013-12-31 16:07:27 +01:00
dwarning f26d28b5bd fix SENSDEBUG related code 2013-12-31 16:07:26 +01:00
h_vogt 89c4c16829 swload.c: reinstate the truncation code from swtrunc.c
which was removed in the following commit:

commit 0dae4607a0
Date:   Wed Apr 25 18:28:20 2001 +0000

    Added a patch to csw and sw from Jon Engelbert dealing with negative histeresys
2013-12-31 16:07:25 +01:00
h_vogt 8ac5f64500 txldefs.h: update some comments 2013-12-31 16:07:24 +01:00
h_vogt e91063d096 sharedspice.c, .h, .vcproj: comments, update für MS Visual Sudio build 2013-12-31 16:07:21 +01:00
h_vogt a0a2f15a52 sharedspice.c, *.h: interface update, more comments 2013-12-31 16:07:20 +01:00
h_vogt b54605c225 sharedspice.c: improved comments 2013-12-31 16:07:18 +01:00
h_vogt e86c3dd297 sharedspice.c: remove bug causing sigsegv 2013-12-31 16:07:17 +01:00
rlar c0eeb96dd9 xpsice, fix premature tfree() invocation
reported by "Heini X" on the ngspice-users mailing list

this bug was introduced in

: commit 0af75f3bd9
: Date:   Sat Aug 18 18:31:23 2012 +0200
:
:     subckt.c, mif_inp2.c: plug XSPICE setup memory leaks
2013-12-31 16:07:16 +01:00
rlar 13726751ab sense2, cleanup, avoid (SENstruct *) casts 2013-12-31 16:07:14 +01:00
rlar e2867a3ede sense2, whitespace cleanup
checked for object file invariance
2013-12-31 16:07:13 +01:00
Francesco Lannutti 581e0a6d11 fix sense2, which is unsupported code 2013-12-31 16:07:12 +01:00
h_vogt ffc7a0aa1b sharedspice.c: small updates 2013-12-31 16:07:10 +01:00
h_vogt a2ea2585c1 icm/makedefs.in: add -lm for self-consistent shared libs 2013-12-31 16:07:09 +01:00
h_vogt 35550cfd1d sharedspice.c: fix sigsev fault under LINUX 2013-12-31 16:07:08 +01:00
h_vogt 23779a9eb1 inp.c: add function prototype 2013-12-31 16:07:06 +01:00
Francesco Lannutti 1dd0535ecf whitespace, align TSTALLOC calls in the setup routine of the MES model 2013-12-31 16:07:05 +01:00
Francesco Lannutti 0ea7a56e21 whitespace, align TSTALLOC calls in the setup routine of the JFET2 model 2013-12-31 16:07:04 +01:00
Francesco Lannutti 451294bcf5 whitespace, align TSTALLOC calls in the setup routine of the JFET model 2013-12-31 16:07:02 +01:00
h_vogt 7e85c0b6ba sharedspice.c: update stopping printsend thread 2013-12-31 16:07:01 +01:00
Francesco Lannutti 42a78b0ac7 whitespaces 2013-12-31 16:07:00 +01:00
Francesco Lannutti e63ba69888 remove a duplicate entry in the setup routine of the BSIM3SOIPD model 2013-12-31 16:06:59 +01:00
Francesco Lannutti 37f952f370 remove a duplicate entry in the setup routine of the BSIM3SOIDD model 2013-12-31 16:06:57 +01:00
h_vogt bbcadcbd11 sharedspice.c: command bg_pstop to stop printsend thread before unloading ngspice library 2013-12-31 16:06:56 +01:00
h_vogt f95f7c661d sharedspice.c: thread handling updated 2013-12-31 16:06:55 +01:00
h_vogt 295c808b01 alloc.c sharedspice.c: improve thread safety
still much more to be done!
2013-12-31 16:06:53 +01:00
h_vogt 3f4f0e392c sharedspice.c: correction for LINUX 2013-12-31 16:06:52 +01:00
h_vogt 9da123df26 icm/dlmain.c: restrict exported symbols under LINUX 2013-12-31 16:06:48 +01:00
h_vogt 83d5606da4 ngspice.h: add shared module 2013-12-31 16:06:47 +01:00
h_vogt 62324299e1 misccoms.c: special return value for shared module 2013-12-31 16:06:45 +01:00
h_vogt 3211674b2f error.c: no exit, but callback if shared module 2013-12-31 16:06:44 +01:00
h_vogt b62b67bf25 display.c: exclude SHARED_MODULE if console 2013-12-31 16:06:43 +01:00
h_vogt ac553eedba src/Makefile.am include/ngspice/Makefile.am: add shared module 2013-12-31 16:05:33 +01:00
h_vogt ff4d42d651 outitf.c: prepare for feedback in shared ngspice 2013-12-31 12:57:56 +01:00
h_vogt a6976f9857 main file and header for ngspice as shared module 2013-12-31 12:57:55 +01:00
h_vogt 1767991236 new flag `SHARED_MODULE' for shared module 2013-12-31 12:57:51 +01:00
h_vogt bfb2eeebbe dctran.c: better rounding for status report 2013-12-31 12:57:00 +01:00
h_vogt 30a44d1be5 --with-windows --> --with-wingui 2013-12-31 12:56:59 +01:00
h_vogt df65fa28cf separate progress report from having Windows GUI 2013-12-31 12:56:59 +01:00
h_vogt 5a44b3f7f8 fix `SetAnalyse()' re-declaration 2013-12-31 12:56:58 +01:00
h_vogt d7e291c53a HAS_WINDOWS --> HAS_WINGUI
allow compilation on MS Windows without GUI
2013-12-31 12:56:57 +01:00
h_vogt 1e88db6f7d add command 'circbyline' to allow entering circuit line by line 2013-12-31 12:56:56 +01:00
h_vogt b503ea2d12 inp.c: do not run all 'save' commands upfront,
but cumulative when they appear in the .control section
2013-12-31 12:56:55 +01:00
h_vogt 79a9fdbcd7 breakp2.c: allow v(12) and i(vdd) in 'save' command 2013-12-31 12:56:55 +01:00
h_vogt 4865f7c2af runcoms2.c: update for dbs after remcirc 2013-12-31 12:56:54 +01:00
h_vogt 7a83423685 update 'alter' handling as in ngspice main.c 2013-12-31 12:56:54 +01:00
h_vogt 7bc879726d make database dbs local to each circuit 2013-12-31 12:56:53 +01:00
rlar efd8843f21 inpcom.c: cleanup comments 2013-12-31 12:56:52 +01:00
rlar a07817271a expand_libs(): think of `next' instead `prev' 2013-12-31 12:56:52 +01:00
rlar bdea094050 expand_libs(): rename `tmp_ptr2' --> `next' 2013-12-31 12:56:51 +01:00
rlar 27d68e8db7 expand_libs(): reposition `keep_char' restorage 2013-12-31 12:56:50 +01:00
rlar fcb5b12364 expand_libs(): shrink scope of `found_section' 2013-12-31 12:56:50 +01:00
rlar edc2503a3a expand_libs(): bug fix, missing check for .endl at the tail of a file 2013-12-31 12:56:49 +01:00
rlar 182911a5c7 inpcom.c: rename local variable names 2013-12-31 12:56:48 +01:00
rlar 07d3e3aa42 inpcom.c: rename local variable names 2013-12-31 12:56:48 +01:00
rlar 99141bbdfc inpcom.c: rename local variable names 2013-12-31 12:56:47 +01:00
rlar 181742a020 inpcom.c: rename found_lib_name --> found_section 2013-12-31 12:56:46 +01:00
rlar 7d5c48c0f2 inpcom.c: rename inp_determine_libraries() --> collect_section_references() 2013-12-31 12:56:46 +01:00
rlar fda6912f0e inpcom.c: rename expand_libs() --> expand_section_references() 2013-12-31 12:56:45 +01:00
rlar e898eb4faf inpcom.c: rename function argument names 2013-12-31 12:56:45 +01:00
rlar ffe82f1722 inpcom.c: rename function argument names 2013-12-31 12:56:44 +01:00
rlar b22be31496 inpcom.c: cleanup 2013-12-31 12:56:43 +01:00
rlar adeb2885c5 inpcom.c: rename library_file[] --> library_name[] 2013-12-31 12:56:43 +01:00
rlar 20f5bb3e2e inpcom.c: rename library_name[][] --> section_name[][] 2013-12-31 12:56:42 +01:00
rlar b8e3843f45 inpcom.c: rename library_ll_ptr[][] --> section_ref[][] 2013-12-31 12:56:41 +01:00
rlar aa9d291114 inpcom.c: rename libraries[] -> library_deck[] 2013-12-31 12:56:41 +01:00
rlar 61ab7b1de2 inpcom.c: rename num_lib_names --> num_sections 2013-12-31 12:56:40 +01:00
rlar d619a8b024 inpcom.c: rename new_lib_name() --> remember_section_ref() 2013-12-31 12:56:39 +01:00
rlar 05bd53b8de inpcom.c: rename find_lib_name() --> find_section() 2013-12-31 12:56:39 +01:00
rlar 09e89df89d inpcom.c: static declaration of library related global variables 2013-12-31 12:56:38 +01:00
h_vogt c15608c903 unique modtab for each circuit, store in ckt structure 2013-12-31 12:56:38 +01:00
h_vogt 4bed98936c inp.c: nullify `dbs' for use with 'source' command 2013-12-31 12:56:37 +01:00
rlar 3ea7a23394 fix bug `#233 cktdojob: Uninitialized variable: ANALmaxnum'
this is WANT_SENSE2 specific

http://sourceforge.net/p/ngspice/bugs/233/
2013-12-31 12:56:36 +01:00
rlar 14ae087ec5 fix bug `#232 soi3cap.c: wrong array index alpha_args[2]'
though incorrect, this didn't lead to misbehavior.

http://sourceforge.net/p/ngspice/bugs/232/
2013-12-31 12:56:36 +01:00
rlar d1764cc7fa inp_readall() change function signature for readability 2013-12-31 12:56:35 +01:00
rlar 536d3c229f inpcom.c: abstract into new function read_a_lib() 2013-12-31 12:56:34 +01:00
rlar eaf4801b33 inpcom.c: rewrite using new function find_lib() 2013-12-31 12:56:34 +01:00
rlar 9d856dad61 inp_determine_libraries(): rewrite 2013-12-31 12:56:33 +01:00
rlar 9e3f2a9d28 inp_determine_libraries(): can happen at most once 2013-12-31 12:56:32 +01:00
rlar 111a258ff4 inpcom.c: small cleanup 2013-12-31 12:56:32 +01:00
rlar b4db509d83 inpcom.c: comment .lib semantic 2013-12-31 12:56:31 +01:00
rlar 7463499523 inp_readall(): rename local variables 2013-12-31 12:56:31 +01:00
rlar 3877e2d0d6 inp_readall(): local scope for `tmp_ptr1' 2013-12-31 12:56:30 +01:00
rlar 5fda0e2694 inp_readall(): local scope for `fdo' 2013-12-31 12:56:29 +01:00
rlar 8a154a7a9a use SP_VOLTAGE instead of literal value `3'
(grep "git --no-pager grep -nH -e '->[ \t]*type.*[0-9]'")
2013-12-31 12:56:29 +01:00
rlar b3847817a1 retire #define NODE_VOLTAGE, use SP_VOLTAGE instead
(grep "git --no-pager grep -nH -e '\\(SP_\\|NODE_\\)\\(VOLTAGE\\|CURRENT\\)'")
2013-12-31 12:56:22 +01:00
dwarning d823272a1b jfet: new noise model selector nlev=3 for correct noise in non-saturated region 2013-12-31 12:54:45 +01:00
dwarning ef2614d014 jfet: whitespace cleanup 2013-12-31 12:54:44 +01:00
rlar 4184aa8c10 cleanup, use array operator
checked for object file invariance on linux with
   ./configure --enable-debug=no --enable-maintainer-mode --with-readline=yes --enable-cider --enable-ndev --enable-pss --enable-xspice
2013-12-31 12:54:43 +01:00
h_vogt 92a529f15c winmain.c: print buffer enlarged 2013-12-31 12:54:43 +01:00
h_vogt baad0b1bb8 inp.c: some comments added 2013-12-31 12:54:34 +01:00
rlar 6c8f002eea unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
rlar 1ee88a5694 prepare for #ifndef include wrapper unification 2013-12-31 12:54:31 +01:00
rlar 8cafeed8f0 rename #ifndef include wrapper CKT_H 2013-12-31 12:54:30 +01:00
rlar c377b7a6b3 avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
rlar 5086a90746 cleanup some preprocessor macros 2013-12-31 12:54:15 +01:00
h_vogt 6c74513120 fix bug #229 `Node name "n" is sometimes toxic'
Error: too few nodes for MOS or CPL:
m6 1 n 2 vss nch.3 l=4.3e-07 ...

http://sourceforge.net/p/ngspice/bugs/229/
2013-09-20 22:27:35 +02:00
rlar 8c69016464 inpcom.c: rewrite for readability 2013-09-20 21:38:58 +02:00
rlar dbfc90df0a inpcom.c, bug fix, incorrect start value for `prev'
this bug was introduced in the following commit,
which `reused' variable prev,
failing to preserve its initialization value NULL

Author: pnenzi <pnenzi>
Date:   Mon Oct 8 21:10:34 2007 +0000

    Improvements in frontend by Phil Barker
2013-01-12 23:26:42 +01:00
Francesco Lannutti d448378f58 Fixed a memory leak in dcpss.c on the "err_conv" array 2013-01-12 14:10:21 +01:00
h_vogt 8e5ad3d344 ivars.c: prevent crash in CYGWIN batch mode, if NGSPICE_INPUT_DIR given
remove unused Default_MFB_Cap
2013-01-01 17:31:44 +01:00
dwarning 752ab78bd8 b4soinoi.c: Correct the flicker noise model with device multiplier 2013-01-01 17:29:02 +01:00
h_vogt 3c078cde57 inp.c: remove buf if .control section contains only 'save...' lines 2013-01-01 12:32:04 +01:00
rlar d6354598b9 fix commit "update hisim to version 2.7.0"
missing #include "ngspice/config.h"

thats required for consistent interpretation of the type
  struct IFdevice
from ngspice/ifsim.h
included from ngspice/devdefs.h

(invisible XSPICE definition leading
   to different size and layout of this struct)
2012-12-31 11:26:20 +01:00
h_vogt 20716d3496 inpcom.c: exit if 'poly' option is required, but XSPICE not available,
remove memory leak
2012-12-30 19:27:36 +01:00
h_vogt 82c5d5b3be dcpss.c: Allow XSPICE usage without excessive debug message 2012-12-30 15:34:24 +01:00
h_vogt 9a4bb846a6 com_dl.c: exit upon codemodel load error 2012-12-30 15:32:44 +01:00
h_vogt 0ecd633334 dcpss.c : compatibility to MS Visual Studio C
vngspice.vcproj, config.h: add PSS to Vc project
2012-12-28 21:19:20 +01:00
Stefano Perticaroli 79bffc78a1 next version of PSS2
which was reviewed and rewritten on branch `PSS-2-try-to-rebase+4'
by Stefano Perticaroli and Francesco Lannutti
2012-12-28 18:15:37 +01:00
rlar 0be61b3e5a remove PSS2 2012-12-28 18:10:05 +01:00
h_vogt 1b4c17a464 rename spicelib/parser/inp.h to inpxx.h
since we have another "inp.h" in src/frontend
2012-12-27 14:25:43 +01:00
Francesco Lannutti f153208a5f nipred.c, remove unused variable `temp' 2012-12-25 01:40:16 +01:00
Francesco Lannutti 574d39e29c remove almost empty src/maths/ni/nipred.h 2012-12-25 02:27:04 +01:00
dwarning 5dd6351773 distclean and maintainer-clean shall remove generated Makefile.am files in adms directories 2012-12-25 16:41:57 +01:00
Francesco Lannutti e27d43cd0c remove empty src/maths/ni/*.h include files 2012-12-24 11:28:30 +01:00
h_vogt 298f9ceaa9 tclspice.c, ngspice.pm, config.h in visualc: prepare ngspice-25 2012-12-23 12:13:38 +01:00
h_vogt 2a9723e06d inpdpar.c: remove memory leak 2012-12-22 20:20:00 +01:00
h_vogt 8a1cec25a5 vsrc, isrc TRNOISE: allow repeated calls to 'tran' 2012-12-22 17:57:31 +01:00
h_vogt 237fd538d1 cktntask.c: remove meory leak 2012-12-22 10:39:15 +01:00
rlar 4146a8644a use enum Mif_Port_Type_t values instead of numericals 2012-12-20 18:31:38 +01:00
dwarning 12b2287aa6 remove of modtab after the job is done to issue additional source commands 2012-12-19 18:49:32 +01:00
h_vogt 8b86617e2d isrcload.c: remove memory read beyond array boundary 2012-12-18 23:22:45 +01:00
rlar 0bb266eab0 use enum dvec_flags values instead of numericals 2012-12-16 19:34:13 +01:00
rlar 190932bf65 use enum simulation_types values instead of numericals 2012-12-16 18:53:28 +01:00
h_vogt 3d28a3a225 device.c: plug memory leak in 'alter' command 2012-12-16 14:07:33 +01:00
h_vogt 7d45880654 plotit.c: remove memory leaks 2012-12-15 22:59:47 +01:00
h_vogt 717fe81c17 com_display.c: remove memory leak 2012-12-15 22:44:21 +01:00
rlar e67e9da202 inperror.c, release errMsg when it has been consumed 2012-12-15 21:51:59 +01:00
h_vogt cea4eb09d6 niiter.c: indentations 2012-12-15 20:07:42 +01:00
h_vogt ba6dd7b1af main.c, inperror.c: unify errMsg 2012-12-15 20:03:57 +01:00
h_vogt 07ec7bd412 inperror.c: indentations 2012-12-15 19:51:56 +01:00
h_vogt 8f44839f3e com_measure.c, measure.c: remove memory leaks 2012-12-09 16:24:39 +01:00
h_vogt 12e19d140b measure.c, rewrite do_measure() 2012-12-09 13:27:53 +01:00
h_vogt 155b6134a8 apply_func(), use arg->pn_value->v_name instead of recreated name 2012-12-09 13:27:53 +01:00
h_vogt aac7c1d4be com_diff(), use hash tables for the vector search
patch originally provided by Bill Swartz, 2010
reduces vector search time from O(n*n) to O(n)
2012-12-09 13:27:53 +01:00
h_vogt c5de0c21c9 findvec(), use hash tables for the vector search
patch originally provided by Bill Swartz, 2010
reduces vector search time from O(n) to O(1)
2012-12-09 13:27:53 +01:00
h_vogt 75447dc43c implement spice_dstring_append_lower()
patch originally provided by Bill Swartz, 2010
2012-12-09 13:27:53 +01:00
h_vogt a13e5bf867 measure.c: outputting 'meas' status in Windows GUI 2012-12-05 23:06:16 +01:00
dwarning 0f2794267c jfet model temperature extension, tcv and bex parameter 2012-12-04 20:58:01 +01:00
rlar 2e40bf9bff allow Ctrl-d to quit
based upon Cody Creagers patch,
  EOF Control-D support - ID: 3586069
  http://sourceforge.net/tracker/?func=detail&aid=3586069&group_id=38962&atid=423917
2012-12-02 12:26:24 +01:00
rlar 6260fd16ec cmpp, rewrite for proper report of error locations 2012-12-01 22:46:53 +01:00
rlar 348e3976e7 cmpp, use <stdarg.h> for print_error() 2012-12-01 22:39:21 +01:00
rlar 6757c48602 cmpp, remove dead code 2012-12-01 22:29:32 +01:00
rlar d9590f31c3 cmpp, don't exit(0) when reporting an error 2012-12-01 22:29:29 +01:00
rlar 83e3100917 remove unused variables 2012-12-01 16:05:20 +01:00
rlar b4b4e63611 hisimhv1, avoid warnings 2012-12-01 16:05:20 +01:00
h_vogt b216db8ffd cplsetup.c: indentations etc. 2012-12-01 13:32:27 +01:00
h_vogt d747f0de50 cplsetup.c: remove memory leaks 2012-12-01 13:28:28 +01:00
h_vogt 6a6c49516a inpcom.c: remove memory leak 2012-12-01 13:24:46 +01:00
rlar b45c4ea78b ltraacct.c, shortcutting the bug fix
use following fact at the artificial timestep time[-1]
   voltage[-1]  ===  voltage[0]
to shortcut the expressions
2012-12-01 11:00:14 +01:00
rlar e4cc63417b ltraacct.c, bug fix
reported by Gary Hennigan
on tracker
  http://sourceforge.net/tracker/index.php?func=detail&aid=3591132&group_id=38962&atid=423915

access to uninitialized memory,
  trying to acquire the "time" of a projected auxiliary timestep in the past.

now using the following auxiliary timestep t[-1]

  voltage(t[-1])  ===  voltage(t[0])
and
  t[-1]   ===   t[0]  -  (t[1] - t[0])

the details are not understood,
  but thats certainly better than accessing uninitialized memory.
2012-12-01 10:38:35 +01:00
h_vogt 9d52468471 inpcom.c: plug memory leaks 2012-11-27 23:56:00 +01:00
dwarning 51ec28d174 hisimhv update to version 1.2.3 2012-11-26 23:17:11 +01:00
h_vogt d0f58dc5a6 inpcom.c: prevent invalid memory read/write 2012-11-25 18:27:42 +01:00
dwarning c1705e32ae change model name from hisimhv to hisimhv1 2012-11-25 17:59:50 +01:00
dwarning 67aaf6a26e rename directories hisimhv --> hisimhv1 2012-11-25 17:52:46 +01:00
dwarning 6abd2e2c0c gnuplot.c: allow png terminal by gnuplot_terminal variable 2012-11-21 22:12:27 +01:00
dwarning 79119b3372 update hisim to version 2.7.0 2012-11-21 20:36:52 +01:00
Francesco Lannutti 0d0426e05c b3ld.c, b4ld.c, b3v32ld.c: charge computation for MODEDCTRANCURCE instead of MODEDC
this is a fix for commit:
b3ld.c, b4ld.c, b3v32ld.c: enable capacitance calculation during dc sweep
2012-11-21 19:30:43 +01:00
h_vogt a581c3b43f mif_inp2.c: bug 3389072 fixed 2012-11-19 23:06:39 +01:00
h_vogt b676a73167 beautify code 2012-11-19 21:48:13 +01:00
h_vogt a419712eca inp.c: pre_<command> to allow command execution from the .control section before parsing the circuit 2012-11-17 16:30:17 +01:00
rlar 843126d9a6 fix `make dist' 2012-11-16 22:29:55 +01:00
h_vogt e4af384d7b outitf.c: do not call clock() if MS Windows GUI 2012-11-07 22:17:16 +01:00
rlar 451c121dd5 improve commit `variable.c: add strict error handling' 2012-11-07 19:38:28 +01:00
dwarning b7080fdbb7 make the level switch compatible for HiSIM2 and HiSIMHV 2012-11-07 11:35:51 +01:00
dwarning 13e1a7a5b9 rm whitespaces 2012-11-07 11:33:07 +01:00
Francesco Lannutti 952f55866e remove "error.h" from Makefile.am
this file is not anymore in the "frontend" folder
and "make dist" failed to generate the tarball
2012-11-06 23:55:49 +01:00
dwarning 44786a490b fix a leak in devmodtranslate 3 terminal section 2012-11-06 20:56:27 +01:00
Francesco Lannutti a4e0cfe341 move windows specific `STRICT' definition to canonical place 2012-11-06 19:31:17 +01:00
Francesco Lannutti 1209a5b025 Makefiles, drop some CVS remnants 2012-11-06 19:18:54 +01:00
Francesco Lannutti 6b7f408ca8 avoid a compiler warning, (unused static function) 2012-11-06 19:13:54 +01:00
Francesco Lannutti 32c6a76fc2 Added datarootdir variable as usual behavior and to avoid autoconf warning 2012-11-06 10:38:44 +01:00
Francesco Lannutti 99296c9530 Solved linking error for ngsconvert after ft_stricterror patch in src/frontend/variable.c 2012-11-06 10:32:46 +01:00
Francesco Lannutti b361dee4cc fix #include <> versus "" 2012-11-05 21:34:54 +01:00
rlar 9976c1e177 XSPICE, install dlmain.c
for separate compilation of XSPICE user models
2012-11-05 21:23:52 +01:00
dwarning 082a3e92ae allow more then 4 terminal mos models in subckts 2012-11-05 18:16:55 +01:00
h_vogt d5a2a361f6 variable.c: add strict error handling 2012-11-04 14:16:27 +01:00
h_vogt 85244d0222 inpcom.c: remove bug in inp_add_series_resistor(),
prevent crash in inp_remove_ws() upon erroneous input
2012-11-04 14:15:37 +01:00
h_vogt 5c4f8946f6 inp.c: avoid crash if setparse() returns NULL 2012-11-04 14:12:03 +01:00
h_vogt d8d8cf147e spiceif.c: correct types being loaded by snload() 2012-11-03 16:24:01 +01:00
h_vogt 65b976dab7 rename commands 'savesnap', 'loadsnap' to 'snsave', 'snload'
to avoid conflict with command 'save'
2012-11-01 14:41:13 +01:00
rlar ff2138b186 hisim2, bug fix, a numerical problem in the hisim2 and hisimhv models
First seen when compiled with gcc-4.6.2 -g -O1

The macro `Fn_SZ' which boils down to
  1/2 * (x + sqrt(x*x + c*c))
was used in a context where a negative result
  blew up the following computations.
(used to compute `Egidl', which is used to
 compute exp(-1 / (Egidl + small_constant)))

For large negative values of x the computation
boils down to
  1/2 ( x + almost(|x|) )
where the summands almost cancel each other,
sometimes yielding a small negative result.

small_constant was too small to avoid a big
  result for -1/(Egidl + small_constant)
yielding an `inf' during the exp() computation,
which was later multiplied with a `0'
  yielding a NaN,
which was carried forward
  during the rest of computations.

Because the error of the cancellation scales
with the magnitude of x, no larger `small_constant'
could have avoided the problem.

Presumably the problem was amplified
  by a mixture of precisions (double versus extended float)
  of intermediate values.
(the program wasn't compiled for sse)

( x was -2.812500e+06,
  c was  1.000000e-02,
  Fn_SZ result was -1.853095e-11

  thus the cancellation remainder
  was of relative size
    6.6e-18
  which is approximately
    2^-57
  and thus more accurate
   as a `double float' could have delivered
)
2012-11-01 23:04:51 +01:00
rlar 0c0f21faaf hisim2, use TMALLOC, funcall, and NULL casts 2012-11-01 22:53:43 +01:00
rlar a7a2ff0f7b hisim2, fix NevalSrc(), Nintegrate() redeclaration 2011-05-22 10:16:08 +00:00
h_vogt a57361333a inpcom.c: add series resistor to each inductor with option rseries=1m 2012-10-29 23:13:20 +01:00
h_vogt c53f74ee5f com_ghelp.c: better message for help under Windows 2012-10-29 23:09:35 +01:00
Francesco Lannutti 08ec219417 remove all .cvsignore files 2012-10-26 18:30:14 +02:00
Francesco Lannutti 1dc70189a7 remove compilation warnings (type casts) 2012-10-26 18:04:44 +02:00
Francesco Lannutti d8b2ac56a3 rename "bsim3soi" device to "bsimsoi" 2012-10-26 17:56:59 +02:00
rlar 2142d39506 remove adms3 #2/2, files 2012-10-25 18:54:09 +02:00
rlar ba131a5077 remove adms3 #1/2, code
due to license issues, and with the aim to approach the next
  ngspice release 25
we have to move this over to a development branch
2012-10-25 18:54:09 +02:00
dwarning e75fdab962 hisim2 update to version 2.6.1 2012-10-24 08:54:31 +02:00
Francesco Lannutti fd4c492562 white space changes 2012-10-22 23:06:25 +02:00
Francesco Lannutti 5f34eb2729 white space changes 2012-10-22 23:06:25 +02:00
Francesco Lannutti c23bd59c44 removed ancient PARALLEL_ARCH feature
removed variables
  ARCHme
  ARCHsize

removed functions
  SMPcombine()
  SMPcCombine()
  CKTpartition()

removed files
  spcombin.c
  cktpartn.c

removed struct slots
  STATcombineTime
  STATtranCombTime
  STATacCombTime
  GENowner
  <MODEL>owner
2012-10-22 23:06:25 +02:00
Francesco Lannutti cb0ff8049a white space changes 2012-10-22 23:06:25 +02:00
Francesco Lannutti 3342f58149 bsim3v1/ChangeLog, bsim4v4/ChangeLog: cleanup 2012-10-22 23:06:25 +02:00
rlar a394d79c56 use utf-8 encoding 2012-10-20 21:27:15 +02:00
rlar 2bcadae16c missing newline at end of file 2012-10-20 19:49:10 +02:00
rlar 5d1bc8e55d Changed line-ending from DOS to UNIX 2012-10-20 19:48:48 +02:00
h_vogt 0853c374a1 inpcom.c: require parentheses in ternary functions if numparam
parser is involved (no B sources)
2012-10-17 22:28:49 +02:00
rlar 15606cf281 com_print(), fix a memory leak 2012-10-17 19:51:30 +02:00
rlar 99b0e78c84 DCtrCurv(), fix a memory leak 2012-10-17 19:39:30 +02:00
rlar f038d59fbe mkfnode(), fix a memory leak 2012-10-17 19:39:02 +02:00
rlar 31fa48cf17 com_write(), com_write_sparam(), fix a big memory leak 2012-10-15 20:55:55 +02:00
h_vogt c6e631f30a fourier.c: rename stored vectors 2012-10-15 18:37:07 +02:00
h_vogt ae25f54709 inpcom.c: plug small memory leak 2012-10-15 18:35:12 +02:00
rlar 0336e31c57 vector.c, rewrite vec_basename(), FIXME !
This rewritten code is functionally equivalent to the previous code,
yet the result is queer,
because the char *v_name slot of struct dvec is read
beyond its terminating '\0'

Is there indeed some code in ngspice which creates
v_name strings with an embedded '\0' ?
2012-10-13 19:09:49 +02:00
rlar ebc50b8639 inpcom.c, rewrite 2012-10-13 16:48:15 +02:00
h_vogt 339a002c55 fourier.c: output also to vector feature request tracker no. 3575841 2012-10-13 15:56:19 +02:00
rlar 374b716fdd fourier.c: remove even more memory leaks 2012-10-13 13:25:00 +02:00
rlar a4e167a657 inpcom.c, use strchr() in favour of strstr() 2012-10-13 12:27:20 +02:00
rlar 3b2b130177 inpcom.c, inp_fix_ternary_operator_str(), use copy_substring() 2012-10-13 12:00:29 +02:00
rlar 680e45f7f3 inpcom.c, inp_fix_ternary_operator_str(), rewrite 2012-10-13 11:47:22 +02:00
rlar 9352a4b72d inpcom.c, get_instance_subckt(), more carefull when there is trailing whitespace 2012-10-13 11:31:37 +02:00
rlar f61f323be0 inpcom.c, get_instance_subckt(), rewrite 2012-10-13 11:31:37 +02:00
h_vogt 2754771a61 fourier.c: remove memory leaks 2012-10-13 11:21:29 +02:00
rlar 7f0065e7fb inpcom.c, make use of copy_substring() 2012-10-13 11:03:52 +02:00
rlar 69bf624097 inpcom.c, rewrite 2012-10-13 11:02:34 +02:00
rlar 3f4e2eed49 inpcom.c, bug fix in inp_get_subckt_name() 2012-10-13 10:45:09 +02:00
rlar 021a5dd871 inpcom.c, rewrite 2012-10-12 19:23:46 +02:00
rlar e0b796f3c5 inpcom.c, rewrite 2012-10-12 18:10:52 +02:00
rlar 3085c471ac inpcom.c, cleanup 2012-10-12 17:58:05 +02:00
rlar dbf288bae7 inpcom.c, fix a bug
which was introduced in commit
  skip-ws, #5/6, unify macro versions, obj not invariant
where the SKIP.*back.* macros have been unified

FIXME, the check for `\0' in the backwards direction if of course nonsense.
These backward functions either shall not check it at all (being optimistic),
or they shell check against a start of string pointer.
2012-10-11 19:33:32 +02:00
rlar caf50ba4d8 inpcom.c, cleanup 2012-10-10 20:48:42 +02:00
h_vogt 3ca1235602 gnuplot.c: improve scaling of y axis 2012-10-09 19:47:24 +02:00
rlar 2b72fbbc5e skip_ws(), #2/2, drop macros, obj-invariant 2012-10-08 17:48:27 +02:00
rlar 9f3f794ced skip_ws(), #1/2, use functions instead of macros 2012-10-08 17:28:52 +02:00
rlar 701942cebf skip-ws, #6/6, unify macro versions, obj-invariant
checked for object file invariance
2012-10-07 21:53:42 +02:00
rlar 532ff76dac skip-ws, #5/6, unify macro versions, obj not invariant 2012-10-07 21:53:29 +02:00
rlar 6a5f234519 skip-ws, #4/6, use macros, obj-invariant
checked for object file invariance
2012-10-07 21:52:54 +02:00
rlar 4bf52410fb skip-ws, #3/6, introduce macros, obj-invariant
checked for object file invariance
2012-10-07 21:52:35 +02:00
rlar e3b5ff94c5 skip-ws, #2/6, prepare for rewrite, obj-invariant
checked for object file invariance
2012-10-07 21:52:22 +02:00
rlar 841db86e00 skip-ws, #1/6, prepare for rewrite, obj-invariant
checked for object file invariance
2012-10-07 21:52:09 +02:00
h_vogt 996dedaa71 inpcom.c: remove cccs from F, ccvs from H source 2012-10-07 17:12:42 +02:00
h_vogt e69f50270d inpcom.c: correct replacement of vccs, vcvs in E, G-sources
search for 'par(' instead of 'par'
2012-10-07 15:19:28 +02:00
rlar 01ed0ac5d9 com_fft(), com_psd(), com_spec(), cleanup storage more thoroughly
use free_pnode() instead of free_pnode_o()
drop free_pnode_o()
2012-10-06 21:07:27 +02:00
rlar dfe8342b91 invoke com_remcirc() in com_quit() 2012-10-06 15:20:17 +02:00
rlar c7717e37fc cleanup, whitespace 2012-10-06 12:30:31 +02:00
rlar 7acc91157a cleanup, drop unused macros 2012-10-06 12:16:07 +02:00
rlar eb931dc01a cleanup, ngspice/config.h is already in ngspice/ngspice.h, #2/2 2012-10-06 12:12:17 +02:00
rlar 11579d9369 cleanup, ngspice/config.h is already in ngspice/ngspice.h, #1/2 (easy ones) 2012-10-06 12:12:08 +02:00
h_vogt c336f5ec9d outif.c, typesdef.c, sim.h: correct labeling of cap, cur, and charge data 2012-10-03 15:01:36 +02:00
h_vogt 7d82367666 b3ld.c, b4ld.c, b3v32ld.c: enable capacitance calculation during dc sweep 2012-10-03 14:28:19 +02:00
h_vogt 705e130868 b3v32.c: make additional parameters accessible by @m1[par] 2012-10-01 23:03:41 +02:00
h_vogt c0bc0de4b5 prototype for controlled_exit() 2012-10-01 23:02:26 +02:00
rlar 7a65ea0318 com_write_sparam(), cleanup storage more thoroughly (`wl_sparam') 2012-10-01 21:28:48 +02:00
rlar 98b38556aa com_alter_common(), cleanup storage more thoroughly (on error) 2012-10-01 21:09:26 +02:00
rlar 124f0f4727 com_write(), com_write_sparam(), com_cross(), cleanup storage more thoroughly 2012-10-01 21:03:53 +02:00