ngspice/src/frontend
Holger Vogt aa3ab5bc25 Fixing bug 804.
Using function get_windows_canonical_path() may neglect the
ngspice file search sequence, as an absolute path is returned also
for relative input paths. ngspice however searches a file not only
relative to the current directory, as inforced by this
function, but for example also in the directory of the previous
input file.

So restrict this function to paths longer than MAX_PATH, which would fail
otherwise.
2025-09-06 17:47:21 +02:00
..
help EXITPOINT, memory leaks upon failure 2020-04-27 10:16:55 +02:00
numparam Enable strings as parameters across subckt boundaries 2024-12-06 22:48:15 +01:00
parser Remove function cp_ccon() and related code. The function modifies 2024-12-06 22:40:38 +01:00
plotting Fix Bug #793 - "breakp.c error: compling without XSPICE failed". 2025-07-29 10:38:42 +02:00
trannoise Patches provided by Carsten Schoenert: Misspellings, File access 2023-12-31 13:51:05 +01:00
wdisp Update/remove comment(no longer valid) 2024-12-15 10:26:08 +01:00
ChangeLog Integrated code from tclspice, brorson xspice and Vera memleak. 2003-07-23 19:36:39 +00:00
Makefile.am New interpreter commands strstr, strslice, fopen, fread and fclose. 2023-11-27 14:58:01 +00:00
README * src/Makefile.am src/main.c src/sconvert.c 2000-05-06 14:12:51 +00:00
arg.c Two memory leaks found interactively with valgrind with safe fixes. 2022-05-10 15:30:08 +02:00
arg.h Add 'esave' command to save only specific event nodes. 2022-01-09 10:58:38 +01:00
aspice.c Remove the obsolete RETSIGTYPE, replace by void 2023-03-18 14:30:29 +01:00
aspice.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
breakp.c Fix Bug #793 - "breakp.c error: compling without XSPICE failed". 2025-07-29 10:38:42 +02:00
breakp.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
breakp2.c Keep saving nodes only once, but make an exception for node 'all'. 2025-07-29 11:05:14 +02:00
breakp2.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
circuits.c harmonise `struct circ' variables, `ckt' --> `ci' 2015-12-15 18:36:59 +01:00
circuits.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
com_ahelp.c prevent string overflow by adding the string length 2018-07-22 14:57:49 +02:00
com_ahelp.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_alias.c Fix Bug #402 "Crash related to aliases". Do not return freed pointer. 2022-04-26 10:34:45 +02:00
com_alias.h Commit [88653f] Fixed assorted compiler warnings, memory leaks, etc. 2020-04-25 10:29:00 +02:00
com_asciiplot.c cleanup, ngspice/config.h is already in ngspice/ngspice.h, #1/2 (easy ones) 2012-10-06 12:12:08 +02:00
com_asciiplot.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_cdump.c src/frontend/** remove superfluous `return' invocations 2012-09-22 19:33:55 +02:00
com_cdump.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_chdir.c remove all the remains of quote() and strip() that had been 2020-03-15 08:51:12 +01:00
com_chdir.h Command 'cd' now switches to the home directory also for MS Windows. 2018-08-18 21:22:59 +02:00
com_commands.h new command 'alterparam', to be used in conjunction with 'mc_source' 2018-05-15 22:46:06 +02:00
com_compose.c Change the code that makes variables from device/model parameters 2024-05-01 10:30:16 +02:00
com_compose.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_display.c remove all the remains of quote() and strip() that had been 2020-03-15 08:51:12 +01:00
com_display.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_dl.c Add ft_spiniterror, to be set during spinit processing,as 2024-06-22 14:21:01 +02:00
com_dl.h prototype for Verilog-A integration using OSDI and OpenVAF 2022-12-27 13:51:57 +01:00
com_dump.c cleanup, ngspice/config.h is already in ngspice/ngspice.h, #1/2 (easy ones) 2012-10-06 12:12:08 +02:00
com_dump.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_echo.c remove all the remains of quote() and strip() that had been 2020-03-15 08:51:12 +01:00
com_echo.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
com_fft.c correct fft dc scaling bug #620 2023-03-18 14:31:24 +01:00
com_fft.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
com_fileio.c Suppress some warnings from MSVC. 2024-05-01 10:31:25 +02:00
com_fileio.h New interpreter commands strstr, strslice, fopen, fread and fclose. 2023-11-27 14:58:01 +00:00
com_ghelp.c Repair the link to the xhtml manual 2024-07-05 23:59:37 +02:00
com_ghelp.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_gnuplot.c src/frontend/** remove superfluous `return' invocations 2012-09-22 19:33:55 +02:00
com_gnuplot.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_hardcopy.c Fix a comment 2021-07-05 14:25:26 +02:00
com_hardcopy.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_help.c Fix a bug in the "help" command. Some commands have no action function, 2023-09-23 17:03:19 +02:00
com_help.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_history.c com_history.c, static declaration for 'cp_hprint()' 2016-08-15 11:27:15 +02:00
com_history.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_let.c Allow KiCad special token V(/xyz) by quoting 2024-11-02 22:36:26 +01:00
com_let.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_measure2.c Enable real (from fft)or complex (from sp) frequency vetors in plot sp 2025-07-29 10:38:17 +02:00
com_measure2.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_option.c only access to CKTkluMODE if KLU configured 2024-03-25 09:20:51 +01:00
com_option.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_plot.c Improve two error messages: in d_cosim, report the filename given, 2024-12-06 22:50:37 +01:00
com_plot.h Improve two error messages: in d_cosim, report the filename given, 2024-12-06 22:50:37 +01:00
com_rehash.c cleanup, ngspice/config.h is already in ngspice/ngspice.h, #1/2 (easy ones) 2012-10-06 12:12:08 +02:00
com_rehash.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
com_set.c Fixed merge conflict. Also made readifile() static and removed an unnecessary string duplication there. 2020-03-15 08:50:52 +01:00
com_set.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_setscale.c Improve commands for vector scales. "setscale" can now change 2023-07-15 11:28:48 +02:00
com_setscale.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_shell.c Remove function cp_ccon() and related code. The function modifies 2024-12-06 22:40:38 +01:00
com_shell.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
com_shift.c cleanup, ngspice/config.h is already in ngspice/ngspice.h, #1/2 (easy ones) 2012-10-06 12:12:08 +02:00
com_shift.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
com_state.c cleanup, ngspice/config.h is already in ngspice/ngspice.h, #1/2 (easy ones) 2012-10-06 12:12:08 +02:00
com_state.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
com_strcmp.c Suppress some warnings from MSVC. 2024-05-01 10:31:25 +02:00
com_strcmp.h New interpreter commands strstr, strslice, fopen, fread and fclose. 2023-11-27 14:58:01 +00:00
com_sysinfo.c Fix some compiler warnings when -Wextra is added to CFLAGS. 2025-05-24 11:30:25 +02:00
com_unset.c clear all variables upon 'quit' 2020-08-20 15:21:12 +02:00
com_unset.h clear all variables upon 'quit' 2020-08-20 15:21:12 +02:00
com_wr_ic.c Update to command 'wrnodev': 2023-09-28 10:05:31 +02:00
com_wr_ic.h Add command 'write_ic' 2021-09-29 20:11:45 +02:00
com_xgraph.c src/frontend/** remove superfluous `return' invocations 2012-09-22 19:33:55 +02:00
com_xgraph.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
commands.c Event nodes can be plotted with offset by "iplot", like the 2025-05-24 11:27:37 +02:00
commands.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
completion.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
control.c Prevent a segfault if cp_variablesubst return a nullptr. 2025-08-28 12:16:22 +02:00
control.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
cpitf.c Remove function cp_ccon() and related code. The function modifies 2024-12-06 22:40:38 +01:00
cpitf.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
define.c Use only internal memory functions, replace 2018-07-21 23:54:43 +02:00
define.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
device.c Fix some compiler warnings when -Wextra is added to CFLAGS. 2025-05-24 11:30:25 +02:00
device.h Add new flags to command devhelp: 2022-04-28 09:29:02 +02:00
diff.c Replace all BOOLEAN, BOOL, _Bool by bool 2024-12-15 10:25:28 +01:00
diff.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
dimens.c type modifier, parameter graph removed from SetColor() 2020-04-27 10:15:32 +02:00
dimens.h [PATCH #48] Fixed infinite loop and variation from documented behavior of 2019-08-13 23:28:25 +02:00
display.c Make the error message a little more reasonable. 2023-07-15 11:21:11 +02:00
display.h Add parameter 'isgrid' to plotting of arcs. 2022-02-01 12:23:29 +01:00
dotcards.c BUGFIX: #797 - gettoks did not protect against NULL pointer input 2025-07-29 11:04:05 +02:00
dotcards.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
dvec.c Update to comments, restrict mutex definitions to shared ngspice 2023-11-19 12:05:10 +01:00
error.c Remove function cp_ccon() and related code. The function modifies 2024-12-06 22:40:38 +01:00
evaluate.c Improve an error message. 2024-11-02 22:42:12 +01:00
evaluate.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
fourier.c Create a vector thdnm from THD calculation, e.g. thd11 2025-05-24 11:24:25 +02:00
fourier.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
ftehelp.h * src/frontend/com_ahelp.c src/frontend/com_ahelp.h 2000-06-27 16:15:43 +00:00
ftesopt.c Add statistics: load, subckt expansion, and parse times 2020-08-20 15:23:19 +02:00
gens.c use memcpy() instead of deprecated bcopy() 2016-07-30 20:58:19 +02:00
gens.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
get_avail_mem_size.c Replace all BOOLEAN, BOOL, _Bool by bool 2024-12-15 10:25:28 +01:00
get_phys_mem_size.c Replace all BOOLEAN, BOOL, _Bool by bool 2024-12-15 10:25:28 +01:00
get_resident_set_size.c Replace all BOOLEAN, BOOL, _Bool by bool 2024-12-15 10:25:28 +01:00
hcomp.c #1/4 #include <ngspice/...> --> #include "ngspice/..." 2011-12-11 18:05:00 +00:00
hcomp.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
hpgl.c Add parameter 'isgrid' to plotting of arcs. 2022-02-01 12:23:29 +01:00
hpgl.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
init.c Enable history substitution of interactive commands only when variable 'histsubst' is set. 2023-05-27 10:47:27 +02:00
init.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
inp.c typo 2025-07-29 10:49:22 +02:00
inp.h Insert XSPICE bridging devices automatically when an analogue node 2022-10-07 13:19:59 +02:00
inpc_probe.c Make all new entries lower case. 2025-05-30 12:56:25 +02:00
inpcom.c Fixing bug 804. 2025-09-06 17:47:21 +02:00
inpcom.h New parameter char *linesource for fcn insert_new_line 2024-05-14 16:29:51 +02:00
inpcompat.c PS compatibility: MOS level 5 and Bip level 2 2025-05-24 11:24:33 +02:00
inpcompat.h Shift all compatibility handlinmg from inpcom.c into its own source files 2023-05-27 10:39:05 +02:00
interp.c Made descriptions of invalid interpolation cases more descriptive and fixed a memory leak 2020-03-15 08:51:04 +01:00
interp.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
inventory.c Only print the devices that are really used in the circuit 2021-01-02 19:02:07 +01:00
linear.c Check for tran at first when linearize is called. 2022-10-07 13:16:03 +02:00
linear.h Cut out part of each vector of the current tran plot, 2020-08-20 15:28:48 +02:00
logicexp.c Replace all BOOLEAN, BOOL, _Bool by bool 2024-12-15 10:25:28 +01:00
measure.c Don't check continuously for autostop, only when option flag is set 2023-09-09 18:37:13 +02:00
misccoms.c Another copyright update 2025-08-08 11:46:22 +02:00
misccoms.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
miscvars.c remove the ancient nobjthack option to fake 3-terminal bjt's 2016-11-01 11:56:48 +01:00
miscvars.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
mw_coms.c Change error messages to warning messages, because simulator moves on 2022-10-08 16:44:30 +02:00
mw_coms.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
newcoms.c remove all the remains of quote() and strip() that had been 2020-03-15 08:51:12 +01:00
newcoms.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
nutinp.c Add an additional funtion parameter 'filename' to fcn inp_readall 2024-05-14 16:28:40 +02:00
nutinp.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
nutmegif.c #1/4 #include <ngspice/...> --> #include "ngspice/..." 2011-12-11 18:05:00 +00:00
nutmegif.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
options.c Add a flag compmod to struct card. 2024-12-15 10:29:23 +01:00
options.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
outitf.c Support use of XSPICE event nodes with iplot. 2025-05-24 11:27:28 +02:00
outitf.h Support use of XSPICE event nodes with iplot. 2025-05-24 11:27:28 +02:00
parse-bison-y.h drop yyparse() prototypes, require bison >= 2.7 which emits them 2015-10-18 00:46:13 +02:00
parse-bison.y proper size_t to int conversion 2020-10-10 12:12:59 +02:00
parse.c Fix a crash due to buggy user input. 2025-01-09 13:21:05 +01:00
parse.h protect vec_free() and free_pnode() macro for use in non braced blocks 2017-03-25 19:54:40 +01:00
points.c src/frontend/**, whitespace, indentation, ... 2012-09-20 20:30:53 +02:00
points.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
postcoms.c Don't print a form feed if 'option nopage' is given. 2025-07-29 11:05:00 +02:00
postcoms.h Add function 'remzerovec' to remove vectors of length 0 2020-05-02 20:06:58 +02:00
postsc.c Add parameter 'isgrid' to plotting of arcs. 2022-02-01 12:23:29 +01:00
postsc.h Define the function DevFinalize as used in the previous commit. 2021-07-05 14:22:55 +02:00
quote.c remove all the remains of quote() and strip() that had been 2020-03-15 08:51:12 +01:00
quote.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
rawfile.c Align title line to the numbers following 2025-05-24 10:59:47 +02:00
rawfile.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
resource.c Fix some more -Wextra warnings. 2025-05-24 11:31:05 +02:00
resource.h #includes modified 2020-04-27 10:24:45 +02:00
runcoms.c Reload sourceinfo when changing the current circuit. 2024-05-14 16:31:15 +02:00
runcoms.h S parameter simulation 2022-02-17 15:48:00 +01:00
runcoms2.c During setup of the models thre have been search scans in the 2023-10-18 14:34:16 +02:00
runcoms2.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
shyu.c Add a flag compmod to struct card. 2024-12-15 10:29:23 +01:00
shyu.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
signal_handler.c Improve the behaviour of ngspice when run in the background on a 2024-12-06 22:40:55 +01:00
signal_handler.h Improve the behaviour of ngspice when run in the background on a 2024-12-06 22:40:55 +01:00
spec.c rm obsolete order for spec blackman window 2024-01-26 08:32:18 +01:00
spec.h fix `SetAnalyse()' re-declaration 2013-12-31 12:56:58 +01:00
spiceif.c Snapshot support for new statistics added by e1677a18c4. 2025-07-29 10:39:00 +02:00
spiceif.h struct card, #3/6, rename members from struct line to struct card 2018-02-17 19:15:53 +01:00
streams.c Small fixup for misspelled words 2020-08-20 15:22:48 +02:00
streams.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
subckt.c Add a flag compmod to struct card. 2024-12-15 10:29:23 +01:00
subckt.h Reduce the memory requirements if there is a PDK with 2020-12-22 17:56:18 +01:00
svg.c Add parameter 'isgrid' to plotting of arcs. 2022-02-01 12:23:29 +01:00
svg.h Define the function DevFinalize as used in the previous commit. 2021-07-05 14:22:55 +02:00
terminal.c Do not include term.h and curses.h in terminal.c without checking that 2025-05-24 11:17:25 +02:00
terminal.h avoid leading underscore in preprocessor macros 2013-12-31 12:54:27 +01:00
testcommands.c src/frontend/**, whitespace, indentation, ... 2012-09-20 20:30:53 +02:00
typesdef.c Allow 'nulltype', which returns NULL pointer. 2022-10-07 11:34:25 +02:00
typesdef.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00
udevices.c Replace all BOOLEAN, BOOL, _Bool by bool 2024-12-15 10:25:28 +01:00
variable.c Remove function cp_ccon() and related code. The function modifies 2024-12-06 22:40:38 +01:00
variable.h variable.h, reduce visibility of auxiliary struct xxx to variable.c 2016-10-15 15:06:16 +02:00
vectors.c Three minor code improvements. Remove a redundant test in com_measure2.c. 2024-12-06 22:40:21 +01:00
vectors.h protect vec_free() and free_pnode() macro for use in non braced blocks 2017-03-25 19:54:40 +01:00
where.c cleanup, use NULL instead of 0 in pointer context 2015-05-02 10:24:49 +02:00
where.h unify #ifndef include wrapper 2013-12-31 12:54:32 +01:00

README

This directory contains the code that is behind the commands of the
interactive frontend.  Note that every command has a source file
associated with it.  The source file is prefixed with `com_' to
distinguish command source files from other supporting code.