Jim Monte
8285bd107a
Fixed compiler warnings regarding type of argument passed
2020-01-04 10:23:06 +01:00
Jim Monte
e969a05411
Added a macro R_MIN to define the minimum resistance value aS 0.01 and replaced the numeric value with the macro in the sourc code.
2020-01-04 10:22:50 +01:00
Jim Monte
9644f2ae4c
Dynamic string (dstring) rework
2020-01-04 10:22:35 +01:00
Holger Vogt
146f94392d
Remove memory leaks in cmpp.
...
Two small ones (a few bytes) are still there, difficult to assess.
2020-01-04 10:21:45 +01:00
Holger Vogt
d864bd750c
plug a memory leak by CALLBACK,
...
deleting locally malloced memory
2019-12-07 14:53:08 +01:00
Holger Vogt
dd05e24677
prevent referencing a NULL pointer
...
free the loc pointer and NULL its origin STATIC_VAR (locdata)
(that translates to mif_private->inst_var[0]->element[0].pvalue)
2019-12-02 21:33:31 +01:00
Holger Vogt
4a8e669562
enable setting a variable from an input file
...
using the existing i/o redirection
2019-11-29 23:55:13 +01:00
Holger Vogt
9a77d22444
prevent crash if 0 length vector is assessed
2019-11-27 23:31:22 +01:00
Holger Vogt
78c4a51d2a
allow 'dc TEMP 10 20 1' as well as 'dc temp 10 20 1'
2019-11-27 00:31:24 +01:00
Holger Vogt
b7bd59c22c
On Linux: allow calling gnuplot without invoking a terminal.
...
Reported by Terry Pilling
2019-11-24 12:40:28 +01:00
Holger Vogt
ae460934fa
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-09 23:10:28 +01:00
Holger Vogt
1afb290536
Revert "Replace B source pwl by XSPICE PWL Controlled Source"
...
This reverts commit cf653ef33a .
2019-11-09 23:08:50 +01:00
Holger Vogt
cf653ef33a
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-09 22:39:22 +01:00
Holger Vogt
5b2a9474fa
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-09 16:26:36 +01:00
Holger Vogt
87ebe9540b
enable system info for Windows 10,
...
exclude function not existing in older SDKs
2019-11-06 22:18:12 +01:00
Holger Vogt
dcb9aa26fe
Replace deprecated GetVersionExA by version helper functions
...
Add new macro _MSC_PLATFORM_TOOLSET to check for toolset
2019-11-03 14:39:52 +01:00
Holger Vogt
2ec1214fac
remove VS 'assignment within conditional expression' warning
2019-11-03 11:50:28 +01:00
Holger Vogt
b43f629d5e
remove 'unreachable code' warning
2019-11-03 11:14:20 +01:00
Holger Vogt
c2eb86f44f
remove 'potentially uninitialized' warning
2019-11-03 11:10:44 +01:00
Holger Vogt
530f414469
Revert "enable compiling with readline for macOS"
...
This reverts commit 11df2b7719 .
2019-10-26 16:18:29 +02:00
Holger Vogt
aa49874dc2
remove superfluous double parentheses
2019-10-26 16:17:21 +02:00
Holger Vogt
6074d2528f
macOS: Do not use deprecated finite, but isfinite
2019-10-26 16:02:01 +02:00
Holger Vogt
e9d6228c44
update for Linux
2019-10-19 20:23:32 +02:00
Holger Vogt
1de5cae0d2
fix for macOS
2019-10-19 19:36:13 +02:00
Holger Vogt
4fa37979ae
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-10-19 18:45:52 +02:00
Holger Vogt
32b265c92a
tabs to spaces
2019-10-19 11:17:42 +02:00
Holger Vogt
555cf2a8f4
Add resource info on memory used and available for macOS
2019-10-18 23:52:55 +02:00
Holger Vogt
b7b4e3badb
safeguard against crash if instance lines are incomplete
2019-10-18 23:29:51 +02:00
Holger Vogt
60a3298c2e
Make DEVNUM robust against double initialization.
2019-10-05 11:28:17 +02:00
Holger Vogt
e0448b4f37
Better indentation of message
2019-10-04 15:25:00 +02:00
Holger Vogt
2776d935ee
Better info in case of error
...
Initited by a patch from Bohdan Tkhir
2019-10-04 15:21:47 +02:00
Holger Vogt
67ffc810a8
If there are no controls, just skip creating the controls thread.
2019-10-02 22:02:57 +02:00
Holger Vogt
5f4eb3ac61
prevent potential false reads if 'controlswait' is set.
2019-10-02 12:04:19 +02:00
Holger Vogt
a45c4fad1d
in ps compatibility mode: translate t_measured to tnom
2019-10-01 23:43:11 +02:00
Holger Vogt
fd2e8612d8
readability
2019-09-28 16:19:27 +02:00
Holger Vogt
cb025a98a8
avoid false warnings of model not found
2019-09-28 16:17:03 +02:00
Holger Vogt
ec2d885494
correct typos found by linthian
2019-09-28 12:25:18 +02:00
Holger Vogt
518913dd0b
no actions if controls thread tid2 is not set
2019-09-25 22:29:37 +02:00
Mamoru TASAKA
a38a6ac698
tclspice: avoid get_plot function type conflict
...
re-name get_plot as get_plot_by_index
2019-09-25 10:25:31 +02:00
Holger Vogt
ef33e183f5
Better thread handling
...
Embed thread tid2 into tid1
Avoid spurious thread collisions
2019-09-25 10:13:37 +02:00
Holger Vogt
4f7b93f3a5
Do not start a spurious thread with empty controls
2019-09-25 10:12:36 +02:00
Holger Vogt
5c8b795064
Does crash with recent Linux openSUSE Tumbleweed
...
Not required by shared ngspice
2019-09-25 10:12:03 +02:00
Holger Vogt
1c282bbeb7
Revert "encapsulate fcn calls to cp_evloop into a mutex"
...
This reverts commit 2426a037db .
2019-09-25 09:12:02 +02:00
Holger Vogt
980f8a74b9
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-22 15:51:20 +02:00
Kevin Zheng
f502d0974e
patch to simplify compile for FreeBSD
2019-09-22 10:42:21 +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
acd0c7156c
return immediately if empty commands are sent
2019-09-20 19:22:47 +02:00
Holger Vogt
2426a037db
encapsulate fcn calls to cp_evloop into a mutex
...
thus preventing thread collisions
2019-09-20 19:21:56 +02:00
Holger Vogt
191ad0a574
avoid warning about potentially undefined variable
2019-09-14 12:43:48 +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
1c8992bf15
Enable the file input as search path for .include files
...
also for non-Wondows OSs
2019-09-14 11:25:34 +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
88008af088
remove memory leaks
2019-09-14 11:24:34 +02:00
Holger Vogt
afdd0fe85e
comments added
...
White spaces according to clang format
2019-09-14 11:24:05 +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
Holger Vogt
1adc3e559c
inp_get_elem_ident(): enable VDMOS devices as identifier m
2019-09-14 11:21:16 +02:00
Holger Vogt
7f95e9d40c
inp_get_elem_ident
...
model type as input, element identifier as output
2019-09-14 11:20:48 +02:00
Holger Vogt
b0e750c3d2
Remove printing an empty line to stderr
2019-08-18 10:53:25 +02:00
Holger Vogt
bc9a22e5f7
Make interface responsive during plotting,
...
prevent endless loop, probably because of full internal buffers
2019-08-18 10:52:46 +02:00
Holger Vogt
3ab2c6468c
raise time for immediate output, to catch some more information
2019-08-18 10:52:36 +02:00
Holger Vogt
5a45fdbebb
Skip name and node if searching for 'tc' in an
...
R, L, or C line. Thus a node name 'tc' would be allowed.
2019-08-18 10:52:21 +02:00
Holger Vogt
6a1b6ced18
Enable tc conversion also for L and C
...
Even is PSPICE manual does not mention this,
device model makers are using this option.
2019-08-18 10:51:57 +02:00
Holger Vogt
63b4cf05de
Do not bail out if 'load file' command has unavailable file,
...
just post error message and continue
A fix to https://sourceforge.net/p/ngspice/discussion/127605/thread/986c04f22b/
by Clyde
2019-08-13 23:35:48 +02:00
Jim Monte
0fbff063b8
bug #408 : prevent invalid data or crash by not reading beyond end of string
2019-08-13 23:35:17 +02:00
Holger Vogt
30565e45c4
Improve commant
2019-08-13 23:35:03 +02:00
AsamMich
9b28a951d2
Patch #83
...
Improve and complete command 'compose'
2019-08-13 23:34:48 +02:00
Holger Vogt
ca5997b705
Change variable 'stepsizelimit', added in commit
...
c86f6265d ("relieve the step size limitation..." 2019-02-02)
to 'nostepsizelimit', thus keeping the limit, if not set.
Maximum step size is limited to tstep given by .tran tstep tstop <tstart <tmax>>.
May be overridden by giving 'set nostepsizelimit' to (tstop - tstart)/50.
Both may be overriden by setting tmax.
2019-08-13 23:34:40 +02:00
Holger Vogt
fac46c0bfd
Speed up the text output in Windows GUI:
...
The stream is pushed to the display only every 30 milliseconds.
For the first 200ms the stream is still pushed for every line.
2019-08-13 23:34:16 +02:00
Holger Vogt
6ac67c2285
make GUI more responsive. Prevent output freezing
...
if large data volumes are sent to the display
2019-08-13 23:33:59 +02:00
Holger Vogt
1b96b5a087
fix typos
2019-08-13 23:33:44 +02:00
Holger Vogt
f1cf4103c0
If the comaptibility mode is PS, LTPS or LTPSA, '$' is treated as a valid
...
character, not a s end-of-line comment delimiter, except for that it is
located at the beginning of a line.
2019-08-13 23:33:37 +02:00
Holger Vogt
0b92a15ae8
safeguard against vectors with 0 length
2019-08-13 23:33:28 +02:00
Holger Vogt
b27d0e701c
allow very short version information with new options -v and -d
2019-08-13 23:33:15 +02:00
Holger Vogt
45e2155e57
Instead of the reverted commit
...
5542f2ec1 ("dio/diotemp.c, drop DIOgradingCoeff limit", 2017-07-18)
allow setting a new limit for the diode grading coefficient by
set DIOgradingCoeffMax=0.85
Default is 0.9
2019-08-13 23:32:55 +02:00
Holger Vogt
db85dead58
Revert "dio/diotemp.c, drop DIOgradingCoeff limit"
...
This reverts commit 5542f2ec10 .
2019-08-13 23:32:37 +02:00
Holger Vogt
aad247621e
raise warning only when params are on the .subckt line
2019-08-13 23:32:26 +02:00
Holger Vogt
01742eefef
The PSPICE area token for a device instance may be not only a number,
...
but also a parametrized token like {tok}
2019-08-13 23:32:16 +02:00
Jim Monte
8ed7080227
[PATCH #70 ] Made parameter const and reduced excess allocation.
2019-08-13 23:32:01 +02:00
Jim Monte
3def275be4
[PATCH #76 ] Fixed access violation when iplot called without a circuit
...
loaded.
2019-08-13 23:31:54 +02:00
Jim Monte
978429018b
[PATCH #73 ] Fixed crash when attempting to set a breakpoint without a
...
circuit loaded.
2019-08-13 23:31:46 +02:00
Jim Monte
e208aab4cd
[PATCH #69 ] Changed vector type from to the enum assigned to it.
2019-08-13 23:31:37 +02:00
Jim Monte
73379f4146
[PATCH #66 ] Removed definition of macro MAXWORDS since it is unused.
2019-08-13 23:31:28 +02:00
Jim Monte
4a26ea9847
[PATCH #64 ] Made shell command with no arguments functional for Windows.
2019-08-13 23:31:22 +02:00
Holger Vogt
9a904cb952
prevent crash upon wrong user input
2019-08-13 23:31:14 +02:00
Holger Vogt
c50dfa2be8
prevent crash if function is called with NULL argument
2019-08-13 23:31:01 +02:00
Jim Monte
060c51d68a
missing part of patch #56
2019-08-13 23:30:39 +02:00
Jim Monte
e92e2c7362
[PATCH #62 ] Fixed buffer overrun. Reworked to not use dstring for more
...
efficient parsing.
2019-08-13 23:30:31 +02:00
Jim Monte
24a13736bd
[PATCH #63 ] Fixed infinite loop when setscale is given as a command.
2019-08-13 23:30:20 +02:00