Commit Graph

731 Commits

Author SHA1 Message Date
Holger Vogt 0c94ab948b treat ( ) , like spaces, that is ignore them during
switch parameter conversion
2018-07-26 18:21:34 +02:00
Holger Vogt 10c6c5c38b Convert .param lines containing 'agauss' and others
into .func (xxx1() 'agauss()', replace all xxx1 entries
by function xxx1().
After subcircuit expansion, replace agauss and others
in B-Line by their suitable values.
2018-07-22 15:08:44 +02:00
Holger Vogt 8fbcb16a57 add fourth parameter to cp_getvar(), in functions missing so far 2018-07-22 14:58:25 +02:00
Holger Vogt 09c876550f prevent string overflow by adding the string length
to the cp_getvar parameters. Used only with CP_STRING
2018-07-22 14:57:49 +02:00
Holger Vogt 8930690cd2 plug a small memory leak 2018-07-22 09:53:14 +02:00
Holger Vogt 824ac4fbc9 make functions static or add function prototypes 2018-07-21 23:56:14 +02:00
Holger Vogt b07ae3123e use only internal memory functions,
replace strdup by copy
2018-07-21 23:54:51 +02:00
Holger Vogt a98d01e5f8 Use only internal memory functions, replace
free->tfree, malloc->tmalloc, realloc->trealloc
2018-07-21 23:54:43 +02:00
Holger Vogt a2b52b588e a space is required between tokens that have got {} 2018-07-14 21:14:54 +02:00
Holger Vogt 92dd6e48d0 make up description comment for pspice_compat() 2018-05-31 10:59:20 +02:00
Holger Vogt 1d9ab3eb5c PSÜICE compatibility:
R n1 n2 val TC=xx1,xx2 --> R n1 n2 val TC1=xx1 TC2=xx2
2018-05-29 23:55:23 +02:00
Holger Vogt 22b7fa77b5 fix a bug with switches, when no subcircuit is involved 2018-05-28 23:59:55 +02:00
Holger Vogt 2f56feea4a do not lower-case command 'set sourcepath = XXX' 2018-05-27 07:56:40 +02:00
Holger Vogt 2e0b8b3e34 plug a small memory leak 2018-05-23 23:08:44 +02:00
Holger Vogt a40ba9ec4e add a comment 2018-05-22 21:18:53 +02:00
Holger Vogt ae81481229 white spaces 2018-05-22 20:34:44 +02:00
Holger Vogt 7b6cd86a62 re-write vswitch transformation code:
first scan: check for each .model with vswitch
second scan: check for switch instances
(s lines) using the models
2018-05-22 20:19:50 +02:00
Holger Vogt f9b11cd619 update to function pspice_compat(), concerning the VSWITCH replacement
only one .model replacement even for several s instances
firstly search in subcircuit at same level, then in top level
2018-05-21 23:34:36 +02:00
Holger Vogt 0cb71b21bb move ngspice_compat_mode(void) to inpcom.c and make it static 2018-05-21 01:09:13 +02:00
h_vogt e47ab87385 inpcom.c, multiplier 'm' in subcircuits: exclude all devices not supporting multiplier 'm' 2018-05-19 18:20:27 +02:00
h_vogt 2ece845f59 inpcom.c, responding to bug report 275 by Dominique Michel: commands plot, hardcopy: no lower case letters in tokens following xlabel, ylabel, title 2018-05-19 17:38:26 +02:00
Holger Vogt 5b18732af2 plug some memory leaks 2018-05-19 14:40:50 +02:00
Holger Vogt a191697bd6 safeguard opening of file for debug output:
may be not allowed if caller is not started
in admin mode.
2018-05-19 14:40:41 +02:00
Holger Vogt 57156e16f6 remove tiny memory leaks in inp_compat() 2018-05-19 14:40:33 +02:00
Holger Vogt 5f5eacc48e move skipping white spaces to fcn create_circbyline() now ' .end' is acknowledged 2018-05-19 14:40:23 +02:00
rlar 55b2a0218e noise for behavioural resistor 2018-05-19 14:40:12 +02:00
Holger Vogt 65181ff5c3 enable token 'table' to occur at any place in e source line 2018-05-18 18:37:24 +02:00
Holger Vogt ffb3800e34 Bug fix: B source pwl lines don't get special handling,
but standard numparam handling of {} tokens
2018-05-18 18:36:26 +02:00
Holger Vogt c879294a8b add comment 2018-05-18 18:27:49 +02:00
Holger Vogt 53bac06d11 .model replacement in ako (a kind of) model descriptions
in first level .subckt and top level only
2018-05-18 15:37:26 +02:00
Holger Vogt d9dbde0593 replace the E source TABLE function by a B source pwl
(used by ST OpAmps and comparators)
2018-05-18 15:31:47 +02:00
Holger Vogt 10c69b8d05 replace S1 D S DG GND SWN by
a1 %v(DG) %gd(D S) swa
2018-05-18 15:25:19 +02:00
Holger Vogt f25a307886 get the area factor for diodes and bipolar devices 2018-05-18 15:20:06 +02:00
Holger Vogt 9d8148edae replace T_ABS by temp and T_REL_GLOBAL by dtemp in .model cards 2018-05-18 15:17:45 +02:00
Holger Vogt 13ca544d15 replace & with && and | with || and *# with * # 2018-05-18 15:15:38 +02:00
Holger Vogt ae9cc17aff add predefined parameters TEMP, VT after each subckt call 2018-05-18 15:12:22 +02:00
Holger Vogt 77814b8618 add predefined params TEMP, VT, GMIN to beginning of deck
add funcs limit, pwr, pwrs, stp, if, int
2018-05-18 15:10:15 +02:00
Holger Vogt 5ace7ff1fd exclude simple e and h sources from getting a series voltage source
by undoing the name conversion
2018-05-16 08:16:22 +02:00
Holger Vogt cfa473ad96 don't print NULL (deallocated lines) 2018-05-16 00:19:46 +02:00
Holger Vogt 9908b39d2b make inp_compat_mode global 2018-05-16 00:15:29 +02:00
Holger Vogt 98fe623ba4 add function prototype pspice_compat
to deal with compatibility issues during loading
a PSPICE library
2018-05-16 00:14:31 +02:00
Holger Vogt 4aff986ee8 fix a bug, missing ; 2018-05-15 23:36:16 +02:00
Holger Vogt 429326e139 Add current measurement for device XYZ using I(XYZ) 2018-05-15 23:16:22 +02:00
rlar dc604c75d5 inpcom.c, whitespace 2018-05-15 22:43:43 +02:00
rlar 0f1b75a95b inpcom.c, abstraction, introduce bogus_find_subckt()
extracted from inp_fix_inst_calls_for_numparam().
This code is and was evil, as it does not respect scoping rules.
2018-05-15 22:43:23 +02:00
Holger Vogt 2f719f7401 function 'inp_vdmos_model' to process vdmos model lines towards ngspice compatibility 2018-05-04 20:34:32 +02:00
rlar 511cdd7188 struct card, #3/6, rename members from struct line to struct card 2018-02-17 19:15:53 +01:00
rlar 2b17f3292d inpcom.c, inp_add_control_section(), upside down for readability 2017-06-25 14:37:13 +02:00
rlar 76bbaf4ac3 inpcom.c, inp_sort_params(), use insert_deck() 2017-06-25 14:37:13 +02:00
rlar a26ec804cb inpcom.c, inp_reorder_params_subckt(), introduce insert_deck() 2017-06-25 14:37:13 +02:00