Jim Monte
92725594f3
Used the new capabilities of ft_numparse() to allow the creation of variables and list items of type CP_NUM
2020-03-15 08:50:53 +01:00
Jim Monte
ad970ae4e7
Made cp_enqvar() mode modular by adding a separate function to handle the case of a vector. Lists are more efficiently handled by moving common comparisons out of the loop over elements. The first argument of cp_enqvar() is changed from char * to const char * since the name of the variable being found is not altered by the function.
2020-03-15 08:50:53 +01:00
Jim Monte
f7951af50b
Fixed locating vectors like V(node)
2020-03-15 08:50:52 +01:00
Jim Monte
068df274bf
Made ft_numparse() thread-safe (no internal static variables) and prepared to support ngspice variable type CP_NUM.
2020-03-15 08:50:52 +01:00
Holger Vogt
89411e2fe4
Fixed merge conflict. Also made readifile() static and removed an unnecessary string duplication there.
2020-03-15 08:50:52 +01:00
Jim Monte
873e4a8db0
Added no_histsubst option and related fixes
2020-03-15 08:50:52 +01:00
Jim Monte
4bd4a6e9be
Fixed usage of new dstring functions. Also added const to some parameters that did not change.
2020-03-15 08:50:52 +01:00
Jim Monte
75d233c40d
If the prompt variable was set to a value that is not a string, memory that has been freed would be used when displaying the command prompt. This could lead to strange prompts and possible access violations, although it may appear to work OK if the freed memory has not been modified. This issue is fixed. Some useless duplications of strings when defining variables are also removed.
2020-03-15 08:50:51 +01:00
Jim Monte
b677ae1611
The check for the scale vector was not comparing the name in a case-insensitive manner, so unlet Yes would delete the default yes scale vector, for example. That issue was corrected. The code was also made more modular and descriptive regarding the check for the scale vector. Also, the warning now prints the scale vector as it is stored to make clear that vector names are not case sensitive.
2020-03-15 08:50:51 +01:00
Jim Monte
b7d8c61cd9
Cleaned up code to locate a vector in a plot by name. The code was made more modular, and special names like allv are handled more efficiently
2020-03-15 08:50:51 +01:00
Jim Monte
c7b95587de
Fixed compiler warnings regarding type of argument passed
2020-03-15 08:50:51 +01:00
Jim Monte
89efe5aeae
Dynamic string (dstring) rework
2020-03-15 08:50:51 +01:00
Holger Vogt
707936efe3
enable setting a variable from an input file
...
using the existing i/o redirection
2020-03-15 08:50:50 +01:00
Holger Vogt
05f02f3662
On Linux: allow calling gnuplot without invoking a terminal.
...
Reported by Terry Pilling
2020-03-15 08:50:50 +01:00
Holger Vogt
ee5f4cfc29
Replace B source pwl by XSPICE PWL Controlled Source
...
that has smooth rounded and differentiable corners.
This is used in the replacem,ent operation evaluating
Exxx n1 n2 TABLE {expression} = (x0, y0) (x1, y1) (x2, y2)
2019-11-30 11:42:00 +01:00
Holger Vogt
b76fbf99fe
Replace B source pwl by XSPICE PWL Controlled Source
...
that has smooth rounded and differentiable corners.
Microchip or On-Semi OpAmps that needed gmin and source
stepping for operating point calculation now converge
without, others like MCP6001 that generally refused
to converge are o.k. now. Reason is the heavily used
Gxxx n1 n2 TABLE {expression} = (x0, y0) (x1, y1) (x2, y2)
from the OpAmp models.
2019-11-30 11:39:09 +01:00
Holger Vogt
917ea99758
enable system info for Windows 10,
...
exclude function not existing in older SDKs
2019-11-30 11:38:53 +01:00
Holger Vogt
6598225ec0
Replace deprecated GetVersionExA by version helper functions
...
Add new macro _MSC_PLATFORM_TOOLSET to check for toolset
2019-11-30 11:38:25 +01:00
Holger Vogt
13a6e042f6
remove 'unreachable code' warning
2019-11-30 11:37:49 +01:00
Holger Vogt
ceea40e012
Revert "enable compiling with readline for macOS"
...
This reverts commit 11df2b7719 .
2019-11-30 11:36:09 +01:00
Holger Vogt
71917744a8
remove superfluous double parentheses
2019-11-30 11:35:56 +01:00
Holger Vogt
fa58223204
update for Linux
2019-11-30 11:35:24 +01:00
Holger Vogt
5542729694
fix for macOS
2019-11-30 11:35:12 +01:00
Holger Vogt
67f6fda216
Complete redesign of memory monitoring in resource.c.
...
Acquiring memory size is done by four functions
getMemorySize, getAvailableMemorySize, getPeakRSS,
and getCurrentRSS.
Time data are still obtained without code modifications.
2019-11-30 11:34:58 +01:00
Holger Vogt
22b111d9c0
tabs to spaces
2019-11-30 11:34:48 +01:00
Holger Vogt
6cd2e245c4
Add resource info on memory used and available for macOS
2019-11-30 11:34:35 +01:00
Holger Vogt
42e99ec66c
safeguard against crash if instance lines are incomplete
2019-11-30 11:33:04 +01:00
Holger Vogt
03c5870034
in ps compatibility mode: translate t_measured to tnom
2019-10-05 13:16:25 +02:00
Holger Vogt
552d587deb
readability
2019-09-28 16:21:44 +02:00
Holger Vogt
976c949c86
avoid false warnings of model not found
2019-09-28 16:21:36 +02:00
Holger Vogt
8276ef7b58
correct typos found by linthian
2019-09-28 12:24:09 +02:00
Holger Vogt
1085512be5
Do not start a spurious thread with empty controls
2019-09-28 12:00:48 +02:00
Holger Vogt
712014b6db
Does crash with recent Linux openSUSE Tumbleweed
...
Not required by shared ngspice
2019-09-28 12:00:31 +02:00
Holger Vogt
92b237da3b
Missing files in distribution
...
Correction to commit
Fix a build error on FreeBSD 12, bison 3.3.2, automake 1.16.1 and BSD make
2019-09-28 12:00:16 +02:00
Holger Vogt
11df2b7719
enable compiling with readline for macOS
...
which has a very simple readline header only
2019-09-20 20:43:36 +02:00
Holger Vogt
ec6d676920
Make CopyGraph safe against NULL argument.
...
Otherwise memcpy will fail.
2019-09-14 12:38:57 +02:00
Holger Vogt
aa726c9864
Make ...search_identifier safe against NULL arguments
...
Otherwise strstr will fail
2019-09-14 11:30:20 +02:00
Holger Vogt
0071ad8569
If a subcircuit is defined more than once,
...
only read the first one, rename the others und thus discard them.
2019-09-14 11:28:32 +02:00
Holger Vogt
972785095f
Avoid crash, and send error message when r,l,c
...
instance lines does not have enough tokens.
2019-09-14 11:28:07 +02:00
Holger Vogt
f9deefe326
Skip '\r' when reading lines from a file
2019-09-14 11:27:23 +02:00
Holger Vogt
8fc1b70e93
Bug #424 now lower-casing whenh following the redirection token >
...
Re-order the code for defining exceptions for not lower casing
2019-09-14 11:27:13 +02:00
Holger Vogt
cdc8d3d054
new_title may contain a \r, remove it
2019-09-14 11:26:52 +02:00
dwarning
134e92b78f
vbic model implementation including self-heating effect
2019-09-14 11:26:10 +02:00
Holger Vogt
9543a5644c
Improve handling of non-printable characters (esp. for Linux)
...
If there is an isolated non-printable character leading the line,
convert it to *.
In fact there are some, e.g. in device lib TL072.301 from TI.
2019-09-14 11:25:07 +02:00
Holger Vogt
4cf2b5e5ce
remove commenting out unused .model lines
...
from comment_out_unused_subckt_models().
This now handled by inp_rem_unused_models()
taking appropriate scoping into account.
2019-09-14 11:23:40 +02:00
Holger Vogt
6669cbc17c
add function inp_rem_unused_models().
...
checking for unused models now also removes models
that are out of scope.
2019-09-14 11:23:24 +02:00
rlar
9e729bc8ee
bug fix, avoid segfault when instantiating a unknown subcircuit
2019-09-14 11:22:52 +02:00
rlar
e2b3dffcff
drop bogus_find_subckt, use a proper scoped search
2019-09-14 11:22:39 +02:00
rlar
96bb0dd941
inpcom.c, introduce inp_add_levels(), add scope to decks
2019-09-14 11:22:24 +02:00
Holger Vogt
d901665517
enable 'res' as valid resistor model identifier
2019-09-14 11:21:53 +02:00