rlar
c600312d01
deploy devtlist/modtlist in struct circ
2017-04-09 13:59:53 +02:00
rlar
2a50316304
inp_parse_temper(), add modtlist_p/devtlist_p arguments
2017-04-09 13:59:46 +02:00
rlar
f78d8e21f0
inp_parse_temper_trees(), add struct circ argument
2017-04-09 13:59:38 +02:00
rlar
f2f2b3b09a
inp_evaluate_temper(), add struct circ argument
2017-04-09 13:49:43 +02:00
rlar
fa13e422cd
inpcom.c, bug fix, always reset expr_w_temper
2017-04-09 13:49:32 +02:00
rlar
5513d8bdf3
inpcom.c, bug fix, expr_w_temper missing reset
2017-04-09 13:49:22 +02:00
rlar
c920946c73
inp.c, bug fix, need to reset modtlist/devtlist unconditionally
2017-04-09 13:49:13 +02:00
rlar
12de713ff5
inp.c, bug fix, commit "allow 'temper' keyword in .param, .model and device instance lines ..."
...
don't overwrite struct pt_temper.expression,
to allow free'ing this string.
2017-04-09 13:49:05 +02:00
h_vogt
648de2a001
cktdojob.c, add missing evaluation of TEMPER after new temperature is set
...
This is relevant for model and device parameters containing TEMPER.
2017-04-09 13:48:55 +02:00
h_vogt
67e06bb4ac
winmain.c, bug fix, #315 ngspice under windows 10 shows exception on quit
...
https://sourceforge.net/p/ngspice/bugs/315/
longjmp() creates segfault under Windows 10 (VS and MINGW)
somewhere when MainWindowProc() is processing the WM_CLOSE message.
Instead of raising SIGINT, directly call cp_doquit().
return 0 if "askquit" is set and the user declines to "quit".
This continues the simulation, if still active.
2017-04-09 12:46:38 +02:00
dwarning
33c7740884
bsim4 model update according berkeley release - disclaimer change
2017-03-31 15:01:30 +02:00
dwarning
3f0096fd46
bsim4 model update according berkeley release - code change
2017-03-31 14:48:14 +02:00
rlar
ab409ad62e
protect vec_free() and free_pnode() macro for use in non braced blocks
...
if ()
vec_free()
2017-03-25 19:54:40 +01:00
rlar
c7811a76df
ngspice/fteext.h, whitespace and spelling
2017-03-25 19:41:32 +01:00
rlar
cc15853b4f
ngspice/ftedefs.h, whitespace and spelling
2017-03-25 19:11:33 +01:00
h_vogt
d84387d449
CIDER, use controlled_exit(1) instead of exit(1)
2017-03-25 18:44:00 +01:00
rlar
2142cfdcce
subckt.c, cleanup
2017-03-25 18:17:08 +01:00
rlar
9b01dbae95
subckt.c, numnodes(), #4/4, drop 'buf'
2017-03-25 18:17:07 +01:00
rlar
66b8b3de54
subckt.c, numnodes(), #3/4, rename argument 'name' --> 'line'
2017-03-25 18:17:04 +01:00
rlar
7b6070e6b9
subckt.c, numnodes(), #2/4, cleanup
2017-03-25 18:00:43 +01:00
rlar
b18c06c441
subckt.c, numnodes(), #1/4, cleanup
2017-03-25 18:00:41 +01:00
rlar
33788f7052
remove excessive inp_evaluate_temper() prototypes
2017-03-22 21:47:43 +01:00
rlar
0fb21eaf4a
subckt.c, translate(), #8/8 whitespace and comments
2017-03-22 21:25:46 +01:00
rlar
f19a6c6390
subckt.c, translate(), #7/8 cleanup
2017-03-22 21:25:46 +01:00
rlar
49947e0279
subckt.c, translate(), #6/8 cleanup
2017-03-22 21:25:46 +01:00
rlar
2a4c34c401
subckt.c, translate(), #5/8 trailing 's' is never used
2017-03-22 21:25:46 +01:00
rlar
7169ad4bfa
subckt.c, translate(), #4/8 don't append trailing whitespace
2017-03-22 21:25:46 +01:00
rlar
1f31f73295
subckt.c, translate(), #3/8 simplify
2017-03-22 21:25:45 +01:00
rlar
e40485b8a3
subckt.c, translate(), #2/8 cleanup
2017-03-22 21:25:45 +01:00
rlar
476c41f436
subckt.c, translate(), #1/8 cleanup
2017-03-22 21:25:45 +01:00
rlar
405c6f6f02
subckt.c, introduce translate_mod_name()
2017-03-22 21:25:45 +01:00
rlar
db213fd8d2
subckt.c, devmodtranslate(), dupplicate code from above
...
and drop a redundant piece
2017-03-22 21:25:45 +01:00
rlar
c653161666
subckt.c, introduce translate_inst_name()
...
to abstract the instance name translation during netlist flattening
2017-03-22 21:25:45 +01:00
rlar
a54a535dd5
subckt.c, introduce translate_node_name()
2017-03-22 21:25:45 +01:00
rlar
bab59844ff
subckt.c, emphasize instance_name translation
...
When translating an instance_name in a subcircuit instance 'xfoo'
undconditionally express the exception for 'x' instances, which is:
x42 --> xsub.x42
but for all others the first char (the devtype) is prepended
r42 --> r.xsub.r42
2017-03-22 21:25:45 +01:00
rlar
e3b3cc502a
subckt.c, translate(), emphasize instance_name translation
2017-03-22 21:25:45 +01:00
rlar
a03a57c9f9
subckt.c, emphasize token separator insertion
2017-03-22 21:25:44 +01:00
rlar
6b78ed4367
subckt.c, devmodtranslate(), rewrite using bxx_ facility
2017-03-22 21:25:44 +01:00
rlar
4d69002144
subckt.c, translate(), rewrite using bxx facility
2017-03-22 21:25:39 +01:00
rlar
13b6daae2f
subckt.c, translate(), cleanup while() loop
2017-03-22 20:53:22 +01:00
rlar
a5dd826d19
subckt.c, finishLine(), #9/9, unconditionally transform instance name in i() expressions
2017-03-22 20:53:14 +01:00
rlar
dc092c4ebc
subckt.c, finishLine(), #8/9, fuse two if's with the same conditional expr
2017-03-22 20:52:10 +01:00
rlar
99d788cd12
subckt.c, finishLine(), #7/9, drop condition which is always true
2017-03-22 20:50:59 +01:00
rlar
253cf5b75a
subckt.c, finishLine(), #6/9, drop condition which is always false
2017-03-22 20:50:38 +01:00
rlar
ff4805c023
subckt.c, finishLine(), #5/9, move/duplicate code behind if/else into the if/else
2017-03-22 20:49:53 +01:00
rlar
735e7700ce
subckt.c, finishline(), #4/9, reorder
2017-03-21 20:27:20 +01:00
rlar
8ab28df4ec
subckt.c, finishline(), #3/9, here *src === '('
2017-03-21 20:27:19 +01:00
rlar
5d3896c388
subckt.c, finishline(), #2/9, rewrite
2017-03-21 20:27:18 +01:00
rlar
0502e83fba
subckt.c, finishline(), #1/9, trivial cleanup
2017-03-21 20:27:17 +01:00
rlar
f12ff5464e
inpptree.c, PTdifferentiate(), cleanup, use a #define
...
to express the expressions arguments more readable
2017-03-19 21:06:49 +01:00
rlar
d696aa8781
niconv.c, NIconvTest(), NaN in CKTrhs denotes non-convergence
...
emit a warning message, but only if ft_ngdebug is set
2017-03-19 20:38:41 +01:00
rlar
dc6e1cb064
use strchr() instead of strstr()
2017-03-19 20:24:49 +01:00
rlar
bd50814677
drop 'depreciated_skip..()'
2017-03-19 20:13:11 +01:00
rlar
7a42510cc0
const'ify some 'skip'ing functions
2017-03-19 20:12:25 +01:00
rlar
45ad60b738
rename gettok_nc() --> nexttok(), and functionalize it
2017-03-19 20:11:01 +01:00
rlar
f338dfe27e
subckt.c, undo a bogous hunk from commit "beautify code", Dec 16 2011
2017-03-19 20:07:34 +01:00
rlar
f9019a5576
devices/*/*ld.c, bug fix, missing assignment to 'model'
2017-03-19 19:47:25 +01:00
mhx
efb8214945
fix spelling, "too much" versus "too many"
2017-03-18 20:49:28 +01:00
rlar
889aaebfd7
inp2m.c, #7/7, whitepace cleanup
2017-03-18 20:44:21 +01:00
rlar
576e522d38
inp2m.c, #6/7, reorder code
2017-03-18 20:44:13 +01:00
rlar
73e76fd88a
inp2m.c, #5/7, drop nname[]
2017-03-18 20:44:04 +01:00
rlar
74145c53a6
inp2m.c, #4/7, move code up into the for loop
2017-03-18 20:43:55 +01:00
rlar
5a95487ad7
inp2m.c, #3/7, simpify, move code down into the for loop
2017-03-18 20:43:46 +01:00
rlar
788c8f7067
inp2m.c, #2/7, simplify, move code down into for loop
2017-03-18 20:43:38 +01:00
rlar
bef3fd1dd5
inp2m.c, #1/7, insist on a valid model, don't default to something
...
Emit an error message when unable to identify a valid modelname token.
If a default model is needed, then create one explicitly:
m1 1 2 3 4 mosdefault
.model mosdefault mos1()
2017-03-18 20:43:19 +01:00
rlar
80ef8b308d
inp2m.c, do not restrict binning to four nodes
...
until now, for unknown reasons,
the search for binned modelnames was restricted to
instances with less than five nodes.
2017-03-18 20:18:11 +01:00
rlar
50c0424225
inp2q.c, inp2m.c, plug a memory leak
2017-03-18 20:15:39 +01:00
Francesco Lannutti
43f24d6f22
rewrite cktsens.c in terms of the 'SMP' matrix interface
2017-03-17 18:22:36 +01:00
rlar
fb4f462388
SMPnewMatrix(), add 'size' to the function arguments
2017-03-17 18:12:48 +01:00
rlar
07d89b5fcd
devices/**, unify structure member variables, ptr -> Ptr
2017-03-17 17:42:58 +01:00
rlar
a6cb9d0d88
cplsetup.c, polish VECTOR_ALLOC and MATRIX_ALLOC
...
explicitly express the object type to be allocated
2017-03-17 17:37:24 +01:00
rlar
8c09761e6b
adms, polish autogen.sh and configure.ac
...
Allow to override the admsXml executable when invoking
autogen.sh and configure.ac
ADMSXML=/foo/bar/baz/admsXml ./autogen.sh --adms
ADMSXML=/foo/bar/baz/admsXml ./configure --enable-adms
alternatively (and more advertised)
./configure ADMSXML=/foo/bar/baz/admsXml --enable-adms
The generated Makefiles remember the given path.
A relative path doesn't make sense of course.
2017-03-12 19:34:37 +01:00
rlar
3ea412e7cd
bug fix for commit "inp2q.c, #17/23, rewrite, using a 'for' loop"
2017-03-12 17:57:27 +01:00
rlar
c3a92e2bb3
xspice, cleanup, move typedef over to the other ones
2017-03-12 12:18:09 +01:00
rlar
987952e57e
adms/admst/ngspiceMODULEsetup.c.xml, adms, implement DEVunsetup()
...
Which is needed to release the allocated circuit nodes in
the corresponding adms generated DEVsetup() routine.
This is required when invoking CKTsetup() more than once
without an intervening "reset".
2017-03-12 10:43:32 +01:00
rlar
6ccccbe7c4
adms/admst/ngspiceMODULE.c.xml, fix the port name table
...
which will be exported from the model code to "spice" via
struct IFdevice.terms
struct IFdevice.numNames
struct IFdevice.termNames
2017-03-12 10:41:52 +01:00
rlar
ba6955a1aa
inp2q.c, sanitise optional ports processing
...
Tie ports 4 and up to ground, iff not connected.
Actually, I think the model's DEVsetup routine should do this business,
we should pass -1 to denote the fact of being unconnected
2017-03-11 21:11:32 +01:00
rlar
3ce3424a9c
inp2q.c, #23/23, whitespace
2017-03-11 20:27:48 +01:00
rlar
9ad1a3033b
inp2q.c, #22/23, drop #ifdef, model_numnodes() does care about this
2017-03-11 20:27:48 +01:00
rlar
ac77e5b020
inp2q.c, #21/23, drop nname[] and model, use local 'token' instead
2017-03-11 20:27:47 +01:00
rlar
25fa9a4454
inp2q.c, #20/23, insist on a valid model, don't default to something
...
If a default model is needed, then create one explicitly:
q1 1 2 3 npndefault
.model npndefault npn()
Note:
This code was buggy anyway because the last token,
which turned out not to be a valid model name,
was silently swallowed.
Thus PARSECALL() didn't parse the whole thing.
2017-03-11 20:27:47 +01:00
rlar
b85a07c62c
inp2q.c, #19/23, rewrite, move code into the 'for' loop
2017-03-11 20:27:47 +01:00
rlar
b1ccdd2184
inp2q.c, #18/23, rewrite, combine two 'for' loop's
2017-03-11 20:27:47 +01:00
rlar
807115c145
inp2q.c, #17/23, rewrite, using a 'for' loop
2017-03-11 20:27:47 +01:00
rlar
03d3e2ea12
inp2q.c, #16/23, emit a message and give up, if we couldn't find the modelname token
...
Thats a functional change of ngspice.
So far we did cook up a "default" model when we didn't find a model token.
But this was buggy anyway, because in such cases we silently dropped
a token from beeing processed by PARSECALL()
Now, we emit a message, and skip this line alltogether.
2017-03-11 20:27:47 +01:00
rlar
83fb9353ef
inp2q.c, #15/23, rewrite, fall into an empty 'else' body when !ADMS
2017-03-11 20:27:47 +01:00
rlar
0bf0021a63
inp2q.c, #14/23, rewrite, assign model a bit later when recognised
2017-03-11 20:27:47 +01:00
rlar
ef37e92338
inp2q.c, #13/23, move code down
2017-03-11 20:27:47 +01:00
rlar
d2d9bffed0
inp2q.c, #12/23, move code down
...
Note; here i==4 and nodeflag still was 4
2017-03-11 20:27:46 +01:00
rlar
c8b1d18289
inp2q.c, #11/23, move code down
...
Note: here i==3 and nodeflag==4
2017-03-11 20:27:46 +01:00
rlar
c5ce68728f
inp2q.c, #10/23, use i to prepare for a loop
2017-03-11 20:27:46 +01:00
rlar
a21a2fd1b0
inp2q.c, #9/23, drop some TRACE code
2017-03-11 20:27:46 +01:00
rlar
16c00730e4
inp2q.c, #8/23, use a 'for' loop
...
Note: the range of nodeflag still is {4,5}
2017-03-11 20:27:46 +01:00
rlar
ffc943dfff
inp2q.c, #7/23, use an array
2017-03-11 20:27:46 +01:00
rlar
c82a9dd87e
inp2q.c, #6/23, transform boolean expression
...
Note: both values range over {4,5}
Thus, this is a functional invariant transformation
2017-03-11 20:27:46 +01:00
rlar
27d93293f9
inp2q.c, #5/23, rewrite using a new function model_numnodes()
2017-03-11 20:27:46 +01:00
rlar
b0fe181f12
inp2q.c, #4/23, transform boolean expression
2017-03-11 20:27:45 +01:00
rlar
042916ae88
inp2q.c, #3/23, renumber 'nodeflag'
...
range over {4,5} instead of {0,1}
2017-03-11 20:27:45 +01:00
rlar
9abcaa88ae
inp2q.c, #2/23, parenthesises and linewrap
2017-03-11 20:27:42 +01:00
rlar
c37ce079eb
inp2q.c, #1/23, rewrite, early 'exit' and 'return'
2017-03-11 19:58:58 +01:00
rlar
40ca7d6db3
inp2m.c, #9/9c, cleanup
2017-03-07 21:54:42 +01:00
rlar
eecd940af8
inp2m.c, #8/9c, drop valid_numnodes()
2017-03-07 21:54:33 +01:00
rlar
6edd684020
inp2m.c, #7/9c, rewrite valid_numnodes() using model_numnodes()
2017-03-07 21:54:23 +01:00
rlar
09fbc0ee97
inp2m.c, #6/9c, now fix model_numnodes()
...
to prevent instance struct storage beeing overwritten.
2017-03-07 21:54:13 +01:00
rlar
54f6bd8d56
inp2m.c, #5/9c, rewrite
2017-03-07 21:54:00 +01:00
rlar
01b75e08ab
inp2m.c, #4/9c, rewrite using model_numnodes()
2017-03-07 21:53:50 +01:00
rlar
396441e1ea
inp2m.c, #3/9c, abstraction, introduce model_numnodes()
...
Note:
This commit does not change behaviour in any way,
yet one can instantly see some sickness now.
Some of the models definitely do not have 7 nodes,
Actually we would like to fetch the number of terminals from
struct IFdevice, slot terms or slot numNames
But it turns out several models publish bogus values.
For example "B4SOI", which has 7 nodes, but claims to have 8
2017-03-07 21:53:37 +01:00
rlar
3bb68fbd7a
inp2m.c, #2/9c, rewrite using GENnode[]
2017-03-07 21:53:26 +01:00
rlar
81b5278674
inp2m.c, #1/9c, rename 'nodeflag'
2017-03-07 21:53:16 +01:00
rlar
c89e7c8818
inp2m.c, #15/15b, collapse remaining code into a for loop
2017-03-05 17:23:20 +01:00
rlar
85236c08e6
inp2m.c, #14/15b, cleanup, drop empty blocks
2017-03-05 17:23:12 +01:00
rlar
8fa3afa4ae
inp2m.c, #13/15b, rewrite, move common code to the end
2017-03-05 17:23:07 +01:00
rlar
3d6a2e2422
inp2m.c, #12/15b, unify, add code which won't be executed at all
...
actually, this most certainly unveils a bug in the original code,
lacking invocation of INPgetModBin() when optional extra nodes come
into play.
2017-03-05 17:23:03 +01:00
rlar
99136a16e7
inp2m.c, #11/15b, rewrite, use array expressions
2017-03-05 17:22:57 +01:00
rlar
7eb6006461
inp2m.c, #10/15b, use 'nodeflag' instead of literal values
2017-03-05 17:22:51 +01:00
rlar
7ab64775b8
inp2m.c, #9/15b, rewrite, use arrays for 'node' and 'mname'
2017-03-05 17:22:40 +01:00
rlar
395939d2f4
inp2m.c, #8/15b, unify, add two invocations without any effect
2017-03-05 17:22:02 +01:00
rlar
55c9c3a73b
inp2m.c, #7/15b, cleanup some braces
2017-03-05 17:22:01 +01:00
rlar
7a1b65f045
inp2m.c, #6/15b, abstraction, introduce valid_numnodes()
2017-03-05 17:21:59 +01:00
rlar
cff00524c2
inp2m.c, #5/15b, express some facts in comments for the following commits
2017-03-05 16:47:51 +01:00
rlar
0a95935e46
inp2m.c, #4/15b, unify code slightly
2017-03-05 16:47:14 +01:00
rlar
f7b3f40c70
inp2m.c, #3/15b, set 'save' a little sooner
2017-03-05 16:46:39 +01:00
rlar
40c632f8a7
inp2m.c, #2/15b, drop TRACE code
2017-03-05 16:45:40 +01:00
rlar
f9213e3fe4
inp2m.c, #1/15b, drop comments
2017-03-05 16:45:23 +01:00
rlar
6fde9353ea
inp2m.c, #7/7, whitespace
2017-03-04 22:09:15 +01:00
rlar
11572fe9d0
inp2m.c, #6/7, polish comments
2017-03-04 19:16:11 +01:00
rlar
f66d37463f
inp2m.c, #5/7, renumber `nodeflag'
2017-03-04 19:16:11 +01:00
rlar
6a275a6bd9
inp2m.c, #4/7, rewrite
2017-03-04 19:16:11 +01:00
rlar
08b798c485
inp2m.c, #3/7, line wraps
2017-03-04 19:16:11 +01:00
rlar
f23876e30c
inp2m.c, #2/7, cleanup braces
2017-03-04 19:16:10 +01:00
rlar
80f58e98a8
inp2m.c, #1/7, cleanup comparisons
2017-03-04 19:16:10 +01:00
rlar
a2347a28d6
inp2*.c, cleanup, drop redundant initialisation
...
which can be dropped to the recently fixed INPgetMod(), see
inpgmod.c, INPgetMod(), bug fix, missing 'model' assignment
Note:
there have been INPgetMod() invocations without initialisation,
causing access to non-initialised memory with the unfixed INPgetMod()
2017-03-04 19:15:55 +01:00
rlar
56b2342df3
inpgmod.c, #15/15, whitespace
2017-03-04 18:47:19 +01:00
rlar
fccdea429c
inpgmod.c, #14/15, cleanup
2017-03-04 18:45:27 +01:00
rlar
0245f304ff
inpgmod.c, #13/15, shortcut #if CIDER
2017-03-04 18:45:26 +01:00
rlar
a8ffd52c42
inpgmod.c, #12/15, cleanup braces
2017-03-04 18:45:24 +01:00
rlar
627ed98464
inpgmod.c, #11/15, reduce scope and rewrite
2017-03-04 18:11:20 +01:00
rlar
66976d492e
inpgmod.c, #10/15, reorder 'extern's
2017-03-04 18:11:14 +01:00
rlar
19e36dd4cb
inpgmod.c, #9/15, drop trailing whitespace in messages
2017-03-04 18:11:13 +01:00
rlar
370420d00e
inpgmod.c, #8/15, commute boolean expressions
2017-03-04 18:11:11 +01:00
rlar
4842cd39a7
inpgmod.c, #7/15, reduce scope and rewrite
2017-03-04 18:11:06 +01:00
rlar
3212b18115
inpgmod.c, #6/15, simplify return of boolean expressions
2017-03-04 18:11:05 +01:00
rlar
6ee483ed1d
inpgmod.c, #5/15, simplify tprintf usage
2017-03-04 18:11:03 +01:00
rlar
b329fd56fc
inpgmod.c, #4/15, unify 'return' statements
2017-03-04 18:11:02 +01:00
rlar
cdc8fbd192
inpgmod.c, #3/15, line wraps
2017-03-04 18:11:00 +01:00
rlar
b0537a7e96
inpgmod.c, #2/15, polish comments
2017-03-04 18:10:57 +01:00
rlar
6cdd306fea
inpgmod.c, #1/15, cleanup comparisons
2017-03-04 18:10:50 +01:00
rlar
5905ed26fa
inpgmod.c, INPgetMod(), bug fix, missing 'model' assignment
...
'model' is a return value, and must always be assigned to.
NULL denotes the error case.
2017-03-04 17:16:03 +01:00
rlar
c3275241a5
ckti2nod.c, cktbindnode.c, minor cleanup
2017-03-04 16:05:08 +01:00
rlar
239780ebef
cleanup, use an array for struct GENinstance.GENnode
2017-03-04 16:04:32 +01:00
h_vogt
4eb32ab566
com_sysinfo.c, add recent Windows versions to info printout
2017-02-22 19:36:38 +01:00
h_vogt
7c06cb2d12
don't mess with WINVER
...
not necessairy for current Windows versions
2017-02-22 19:36:37 +01:00
h_vogt
78ea2e1523
winmain.c, remove of fcn 'read' in Windows
2017-02-22 19:36:34 +01:00
h_vogt
31dca54eba
input.c, don't use read() in __MINGW32__
2017-02-22 19:28:22 +01:00
rlar
d9e7ab2759
input.c, simplify #ifdef for the broken visual studio _read()
...
If we have _MSC_VER so we have either CONSOLE HAS_WINGUI or SHARED_MODULE
If we have SHARED_MODULE, then we most certainly don't need
the unbuffered read(), which isn't unbuffered on _MSC_VER anyway.
Thus _MSC_VER is sufficient.
2017-02-22 19:26:48 +01:00
rlar
1475df2aa4
input.c, try to work around microsofts broken _read()
...
concerning the visual sudio variant of the "console" build.
Their _read() returns 0 when a linfeed is read.
Ironically the linefeed seems to be stored into the buffer nontheless.
Because the filehandle is in linebuffered mode anyway,
(the read won't return up until the terminating newline is entered)
we can just as well use getc(), which doesn't seem to suffer
from the same problem in their implementation.
2017-02-22 19:25:01 +01:00
rlar
2bafe98f17
winmain.c, etc, cleanup
2017-02-22 18:50:40 +01:00
rlar
90a205d36d
winmain.c, etc, whitespace cleanup
2017-02-22 18:50:03 +01:00
rlar
3a9ace82bb
winmain.c, etc, cleanup, rewrite obfuscated symbols
...
substitute in the whole source code:
"__stream" --> "stream"
"__pos" --> "pos"
"__s" --> "s"
"__n" --> "n"
"__c" --> "c"
"__format" --> "format"
"__ptr" --> "ptr"
"__size" --> "size"
"__path" --> "path"
"__mode" --> "mode"
"__offset" --> "offset"
"__whence" --> "whence"
"__arglist" --> "arglist"
"__buf" --> "buf"
"__fp" --> "fp"
"f_c_l_o_s_e" --> "win_x_fclose"
"f_e_o_f" --> "win_x_feof"
"f_e_r_r_o_r" --> "win_x_ferror"
"f_f_l_u_s_h" --> "win_x_fflush"
"fg_e_t_c" --> "win_x_fgetc"
"f_g_e_t_p_o_s" --> "win_x_fgetpos"
"fg_e_t_s" --> "win_x_fgets"
"fp_r_i_n_t_f" --> "win_x_fprintf"
"fp_u_t_c" --> "win_x_fputc"
"fp_u_t_char" --> "win_x_fputchar"
"fp_u_t_s" --> "win_x_fputs"
"f_r_e_a_d" --> "win_x_fread"
"f_r_e_o_p_e_n" --> "win_x_freopen"
"fs_c_a_n_f" --> "win_x_fscanf"
"f_s_e_e_k" --> "win_x_fseek"
"f_s_e_t_p_o_s" --> "win_x_fsetpos"
"f_t_e_l_l" --> "win_x_ftell"
"f_w_r_i_t_e" --> "win_x_fwrite"
"g_e_t_c" --> "win_x_getc"
"g_e_t_char" --> "win_x_getchar"
"g_e_t_s" --> "win_x_gets"
"p_e_r_r_o_r" --> "win_x_perror"
"p_r_i_n_t_f" --> "win_x_printf"
"p_u_t_c" --> "win_x_putc"
"p_u_t_char" --> "win_x_putchar"
"p_u_t_s" --> "win_x_puts"
"r_e_a_d" --> "win_x_read"
"s_c_a_n_f" --> "win_x_scanf"
"ung_e_t_c" --> "win_x_ungetc"
"vfp_r_i_n_t_f" --> "win_x_vfprintf"
"vfs_c_a_n_f" --> "win_x_vfscanf"
"vp_r_i_n_t_f" --> "win_x_vprintf"
"vs_c_a_n_f" --> "win_x_vscanf"
2017-02-10 19:50:42 +01:00
rlar
93d040703d
winmain.c, drop artefact "fgetchar", cleanup/emphasise disabled "freopen"
2017-02-10 18:44:44 +01:00
rlar
69537a7899
winmain.c, fs_c_a_n_f(), bug fix, and cleanup "minimise"
2017-02-09 22:06:07 +01:00
rlar
b5ccfca24b
implement option 'indverbosity' to control check of inductive systems
...
default is 2, maximum verbosity
option indverbosity=1
can be used to prevent check for
"incomplete set of couplings"
option indverbosity=0
can be used to avoid the check altogether
set indverbosity=INTEGER
or
.option indverbosity=INTEGER
works as well
2017-01-02 20:03:25 +01:00
rlar
05ee2e0182
check for missing and duplicate K instances
2017-01-02 20:03:17 +01:00
Francesco Lannutti
bf542f64d8
check for viable mutual inductor coefficients
2017-01-02 20:00:38 +01:00
rlar
fc32837b44
muttemp.c, allow negative inductance
2016-12-03 20:32:26 +01:00
rlar
681903492b
devices/ind/*, whitespace
2016-12-03 20:32:08 +01:00
rlar
24aee8bf2a
devices/ind/*, cleanup
2016-12-03 20:28:06 +01:00
Francesco Lannutti
0c5196e773
signal_handler.c, ft_sigintr(), exit after three SIGINT requests
2016-11-01 20:33:13 +01:00
rlar
4778b48592
inpcom.c, inp_fix_inst_calls_for_numparam(), drop redundant condition `num_subckt_params == 0'
...
found_mult_param() can already cope with that
2016-11-01 11:56:48 +01:00
dwarning
24dbbc393d
remove the ancient nobjthack option to fake 3-terminal bjt's
2016-11-01 11:56:48 +01:00
dwarning
6827495a75
correct the comment for 5-terminal bjt's in get_number_terminals
2016-11-01 11:56:48 +01:00
dwarning
1e880deff4
allow 5-terminal bjt's in subckt expansion
2016-11-01 11:56:48 +01:00
rlar
52a1a58e14
wlist.c, wl_find(), avoid crash when `string' argument is NULL
2016-11-01 11:56:47 +01:00
h_vogt
e4e24f74e6
breakp2.c, copynode(), prevent segfault if missing ')'
...
invoking 'save' with an erronous node, for example
save v(thing
This can happen unexpectedly for long 'save' lines,
which will silently be truncated.
2016-11-01 11:56:25 +01:00
rlar
7fc6609821
breakp2.c, settrace(), cleanup #2/2
2016-11-01 11:06:45 +01:00
rlar
004e49aabf
breakp2.c, settrace(), cleanup #1/2
...
"save" command,
reduce complexity from O(2) to O(1)
2016-11-01 11:05:59 +01:00
rlar
939555115d
variables, cp_vprint, fix a memory leak
2016-10-15 15:57:59 +02:00
rlar
bc325b17c5
variables, lift plot_cur->pl_env up to the invoker of cp_usrvars()
2016-10-15 15:57:54 +02:00
rlar
e0db4aa665
variables, cp_vprint(), reorder for similarity
2016-10-15 15:57:52 +02:00
rlar
a33876ff59
variables, variables, cp_getvar, rewrite
2016-10-15 15:57:50 +02:00
rlar
97c5e1567f
variables, cp_getvar(), beware of retval == NULL
2016-10-15 15:57:48 +02:00
rlar
20b666e2d5
variables, clean up
2016-10-15 15:57:45 +02:00
rlar
b2fb4e20bf
variables, drop 'found', use identity found == (*p != NULL)
2016-10-15 15:57:43 +02:00
rlar
0784f76e51
variables, cleanup the for loops
2016-10-15 15:57:40 +02:00
rlar
e39119c1c8
variables, use identity v == *p (and u == *p)
2016-10-15 15:57:38 +02:00
rlar
d14ee053d7
variables, use a pointer to the anchor of the variable instead of 'lv'
2016-10-15 15:57:35 +02:00
rlar
b13125ac84
variables, explicit processing of ft_curckt->ci_vars, drop uv2
2016-10-15 15:57:33 +02:00
rlar
7483ff9d8c
variables, cp_remvar(), cleanup
2016-10-15 15:57:30 +02:00
rlar
485fba7548
variables, add some comments, add explicit case US_NOSIMVAR
2016-10-15 15:57:28 +02:00
rlar
97cdaae19f
variables, cp_usrvars(), be more explicit
...
lift uv2 return value up to the invoker of cp_usrvars()
2016-10-15 15:57:26 +02:00
rlar
596599492e
variables, drop redundant tfree(v->va_name), rely on free_struct_variable()
2016-10-15 15:57:23 +02:00
h_vogt
fe24b3e6dd
variable.c, remove memory leaks
2016-10-15 15:57:19 +02:00
rlar
ac336c9920
options.c, cleanup inp_getoptsc()
2016-10-15 15:06:20 +02:00
h_vogt
6a0a6071a0
gettok_nc(&line): like gettok(), move pointer beyond next token in line, but without returning a string, without TMALLOC. Replaces constructs like tfree(gettok(&line)).
2016-10-15 15:06:20 +02:00
h_vogt
c198f878d3
inpcom.c, bug fix in inp_chk_for_multi_in_vcvs()
2016-10-15 15:06:20 +02:00
rlar
e89a5dd5b4
cktop.c, #14/14, cleanup
2016-10-15 15:06:20 +02:00
rlar
b3a0f15c09
cktop.c, #13/14, cleanup
2016-10-15 15:06:20 +02:00
rlar
65596ce76c
cktop.c, #12/14, cleanup
2016-10-15 15:06:20 +02:00
rlar
8d843ecec5
cktop.c, #11/14, cleanup
2016-10-15 15:06:19 +02:00
rlar
64fadb90cc
cktop.c, #10/14, whitespace
2016-10-15 15:06:19 +02:00
rlar
3041936663
cktop.c, #9/14, shortcut
2016-10-15 15:06:19 +02:00
rlar
a446d1e145
cktop.c, #8/14, early leave
2016-10-15 15:06:19 +02:00
rlar
0482f57bb7
cktop.c, #7/14, invert a trailing "if"
2016-10-15 15:06:19 +02:00
rlar
761e556ac2
cktop.c, #6/14, simplify loop termination
2016-10-15 15:06:19 +02:00
rlar
eea4d016ec
cktop.c, #5/14, simplify loop termination
2016-10-15 15:06:19 +02:00
rlar
e2f4c2ec9f
cktop.c, #4/14, shrink scope of some locals
2016-10-15 15:06:19 +02:00
rlar
eb1c8e92bc
cktop.c, #3/14, combine two `if' bodies
2016-10-15 15:06:19 +02:00
rlar
ec1e1114e8
cktop.c, #2/14, remove a redundant assignment
2016-10-15 15:06:18 +02:00
rlar
f0e3bc0025
cktop.c, #1/14, cleanup
2016-10-15 15:06:18 +02:00
rlar
b4119b94e3
xspice, cm.h, swallow warnings
2016-10-15 15:06:18 +02:00
rlar
99e864b6bc
graf.c, drop an excess cast
2016-10-15 15:06:18 +02:00
rlar
9c2733db48
macros.h, cleanup SGN() macro
2016-10-15 15:06:18 +02:00
rlar
034188cb43
dctrcurv.c, simplify
2016-10-15 15:06:18 +02:00
rlar
4c2e4d0c2f
drop SIGN(), SIGN(1.0,x) --> SGN(x)
2016-10-15 15:06:18 +02:00
rlar
ea5ad6b0e7
drop DC_ABS() and FTEcabs()
2016-10-15 15:06:18 +02:00
rlar
15f2c67968
use M_PI
2016-10-15 15:06:17 +02:00
rlar
9dcf62e1cd
drop home grown mathematical constants
2016-10-15 15:06:17 +02:00
rlar
cbf31c50c2
multi_line.h, drop some excess macros
2016-10-15 15:06:17 +02:00
rlar
8b98b9b350
use 'fabs()'
2016-10-15 15:06:17 +02:00
rlar
aca1b3a374
use 'abs()'
2016-10-15 15:06:17 +02:00
h_vogt
ae80067fef
cmath2.c, new function stddev to calculate the standard deviation of all elements of a vector
2016-10-15 15:06:17 +02:00
h_vogt
594db31ebc
cmath2.c, whitespace cleanup
2016-10-15 15:06:17 +02:00
rlar
b8b6677b85
cmath2.c, drop some excess NG_IGNORE()
2016-10-15 15:06:17 +02:00
h_vogt
2ab3b82696
cmath2.c, cleanup
2016-10-15 15:06:17 +02:00
rlar
2e35329678
cmath2.c, cleanup min/max operations
2016-10-15 15:06:16 +02:00
h_vogt
0d50547ac1
commands.c: allow 10000 tokens for 'echo' and 'wrdata'
2016-10-15 15:06:16 +02:00
rlar
0d1b4d54c0
**/Makefile.am, fix "make dist"
2016-10-15 15:06:16 +02:00
rlar
ceed247131
src/Makefile.am, bug #327 , "fix install path for include files"
...
install in $includedir/ngspice
which is by default $prefix/include/ngspice
Thanks to Maciej Suminski who reported the issue in
#327 Header files are installed in /usr/share/ngspice/include/ngspice
https://sourceforge.net/p/ngspice/bugs/327/
2016-10-15 15:06:16 +02:00
h_vogt
6f609abc27
x11.c, fix bug #330 , rename csh variable font -> xfont
...
reported by graahnul.grom in
#330 setting xfont in .spiceinit has no effect
https://sourceforge.net/p/ngspice/bugs/330/
2016-10-15 15:06:16 +02:00
rlar
30be67b960
analysis/sensaskq.c, fix ancient bug, setting instead of asking 'deftol'
...
This is of no consequence,
neither 'deftol' nor 'SENS_DEFTOL' is actually used somewhere.
2016-10-15 15:06:16 +02:00
rlar
d32968bdaa
variable.h, reduce visibility of auxiliary struct xxx to variable.c
2016-10-15 15:06:16 +02:00
rlar
b302dbe975
inp.c, cleanup using new function `line_nconc()'
2016-10-15 15:06:16 +02:00
h_vogt
c28c5d307a
inp.c, remove bug with handling of options: options stemming from a command file are kept, options from sourced circuit are removed with ckt
2016-10-15 15:06:03 +02:00
h_vogt
81e1e6fa32
inp.c, inpcom.c, treat files starting with '*ng_script' as command files
2016-10-15 12:59:16 +02:00
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
rlar
c09fd54a54
inpcom.c, bug fix, `inp_sort_params()' will do the concatenation
2014-12-14 22:28:04 +01:00
rlar
ada71a6ec7
inpcom.c, `inp_fix_subckt()', bogus and useless invocation of `inp_quote_params()'
2014-12-14 22:03:13 +01:00
rlar
0595602c40
inpcom.c, cleanup `inp_sort_params()', drop unused `end_card'
2014-12-14 22:02:58 +01:00
rlar
0d610d4c7a
fix `quote' spelling
2014-12-14 22:02:32 +01:00
rlar
1ab1213771
inpcom.c, cleanup `inp_reorder_params_subckt()', swallow `deck'
2014-12-14 19:41:29 +01:00
rlar
63c9bdf1ca
inpcom.c, cleanup `inp_reorder_params()', swallow `deck'
2014-12-14 19:40:25 +01:00
rlar
a842144e02
inpcom.c, cleanup `inp_reorder_params()', swallow `end'
2014-12-14 19:38:54 +01:00
rlar
e09c962f1b
inpcom.c, abstraction, introduce `inp_qoute_params()'
2014-12-14 19:20:52 +01:00
rlar
3819912e34
inpcom.c, cleanup `inp_sort_params()', local scope for some variables
2014-12-14 19:20:51 +01:00
rlar
956831f922
swallow warning in commit "inpcom.c, teemper bug fix, ..."
2014-12-14 19:20:48 +01:00
rlar
8bf9a67fc8
inpcom.c, cleanup `inp_sort_params()'
2014-12-14 16:20:53 +01:00
rlar
aeec110c64
inpcom.c, cleanup `inp_sort_params()'
2014-12-14 16:03:59 +01:00
rlar
726f1d3fb8
inpcom.c, teemper bug fix, rewrite `inp_functionalise_identifier()'
...
do not compare against `VALIDCHARS'
which is much to broad with respect to our operators
2014-12-13 22:36:18 +01:00
rlar
9579b78091
inpcom.c, inp_fix_temper_in_param(), abstraction, introduce `inp_functionalise_identifier()'
2014-12-13 18:23:30 +01:00
rlar
ff613c3c41
inpcom.c, abstraction, yet another `ya_search_identifier()'
2014-12-06 20:48:26 +01:00
rlar
c5e0bcde04
cleanup using `hypot()'
2014-12-06 20:41:11 +01:00
rlar
eafa0a9bed
inpcom.c, use backwards protected `skip_back_ws_()'
2014-12-05 19:39:51 +01:00
rlar
e0859d78c0
inpcom.c, rewrite `inp_fix_temper_in_param()'
2014-12-02 20:04:23 +01:00
rlar
7524ad2ee6
src/misc/string.c, rewrite using `copy_substring()'
2014-12-01 20:18:59 +01:00
rlar
45cfdde701
src/frontend/plotting/plotit.c, plotit(), fix command line buffer overflow
2014-11-30 22:15:37 +01:00
rlar
d18d2a935c
src/frontend/variable.c, rewrite `cp_variablesubst()'
2014-11-30 20:58:29 +01:00
rlar
33d33e9d50
src/frontend/variable.c, fix expansion of '$var' when $var is an empty list
...
test case:
set foo = ( )
set foo = ( $foo baz bar )
echo $foo
2014-11-30 11:20:05 +01:00
rlar
bd441171a7
inpcom.c, inp_fix_param_values(), bug fix, #295 .model fails when a literal numerical parameter value starts with a '+'
2014-11-10 21:18:18 +01:00
rlar
5e76305ffa
inpcom.c, inp_modify_exp(), bug fix, enforce precedence when numparm substitutions come into play
2014-11-06 21:16:24 +01:00
rlar
30742f30a4
inpcom.c, inp_modify_exp(), bug fix, #294 B source failure when using an unary minus
2014-11-06 18:29:54 +01:00
rlar
c79d2482ae
inp_modify_exp(), remove operator rewrite `**' --> `^'
...
Thats implemented in the lexer for B expressions,
( `PTlex()' in src/spicelib/parser/inpptree.c )
2014-11-04 19:59:40 +01:00
rlar
70ad8cce5f
inp_modify_exp(), cleanup #17/17, polish while loop
2014-11-04 18:56:34 +01:00
rlar
aa05b6f095
inp_modify_exp(), cleanup #16/17, whitespace
2014-11-04 18:56:34 +01:00
rlar
b37db50aed
inp_modify_exp(), cleanup #15/17, use postincrement
2014-11-04 18:56:34 +01:00
rlar
b58c8252cc
inp_modify_exp(), cleanup #14/17, reduce scope of `buf'
2014-11-04 18:56:34 +01:00
rlar
e1f8344bae
inp_modify_exp(), cleanup #13/17, rename `ustate' --> `state'
2014-11-04 18:56:34 +01:00
rlar
970b5ed772
inp_modify_exp(), cleanup #12/17, rename `actchar' --> `c'
2014-11-04 18:56:32 +01:00
rlar
88a01bfd68
inp_modify_exp(), cleanup #11/17, rename `str_ptr' --> `s'
2014-11-04 18:56:24 +01:00
rlar
b023f36dbb
inp_modify_exp(), cleanup #10/17, use tprintf()
2014-11-04 18:55:37 +01:00
rlar
2992d6b416
inp_modify_exp(), cleanup #9/17, use `int' for `i'
2014-11-04 18:55:36 +01:00
rlar
ca767ef08f
inp_modify_exp(), cleanup #8/17, use an enum for `ustate'
2014-11-04 18:55:34 +01:00
rlar
c792f344bb
inp_modify_exp(), cleanup #7/17, use postincrement
2014-11-04 18:53:29 +01:00
rlar
381b5d9ec1
inp_modify_exp(), cleanup #6/17, rewrite
2014-11-04 18:53:28 +01:00
rlar
49c233029a
inp_modify_exp(), cleanup #5/17, local scope for variables
2014-11-04 18:53:28 +01:00
rlar
6bc63f798d
inp_modify_exp(), cleanup #4/17, cleanup for loop
2014-11-04 18:53:28 +01:00
rlar
74954fbcfe
inp_modify_exp(), cleanup #3/17, drop `new_str'
2014-11-04 18:53:28 +01:00
rlar
3d842352aa
inp_modify_exp(), cleanup #2/17, remove redundant assignments
2014-11-04 18:53:26 +01:00
rlar
3fc7b99292
inp_modify_exp(), cleanup #1/17, use tprintf()
2014-11-04 18:50:53 +01:00
rlar
87960d52b4
inpcom.c, use tprintf() to simplify code in inp_bsource_compat()
2014-11-02 19:46:16 +01:00
rlar
8b04ff6b7c
inpcom.c, use inp_modify_exp() to remove duplicated code in inp_bsource_compat()
2014-11-02 19:45:42 +01:00
rlar
5464859ebb
inpcom.c, inp_bsource_compat(), shrink brace removal to the actual b-expression
2014-11-02 18:45:41 +01:00
rlar
5550d53512
inpcom.c, inp_bsource_compat(), fix an assertion
2014-11-02 18:45:28 +01:00
rlar
71a1b27a23
inpcom.c, inp_modify_exp(expr), offload tfree(expr) to the invoker
2014-11-02 18:45:14 +01:00
rlar
1f9cf0b6b5
inpcom.c, bug fix, #293 Bug in .option rseries = <value> with parallel inductors
...
reported by João Alberto and Andy Fierman in
http://sourceforge.net/p/ngspice/bugs/293/
2014-10-30 20:18:11 +01:00
rlar
254be00842
src/frontend/postcoms.c, cleanup, unused variable `appendwrite'
2014-10-12 22:08:19 +02:00
rlar
e08dcafbe9
cleanup, signature of CKTacDump() and CKTdump(), void* --> runDesc*
2014-10-12 22:07:28 +02:00
Jim Holmes
85ae073471
src/frontend/postcoms.c, bugfix, write/save an xspice `event' node
...
In function EVTfindvec() XSPICE can create
a `dvec' with a non NULL `v_scale' slot.
This special scale with name "step"
differs from the current plot `pl_scale' slot
and triggered ancient buggy code here.
2014-10-12 19:32:17 +02:00
rlar
5c97e31049
cleanup, use '\0' and NULL
2014-09-20 19:20:20 +02:00
rlar
0865747d88
numparam/mystring.c, cleanup functions which return `void'
2014-09-20 18:55:32 +02:00
rlar
c6a8429258
src/maths/cmaths, implement `nint()' (.control language)
2014-09-20 17:15:10 +02:00
rlar
9e72296e40
src/spicelib/parse, implement `nint()' (`B' language)
2014-09-20 17:15:09 +02:00
rlar
2602a492b2
fix `log' in `B' and in `.control', to base e instead of 10
...
In the B language this can be considered a bug fix.
In the .control language this is a severe change
and breaks backwards compatibility.
In all three languages 'numparam' 'B' and '.control' we now have
ln to the base e
log to the base e
log10 to the base 10
Thus log and log10 is now consistent
with the vast majority of programming languages.
ln is merely for convenience.
very few other languages have it.
I'd like to discourage its usage.
2014-09-12 19:18:11 +02:00
rlar
abfd38b535
B language, introduce `log10'
2014-09-12 19:10:07 +02:00
rlar
88bc7874f0
numparm, introduce `log10'
2014-09-12 19:09:56 +02:00
rlar
99eade8ec9
cleanup, rename cx_ln --> cx_log (.control language)
2014-09-12 19:09:52 +02:00
rlar
c926f46986
cleanup, rename rename cx_log --> cx_log10 (.control language)
2014-09-12 19:09:42 +02:00
rlar
bdf70bd2b0
cleanup, rename PTln --> PTlog, PTF_LN --> PTF_LOG (`B' language)
2014-09-12 19:09:30 +02:00
rlar
93a212ca3c
cleanup, rename PTlog --> PTlog10, PTF_LOG --> PTF_LOG10 (`B' language)
2014-09-12 19:05:56 +02:00
rlar
5e8856d944
inpcom.c, inp_get_func_from_line(), allow an optional '=' in ".func foo() = {expr}"
2014-08-12 18:10:14 +02:00
rlar
e1f0dc5893
numparam, nupa_define(), drop unused argument `pval'
2014-08-10 20:21:48 +02:00
rlar
c2028203a8
numparam, unify `entry' variable
2014-08-10 20:21:43 +02:00
rlar
a67b74ab9f
numparam, unify `dico' variable
2014-08-10 20:21:39 +02:00
rlar
e952500be3
numparam, rename `tdico' --> `dico_t'
2014-08-10 20:21:34 +02:00
rlar
f3ce5bde2c
numparam, rename `entry' --> `entry_t'
2014-08-10 20:21:29 +02:00
rlar
1910f50179
numparam, cleanup typedefs
2014-08-10 20:21:25 +02:00
rlar
612777d79d
numparam, drop unused code
2014-08-10 20:21:19 +02:00
rlar
cbe9aca764
inpcom.c, inp_split_multi_param_lines(), drop `keep' business
2014-08-10 16:59:28 +02:00
rlar
8a8a4f2fdb
inpcom.c, inp_split_multi_param_lines(), bug fix, skip ',' when splitting .param lines
2014-08-10 16:58:05 +02:00
rlar
e0a74261ae
numparam, cleanup `symbols' reallocation
2014-08-09 20:51:02 +02:00
rlar
699ea93d1e
numparam, combine `symbols[0]' with `symbols[>0]' processing
2014-08-09 20:49:46 +02:00
rlar
8ee943e0c8
numparam, rename `local_symbols' --> `symbols'
2014-08-09 20:49:25 +02:00
rlar
30fc375e2c
numparam, use `local_symbols[0]' instead of `global_symbols'
2014-08-09 20:48:56 +02:00
rlar
cdf4623b6f
xpressn.c, whitespace
2014-08-09 19:38:29 +02:00
rlar
4592c1af97
xpressn.c, reorder `dicostack_pop()'
2014-08-09 19:38:25 +02:00
rlar
f4480c1cb9
xpressn.c, split `dicostack()' into `dicostack_push()' and `dicostack_pop()'
2014-08-09 19:38:18 +02:00
rlar
9973b3d1f8
xpressn.c, rename `define()' --> `nupa_define()'
2014-08-09 19:38:14 +02:00
rlar
583492ab41
spicenum.c, shrink scope of some hash pointers
2014-08-09 19:38:09 +02:00
rlar
f5d05af51d
inpgmod.c, INPgetModBin(), use model_name_match()
2014-08-09 18:17:51 +02:00
rlar
b663731379
rewrite model_bin_match(), rename --> model_name_match()
2014-08-09 18:17:34 +02:00
rlar
0e4b3f3b5b
inpcom.c, inp_get_func_from_line(), consider whitespace and syntax errors
2014-08-08 19:13:16 +02:00
rlar
999967ae05
inpcom.c, inp_sort_params(), simplify card insertion
2014-08-06 19:31:25 +02:00
rlar
70d420692a
inpcom.c, inp_get_func_from_line(), add some minimalistic syntax error check
2014-08-06 19:08:02 +02:00
rlar
26fd874060
inpcom.c, inp_sort_params(), whitespace
2014-08-03 19:09:53 +02:00
rlar
d49bf31819
inpcom.c, inp_sort_params(), cleanup usage of `max_level'
2014-08-03 19:09:53 +02:00
rlar
4594e54d50
inpcom.c, inp_sort_params(), cleanup usage of `skipped'
2014-08-03 19:09:53 +02:00
rlar
e6e03ead75
inpcom.c, inp_sort_params(), local scope for `param_name'
2014-08-03 19:09:52 +02:00
rlar
17670eeaa9
inpcom.c, inp_sort_params(), transform a for loop
2014-08-03 19:09:52 +02:00
rlar
8209a02e70
inpcom.c, inp_sort_params(), drop `param_str'
2014-08-03 19:09:52 +02:00
rlar
ff4293af18
inpcom.c, inp_sort_params(), drop `found_in_list'
2014-08-03 19:09:52 +02:00
rlar
3899cc5585
inpcom.c, inp_sort_params(), cleanup using for loop
2014-08-03 19:09:52 +02:00
rlar
70b74028d1
inpcom.c, inp_sort_params(), rename `param_skip', `ptr_array', `ptr_array_ordered'
2014-08-03 19:09:52 +02:00
rlar
b9ea286da7
inpcom.c, inp_sort_params(), cleanup usage of `num_params'
2014-08-03 19:09:52 +02:00
rlar
0927932b94
inpcom.c, inp_sort_params(), cleanup usage of `arr_size'
2014-08-03 19:09:52 +02:00
rlar
8d0f205969
inpcom.c, inp_sort_params(), rename `ptr' --> `c'
2014-08-03 19:09:47 +02:00
rlar
be170de6e2
inpcom.c, inp_get_param_level(), rename variables
2014-08-03 19:02:27 +02:00
rlar
505a4112a7
inpcom.c, inp_get_param_level(), rewrite for readability
2014-08-03 19:02:14 +02:00
rlar
fefa690714
inpcom.c, inp_get_param_level(), bug fix, access out of bounds
2014-08-03 19:02:04 +02:00
rlar
a002a5f6ba
inpcom.c, inp_sort_params(), cleanup using new `struct depedency'
2014-08-03 12:50:37 +02:00
rlar
268de0a341
inpcom.c, inp_sort_params(), introduce `search_plain_identifier()'
2014-08-02 19:30:03 +02:00
rlar
cea13aef16
partial revert previous commit
2014-08-02 19:26:25 +02:00
rlar
72779956b5
inpcom.c, inp_fix_subckt(), don't modify the processed string
2014-08-02 13:16:06 +02:00
rlar
a84e181581
inpcom.c, inp_fix_subckt(), drop unused code
2014-08-02 13:02:09 +02:00
rlar
b50af8e8df
inpcom.c, inp_fix_subckt(), cleanup
2014-08-02 12:59:19 +02:00
rlar
668b7e23c5
inpcom.c, abstraction, introduce `inp_spawn_brace()'
2014-08-02 12:08:23 +02:00
rlar
26a036ed54
inpcom.c, inp_chk_for_multi_in_vcvs(), comment
2014-08-02 11:45:11 +02:00
rlar
d522c7cd18
inpcom.c, inp_chk_for_multi_in_vcvs(), extend the last but one commit
2014-07-30 19:00:48 +02:00
rlar
b2e8bec2a9
inpcom.c, inp_chk_for_multi_in_vcvs(), whitespace
2014-07-30 18:48:35 +02:00
rlar
c7c9f38523
inpcom.c, inp_chk_for_multi_in_vcvs(), rewrite for readability
2014-07-30 18:44:28 +02:00
rlar
6208c96036
inpcom.c, inp_chk_for_multi_in_vcvs(), emphasise error processing
2014-07-29 20:42:17 +02:00
rlar
f5202201c3
inpcom.c, inp_chk_for_multi_in_vcvs(), reorder
2014-07-29 20:26:00 +02:00
rlar
29a4959f5d
inpcom.c, inp_chk_for_multi_in_vcvs(), cleanup using more and better named variables
2014-07-29 20:10:46 +02:00
rlar
e4e2abdf09
inpcom.c, inp_chk_for_multi_in_vcvs(), use `strchr()'
2014-07-29 18:40:00 +02:00
rlar
4436a42dbc
inpcom.c, inp_chk_for_multi_in_vcvs(), bug fix
2014-07-27 18:55:50 +02:00
rlar
75ab9ec5e5
inpcom.c, inp_read(), swallow a warning
2014-07-26 20:37:15 +02:00
rlar
24a22f1398
subckt.c, treat "0" and "null" like any other global node
2014-07-26 20:23:26 +02:00
rlar
b9ecd4d28e
subckt.c, rewrite `collect_global_nodes()'
2014-07-25 21:19:52 +02:00
rlar
d82b836136
subckt.c, inp_subcktexpand(), abstraction, new function `collect_global_nodes()'
2014-07-25 21:09:29 +02:00
rlar
833c8b972e
subckt.c, rename global variables
2014-07-25 21:09:25 +02:00
rlar
6d18a1b40d
subckt.c, inp_subcktexpand(), cleanup local variables
2014-07-25 21:09:21 +02:00
rlar
0568974b85
subckt.c, inp_subcktexpand(), cleanup `.meas' specific processing
2014-07-25 21:09:14 +02:00
rlar
5aa4bd4a1c
subckt.c, bug fix, multiple .global decks shall behave "accumulative"
2014-07-23 20:34:40 +02:00
rlar
ed53864a9e
subckt.c, doit(), whitespace
2014-07-18 18:52:21 +02:00
rlar
3393d68818
subckt.c, doit(), cleanup, local variables
2014-07-18 18:52:20 +02:00
rlar
7d44aa9564
subckt.c, doit(), fix an ancient memory leak when use_numparams == FALSE
2014-07-18 18:52:19 +02:00
rlar
f2abbf1528
subckt.c, doit(), cleanup
2014-07-18 18:52:18 +02:00
rlar
6b959952a3
subckt.c, doit(), rename `savenext' --> `rest_of_c'
2014-07-18 18:52:17 +02:00
rlar
05d239b748
subckt.c, doit(), rename `lcc' --> `su_deck'
2014-07-18 18:52:17 +02:00
rlar
822c5150d5
subckt.c, doit(), cleanup, use `c' instead of `lcc'
2014-07-18 18:52:16 +02:00
rlar
45648d4caa
subckt.c, doit(), reorder
2014-07-18 18:52:15 +02:00
rlar
5944a2505a
subckt.c, doit(), rename `lc' --> `prev_of_c'
2014-07-18 18:52:14 +02:00
rlar
73935377ff
subckt.c, doit(), drop redundant assignment
2014-07-18 18:52:12 +02:00
rlar
d6106cfbfc
subckt.c, cleanup `doit()'
2014-07-16 20:42:57 +02:00
rlar
650352e3e8
subckt.c, cleanup `doit()'
2014-07-16 20:39:41 +02:00
rlar
8381877eee
subckt.c, doit(), fix an ancient memory leak when use_numparams == FALSE
2014-07-16 20:35:39 +02:00
rlar
82039a1166
subckt.c, cleanup `doit()', polish
2014-07-16 20:27:52 +02:00
rlar
87c88f02c2
subckt.c, cleanup `doit()', rename some variables
2014-07-16 18:05:24 +02:00
rlar
c9725d70eb
subckt.c, cleanup `doit()', rename some variables
2014-07-16 17:59:11 +02:00
rlar
8ccaa5bdca
subckt.c, cleanup `doit()', drop redundant test
2014-07-16 17:53:47 +02:00
rlar
86b6fb8c03
subckt.c, cleanup `doit()'
2014-07-15 21:44:57 +02:00
rlar
1e83c0772b
subckt.c, cleanup `doit()'
2014-07-15 20:44:33 +02:00
rlar
c105c320f8
subckt.c, cleanup `doit()' `modtranslate()' `devmodtranslate()'
2014-07-15 19:46:01 +02:00
rlar
1ae1909641
inp_sort_params(), simplify, "%s" does work for the empty string
2014-07-13 18:52:42 +02:00
rlar
63db630a0a
inp_fix_temper_in_param(), cleanup using 'skip_back_ws()'
2014-07-13 18:34:14 +02:00
rlar
6325a4b7ab
inp_fix_temper_in_param(), bug fix, failure to skip whitespace
2014-07-13 18:32:02 +02:00
rlar
5c50ec501d
inpcom.c, cleanup using new function 'search_identifier()'
2014-07-13 18:03:27 +02:00
rlar
a9a43e4b76
inpcom.c, cleanup inp_add_series_resistor()
2014-07-12 14:55:19 +02:00
rlar
7476dec093
inpcom.c, use '\0'
2014-07-12 14:54:03 +02:00
rlar
7f7453a227
inp_do_macro_param_replace(), fix several bugs concerning .func processing
2014-07-08 18:19:26 +02:00
rlar
fd47aafc4e
fix commit, "bug fix, `#279 Problem when using a function to set initial value"
2014-07-06 11:00:05 +02:00
Giorgio Vazzana
0348dcd251
bug fix, #286 buffer overflow in src/frontend/plotting/grid.c
2014-06-26 19:50:18 +02:00
rlar
22b2349893
fix #285 .spiceinit cannot be read in from home directory
...
reported by Craggan in bug report #285
http://sourceforge.net/p/ngspice/bugs/285/
2014-06-26 19:50:13 +02:00
rlar
6dc5f12914
USE_OMP, dont miss error return codes when a DEVLoadOMP() invocation fails
2014-06-26 19:50:12 +02:00
dwarning
e562243558
hsm2ld.c, when multithreading, always print the debuging header lines
2014-06-26 19:50:10 +02:00
dwarning
a94bcaeb0e
multicore simulation with hisim2
2014-06-26 19:50:09 +02:00
rlar
25a093c557
hsm2eval.c, avoid static variables to allow multithreading
2014-06-26 19:50:08 +02:00
rlar
4eeb1361d6
spicenum.c, rewrite nupa_done()
2014-06-26 19:50:07 +02:00
rlar
d2d606a79a
spicenum.c, rewrite putlogfile()
2014-06-26 19:50:06 +02:00
rlar
da6790e68d
numparam, change np_trunc() and np_round() return type to double
2014-06-26 19:50:05 +02:00
rlar
c1bd74f982
mystring.c, drop auxiliary implementations of np_round() and np_trunc()
2014-06-26 19:50:04 +02:00
rlar
4abb068405
xpressn.c, use fabs()
2014-06-26 19:50:03 +02:00
rlar
d17c0d7813
mystring.c, rewrite spos_()
2014-06-26 19:50:02 +02:00
dwarning
27cb51afca
hisim2, remove register class
2014-06-26 19:50:01 +02:00
dwarning
a646a5f78f
devices/bsim4, update to version 4.8
2014-06-26 19:49:34 +02:00
dwarning
010174ec2a
devices/bsim4v7, add to build infrastructure
2014-06-26 19:48:15 +02:00
dwarning
58122ce47b
devices/bsim4v7, string substitution, bsim4 -> bsim4v7
2014-06-26 19:46:01 +02:00
dwarning
7e4128c60a
devices/bsim4v7, new directory, plain copy from devices/bsim4
2014-06-26 19:44:57 +02:00
dwarning
cba69c4850
devices/bsim4v4, remove ancient bsim4 model version 4.4
2014-06-26 19:43:54 +02:00
rlar
9736b0fe2b
dev.c, get rid of hardwired device enumeration
2014-06-26 19:04:55 +02:00
rlar
bf3888c490
numparam, drop "//" comment processing (already done in inpcom.c)
2014-06-24 18:20:18 +02:00
rlar
80b0ac22a4
xpressn.c, rewrite message() usage
2014-06-24 18:20:12 +02:00
dwarning
5bb69f77d1
hisimhv1, hisim2, clean up unused variables
2014-06-24 18:19:51 +02:00
rlar
20d651f00c
subckt.c, #5/5 local scope for orig_modnames
2014-06-24 18:18:15 +02:00
rlar
c01fa9153f
subckt.c, #4/5 rename modnames --> new_modnames
2014-06-24 18:18:13 +02:00
rlar
d7882badfd
subckt.c, #3/5 rename translated_model_name --> new_model_name
2014-06-24 18:18:07 +02:00
rlar
39abfee774
subckt.c, #2/5 rename submod --> orig_modnames
2014-06-24 18:17:51 +02:00
rlar
cb25ce757e
subckt.c, #1/5 cleanup modtranslate() signature
2014-06-24 18:17:42 +02:00
rlar
609c246b95
cktpzstr.c, cleanup minimising / maximising operations
2014-05-15 18:50:35 +02:00
rlar
aa7a7606c7
avoid multiple declarations of controlled_exit(), add 'noreturn' attribute
2014-05-14 21:36:18 +02:00
rlar
9a9e1c5413
ifeval.c, IFeval(), pronounce definite end of instructions flow
2014-05-14 20:55:32 +02:00
rlar
fbdea9be3d
inpcom.c, inp_fix_inst_calls_for_numparam() rewrite for cleanup
2014-05-14 20:23:21 +02:00
rlar
6d30585a5e
inpcom.c, inp_fix_inst_calls_for_numparam(), local scope for some vars
2014-05-14 19:42:48 +02:00
rlar
5862d1b297
inpcom.c, inp_fix_inst_calls_for_numparam(), avoid excess tfree() invocations
2014-05-14 19:16:13 +02:00
rlar
e652dc40be
inpcom.c, drop unused artifacts
2014-05-14 18:18:22 +02:00
rlar
7a6b569b3b
inpcom.c, rewrite bizarre code in inp_get_params()
2014-05-14 18:15:00 +02:00
rlar
cca5971739
ifs_yacc.y, record various errors and account for them when ifs_yyparse() returns
2014-05-11 20:12:38 +02:00
rlar
90baa6a251
xspice, fix -I path order
...
make sure $(top_builddir)/src/include comes first
to fetch the correct ngspice/config.h file
2014-05-10 22:37:05 +02:00
rlar
eedb80a2ba
rewrite, using IFerrorf()
2014-05-09 16:36:57 +02:00
dwarning
157aedd72d
update hisimhv to version 1.2.4
2014-05-09 16:36:57 +02:00
rlar
6f89395d8a
fix commit: introduce OUTerrorf() and IFerrorf()
2014-05-07 20:06:00 +02:00
dwarning
452544b30e
apply few patches according the model developers web site
2014-05-07 18:45:00 +02:00
dwarning
d671e70b6c
clarify level parameter for hisim and hisimhv
2014-05-05 20:35:03 +02:00
dwarning
de6293de18
apply few patches according the model developers web site
2014-05-05 20:18:16 +02:00
dwarning
1e1c4fe168
apply few patches according the model developers web site
2014-04-20 19:04:29 +02:00
rlar
cc235294ec
lexical.c, change semantics of an ESCAPE in a given input `string'
...
now simply skip it.
presumably and in accordance to what the comments seems to suggest
ESCAPE never was really meant to be read as '['
but was replaced just to get it out of way deeper in the for loop
where an ESCAPE starts an ancient mechanism to reenter
interactive input via a terminals TIOCSTI capability
2014-04-15 21:16:50 +02:00
rlar
cb75a749b8
lexical.c, avoid to read beyond end of `string'
2014-04-15 21:16:49 +02:00
rlar
f42b5b16c7
lexical.c, simplify
2014-04-15 21:16:48 +02:00
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