Stefan Frederik
|
cd083c91e8
|
improve xyce netlist processing hooks (save ammeter currents), cmos_example.sch can now be simulated in ngspice and xyce
|
2022-09-11 13:21:24 +02:00 |
Stefan Frederik
|
9e7930c8e0
|
fix regression in raw_query list command, store all waveform names in lowercase and with ":" path sep translated to ".", so looking them up is faster (no need to try multiple searches)
|
2022-09-11 10:52:52 +02:00 |
Stefan Frederik
|
50539069ff
|
faster xschem raw_query values; fixed xchem raw_query not resetting previous result before returning infos
|
2022-09-10 22:33:28 +02:00 |
Stefan Frederik
|
1ad524829b
|
enabled (empty) custom completer for tclreadline
|
2022-09-10 09:29:45 +02:00 |
Stefan Frederik
|
9c636cbee1
|
fixed a possible out of bound array writing (crash) on malformed graph bussed nodes in get_bus_idx_array()
|
2022-09-10 01:39:30 +02:00 |
Stefan Frederik
|
193cf397bd
|
more Xyce integration, transform .save in .print tran, transform x1.x2.node to X1:X2:NODE in Xyce lookups, more checks for malformed raw files
|
2022-09-09 18:57:34 +02:00 |
Stefan Frederik
|
d4e29db770
|
added command "xschem get netlist_name fallback" that returns user set netlist name or fallback name derived from circuit filename. simulate and waves procedures handle user netlist name if set
|
2022-09-09 12:02:56 +02:00 |
Stefan Frederik
|
d05926e0ca
|
better template for Xyce parallel launcher
|
2022-09-09 08:41:00 +02:00 |
Stefan Frederik
|
3ef32a1eef
|
try more upper/lower case combinations in get_raw_index() function, removed some debugging messages
|
2022-09-09 02:11:09 +02:00 |
Stefan Frederik
|
6baeb53a51
|
added template for parallel Xyce run in Configure simulators and tools dialog box, added sim_is_ngspice convenience procedure. This allows (together with sim_is_xyce and may be others) to differentiate commands depending on simulator type
|
2022-09-09 01:46:46 +02:00 |
Stefan Frederik
|
f78fc5494d
|
set_text_custom_font xctx->cairo_ctx can be NULL when netlisting without X with 0_examples_top.sch; net_name(..) doesnt work on duplicate pin for test_doublepin.sch so added back the condition in rev 2243; added HAS_CAIRO directive to compile on Windows that dont have CAIRO turned on.
remove some old unused variables
|
2022-09-08 20:58:12 +02:00 |
Stefan Frederik
|
9efacd8a8b
|
Revert r2272; zoom by area plots reverse x axis if done with Shift key pressed
|
2022-09-07 09:31:09 +02:00 |
Stefan Frederik
|
503f080db1
|
balloon tooltip procedure made more general. Easy to reuse for any widget
|
2022-09-05 18:06:57 +02:00 |
Stefan Frederik
|
ecca24191e
|
fixes in fullscreen code (restore zoom lavels)
|
2022-09-04 14:16:38 +02:00 |
Stefan Frederik
|
f022fae205
|
correctly reset size of 1st tab if other tabs are closed and the window size was changed meanwhile
|
2022-09-04 09:39:19 +02:00 |
Stefan Frederik
|
02c1dce486
|
zomm area in graphs: if dragging backward (in x direction) reverse x axis.
|
2022-09-04 01:09:05 +02:00 |
Stefan Frederik
|
c7501d4a28
|
fix UI lockout (can not switch tabs) if a tab is closed with bindkey ctrl-q
|
2022-09-03 22:19:49 +02:00 |
Stefan Frederik
|
2095995b51
|
apply [t]rack operation to all locked (instead of selected) graphs
|
2022-09-03 09:46:22 +02:00 |
Stefan Frederik
|
b7bf351801
|
[t]rack bindkey applied to digital graphs if they are selected, although track does not work if pointing in digital graphs
|
2022-09-02 18:19:39 +02:00 |
Stefan Frederik
|
5c808505b3
|
[t]rack bindkey applied to all selected plots in addition to graph where mouse is pointing
|
2022-09-02 18:09:51 +02:00 |
Stefan Frederik
|
ae1bed65f4
|
added [t]rack bindkey in graph to display the wave closest to mouse in multiple dataset plots
|
2022-09-02 17:11:50 +02:00 |
Stefan Frederik
|
ad152b24a3
|
fixed and simplified toggle_fullscreen()
|
2022-09-02 12:09:56 +02:00 |
Stefan Frederik
|
b065986c87
|
reduce tcl global namespace pollution, better widget packing in main window (toolbar/tabs/menubar/statusbar)
|
2022-09-02 10:41:06 +02:00 |
Stefan Frederik
|
f7336e9064
|
better placement and layout of the 5 main window parts: .menubar, .toolbar, .tabs, .drw and .statusbar, specifically w.r.t. runtime changes (toolbar H/V, toolbar on/off, tabs on/off ...
|
2022-09-02 01:21:51 +02:00 |
Stefan Frederik
|
e7c4111f8e
|
simplified print_tedax_subckt, some optimizations in netlisting code (avoid some strdups)
|
2022-09-01 17:25:25 +02:00 |
Stefan Frederik
|
9e9660c562
|
no trailing spaces in saved xschem files (there was one in version strings "v {...}"
|
2022-09-01 15:10:00 +02:00 |
Stefan Frederik
|
77d76e1a8f
|
add commands "xschem set format ..." and "xschem get format" to change format attribute used for netlisting, overriding defaults
|
2022-08-31 10:47:16 +02:00 |
Stefan Frederik
|
adc4eb96c8
|
fix net_name() crashing if inst[i].node==NULL. This may happen when pasting a component that contains a @@xxx token, that needs to be expanded to attached netname, however since we are moving the component no net name is defined --> .node==NULL.
|
2022-08-30 02:44:28 +02:00 |
Stefan Frederik
|
f5b0cd933c
|
compacted a bit the ctxmenu
|
2022-08-29 18:06:56 +02:00 |
Stefan Frederik
|
11babab5cf
|
faster toolbar creation, 2px reduction in toolbar height, better add_custom_button.tcl and add_custom_menu.tcl example codes
|
2022-08-29 13:24:43 +02:00 |
Stefan Frederik
|
4c849c44fa
|
force setting line width if window geometry changed and fixed/non variable line width was set.
|
2022-08-29 09:27:23 +02:00 |
Stefan Frederik
|
bd64f86dbc
|
no filled circles if layer has no fill (fill_type[c] == 0)
|
2022-08-28 23:50:57 +02:00 |
Stefan Frederik
|
050807ebe4
|
yet another fix in svg export code for solid/stipple/no-fill options
|
2022-08-28 23:11:55 +02:00 |
Stefan Frederik
|
75147ab8cc
|
if solid pattern fill is selected globally do solid pattern fills in svg export too.; enforce 24 pixel toolbar button heights, remove border width to gain space.
|
2022-08-28 22:08:18 +02:00 |
Stefan Frederik
|
8be273b9f7
|
fix regression on menu fullscreen command
|
2022-08-28 11:23:51 +02:00 |
Stefan Frederik
|
1519afa241
|
various fixes in compare_schematics()
|
2022-08-28 10:23:32 +02:00 |
Stefan Frederik
|
eebd2b38fa
|
add sample add_custom_button.tcl script to add custom toolbar buttons
|
2022-08-28 00:27:52 +02:00 |
Stefan Frederik
|
3434331f2f
|
add better error reporting in case of tcp port conflicts
|
2022-08-27 14:14:06 +02:00 |
Stefan Frederik
|
4136f7cf10
|
return loaded filename in xschem load command
|
2022-08-27 13:30:30 +02:00 |
Stefan Frederik
|
41acfd91dd
|
some small code refactoring, allow multiple selected (bold) waves, one per graph, store the bold waves into file
|
2022-08-27 12:56:33 +02:00 |
Stefan Frederik
|
53efa4c381
|
if ALt-x (compare schematics) is given before setting a compare filename, schematic is compared with saved version of itself
|
2022-08-26 15:56:48 +02:00 |
Stefan Frederik
|
3c980ce956
|
compare schematics does not require to save schematic 1, so a comparison with the saved version of itself is possible, showing the differences after editing.
|
2022-08-26 15:29:10 +02:00 |
Stefan Frederik
|
5100803673
|
translate() optimization
|
2022-08-26 09:20:30 +02:00 |
Stefan Frederik
|
a53fc67404
|
save schematic before doing schematic compare as it will be reloaded from disk at end.
|
2022-08-25 23:01:56 +02:00 |
Stefan Frederik
|
279e4604ea
|
compare_schematics() do not hash wire prop_ptr (unnecessary)
|
2022-08-25 14:19:19 +02:00 |
Stefan Frederik
|
d279783faa
|
added menu entries to set and conmpare with schematic.
|
2022-08-25 13:59:36 +02:00 |
Stefan Frederik
|
a2de3e9c1b
|
Added compare_schematics() function. Empty graphs (no data loaded) are not editable. Set window title if opening a non-existent file.
|
2022-08-25 00:25:29 +02:00 |
Stefan Frederik
|
67ff8844f5
|
add xschem get zoom to query zoom factor
|
2022-08-24 11:22:26 +02:00 |
Stefan Frederik
|
dffc266e0d
|
improve test_backannotated_subckt.sch example, remove dbg messages
|
2022-08-23 10:44:00 +02:00 |
Stefan Frederik
|
0f5881cd61
|
print_spice_subckt(): check for tcl_hook2() errors, check for NULL in strtoupper/strtolower, fix unitialized local variable
|
2022-08-23 10:01:32 +02:00 |
Stefan Frederik
|
bd5cb7b9df
|
add license info on traversal.tcl
|
2022-08-21 13:35:37 +02:00 |
Stefan Frederik
|
c99282e463
|
fix typo in src/Makefile.in
|
2022-08-21 13:21:31 +02:00 |
Stefan Frederik
|
a14c541d9e
|
allow "xschem descned -<n>" (n=number) to descend into nth rightmost instance; added traversal.awk script
|
2022-08-21 13:18:39 +02:00 |
Stefan Frederik
|
0dfbc9ded9
|
added return status from descend_schematic()
|
2022-08-21 12:24:26 +02:00 |
Stefan Frederik
|
20d1080171
|
improve uniqueness name checking (do not consider non netlist elements, like pins, title, etc)
|
2022-08-21 11:55:34 +02:00 |
Stefan Frederik
|
ef2e059c59
|
instance names (refdes) are hashed as uppercase, so collision check will be case insensitive, if enabled
|
2022-08-21 10:22:56 +02:00 |
Stefan Frederik
|
9ed7d3b039
|
remove ## from netlist if "#@attribute\\#@name" is used in format string and "attribute" is undefined or empty
|
2022-08-20 13:51:20 +02:00 |
Stefan Frederik
|
2502208671
|
if a subcircuit has spiceprefix set in template string do not consider it as an attribute to dump in netlist as a subckt parameter (.subckt xxxx A B C spiceprefix=X)
|
2022-08-20 11:23:18 +02:00 |
Stefan Frederik
|
5df286bec5
|
spice netlister code was incorrectly resetting spiceprefix to 1
|
2022-08-20 09:23:38 +02:00 |
Stefan Frederik
|
6c8d20fdc2
|
better bbox hashing to avoid false overlap positives
|
2022-08-19 12:46:35 +02:00 |
Stefan Frederik
|
c134175687
|
better overlap detection hash calculation
|
2022-08-19 12:00:02 +02:00 |
Stefan Frederik
|
d3cc957fa3
|
warning and highlight perfectly overlapped symbols
|
2022-08-19 10:56:26 +02:00 |
Stefan Frederik
|
84f9497755
|
fix graph zoom by area with mouse drag and absolute x positioning of locked graphs that are not vertically aligned
|
2022-08-19 01:23:45 +02:00 |
Stefan Frederik
|
3419db3601
|
remove extra blank in .subckt spice netlist lines
|
2022-08-18 12:14:23 +02:00 |
Stefan Frederik
|
9b3251b85e
|
clear "Simulate" button background if new window/tab is created while simulation running in original window
|
2022-08-18 11:26:41 +02:00 |
Stefan Frederik
|
c1d229b917
|
better str_replace() implementation
|
2022-08-18 10:21:14 +02:00 |
Stefan Frederik
|
a3828e6641
|
redo r2216 change in a different way to avoid regressions
|
2022-08-18 01:45:02 +02:00 |
Stefan Frederik
|
15d8b8f1c8
|
reverted 2216 changes as these cause regressions. token.c back to r2215
|
2022-08-17 20:37:29 +02:00 |
Stefan Frederik
|
6e8af5410b
|
all get_tok_value() calls in netlisting code will do tcl substitution (if attributes wrapped into tcleval()) to allow full conditional symbol netlisting
|
2022-08-17 09:09:00 +02:00 |
Stefan Frederik
|
cc49909282
|
better clip off-graph data
|
2022-08-14 15:05:08 +02:00 |
Stefan Frederik
|
2e37724959
|
add "Plotname: constants" to the list of recognized ngspice plots in raw file
|
2022-08-14 14:14:19 +02:00 |
Stefan Frederik
|
86311f8d47
|
focus main window when mouse leaves SNAP or GRID text entries
|
2022-08-14 08:17:44 +02:00 |
Stefan Frederik
|
dda7cb40db
|
better recognize Xyce plot headers (Plotname: lines)
|
2022-08-12 00:06:14 +02:00 |
Stefan Frederik
|
fb8a1560c6
|
added xschemrc variable `autofocus_mainwindow` (default setting: enabled (1) ), if this variable is set moving the mouse to the main drawing area when a dialog box is open (typically while editing a component attribute list) will focus the main window, so user can move / zoom/pan the schematic using the usual commands, for example to look at a different part of the schematic while editing the component. If this variable is unset a click is needed to focus the main window. This will thus not allow to move / zoom, but allows to type into the dialog box if the mouse goes out of it.
|
2022-08-11 10:58:57 +02:00 |
Stefan Frederik
|
ce4bd4837a
|
changed @schname to @schname_ext and added @schname that expands to the schematic name containing the instance, with no extension (no .sch)
|
2022-08-10 08:38:49 +02:00 |
Stefan Frederik
|
0e25935254
|
added @topschname predefined attribute that expands to the toplevel schematic name (no path) with no .sch extension
|
2022-08-10 01:45:07 +02:00 |
Stefan Frederik
|
bd35e177f1
|
unselect_all() before inserting wire label or text from the menu to avoid moving previously selected objects
|
2022-08-09 23:08:00 +02:00 |
Stefan Frederik
|
ae0ffa926d
|
set reasonable subdiv[xy] value when user switches from linear to log axis, as 8 subdivisions are used in log axes in 99.99% of the cases.
|
2022-08-08 12:37:44 +02:00 |
Stefan Frederik
|
89afd902ea
|
get_raw_value(): return plain value, no implicit log calculation if log scale on axis. Zoom full scale X and X axis pan: use 1st sweep X variable, do not assume spice sweep variable (idx==0)
|
2022-08-08 09:52:33 +02:00 |
Stefan Frederik
|
edf185616b
|
Y log axis option in graphs
|
2022-08-08 01:18:42 +02:00 |
Stefan Frederik
|
de5eb7446d
|
scheduler.c "place_symbol" : analyze selected symbol and set INITIALINSTDIR before doing unselect_all()
|
2022-08-06 23:42:43 +02:00 |
Stefan Frederik
|
9177bcf8bc
|
unselect objects when inserting a symbol using menu or toolbar to avoid moving them together with the inserted symbol
|
2022-08-06 23:19:26 +02:00 |
Stefan Frederik
|
ecd006ad5d
|
disable `Log Y scale` checkbutton in graph dialog box until function is implemented
|
2022-08-05 19:29:08 +02:00 |
Stefan Frederik
|
8383030afa
|
remove printing `[Mag]` on wave labels in AC plots.
|
2022-08-05 19:07:42 +02:00 |
Stefan Frederik
|
15e367ba73
|
user selectable log X scale instead of assiming log X for AC analyses only
|
2022-08-05 00:57:03 +02:00 |
Stefan Frederik
|
7a0b5f3589
|
fix ngspice_backannotate.tcl: correctly backannotate ammeter currents; correctly handle multipoint Operating point data in graphs
|
2022-08-04 11:39:41 +02:00 |
Stefan Frederik
|
3b0589d2d1
|
store just magnitude and phase of AC vectors instead of dB and phase. Add db20() function to get dB values from magnitude in graph RPN expressions.
|
2022-08-03 17:44:53 +02:00 |
Stefan Frederik
|
bd8c1fd6eb
|
do not accept 0 in graph `X div` and `Y div` textboxes, as this will cause an endless loop
|
2022-08-03 10:44:34 +02:00 |
Stefan Frederik
|
9e888b8b44
|
Button 1 Double click does edit object attributes
|
2022-07-31 09:06:10 +02:00 |
Stefan Frederik
|
31646cf357
|
Windows fix: run ngspice in $netlist_dir; add res3.sym into Windows package, update instructions for compiling Cairo`s debug version
|
2022-07-29 23:00:34 +02:00 |
Stefan Frederik
|
62b4db861b
|
rawtovcd.c: better description if -h is given
|
2022-07-29 14:31:54 +02:00 |
Stefan Frederik
|
83d44842cc
|
remove COPYING (use LICENSE), do not install rawtovcd in SHAREDIR
|
2022-07-29 14:09:47 +02:00 |
Stefan Frederik
|
56d3d8f5f3
|
recognize \r\n sequences on windows rawfiles in "Binary:" lines, just in case ngspice developers want to add it someday. Quote ROUT ('ROUT') values for output resistors in ngspice_logic gates
|
2022-07-28 00:36:09 +02:00 |
Stefan Frederik
|
5af2b8eb7a
|
fix read_dataset() for windows
|
2022-07-27 11:06:54 +02:00 |
Stefan Frederik
|
d86a422c59
|
do not segfault if reading ascii raw files. print error message and tell user to generate binary rawfile.
|
2022-07-26 12:05:28 +02:00 |
Stefan Frederik
|
a7202ddee2
|
avoid panning interfere with constrained (horiz/vertical) copy or move
|
2022-07-25 10:09:35 +02:00 |
Stefan Frederik
|
baabac5fb7
|
bump version to 3.1.0 (candidate #1)
|
2022-07-19 09:25:34 +02:00 |
Stefan Schippers
|
b72d8387b2
|
fix xschemrc grid/snap variables
|
2022-07-16 18:26:43 +02:00 |
Stefan Frederik
|
7d971f1f6c
|
remove dbg message
|
2022-07-16 08:24:49 +02:00 |
Stefan Frederik
|
e7f31cf3ee
|
allow each window (in tabbed or window interface) to run its own simulation, preventing spawning another simulation process for same tab/window if previous not finished
|
2022-07-15 12:32:57 +02:00 |