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
h_vogt
62d9199cd6
inpcom.c: plug memory leaks in new TEMPER code
2013-12-31 16:19:21 +01:00
h_vogt
d70865a162
allow 'temper' keyword in .param, .model and device instance lines
...
inpcom.c: fcns inp_fix_temper_in_param(), inp_new_func(), inp_rem_func()
to convert .param with 'temper' to .func, and replace all affected
parameter tokens xxx by their func counterpart xxx()
inpcom.c; fcns inp_temper_compat(), inp_modify_exp() added
to prepare expression with 'temper' for numparam
inp.c: fcns inp_parse_temper(), inp_parse_temper_trees() added
inp_evaluate_temper()
to prepare, parse and evaluate the expressions containing 'temper'
cktdefs.h: add global variable to expressions with 'temper'
dctrcurv.c: add fcn inp_evaluate_temper()
when temp has changed
2013-12-31 16:19:19 +01:00
h_vogt
8c85064018
inperrc.c: new function `INPstrCat()' to concatenate two strings
2013-12-31 16:19:18 +01:00
h_vogt
e7e16e06e7
inpcom.c: debug printout to debug-out.txt improved
2013-12-31 16:19:17 +01:00
h_vogt
21f5fce1f8
inpcom.c: update some comments
2013-12-31 16:19:16 +01:00
dwarning
845dd554e2
com_psd(), reuse the window function `fft_windows()'
2013-12-31 16:19:14 +01:00
dwarning
fe01e537cd
cleanup some compiler warnings
2013-12-31 16:19:13 +01:00
dwarning
54529d0e42
allow cshell $variable substitution with and without $&var
2013-12-31 16:19:12 +01:00
h_vogt
73bec459fa
inperrc.c: comments added, white spaces
2013-12-31 16:19:11 +01:00
h_vogt
4524d514e1
inp.c: comments added
2013-12-31 16:19:09 +01:00
h_vogt
3dff06228e
dctran.c, runcoms2.c: shared ngspice: remove plot data upon 'bg_halt' and 'remcirc'
2013-12-31 16:19:08 +01:00
h_vogt
b33f374d22
sharedspice.c: improve progress analysis
2013-12-31 16:19:07 +01:00
h_vogt
28dcedbfa6
misccoms.c: add more deleting function in 'quit' for shared ngspice
2013-12-31 16:19:06 +01:00
h_vogt
9520044a0f
runcoms2.c: remove ci_options upon remcirc
2013-12-31 16:19:04 +01:00
h_vogt
5f6f53f9ad
runcoms2.c: plug memory leak during remcirc
2013-12-31 16:19:03 +01:00
h_vogt
abbda029e1
BSIM 4.7.0 plug memory leak during remcirc
2013-12-31 16:19:02 +01:00
h_vogt
d38d907fbc
BSIM 3.2.4 plug memory leak during remcirc
2013-12-31 16:19:01 +01:00
h_vogt
d6946705f8
BSIM 3.3.0 plug memory leak during remcirc
2013-12-31 16:18:59 +01:00
h_vogt
9e8219da67
runcoms2.c: plug memory leak during 'remcirc'
2013-12-31 16:18:58 +01:00
h_vogt
be45a5ca37
outitf.c: plug memory leak
2013-12-31 16:18:57 +01:00
h_vogt
94595c06df
spicenum.c, xpressn.c: plug setup memory leak
...
by adding user defined delete function for hash table entries
2013-12-31 16:18:56 +01:00
h_vogt
fceefb700c
runcoms2.c: plug setup memory leak
2013-12-31 16:18:54 +01:00
h_vogt
a97b330965
vsrcdest.c, isrcdest.c: fix memory leak by freeing VSRCcoeffs, ISRCcoeffs
2013-12-31 16:18:53 +01:00
dwarning
075b620a86
introduce `cx_sortorder()' function
2013-12-31 16:18:52 +01:00
h_vogt
e308f52e26
runcoms2.c: set freed pointers to NULL
2013-12-31 16:13:25 +01:00
h_vogt
0c503429e0
breakp2.c: plug some tiny memory leaks
2013-12-31 16:13:24 +01:00
h_vogt
777fe07e83
breakp.c: repair nonworking function dbfree()
2013-12-31 16:13:23 +01:00
h_vogt
3cc06c8e49
dotcards.c: plug some memory leaks
2013-12-31 16:13:21 +01:00
h_vogt
3f23287bdd
spicenum.c: fix memory leak completely
2013-12-31 16:13:20 +01:00
h_vogt
da10f49755
remove memory leak freeing dicoS
...
reported by Jonathan Knott
2013-12-31 16:13:19 +01:00
dwarning
4635a19ba9
introduce unwrap, minimum and maximum function
2013-12-31 16:13:17 +01:00
dwarning
20c375bcc2
fix a bug on spurious output to console during fprintf reported by Evan Lavelle
2013-12-31 16:13:16 +01:00
dwarning
68da03f9de
preserve vector length for fft by interpolation, window by default: none
2013-12-31 16:13:15 +01:00
h_vogt
d2dbe6145f
sharedspice.c: modified callback interface
...
enhanced function ngSpice_Init_Sync()
three new callback functions for synchronization
2013-12-31 16:13:12 +01:00
h_vogt
a0757d3143
dctran.c: synchronization option for shared library
2013-12-31 16:13:11 +01:00
h_vogt
2c97c31658
devices/isrc: EXTERNAL option for independent current source ISRC
2013-12-31 16:13:10 +01:00
dwarning
6a3da0105b
fft and ifft as vector functions
2013-12-31 16:13:08 +01:00
dwarning
0b1bff9fd8
fix type of length in fft window function
2013-12-31 16:13:07 +01:00
dwarning
e1fa276ddc
whitespace
2013-12-31 16:13:06 +01:00
dwarning
c8cd8b95a8
specific MS adaption
2013-12-31 16:13:04 +01:00
dwarning
f3e7bf141d
move the `fft_windows()' function to fft/fftext.c
2013-12-31 16:13:03 +01:00
h_vogt
c972744ff1
inpcom.c, rewrite .subckt parameter processing
2013-12-31 16:13:02 +01:00
rlar
2555eeadef
fix the csh-problem $foo[$bar] and $foo[$&baz]
2013-12-31 16:13:00 +01:00
rlar
909f087237
cp_variablesubst() and cp_bquote(), rewrite
2013-12-31 16:12:59 +01:00
rlar
9eab66131d
cp_variablesubst() and cp_bquote(), rewrite
2013-12-31 16:12:58 +01:00
rlar
c2927128cd
whitespace
2013-12-31 16:12:56 +01:00
rlar
23d0f41e66
ft_find_analysis_parm(), change signature
2013-12-31 16:12:55 +01:00
rlar
4d65fb908d
use type `IFparm' to abbreviate some expressions
2013-12-31 16:12:53 +01:00
rlar
31b455afd4
if_getstat(), rewrite
2013-12-31 16:12:52 +01:00
rlar
fc2dd436fe
abstraction, new function `ft_find_analysis_parm()'
2013-12-31 16:12:51 +01:00
rlar
9d0500027c
abstraction, new function `ft_find_analysis()'
2013-12-31 16:12:49 +01:00
h_vogt
49c1385ba6
bug fix, `#248 Subcircuit call cannot have a node with same name as the subcircuit'
...
reported by Henrik Forstén
http://sourceforge.net/p/ngspice/bugs/248/
2013-12-31 16:12:48 +01:00
h_vogt
88cd0f324d
bug fix, `#250 "<<NAN, error = 7>>" in op analysis'
...
http://sourceforge.net/p/ngspice/bugs/250/
2013-12-31 16:12:45 +01:00
rlar
6050e2e0ea
cleanup some extra parentheses
2013-12-31 16:12:44 +01:00
rlar
bedbdb65bb
cleanup some line wraps
2013-12-31 16:12:43 +01:00
rlar
ed6d7df0ce
inpdoopt.c, bug fix, `i' incremented twice when searching for "options"
2013-12-31 16:12:41 +01:00
rlar
852bb7a89f
minor, prepare for automatic indentation
2013-12-31 16:12:40 +01:00
rlar
7381081226
ciderlib, proper types for newCard(), setCardParm(), askCardQuest()
2013-12-31 16:12:39 +01:00
rlar
ccb600f3c1
drop `NIL' macro
2013-12-31 16:12:37 +01:00
rlar
f973e7107f
memory.h, polish macros
2013-12-31 16:12:36 +01:00
Henrik Forstén
44ef3db000
dstring_append_char(), rewrite
2013-12-31 16:12:35 +01:00
rlar
ade2f8c2c2
CKTmodCrt(), cleanup
2013-12-31 16:12:33 +01:00
rlar
86264b9879
CKTmodCrt(), cleanup, always assign to `*modfast'
...
for all invocations of CKTmodCrt() alias newModel()
the following is true
(modfast != NULL) && (*modfast == NULL)
see
(grep "git --no-pager grep -nH -e 'CKTmodCrt\\|newModel'")
2013-12-31 16:12:32 +01:00
rlar
df5c785a84
drop `INPmodUsed' which is redundant to `INPmodfast'
2013-12-31 16:12:31 +01:00
rlar
468b4b973c
nghash_delete() models and instances in CKTdltMod()
2013-12-31 16:12:30 +01:00
rlar
f29d683770
CKTfndMod(), cleanup
2013-12-31 16:12:28 +01:00
rlar
f0d36d956e
CKTfndMod(), cleanup
2013-12-31 16:12:27 +01:00
rlar
e7def1a0bc
CKTfndMod(), drop unused arguments `type' and `modfast'
2013-12-31 16:12:26 +01:00
rlar
7b495e0a7b
CKTfndMod(), use a hashtable
2013-12-31 16:12:24 +01:00
rlar
59309e196b
CKTfndMod(), cleanup
2013-12-31 16:12:23 +01:00
rlar
b32c15d85f
CKTfndMod(), dont pass the `type' argument by reference any more
2013-12-31 16:12:22 +01:00
rlar
494ef3f628
CKTfndMod(), cleanup
2013-12-31 16:12:20 +01:00
rlar
247ae92ae8
CKTfndMod(), unuse the `type' argument
2013-12-31 16:12:19 +01:00
rlar
f46dbc883b
CKTfndMod(), this wont happen any more and `*type' will be overwritten anyway
2013-12-31 16:12:18 +01:00
rlar
213304f745
CKTfndMod(), rewrite error expressions
2013-12-31 16:12:16 +01:00
rlar
f0882dbdfd
CKTfndMod(), return the found model instead of error code
2013-12-31 16:12:15 +01:00
rlar
b97c2ba5d1
CKTfndMod(), express error return value outside of this function
2013-12-31 16:12:14 +01:00
rlar
4cc57bdfd6
CKTfndMod(), this will never happen, when this series of rewrites is finished
2013-12-31 16:12:12 +01:00
rlar
bd7e93de6c
CKTfndMod(), assert some facts
2013-12-31 16:12:11 +01:00
rlar
e79135c556
CKTfndDev(), cleanup
2013-12-31 16:12:10 +01:00
rlar
ddc78067cc
CKTfndDev(), drop `type' and `fast' argument
2013-12-31 16:12:08 +01:00
rlar
6a9a246526
CKTfndDev(), rewrite invocations where `*fast == NULL'
2013-12-31 16:12:07 +01:00
rlar
f375ec6c10
CKTfndDev(), rewrite invocations where `type == NULL'
2013-12-31 16:12:06 +01:00
rlar
6c80cb4062
CKTfndDev(), unuse the type argument
2013-12-31 16:12:04 +01:00
rlar
390dccd44b
CKTfndDev(), rewrite error expressions
2013-12-31 16:12:03 +01:00
rlar
5daa676163
CKTfndDev(), return the found instance instead of error code
...
now if (fast != NULL)
CKTfndDev(,,fast, )
is equivalent to
*fast = CKTfndDev(,,fast, )
2013-12-31 16:12:01 +01:00
rlar
7bacfc73d1
CKTfndDev(), express error return value outside of this function
...
if (fast != NULL) then
err = CKTfndDev(,, fast, );
is equivalent to
err = CKTfndDev(,, fast, );
err = *fast ? OK : E_NODEV;
2013-12-31 16:12:00 +01:00
rlar
6e7d70e4bb
CKTfndDev(), assert some facts
2013-12-31 16:11:59 +01:00
rlar
d9fbb36ac7
CKTfndDev(), unuse `type' argument
2013-12-31 16:11:57 +01:00
rlar
7048bf7c15
CKTfndDev(), cleanup usage of `type' argument
2013-12-31 16:11:56 +01:00
rlar
8a98c784f6
CKTfndDev(), cleanup usage of impossible error codes
2013-12-31 16:11:55 +01:00
rlar
0ab6a6e463
CKTfndDev(), drop unused argument `modfast'
2013-12-31 16:11:53 +01:00
Henrik Forstén
771d1fa697
CKTfndDev(), rewrite
2013-12-31 16:11:52 +01:00
Henrik Forstén
b96be8d576
CKTfndDev(), use a hashtable to speed up this function
2013-12-31 16:11:51 +01:00
h_vogt
7911ed9eb9
subckt.c: `A' device , no special translation when nodename starts with `v'
2013-12-31 16:11:49 +01:00
rlar
503f5d5c26
simplify #ifdef nesting #4/4
2013-12-31 16:11:48 +01:00
rlar
2c33cd49b2
simplify #ifdef nesting #3/4
2013-12-31 16:11:47 +01:00
rlar
71e953e1b9
simplify #ifdef nesting #2/4
2013-12-31 16:11:45 +01:00
rlar
b1a2eef4d0
simplify #ifdef nesting #1/4
2013-12-31 16:11:44 +01:00
h_vogt
e929275cdf
sharedspice.c, .h: fcn to initialize Sync, fcn to set breakpoint, callback fcn to read vsrc external inputs
2013-12-31 16:11:43 +01:00
h_vogt
89ae9e36a6
shared ngspice, dctran.c fcn to add breakpoints
2013-12-31 16:11:41 +01:00
h_vogt
8147b03465
shared ngspice: external voltage source
2013-12-31 16:11:40 +01:00
rlar
96e1d7eec6
cleanup OUTattributes() invocations
...
checked for object file invariance
2013-12-31 16:11:38 +01:00
rlar
29c57dd857
cleanup IFnewUid() invocations
...
checked for object file invariance
2013-12-31 16:11:37 +01:00
rlar
2f2da2bab2
cleanup OUTpBeginPlot() invocations
...
checked for object file invariance
2013-12-31 16:11:36 +01:00
rlar
40414ead49
cleanup stuttered semicolon
2013-12-31 16:11:34 +01:00
rlar
11abda7a6b
noisean.c, cleanup comment
2013-12-31 16:11:33 +01:00
rlar
4473419cb8
polish `PARSECALL' macro
...
checked for object file invariance
2013-12-31 16:11:32 +01:00
rlar
31ff2ee073
polish `LITERR' macro
...
checked for object file invariance
2013-12-31 16:11:30 +01:00
rlar
1b3e77ca32
polish `GCA' macro
...
checked for object file invariance
2013-12-31 16:11:29 +01:00
rlar
d52c9e401a
polish `IFC' macro
...
checked for object file invariance,
different code for inppas3.c, seems to be ok
2013-12-31 16:11:28 +01:00
rlar
14a6bd9314
polish `MERROR' macro
...
checked for object file invariance
2013-12-31 16:11:26 +01:00
h_vogt
a072a13cb0
misc_time.c: make timediff always availabe when timeb.h is found
2013-12-31 16:11:25 +01:00
dwarning
1bb270e301
inp2y.c, TXL bug fix
...
reported by John Reuben P on the ngspice-users mailing list
need to insert instance names into the symbol table with INPinsert()
2013-12-31 16:11:24 +01:00
rlar
4ad4877e30
CKTfndDev(), drop unused argument `modname' which is always NULL
2013-12-31 16:11:23 +01:00
rlar
156c9ea086
cleanup CKTfndDev(), findInstance() invocation
2013-12-31 16:11:21 +01:00
rlar
7c9e6e6569
unify, use `ckt' instead of `ck'
2013-12-31 16:11:20 +01:00
rlar
7c15b99ebc
CKTfndDev(), #6/6, cleanup
2013-12-31 16:11:19 +01:00
rlar
a2b50f5c1e
CKTfndDev(), #5/6, cleanup
2013-12-31 16:11:17 +01:00
rlar
235283d96a
CKTfndDev(), #4/6, cleanup
2013-12-31 16:11:16 +01:00
rlar
52c0731b69
CKTfndDev(), #3/6, cleanup
2013-12-31 16:11:15 +01:00
rlar
8c91149625
CKTfndDev(), #2/6, cleanup
2013-12-31 16:11:13 +01:00
rlar
8a69f5c1c8
CKTfndDev(), #1/6, whitespace
2013-12-31 16:11:12 +01:00
rlar
025c1e751e
abstraction, new function `find_instance()'
2013-12-31 16:11:11 +01:00
Henrik Forstén
c9c23342bc
numparm, speedup modernizeex() for the common case
2013-12-31 16:11:10 +01:00
Henrik Forstén
30d7647378
search just once for basic device types
2013-12-31 16:11:08 +01:00
Henrik Forstén
f284de7f49
inpcom.c: fix "sytax" spelling
2013-12-31 16:11:07 +01:00
dwarning
57f36319a1
allow format like .5 in b-sources
2013-12-31 16:11:05 +01:00
dwarning
ae78dd06ef
devices/mos*: prevent NaN in sqrt for negative value of model parameter `PHI'
2013-12-31 16:11:04 +01:00
Henrik Forstén
9c04f01991
rewrite AlmostEqualUlps() to avoid compiler warnings concerning `strict-aliasing'
2013-12-31 16:11:03 +01:00
Henrik Forstén
97d99067a6
inpsymt.c, use "Daniel J. Bernstein" hash function
...
instead of a simple sum.
just for note,
there is a wealth of newer hash functions.
For example "The FNV Non-Cryptographic Hash Algorithm"
from http://tools.ietf.org/html/draft-eastlake-fnv-03
2013-12-31 16:11:02 +01:00
rlar
2eb5a7ac00
avoid `(IFuid) 0' cast
2013-12-31 16:11:00 +01:00
rlar
daf4fba6db
convert K&R function definitions to ansi style
2013-12-31 16:10:59 +01:00
rlar
9b9bf075d1
fix for automatic indention
...
this part of
> commit f9144f90b3
> Author: pnenzi <pnenzi>
> Date: Tue May 23 20:04:32 2000 +0000
>
> Applied Widlok patch
is hostile to automatic indention
2013-12-31 16:10:58 +01:00
h_vogt
c19d7e6a51
sharedspice.c: preliminary fixes: ftime() usage, prevent crash if controlled_exit from worker thread
2013-12-31 16:10:56 +01:00
dwarning
0fd9956a56
devices/res: use model parameter `r' and `res' as default for instances w/o value
...
and set minimal resistor value to 1 mOhm
2013-12-31 16:10:55 +01:00
dwarning
f120c30ae4
devices/res: whitespace cleanup
2013-12-31 16:10:54 +01:00
h_vogt
e4921933ba
nicomcof.c: xmu used to calculate trap integration coefficient
2013-12-31 16:10:52 +01:00
h_vogt
6ce0412690
cktop.c: indentation
2013-12-31 16:10:51 +01:00
rlar
42066c2293
inpcom.c, whitespace
2013-12-31 16:10:50 +01:00
rlar
46a8f9bf0f
inpcom.c, cleanup
2013-12-31 16:10:48 +01:00
rlar
9181e7a008
inpcom.c, use strchr(,'\0')
2013-12-31 16:10:47 +01:00
rlar
a10a0b5e68
inpcom.c, use better skip_back functions
2013-12-31 16:10:45 +01:00
rlar
cbc2abdd13
inpcom.c, rewrite `chk_for_line_continuation()'
2013-12-31 16:10:44 +01:00
rlar
c8a94fb1d4
inpcom.c, introduce better skip_back functions
2013-12-31 16:10:43 +01:00
rlar
6e042f4147
inpcom.c, minor cleanup
2013-12-31 16:10:41 +01:00
rlar
82f70e3986
inpcom.c, rewrite `inp_fix_param_values()'
2013-12-31 16:10:40 +01:00
rlar
ad47b00e0f
inpcom.c, cleanup
2013-12-31 16:10:38 +01:00
rlar
863996228b
inpcom.c, cleanup `inp_add_params_to_subckt()'
2013-12-31 16:10:37 +01:00
rlar
c07038dfa9
inpcom.c, minor rewrites
2013-12-31 16:10:36 +01:00
rlar
14687910d9
rewrite `TSTALLOC()' macro for auto indentation
...
checked for object code invariance
2013-12-31 16:10:34 +01:00
h_vogt
83205d6c30
inp.c: skip title line when searching for .if in dotifeval()
2013-12-31 16:10:33 +01:00
rlar
15fab1ea12
inpcom.c, abstraction, new function `find_assignment()'
2013-12-31 16:10:31 +01:00
rlar
ffefd7a96f
inpcom.c, cleanup
2013-12-31 16:10:30 +01:00
rlar
b18854c3c0
inpcom.c, abstraction, new function inp_split_multi_param_lines()
2013-12-31 16:10:29 +01:00
rlar
52620edc72
inpcom.c, cleanup `inp_split_multi_param_lines()'
2013-12-31 16:10:27 +01:00
dwarning
e0a4373553
add `rgeomod' as model parameter for bsim4
2013-12-31 16:10:26 +01:00
dwarning
2dcea6d7c1
parser/*.c: correct the `pwr' derivative
2013-12-31 16:10:24 +01:00
rlar
c747498324
inpcom.c, local scope for `newcard'
2013-12-31 16:10:23 +01:00
h_vogt
c485cd4b8b
inpcom.c: G source, fix a bug and add `m' to TABLE
2013-12-31 16:10:22 +01:00
rlar
df00c189d1
inpcom.c, rewrite `append' of some decks
2013-12-31 16:10:20 +01:00
rlar
f6117a0cb8
inpcom.c, drop unused assignment
2013-12-31 16:10:19 +01:00
rlar
766cb12c13
inpcom.c, rewrite deck allocation
2013-12-31 16:10:18 +01:00
rlar
bacfc6a309
inpcom.c, local scope for some vars
2013-12-31 16:10:16 +01:00
h_vogt
f58a255651
inpcom.c: multiplier `m' for behavioral G source
2013-12-31 16:10:15 +01:00
h_vogt
05a6ec222e
inp.c, inpcom.c: implement a very basic .if/.else block
2013-12-31 16:10:13 +01:00
dwarning
91ab0a3c74
parser/*.c: implement a signed power function `pwr' for controlled sources
2013-12-31 16:10:12 +01:00
h_vogt
7857a300ad
subckt.c: prevent crash if 5/6 MOS nodes w/o L, W
2013-12-31 16:10:11 +01:00
h_vogt
5cbdca2cc6
subckt.c: MOS model in subckt w/o L, W
2013-12-31 16:10:09 +01:00
rlar
4d4d51c27b
inpcom.c, reorder some statements
2013-12-31 16:10:08 +01:00
rlar
d19f75381c
inpcom.c, local scope for `str'
2013-12-31 16:10:07 +01:00
rlar
245bd13cec
inpcom.c, local scope for `global_card'
2013-12-31 16:10:05 +01:00
rlar
e0e30a9d93
inpcom.c, drop variable `prev'
2013-12-31 16:10:04 +01:00
rlar
855e504b9a
inpcom.c, get rid of the global `global'
2013-12-31 16:10:02 +01:00
rlar
761ca9963d
inpcom.c, rewrite subckt_w_params business
2013-12-31 16:10:01 +01:00
rlar
956e7ad625
inpcom.c, execute inp_fix_for_numparam() just once when call_depth == 0
2013-12-31 16:10:00 +01:00
h_vogt
a469aa9387
devices/vccs: implement multiplier `m' (G source)
2013-12-31 16:09:58 +01:00
h_vogt
2ccf0a7097
devices/cccs: implement multiplier `m' (F source)
2013-12-31 16:09:57 +01:00
rlar
1c3a8670d8
inpcom.c, drop superflous initialisation
2013-12-31 16:09:56 +01:00
rlar
5425ce387e
inpcom.c, improve readability of skip_back_non_ws() and skip_back_ws()
2013-12-31 16:09:54 +01:00
rlar
7fff6c27cd
inpcom.c, cleanup
2013-12-31 16:09:53 +01:00
rlar
fb3d474cc2
inpcom.c, drop some local variables
2013-12-31 16:09:51 +01:00
rlar
cde7286721
inpcom.c, simplify error processing
2013-12-31 16:09:50 +01:00
rlar
e94a7e240f
inpcom.c, simplify tfree() usage
2013-12-31 16:09:49 +01:00
rlar
40343f164b
inpcom.c, local scope for some variables
2013-12-31 16:09:47 +01:00
Francesco Lannutti
d84f3af2d3
vcvsset.c, cleanup order of TSTALLOC() invocations
2013-12-31 16:09:46 +01:00
dwarning
b9a954df60
inpptree.c, ptfuncs.c: whitespace cleanup
2013-12-31 16:09:45 +01:00
rlar
153b4ac1c3
inpcom.c, cleanup deck loops #4/4
2013-12-31 16:09:43 +01:00
rlar
0d7020067e
inpcom.c, cleanup deck loops #3/4
2013-12-31 16:09:42 +01:00
rlar
5c82547109
inpcom.c, cleanup deck loops #2/4
2013-12-31 16:09:40 +01:00
rlar
d4e693632b
inpcom.c, cleanup deck loops #1/4
2013-12-31 16:09:39 +01:00
h_vogt
d4d3910e5a
xpressn.c: reduce number of (forbidden) keywords
...
to what is actually used
2013-12-31 16:09:38 +01:00
rlar
b76f9084bd
inpcom.c, inp_chk_for_multi_in_vcvs() shrink scope of variables
2013-12-31 16:09:36 +01:00
rlar
9b404a2265
inpcom.c, cleanup
2013-12-31 16:09:35 +01:00
rlar
30b4451433
inpcom.c, bug fix (incorrect check for mal formed line)
2013-12-31 16:09:34 +01:00
rlar
0f14ee3c22
inpcom.c, cleanup
2013-12-31 16:09:32 +01:00
rlar
129b1f36ed
inpcom.c, simple cleanups
2013-12-31 16:09:31 +01:00
rlar
30a88925da
inpcom.c, change semantics of skip_back_non_ws() and skip_back_ws()
2013-12-31 16:09:29 +01:00
rlar
144452c96c
inpcom.c, unify skip_back() usage #2/2
2013-12-31 16:09:28 +01:00
rlar
7fd93a8bd6
inpcom.c, unify skip_back() usage #1/2
2013-12-31 16:09:27 +01:00
rlar
8bff6db927
inpcom.c, cleanup inp_get_func_from_line()
2013-12-31 16:09:25 +01:00
rlar
687de9fc02
inpcom.c, drop artifact, now this isn't any more a bug
2013-12-31 16:09:24 +01:00
rlar
b20c6e149c
inpcom.c, use a list to store the `.func' lookup table
2013-12-31 16:09:22 +01:00
rlar
9093ec8fac
inpcom.c, use a `rib cage' to store the .subckt lexical scoping of `.func'
2013-12-31 16:09:21 +01:00
rlar
777dbede9b
inpcom.c, cleanup inp_expand_macros_in_deck() recursion
2013-12-31 16:09:20 +01:00
dwarning
2b6737e164
devices/bsim3, devices/bsim3v32: add `nqsmod' as model parameter
2013-12-31 16:09:18 +01:00
rlar
9782542b62
bug fix, .func expansion for nested .subckt
2013-12-31 16:09:17 +01:00
rlar
4fee1ed6c1
inpcom.c, cleanup some while(struct line * ...) loops
2013-12-31 16:09:16 +01:00
dwarning
0a5ac78e8a
devices/hisimhv1: correct the `qme2' rangecheck
2013-12-31 16:09:14 +01:00
dwarning
d5e3f1978a
devices/bsim3: whitespace cleanup
2013-12-31 16:09:13 +01:00
dwarning
b51f84e0ff
devices/bsim3: complete the ACM parameter set with xl and xw
2013-12-31 16:09:12 +01:00
dwarning
708fcbaed1
devices/bsim3: apply Area Calculation Method (ACM) to the bsim3v3.3 model
2013-12-31 16:09:10 +01:00
dwarning
c7c89c28a9
devices/bsim3: reposition sourceConductance block
2013-12-31 16:09:09 +01:00
dwarning
02dc233bc5
devices/bsim3: reposition DrainSatCurrent block
2013-12-31 16:09:08 +01:00
h_vogt
31405ed9cb
hsm2set, hsmhvset.c: error message
2013-12-31 16:09:06 +01:00
h_vogt
7387d59b1a
dctran.c, bug fix `#235 When Using .TRAN analysis with UIC, ...'
...
add a breakpoint for UIC
#235 When Using .TRAN analysis with UIC, unconnected pulse bug
http://sourceforge.net/p/ngspice/bugs/235/
2013-12-31 16:09:05 +01:00
Francesco Lannutti
fee628b6df
unify, use #include "vccsext.h" the same way as in all other models
2013-12-31 16:09:02 +01:00
rlar
60d9e79870
inpcom.c, cleanup
2013-12-31 16:08:59 +01:00
rlar
c397bb2013
inpcom.c, abstraction, find_subckt_w_params()
2013-12-31 16:08:58 +01:00
rlar
09a2ea3b0d
inpcom.c, cleanup, emphasize a search in subckt_w_params[]
2013-12-31 16:08:57 +01:00
rlar
ee626636c3
inpcom.c, abstraction, new_subckt_w_params()
2013-12-31 16:08:55 +01:00
rlar
f9dca702c9
inpcom.c, abstraction, new_lib()
2013-12-31 16:08:54 +01:00
rlar
ec93de4a5d
inpcom.c, cleanup usage of free_function()
2013-12-31 16:08:52 +01:00
rlar
5e00cbb3dd
inpcom.c, abstraction, free_function()
2013-12-31 16:08:51 +01:00
rlar
cb6340bf5b
inpcom.c, think in terms of struct functions instead of an integer
2013-12-31 16:08:50 +01:00
rlar
2929b7b885
inpcom.c, emphasize a potential bug
2013-12-31 16:08:48 +01:00
rlar
77484595a0
inpcom.c, think in terms of struct library instead of an integer
2013-12-31 16:08:47 +01:00
rlar
00f26c7e69
inpcom.c, collect globals into a struct
2013-12-31 16:08:45 +01:00
rlar
936096ed6b
inpcom.c, rename N_FUNCS and N_LIBRARY
2013-12-31 16:08:44 +01:00
h_vogt
07a662b271
traninit.c, cleanup indentation
2013-12-31 16:08:43 +01:00
h_vogt
bba1d2f5b9
b4v4getic.c, cleanup indentation
2013-12-31 16:08:41 +01:00
rlar
e0b56ca877
inpcom.c: rewrite .lib processing
2013-12-31 16:08:40 +01:00
h_vogt
0cf4fa381c
inpcom.c: debug output streamlined
2013-12-31 16:08:39 +01:00
h_vogt
87352b7f04
inpcom.c: larger array size, debug output modified
2013-12-31 16:08:37 +01:00
rlar
8fa71d2ae1
inpcom.c: array bounds check
2013-12-31 16:08:36 +01:00