Commit Graph

1790 Commits

Author SHA1 Message Date
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
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
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
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 468dcd8f4d avoid `enumerated type mixed with another type' compiler warning 2013-12-31 16:23:59 +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
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 35b49bc016 inpcom.c: plug two memory leaks 2013-12-31 16:21:37 +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
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 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 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 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 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 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
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 6a3da0105b fft and ifft as vector functions 2013-12-31 16:13:08 +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
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 df5c785a84 drop `INPmodUsed' which is redundant to `INPmodfast' 2013-12-31 16:12:31 +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 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 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 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 0ab6a6e463 CKTfndDev(), drop unused argument `modfast' 2013-12-31 16:11:53 +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 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 4ad4877e30 CKTfndDev(), drop unused argument `modname' which is always NULL 2013-12-31 16:11:23 +01:00
rlar 7c9e6e6569 unify, use `ckt' instead of `ck' 2013-12-31 16:11:20 +01:00
Henrik Forstén c9c23342bc numparm, speedup modernizeex() for the common case 2013-12-31 16:11:10 +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
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
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
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
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
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
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
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
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
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
h_vogt a146e6abfb inpcom.c: disable `m' for E, H 2013-12-31 16:08:22 +01:00
dwarning 56449f54a3 allow Multiplier for current source in subckts 2013-12-31 16:08:18 +01:00
h_vogt 104f795a3e inpcom.c: add some some comments 2013-12-31 16:08:17 +01:00
h_vogt 4d4f05c380 inpcom.c: no multiplier 'm' added to V, I lines in subckt 2013-12-31 16:08:15 +01:00
h_vogt 745ea9ff3e measure.c: disable autostop, if no .meas commands found 2013-12-31 16:08:11 +01:00
h_vogt d4e5d1f836 subckt.c: enable correct model renaming for inductors 2013-12-31 16:08:10 +01:00
h_vogt e953d9a796 inpcom.c: hot fix for nested ternary expressions 2013-12-31 16:07:52 +01:00
rlar dc0fbe4220 bug fix, preserve filename case for `codemodel', `load' and `use'
reported and fixed by Emil Lambrache on the bug tracker
http://sourceforge.net/p/ngspice/bugs/241/
  "#241 case sensitivity not preserved for file names"
2013-12-31 16:07:29 +01:00
h_vogt 23779a9eb1 inp.c: add function prototype 2013-12-31 16:07:06 +01:00
h_vogt 62324299e1 misccoms.c: special return value for shared module 2013-12-31 16:06:45 +01:00
h_vogt 3211674b2f error.c: no exit, but callback if shared module 2013-12-31 16:06:44 +01:00
h_vogt b62b67bf25 display.c: exclude SHARED_MODULE if console 2013-12-31 16:06:43 +01:00
h_vogt ff4d42d651 outitf.c: prepare for feedback in shared ngspice 2013-12-31 12:57:56 +01:00
h_vogt df65fa28cf separate progress report from having Windows GUI 2013-12-31 12:56:59 +01:00
h_vogt 5a44b3f7f8 fix `SetAnalyse()' re-declaration 2013-12-31 12:56:58 +01:00
h_vogt d7e291c53a HAS_WINDOWS --> HAS_WINGUI
allow compilation on MS Windows without GUI
2013-12-31 12:56:57 +01:00
h_vogt 1e88db6f7d add command 'circbyline' to allow entering circuit line by line 2013-12-31 12:56:56 +01:00
h_vogt b503ea2d12 inp.c: do not run all 'save' commands upfront,
but cumulative when they appear in the .control section
2013-12-31 12:56:55 +01:00
h_vogt 79a9fdbcd7 breakp2.c: allow v(12) and i(vdd) in 'save' command 2013-12-31 12:56:55 +01:00
h_vogt 4865f7c2af runcoms2.c: update for dbs after remcirc 2013-12-31 12:56:54 +01:00
h_vogt 7bc879726d make database dbs local to each circuit 2013-12-31 12:56:53 +01:00
rlar efd8843f21 inpcom.c: cleanup comments 2013-12-31 12:56:52 +01:00
rlar a07817271a expand_libs(): think of `next' instead `prev' 2013-12-31 12:56:52 +01:00
rlar bdea094050 expand_libs(): rename `tmp_ptr2' --> `next' 2013-12-31 12:56:51 +01:00
rlar 27d68e8db7 expand_libs(): reposition `keep_char' restorage 2013-12-31 12:56:50 +01:00
rlar fcb5b12364 expand_libs(): shrink scope of `found_section' 2013-12-31 12:56:50 +01:00
rlar edc2503a3a expand_libs(): bug fix, missing check for .endl at the tail of a file 2013-12-31 12:56:49 +01:00
rlar 182911a5c7 inpcom.c: rename local variable names 2013-12-31 12:56:48 +01:00
rlar 07d3e3aa42 inpcom.c: rename local variable names 2013-12-31 12:56:48 +01:00
rlar 99141bbdfc inpcom.c: rename local variable names 2013-12-31 12:56:47 +01:00
rlar 181742a020 inpcom.c: rename found_lib_name --> found_section 2013-12-31 12:56:46 +01:00
rlar 7d5c48c0f2 inpcom.c: rename inp_determine_libraries() --> collect_section_references() 2013-12-31 12:56:46 +01:00
rlar fda6912f0e inpcom.c: rename expand_libs() --> expand_section_references() 2013-12-31 12:56:45 +01:00
rlar e898eb4faf inpcom.c: rename function argument names 2013-12-31 12:56:45 +01:00
rlar ffe82f1722 inpcom.c: rename function argument names 2013-12-31 12:56:44 +01:00
rlar b22be31496 inpcom.c: cleanup 2013-12-31 12:56:43 +01:00
rlar adeb2885c5 inpcom.c: rename library_file[] --> library_name[] 2013-12-31 12:56:43 +01:00
rlar 20f5bb3e2e inpcom.c: rename library_name[][] --> section_name[][] 2013-12-31 12:56:42 +01:00
rlar b8e3843f45 inpcom.c: rename library_ll_ptr[][] --> section_ref[][] 2013-12-31 12:56:41 +01:00
rlar aa9d291114 inpcom.c: rename libraries[] -> library_deck[] 2013-12-31 12:56:41 +01:00
rlar 61ab7b1de2 inpcom.c: rename num_lib_names --> num_sections 2013-12-31 12:56:40 +01:00
rlar d619a8b024 inpcom.c: rename new_lib_name() --> remember_section_ref() 2013-12-31 12:56:39 +01:00
rlar 05bd53b8de inpcom.c: rename find_lib_name() --> find_section() 2013-12-31 12:56:39 +01:00
rlar 09e89df89d inpcom.c: static declaration of library related global variables 2013-12-31 12:56:38 +01:00
h_vogt c15608c903 unique modtab for each circuit, store in ckt structure 2013-12-31 12:56:38 +01:00
h_vogt 4bed98936c inp.c: nullify `dbs' for use with 'source' command 2013-12-31 12:56:37 +01:00
rlar d1764cc7fa inp_readall() change function signature for readability 2013-12-31 12:56:35 +01:00
rlar 536d3c229f inpcom.c: abstract into new function read_a_lib() 2013-12-31 12:56:34 +01:00
rlar eaf4801b33 inpcom.c: rewrite using new function find_lib() 2013-12-31 12:56:34 +01:00
rlar 9d856dad61 inp_determine_libraries(): rewrite 2013-12-31 12:56:33 +01:00
rlar 9e3f2a9d28 inp_determine_libraries(): can happen at most once 2013-12-31 12:56:32 +01:00
rlar 111a258ff4 inpcom.c: small cleanup 2013-12-31 12:56:32 +01:00
rlar b4db509d83 inpcom.c: comment .lib semantic 2013-12-31 12:56:31 +01:00
rlar 7463499523 inp_readall(): rename local variables 2013-12-31 12:56:31 +01:00
rlar 3877e2d0d6 inp_readall(): local scope for `tmp_ptr1' 2013-12-31 12:56:30 +01:00
rlar 5fda0e2694 inp_readall(): local scope for `fdo' 2013-12-31 12:56:29 +01:00
rlar 4184aa8c10 cleanup, use array operator
checked for object file invariance on linux with
   ./configure --enable-debug=no --enable-maintainer-mode --with-readline=yes --enable-cider --enable-ndev --enable-pss --enable-xspice
2013-12-31 12:54:43 +01:00
h_vogt baad0b1bb8 inp.c: some comments added 2013-12-31 12:54:34 +01:00
rlar 6c8f002eea unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
rlar 1ee88a5694 prepare for #ifndef include wrapper unification 2013-12-31 12:54:31 +01:00
rlar c377b7a6b3 avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
rlar 5086a90746 cleanup some preprocessor macros 2013-12-31 12:54:15 +01:00
h_vogt 6c74513120 fix bug #229 `Node name "n" is sometimes toxic'
Error: too few nodes for MOS or CPL:
m6 1 n 2 vss nch.3 l=4.3e-07 ...

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

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

    Improvements in frontend by Phil Barker
2013-01-12 23:26:42 +01:00
h_vogt 3c078cde57 inp.c: remove buf if .control section contains only 'save...' lines 2013-01-01 12:32:04 +01:00
h_vogt 20716d3496 inpcom.c: exit if 'poly' option is required, but XSPICE not available,
remove memory leak
2012-12-30 19:27:36 +01:00
h_vogt 9a4bb846a6 com_dl.c: exit upon codemodel load error 2012-12-30 15:32:44 +01:00
Stefano Perticaroli 79bffc78a1 next version of PSS2
which was reviewed and rewritten on branch `PSS-2-try-to-rebase+4'
by Stefano Perticaroli and Francesco Lannutti
2012-12-28 18:15:37 +01:00
rlar 0be61b3e5a remove PSS2 2012-12-28 18:10:05 +01:00
dwarning 12b2287aa6 remove of modtab after the job is done to issue additional source commands 2012-12-19 18:49:32 +01:00
rlar 0bb266eab0 use enum dvec_flags values instead of numericals 2012-12-16 19:34:13 +01:00
rlar 190932bf65 use enum simulation_types values instead of numericals 2012-12-16 18:53:28 +01:00
h_vogt 3d28a3a225 device.c: plug memory leak in 'alter' command 2012-12-16 14:07:33 +01:00
h_vogt 7d45880654 plotit.c: remove memory leaks 2012-12-15 22:59:47 +01:00
h_vogt 717fe81c17 com_display.c: remove memory leak 2012-12-15 22:44:21 +01:00
h_vogt 8f44839f3e com_measure.c, measure.c: remove memory leaks 2012-12-09 16:24:39 +01:00
h_vogt 12e19d140b measure.c, rewrite do_measure() 2012-12-09 13:27:53 +01:00
h_vogt 155b6134a8 apply_func(), use arg->pn_value->v_name instead of recreated name 2012-12-09 13:27:53 +01:00
h_vogt aac7c1d4be com_diff(), use hash tables for the vector search
patch originally provided by Bill Swartz, 2010
reduces vector search time from O(n*n) to O(n)
2012-12-09 13:27:53 +01:00
h_vogt c5de0c21c9 findvec(), use hash tables for the vector search
patch originally provided by Bill Swartz, 2010
reduces vector search time from O(n) to O(1)
2012-12-09 13:27:53 +01:00
h_vogt a13e5bf867 measure.c: outputting 'meas' status in Windows GUI 2012-12-05 23:06:16 +01:00
rlar 83e3100917 remove unused variables 2012-12-01 16:05:20 +01:00
h_vogt 6a6c49516a inpcom.c: remove memory leak 2012-12-01 13:24:46 +01:00
h_vogt 9d52468471 inpcom.c: plug memory leaks 2012-11-27 23:56:00 +01:00
h_vogt d0f58dc5a6 inpcom.c: prevent invalid memory read/write 2012-11-25 18:27:42 +01:00
dwarning 6abd2e2c0c gnuplot.c: allow png terminal by gnuplot_terminal variable 2012-11-21 22:12:27 +01:00
h_vogt a419712eca inp.c: pre_<command> to allow command execution from the .control section before parsing the circuit 2012-11-17 16:30:17 +01:00
h_vogt e4af384d7b outitf.c: do not call clock() if MS Windows GUI 2012-11-07 22:17:16 +01:00
rlar 451c121dd5 improve commit `variable.c: add strict error handling' 2012-11-07 19:38:28 +01:00
Francesco Lannutti 952f55866e remove "error.h" from Makefile.am
this file is not anymore in the "frontend" folder
and "make dist" failed to generate the tarball
2012-11-06 23:55:49 +01:00
dwarning 44786a490b fix a leak in devmodtranslate 3 terminal section 2012-11-06 20:56:27 +01:00
Francesco Lannutti a4e0cfe341 move windows specific `STRICT' definition to canonical place 2012-11-06 19:31:17 +01:00
Francesco Lannutti 6b7f408ca8 avoid a compiler warning, (unused static function) 2012-11-06 19:13:54 +01:00
Francesco Lannutti b361dee4cc fix #include <> versus "" 2012-11-05 21:34:54 +01:00
dwarning 082a3e92ae allow more then 4 terminal mos models in subckts 2012-11-05 18:16:55 +01:00
h_vogt d5a2a361f6 variable.c: add strict error handling 2012-11-04 14:16:27 +01:00
h_vogt 85244d0222 inpcom.c: remove bug in inp_add_series_resistor(),
prevent crash in inp_remove_ws() upon erroneous input
2012-11-04 14:15:37 +01:00
h_vogt 5c4f8946f6 inp.c: avoid crash if setparse() returns NULL 2012-11-04 14:12:03 +01:00
h_vogt d8d8cf147e spiceif.c: correct types being loaded by snload() 2012-11-03 16:24:01 +01:00
h_vogt 65b976dab7 rename commands 'savesnap', 'loadsnap' to 'snsave', 'snload'
to avoid conflict with command 'save'
2012-11-01 14:41:13 +01:00
h_vogt a57361333a inpcom.c: add series resistor to each inductor with option rseries=1m 2012-10-29 23:13:20 +01:00
h_vogt c53f74ee5f com_ghelp.c: better message for help under Windows 2012-10-29 23:09:35 +01:00
Francesco Lannutti 08ec219417 remove all .cvsignore files 2012-10-26 18:30:14 +02:00
Francesco Lannutti 1dc70189a7 remove compilation warnings (type casts) 2012-10-26 18:04:44 +02:00
rlar ba131a5077 remove adms3 #1/2, code
due to license issues, and with the aim to approach the next
  ngspice release 25
we have to move this over to a development branch
2012-10-25 18:54:09 +02:00
Francesco Lannutti fd4c492562 white space changes 2012-10-22 23:06:25 +02:00
Francesco Lannutti c23bd59c44 removed ancient PARALLEL_ARCH feature
removed variables
  ARCHme
  ARCHsize

removed functions
  SMPcombine()
  SMPcCombine()
  CKTpartition()

removed files
  spcombin.c
  cktpartn.c

removed struct slots
  STATcombineTime
  STATtranCombTime
  STATacCombTime
  GENowner
  <MODEL>owner
2012-10-22 23:06:25 +02:00
rlar a394d79c56 use utf-8 encoding 2012-10-20 21:27:15 +02:00