stefan schippers
|
c424a25d66
|
add xctx->last_command in xshem globals debug command
|
2023-12-02 00:58:57 +01:00 |
stefan schippers
|
26fbb82f6b
|
fix unwanted head_undo_ptr change when doing a netlist. Add current backannotation info in capa.sym, ind.sym, isource.sym, isource_table.sym
|
2023-11-27 00:01:45 +01:00 |
stefan schippers
|
c4e9310d45
|
allow to load raw files even if netlist type set to `symbol`. Better to_eng function, `xschem raw_query value node {}` returns value at cursor b position
|
2023-11-26 12:54:37 +01:00 |
stefan schippers
|
eb6f9f1f4e
|
fix a small memory leak in spice_netlist.c
|
2023-11-21 10:48:56 +01:00 |
stefan schippers
|
8d155af82f
|
`Alt-e` does a true descend sub-schematic and opens it in another window
|
2023-11-20 17:53:28 +01:00 |
stefan schippers
|
d4cde62870
|
add draw option in schematic_in_new_window(), create_new_tab(), create_new_window()
|
2023-11-20 00:12:13 +01:00 |
stefan schippers
|
2c773c4a25
|
poweramp.sch and mos_power_ampli.sch updates
|
2023-11-19 12:52:57 +01:00 |
stefan schippers
|
84d945238f
|
`xschem annotate_op file [level]`: added `level` optional integer to specify the hierarchy level op raw data refers to. Add xschem set raw_level to modify the raw level loaded raw file refers to
|
2023-11-18 12:55:57 +01:00 |
stefan schippers
|
2c48b7399e
|
update manual page for sky130 installation (switch from adms to openvaf)
|
2023-11-18 12:03:09 +01:00 |
stefan schippers
|
7da63c19e2
|
regression fix: xschem netlist did not return exit code
|
2023-11-18 01:49:50 +01:00 |
stefan schippers
|
5d3b7bd7d0
|
report error if trying to do a netlist and the file can not be written (example: broken simulation symlink)
|
2023-11-14 23:40:41 +01:00 |
stefan schippers
|
f4df48813f
|
copy_hierarchy_data() initial implementation for future hierarchy cloning. Alt-Shift-E and Alt-Shift-I to edit schematic / symbol in a new xschem process. `xschem raw switch`: allow also integer index (as returned by `xschem raw info`) instead of `file type` to switch raw file
|
2023-11-13 18:00:30 +01:00 |
stefan schippers
|
6360fc1700
|
refactor reset_flags() to reset_caches(). scripts that set tcl variables that go into attributes via tcleval() should call `xschem reset_caches` to get all things updated.
|
2023-11-12 20:53:37 +01:00 |
stefan schippers
|
ecca0ba2be
|
better swap_windows() function (used when closing a window in multi-window(non-tabbed) interface, resolved_net() recognize global nodes. remove static data from record_global_node(), put in xctx. Remove dead code from translate() (@spice_get_voltage)
|
2023-11-12 13:01:11 +01:00 |
stefan schippers
|
d4b8f25455
|
xschem raw_read just loads or reloads the waves, does not toggle. use xschem raw_clear to unload
|
2023-11-11 11:40:36 +01:00 |
stefan schippers
|
1991b409e0
|
fix small memory leak
|
2023-11-10 15:43:36 +01:00 |
stefan schippers
|
565ab605cf
|
better xschem raw clear comand (if rawfile and sim_type specified delete only specified simulation data, not all analyses of rawfile)
|
2023-11-10 12:24:21 +01:00 |
stefan schippers
|
584f88fba1
|
object iterator, object spatial hash table for all objects. tbu in the future maybe. Fix crashing bug when copying ngspice_probe.sym if annotation is enabled
|
2023-11-09 13:57:58 +01:00 |
stefan schippers
|
f04477d236
|
if local_netlist_dir is set to 1 change netlist_dir at circuit load (and save-as)
|
2023-11-07 17:25:18 +01:00 |
stefan schippers
|
98def78164
|
simulation button will go yellow while sim is running.Clicking a yellow simulate button will kill simulation.
|
2023-11-06 16:47:14 +01:00 |
stefan schippers
|
e5431d86c5
|
fix setting netlist button color code statwe variable (tctx::...._netlist)
|
2023-11-06 01:44:25 +01:00 |
stefan schippers
|
881d8a4ed9
|
various fixes for Simulator/Netlist button color codes
|
2023-11-05 14:13:20 +01:00 |
stefan schippers
|
3bd3956042
|
Netlist and Simulate buttons will be colored in red or green depending on the outcome of the associated operation
|
2023-11-05 00:14:55 +01:00 |
stefan schippers
|
cfdaebf5e1
|
add `xschem instance_number` command to easily get/set the position of instance in the list
|
2023-11-04 20:43:04 +01:00 |
Stefan Schippers
|
299b29bf87
|
fix parameter count check in xschem getprop
|
2023-11-04 18:46:26 +01:00 |
stefan schippers
|
0b93634fee
|
Better Simulation->Graphs-> Load raw file (ask filename)
|
2023-11-03 23:37:09 +01:00 |
stefan schippers
|
a5ee182d59
|
add some Symbol menu entries (place net label / change instance texts to floaters)
|
2023-11-03 15:10:22 +01:00 |
stefan schippers
|
2c26bfbaa9
|
fix some garbage while moving / copying and zooming. faster draw_selection(gctiled) if big selection (use a single XCopyArea), do not allow to descend/go_back if other UI action is pending, initial implementation of `xschem floaters_from_selected_inst` command, get_tok_val() allow quotes in tokens, like a"22"33=123 even if with_quotes unset (it is intended for token values not for tokens themselves)
|
2023-11-03 14:36:35 +01:00 |
stefan schippers
|
794df4dfc3
|
add make_sym_from_spice.awk, cut down from make_sch_from_spice.awk
|
2023-11-02 19:07:15 +01:00 |
stefan schippers
|
722b1f4575
|
small improvements in edit_text_property() and get_instance()
|
2023-11-02 13:24:15 +01:00 |
stefan schippers
|
0a4c59cc30
|
xschem selected_set, search: include text objects. xschem getprop: allow to retrie the text value with txt_ptr
|
2023-11-01 14:19:26 +01:00 |
stefan schippers
|
b60a5a4c4b
|
Add command `xschem setprop text n txt_ptr value` to change a text object text field, set stdout in line buffer mode if used in a pipe, better protect some commands against no X connection
|
2023-10-31 18:39:42 +01:00 |
stefan schippers
|
8f2af6803a
|
remove some dead code, fix redrawing in `xschem move_instance` command
|
2023-10-30 00:57:28 +01:00 |
stefan schippers
|
391a744302
|
xschem setprop command: redraw all viewport if show_pin_net_names is enabled
|
2023-10-29 22:22:05 +01:00 |
Stefan Schippers
|
958c5a1525
|
set_modify() returns now # of floaters, use this info to redraw all viewport in `xschn setprop` commands
|
2023-10-29 20:02:23 +01:00 |
stefan schippers
|
d776d6a351
|
better handle operating point clear / update when switching / reading / clearing raw files. dont use operating point data (ngspice::ngspice) above the hierarchy level where raw file has been loaded.
|
2023-10-29 14:04:52 +01:00 |
stefan schippers
|
a76dca4f29
|
add menu entry in Options for fix_mouse_coord
|
2023-10-28 11:51:21 +02:00 |
Stefan Schippers
|
34113c1c5f
|
added tab ctx menu `Save`
|
2023-10-25 20:30:20 +02:00 |
stefan schippers
|
3d4113ad26
|
tabs bar context menu
|
2023-10-25 11:43:43 +02:00 |
stefan schippers
|
d83acf710d
|
add `xschem text_string` command, update displayed floaters if a text object is changed
|
2023-10-24 18:47:58 +02:00 |
stefan schippers
|
d5d090afc0
|
better line-rectangle touch check for backward rectangle selection (intersection select)
|
2023-10-21 23:48:56 +02:00 |
stefan schippers
|
2e4e754a3e
|
add context menu entries for rotate and flip selection, add basic sub-process control in Simulation menu, enabled again Rotate and Flip from Edit menu, fix svg export from CLI (was resetting line width), add cascade menus in Simulation
|
2023-10-21 09:27:02 +02:00 |
stefan schippers
|
306c5d0d15
|
fix two small memory leaks, doc updates (xschem raw command) Raw.filename renamed to Raw.rawfile
|
2023-10-17 16:08:27 +02:00 |
stefan schippers
|
b165720bc8
|
allow loading more and different analyses from the same raw file. Implied tcleval() in rawfile given in graphdialog, transform multiple saved OP sims into a dc sweep.
|
2023-10-17 14:00:43 +02:00 |
stefan schippers
|
8cfd51d8f9
|
add the ability to load multiple raw files with different analyses in a single schematic ( extra_rawfile() )
|
2023-10-17 00:42:31 +02:00 |
stefan schippers
|
5da81a7aea
|
shut down some gcc false warnings (uninitialized vars), add read_more_rawfile()
|
2023-10-16 11:16:12 +02:00 |
stefan schippers
|
f10555917e
|
optimized usage of interpolate_yval(), add raw->cursor_b_val[]
|
2023-10-16 09:53:03 +02:00 |
stefan schippers
|
d1309a8a47
|
fix uninitialized var in interpolate_yval()
|
2023-10-15 13:24:19 +02:00 |
stefan schippers
|
53286346e1
|
doc updates, tcl rawfile variable in place for future per-graph raw file
|
2023-10-14 23:41:19 +02:00 |
stefan schippers
|
537cedbafe
|
better graphdialog layout, remove tcl redundant raw_level var
|
2023-10-14 22:43:58 +02:00 |
Stefan Schippers
|
c6a3880b9d
|
fix a bug in draw_graph_points() changing and not restoring linewidths if called with idx==-1
|
2023-10-13 18:46:15 +02:00 |
stefan schippers
|
88a5befbf2
|
add some cascade menus for less frequently used entries. better description of xschem unselect_all command
|
2023-10-12 19:37:22 +02:00 |
stefan schippers
|
676ce4fe3d
|
lock attribute for rectangles: work the same as for instances (can only double click to reset attributes, not selectable until lock reset to 0), add commands "xschem selected_set rect" and "xschem select_inside x1 y1 x2 y2"
|
2023-10-12 11:15:12 +02:00 |
stefan schippers
|
e457292e04
|
trim_chars() function for various string operations
|
2023-10-11 16:31:42 +02:00 |
stefan schippers
|
9b4bd44fd0
|
merged in fast_raw_read branch
|
2023-10-11 14:05:27 +02:00 |
stefan schippers
|
bb4f296211
|
use "2" instead of "X" for default return state in xschem logic_get_net command
|
2023-10-09 00:11:17 +02:00 |
stefan schippers
|
58af2567e6
|
fix initialization of default value for "xschem get_logic_net"
|
2023-10-08 11:32:56 +02:00 |
stefan schippers
|
0204b7596b
|
first selected instance is now always the master (instead of the first in the xschem array order) when doing an edit attribute on a group of selected elements
|
2023-10-04 17:15:52 +02:00 |
stefan schippers
|
3ed97b3df2
|
some code refactoring, more usage of tclgetboolvar()
|
2023-10-03 10:27:29 +02:00 |
stefan schippers
|
9fee9610ab
|
vsource.sym and ammeter.sym: add "savecurrent=1|0|true|false" attribute do decide if a .save I(...) is to be printed in netlist. default is 1 for ammeter.sym and 0 for vsource.sym. Add "deltax deltay rot flip" optional parameters for xschem "copy_objects" command to make copy operation scriptable (lot more efficient than using clipboard)
|
2023-10-02 12:11:05 +02:00 |
stefan schippers
|
c569f93a65
|
added commands xschem get schprop|schvhdprop|schverilogprop|schtedaxprop|schsymbolprop, "xschem create_text" renamed to "xschem text" for syntax consistency
|
2023-09-29 09:46:31 +02:00 |
stefan schippers
|
db1bf8818a
|
cleanup in usage of new_prop_string() and hash_names()
|
2023-09-28 23:19:14 +02:00 |
stefan schippers
|
31492b3955
|
added xschem set [schsymbolprop|schprop|schverilogprop|schvhdlprop|schtedaxprop] <value> commands for setting global schematic/symbol attributes
|
2023-09-28 15:45:07 +02:00 |
stefan schippers
|
cfe97c2ccf
|
extend "xschem rect" and "xschem line" commands, add "xschem get rects n" and "xschem get lines n"
|
2023-09-28 15:24:23 +02:00 |
stefan schippers
|
e13922e94f
|
simplify place_symbol(), hash newly placed component name, so successive placements will not clash instance name. hash_all_names() renamed to hash_names()
|
2023-09-28 13:28:16 +02:00 |
stefan schippers
|
5df9347533
|
removed tcl variable connect_by_kissing (to many options is a mess)
|
2023-09-28 12:34:10 +02:00 |
stefan schippers
|
5080c2c33f
|
fix unitialized vars (mostly false errors, but why not...)
|
2023-09-28 00:30:00 +02:00 |
stefan schippers
|
f3230ceb42
|
FIX_BROKEN_TILED_FILL can now be changed runtime (fix_broken_tiled_fill)
|
2023-09-27 01:28:31 +02:00 |
stefan schippers
|
db9c014566
|
move "auto join/trim wires" to Options menu, "m" and "ctrl-m" move commands are swapped if enable_stretch is enabled. new_prop_string() now check for true uniqueness (all inst names are expanded with expandlabel() and all bits are hashed). Fixed regression in check_unique_names()
|
2023-09-25 15:28:40 +02:00 |
stefan schippers
|
41d9759953
|
xschem select instance given from CLI will select instances regardless of their lock attribute
|
2023-09-24 04:01:56 +02:00 |
stefan schippers
|
db1049d469
|
formatting, updated create_graph.tcl
|
2023-09-24 03:34:01 +02:00 |
stefan schippers
|
75526cacbe
|
add "xschem create_text" command for placing text objects with CLI
|
2023-09-24 03:16:53 +02:00 |
stefan schippers
|
274b4da441
|
xschem(): print an error if trying to execute commands that require schematic data structs (xctx) and xctx is not yet allocated
|
2023-09-22 19:13:13 +02:00 |
stefan schippers
|
288c053ec6
|
various FIX_BROKEN_TILED_FILL fixes
|
2023-09-22 18:26:18 +02:00 |
stefan schippers
|
a1fbbcfd80
|
add another command to cut wires without aligning cut point to snap (Alt-Shift-Right mouse button)
|
2023-09-22 10:40:57 +02:00 |
stefan schippers
|
1479ca2ea6
|
fix regression in "xschem load <file> nofullzoom" (zoom was reset)
|
2023-09-21 10:11:39 +02:00 |
stefan schippers
|
8d6a71b8bd
|
place_symbol(): make it smarter when dealing with generators. add parenthesis () after file name and better handle tcleval(...) given in file selector
|
2023-09-19 10:04:27 +02:00 |
stefan schippers
|
7ffe70cb25
|
add other schematic manipulation script examples in developer_info.html
|
2023-09-18 17:16:03 +02:00 |
stefan schippers
|
98ffd177ce
|
improve connect by kissing: now 3 move operations are present: 1) just move selection, 2) move adding wires to connected pins/wire endpoints, 3) move by stretching wires attached to pins/endpoints to follow moving objects
|
2023-09-18 13:29:49 +02:00 |
stefan schippers
|
898cfcc2e1
|
command "xschem change_elem_order" invalidate inst/wire hashes and connectivity to force consistency
|
2023-09-17 09:45:28 +02:00 |
stefan schippers
|
159f07e703
|
add "xschem rotate_in_place" command
|
2023-09-17 09:05:21 +02:00 |
stefan schippers
|
978d575e22
|
add tcl command "xschem change_elem_order n" add optional x0 and y0 coordinates as additional parameters to "xschem flip" and "xschem rotate" commands, add command "move_instance inst x y rot flip"
|
2023-09-17 00:13:52 +02:00 |
stefan schippers
|
ac07510513
|
xschem select: extend command to allow selecting rectangles, lines, polygons, arcs. returns 1 if something selected, 0 otherwise
|
2023-09-15 17:53:38 +02:00 |
stefan schippers
|
7d2f737c3b
|
attach_labels_to_inst(): do not cause an error (bbox(SET) call before bbox(START)) if invoked on selected instances who have all pins already wired up
|
2023-09-15 15:16:36 +02:00 |
stefan schippers
|
e0bcc302c9
|
"xschem connected_nets" command now works for any selected instance, not only labels/probes/pins. Argument can be 0, 1, 2 (2-->select only wire segments drectly attached to selected net/instance)
|
2023-09-14 09:48:12 +02:00 |
stefan schippers
|
34946c2f0a
|
add commands "xschem get wires", "xschem getprop wire n attr", "xschem touch x1 y1 x2 y2 x0 y0", "xschem wire_coord n"
|
2023-09-14 08:31:01 +02:00 |
stefan schippers
|
e6211ac93b
|
command "xschem select_dangling_nets": skip ignored instances (lvs_ignore or spice_ignore), return # of selected dangling elements instead of just 1
|
2023-09-14 01:34:56 +02:00 |
stefan schippers
|
75e5d3d5b0
|
add command "xschem select_dangling_nets" that selects all labels/wires that are not connected to any non-label/non-probe components
|
2023-09-14 00:57:13 +02:00 |
stefan schippers
|
55fcf5d28e
|
avoid doing a move_objects(RUBBER,...) if doing an "xschem paste xoffs yoffs" from script, to avoid graphical artifacts
|
2023-09-12 09:21:54 +02:00 |
stefan schippers
|
a678c81b4c
|
update documentation for change in return code of "xschem switch" command
|
2023-09-07 20:25:08 +02:00 |
stefan schippers
|
baea7ab745
|
xschem switch command return exit status depending if switch context was successfull or not
|
2023-09-06 08:30:40 +02:00 |
stefan schippers
|
cd3f188a30
|
fix wrong netlist filename if invoking netlist from GUI
|
2023-08-28 11:39:00 +02:00 |
stefan schippers
|
0805802bb8
|
fix performance issues (too many proc infowindow calls) on large schematics introduced by previous two commits
|
2023-08-28 10:39:11 +02:00 |
stefan schippers
|
9e4d3c111a
|
various fixes and cleanups - followup of previous commit
|
2023-08-28 03:00:48 +02:00 |
stefan schippers
|
1c3c9ff889
|
do not show ERC info window if netlisting invoked via CLI; global variable show_infowindow_after_netlist can now take 3 values: always, onerror, never, to decide when showing the ERC info window after netlisting. Old values (1, 0) still accepted as aliases for always and onerror
|
2023-08-27 23:55:48 +02:00 |
stefan schippers
|
519fb2fbf2
|
add optional "-messages" in "xschem netlist" comand to return ERC messages instead of fail(1)/good(0) code
|
2023-08-27 13:04:12 +02:00 |
stefan schippers
|
3f55893987
|
revert format of [xschem pinlist <instance> <attr>] to old (3.1.0) format: { {0} {PLUS} } { {1} {OUT} } { {2} {MINUS} } instead of {PLUS} {OUT} {MINUS}
|
2023-08-19 13:54:43 +02:00 |
stefan schippers
|
bf46fd3e7b
|
allow "1" / "0" in addition to "true" / "false" in all boolean attributes
|
2023-07-14 00:49:51 +02:00 |
stefan schippers
|
ff66a48df0
|
doc updates about print command
|
2023-07-13 14:26:42 +02:00 |
stefan schippers
|
cf675be805
|
add "xschem print pdf_full" and "xschem print ps_full" commands to print full view properly fitting paper size, regardless of xschem window size, some fixes in circle postscript drawing (set newpath) and rectangle clipping. Add menu command "PDF/PS export full"
|
2023-07-13 13:24:17 +02:00 |
stefan schippers
|
3c73bb918b
|
add case insensitive matching in xschem search function
|
2023-07-12 13:58:54 +02:00 |
stefan schippers
|
d06b1c83ae
|
fix regression(repo.hu: r2353, github: 0bb4c9f) : "xschem instance" command not setting modified flag on schematic, so following xschem save doing nothing.
|
2023-07-06 23:56:33 +02:00 |
stefan schippers
|
587a847722
|
add xschem command `xschem instance_coord [instance]`: returns placement coords, rotation, flip of selected or specified instance
|
2023-07-06 09:12:31 +02:00 |
stefan schippers
|
cdecc6ad04
|
xschem netlist command accepts an optional filename argument
|
2023-07-03 09:06:46 +02:00 |
stefan schippers
|
eaa56bdc45
|
make the "xschem_quit" command work (close current window / tab) also if xschem started in -x (no graphics) mode
|
2023-06-26 07:57:00 +02:00 |
stefan schippers
|
5d9e0d3d8a
|
enable xschem to load multiple files even if started with "-x" (only CLI mode)
|
2023-06-25 23:33:26 +02:00 |
stefan schippers
|
40d8b960f3
|
fix initial full zoom of schematics loaded with xschem load file from the xschem tcl prompt
|
2023-06-23 23:36:11 +02:00 |
stefan schippers
|
c6df85cce5
|
apply center full zoom in all zoom full commands if tcl variable zoom_full_center is set
|
2023-06-23 09:04:55 +02:00 |
stefan schippers
|
c97dfddd4e
|
fix memory leak due to improper use of get_pin_and_attr()
|
2023-06-17 10:14:55 +02:00 |
stefan schippers
|
a6462269dc
|
refactor token.c: added get_pin_number(), get_pin_and_attr()
|
2023-06-16 23:08:00 +02:00 |
stefan schippers
|
c3d03cd6d2
|
show red dot when cuting a wire with new alt-right button click on a wire. Added also menu command in Tools
|
2023-06-14 10:08:50 +02:00 |
stefan schippers
|
89d847fb62
|
fix a bug in `xschem annotate_op` function not showing data if `Live annotation...` option was not set beforehand.
|
2023-06-12 09:13:20 +02:00 |
stefan schippers
|
2b0655e3e9
|
improve `Shift-M` command by stretching nets that land on instance pins while moving instances
|
2023-06-10 23:41:02 +02:00 |
Stefan Schippers
|
d5cc702fe8
|
Add command "Tools -> Remove wires running throuh selected inst. pins"
|
2023-06-10 17:24:12 +02:00 |
stefan schippers
|
3eeaf53cd4
|
improve quit_xschem command and xschem new_schematic destroy_all
|
2023-06-09 08:12:39 +02:00 |
stefan schippers
|
a6e5b150a5
|
added command `xschem getprop instance_notcl` to avoid tcl subst of the resulting attribute; improved fix_symbols to fix also parametrized generators (pcells)
|
2023-06-08 23:02:40 +02:00 |
stefan schippers
|
f5db2b63f8
|
use get_window_count() instead of new_schematic("ntabs"...)
|
2023-06-08 11:23:25 +02:00 |
stefan schippers
|
de1f4f0d86
|
added commands `xschem switch [win_path|schname]`, `xschem destroy_all [force]`, added `[force]` option to xschem exit
|
2023-06-08 10:40:52 +02:00 |
stefan schippers
|
a27a187bb4
|
small update to `xschem exit` function documentation
|
2023-06-08 06:38:36 +02:00 |
stefan schippers
|
edaf4ccce9
|
Add low level function xschem reset_symbol, changed defaults in xschem: now toolbar and tabbed interface (more robust than multi-window) is enabled by default, doc updates, improved fix_symbols for setting/removing path compoents from symbol references, now uses low-level xschem reset_symbol (faster)
|
2023-06-08 00:03:25 +02:00 |
Stefan Schippers
|
bbb239dc21
|
faster `xschem replace_symbol` command
|
2023-06-07 20:31:25 +02:00 |
stefan schippers
|
ff216e8187
|
function reset_flags() set flags on symbols and instances; call reset_flags before rebuilding connectivity to update cached values; add short.sym component that can be used to short two nets together (and remove the short using *_ignore=true); instcheck(): do not proces instances that have *_ignore=true set.
|
2023-06-06 08:42:43 +02:00 |
stefan schippers
|
d4641f2b1a
|
doc updates (developer_info.html)
|
2023-06-04 23:05:13 +02:00 |
stefan schippers
|
55d011ba7b
|
added necessary comments in swap_windows() / swap_tabs() functions
|
2023-06-04 22:54:39 +02:00 |
stefan schippers
|
2312bfc34e
|
non-empty string given as win_path in `xschem new_schematic create` will avoid warnings if opening multiple windows/tabs of the same file. do not issue warnings if calling xschem with multiple identical schematic files from the command line. `xschem new_schematic` command: use abs_sym_pth on given filename to get correct path.
|
2023-06-04 21:48:43 +02:00 |
stefan schippers
|
331934afc6
|
added abs_sym_path() in file name resoluton in `xschem load_new_window` command
|
2023-06-04 20:44:36 +02:00 |
Stefan Schippers
|
ed78a0fe72
|
remove test mode
|
2023-06-04 17:35:43 +02:00 |
stefan schippers
|
5b5fa27408
|
remove unused var
|
2023-06-04 15:39:02 +02:00 |
stefan schippers
|
7aa6ecfbd6
|
make `xschem exit` (ctrl-w, close window) work in multi-window mode exactly as in tabbed interface, allowing to close the root window (will be swapped with subwindow and deleted)
|
2023-06-04 15:37:35 +02:00 |
stefan schippers
|
ec5577c07f
|
removed File menu commands `Empty schematic in new window` and `Empty symbol in new window` since these just create another xschem process. Added `File->Start new xschem process`. `xschem new_window` and `xschem new_symbol_window` commands removed, added `xschem new_process
|
2023-06-04 00:46:01 +02:00 |
stefan schippers
|
e68ca0a0cc
|
Place polygon bind key is now `p`, ctrl-w is now `Close current schematic`, while ctrl-q is `Quit xschem`. Reorganized File menu, added more orthogonal `Create new schematic/tab` removed some largely unused entries. Ctrl-w does not close the last window, just leaves it blank. Use ctrl-q to close xschem
|
2023-06-03 23:57:35 +02:00 |
stefan schippers
|
57ea120a33
|
removed some direct exit() calls in editprop.c
|
2023-06-03 12:19:34 +02:00 |
stefan schippers
|
6e2754020b
|
added function swap_tabs() (wip)
|
2023-06-03 09:37:43 +02:00 |
stefan schippers
|
0244dc5e69
|
add command xschem tab_list, returns window pathname and associated filename loaded
|
2023-06-03 00:21:55 +02:00 |
Stefan Schippers
|
f5c592c889
|
xschem resolved_net command: add [net] parameter; instcheck(): use inst[].lab instead of get_tok_value(inst[].prop_ptr, "lab",0)
|
2023-06-01 18:00:47 +02:00 |
stefan schippers
|
bb9ad82d80
|
fix memory leak when using new resolved_net() fn
|
2023-05-27 14:13:50 +02:00 |
stefan schippers
|
cf61c253c5
|
fix a bug in my_mstrcat if an empty string is appended; add resolved_net(n) function that returns the top-most hierarchy name of the net mapping to upper level port connections if any; add xschem resolved_net comand that returns the resolved_net of selected wire/label/pin; add @#n:resolved_net pattern in symbol texts that uses resolved_net
|
2023-05-27 11:20:49 +02:00 |
stefan schippers
|
09a373954f
|
initial implementation of portmap feature: from sub-schematics resolve hierarchic name of schematic nets connected to I/O pins (go to the upper level recursively until resolved)
|
2023-05-26 11:56:52 +02:00 |
stefan schippers
|
694bc631a0
|
redraw schematic when switching netlisting mode (Shift-V) to redraw disabled/enabled components for the new netlisting mode; The Properties->Toggle *_ignore... menu will do nothing if in symbol netlisting mode
|
2023-05-24 09:08:57 +02:00 |
stefan schippers
|
32460f33c9
|
improved "xschem display_hilights [nets|instances]" that displays highlight nets or instaces or both,with full hierarchy path, not including uninteresting net/pin/net_show elements.
|
2023-05-23 09:10:01 +02:00 |
stefan schippers
|
6de12e5a0f
|
(2) update examples/test_bus_tap.sch
|
2023-05-22 08:09:42 +02:00 |
stefan schippers
|
8f63560737
|
examples/test_bus_tap.sch: auto set show_pin_net_names=1
|
2023-05-22 08:05:37 +02:00 |
stefan schippers
|
5c22d26072
|
update copyright info to 2023
|
2023-05-21 12:52:19 +02:00 |
stefan schippers
|
c2e5c61b35
|
graphs: add xmag and ymag entry boxes for custom magnification factor for x/y axis labels, fix current_dirname handling when netlisting hierarchical http(s) designs. The goal is to allow netlisting remote designs seamlessly
|
2023-05-20 23:21:43 +02:00 |
stefan schippers
|
827d4c5aac
|
added "xschem reset_flags" command to update and sync cached attributes of symbols and instances
|
2023-05-19 10:08:43 +02:00 |
stefan schippers
|
96eea54894
|
some code refactoring, duplicate code replaced with set_inst_flags(), set_sym_flags(), various fixes/optimizations about floaters
|
2023-05-14 12:58:25 +02:00 |
stefan schippers
|
ee1979b8b2
|
low level functions for floaters and floater text caches is implemented
|
2023-05-13 13:13:35 +02:00 |
stefan schippers
|
9ea9d529f7
|
fix toggle_ignore function. If multiple elements selected with different *_ignore attributes flip each one of them accordingly. Baseline code added for text floaters
|
2023-05-12 14:54:22 +02:00 |
stefan schippers
|
9ea93e9938
|
hide_texts=true attribute added on instance will avoid the display of all symbol texts (will be probably used when using floater symbol texts)
|
2023-05-12 12:09:20 +02:00 |
stefan schippers
|
16b7bd068c
|
disabled elements are displayed in grey and dashed. Properties->toggle *_ignore function can be undone
|
2023-05-12 10:31:09 +02:00 |
stefan schippers
|
5e281e7f10
|
*_ignore attributes for instances and symbols cached in .flags struct member for speed optimization. added some generator netlist testcases in xschemtest.tcl
|
2023-05-10 23:29:16 +02:00 |
stefan schippers
|
7ad930e7f0
|
istances with *_ignore=true attribute will be drawn greyed out in schematics in the corresponding netlisting mode; command in Properties menu to toggle this attribute on selected instances
|
2023-05-10 03:13:13 +02:00 |
stefan schippers
|
f282a96cec
|
better output formatting in "xschem instance_list" command, fix test_mosgen.sch absolute paths in symbols
|
2023-05-04 01:59:17 +02:00 |
stefan schippers
|
4b9f61612b
|
symbol generators may now take attributes like: "mosgen( @model )", with @model expanded to instance (or symbol template) value. update_symbol() updated to reflect this change.
|
2023-05-02 17:49:44 +02:00 |
stefan schippers
|
ae8931c788
|
remove bbox() START/ADD/SET/END from some drawing operations. No observable performance impact and redraw is now more pixel precise, reducing artifacts.
|
2023-05-01 22:28:56 +02:00 |
stefan schippers
|
4c3b4d0321
|
various tcl_hook2() additions on instance names to handle procedures, fix bbox calculation in xschem replace_symbol command
|
2023-05-01 14:37:10 +02:00 |
stefan schippers
|
d9d66c1c90
|
removed redundant skip_dir(...) (use get_cell(..., 0) ), fix a couple of glitches in postscript export (filled polygons with self-coincident edgs, fix filled arc pies (missing point)
|
2023-04-26 23:00:20 +02:00 |
stefan schippers
|
cd6ef78841
|
schematic generator netlisting seems to work. renamed is_symgen() -> is_generator()
|
2023-04-24 13:26:04 +02:00 |
stefan schippers
|
3facbf6428
|
spice netlisting of schematics with parametrized symbol generators should work
|
2023-04-23 00:37:31 +02:00 |
stefan schippers
|
f1ed2bf26f
|
fixed is_symgen() regex, added stup for tutorial_symbol_generators.html
|
2023-04-22 11:29:44 +02:00 |
stefan schippers
|
f5ce5987c9
|
fixed memory leak in copy_symbol(), split copy_symbol() to copy_symbol1() in action.c
|
2023-04-21 23:29:26 +02:00 |
stefan schippers
|
9eb4e9440c
|
handle symbol_ref(param1,param2,...) symbol generator scripts, added some utility functions str_chars_replace(), is_symgen(), fix some quoting/backslash subst issues in get_sym_template()
|
2023-04-21 11:41:20 +02:00 |
stefan schippers
|
631fedb11b
|
enabled escape_chars convenience function, added "embedded" parameter to load_sym_def() to better distinguish loading an embedded symbol from loading a regular symbol with a provided file descriptor
|
2023-04-20 10:44:31 +02:00 |
stefan schippers
|
a5492be752
|
print_spice_subckt_nodes(): use (improved to handle escape chars) str_replace() to substitute @symname, added xschem str_replace, improved xschem symbols
|
2023-04-18 00:20:40 +02:00 |
stefan schippers
|
a5a8193231
|
scheduler(): add get_symbol(s), similar as get_instance(s)
|
2023-04-17 15:55:00 +02:00 |
stefan schippers
|
ca0708a4c3
|
added "xschem setprop symbol" command, updated docs
|
2023-04-17 11:45:59 +02:00 |
Stefan Schippers
|
ebfcde42de
|
change preprocessor defined(HAS_CAIRO) to HAS_CAIRO==1
|
2023-04-09 15:36:06 +02:00 |
stefan schippers
|
192e873f0c
|
fix lazy list building in "xschem ..." commands (put separator after last item), as some parsers choke on this.
|
2023-04-08 22:27:59 +02:00 |
stefan schippers
|
5e3445a80e
|
implement xschem sch_pinlist command, improve xschem pinlist inst [attr], improve make_sym.awk (no trailing spaces in pin attributes)
|
2023-04-08 13:19:49 +02:00 |
stefan schippers
|
07bdb94601
|
add xschem instance_list command, updated docs
|
2023-04-06 20:10:57 +02:00 |
stefan schippers
|
0bb50ce7ff
|
xschem selected_set command: return instance names properly quoted
|
2023-04-06 10:55:01 +02:00 |
stefan schippers
|
63d4c55a09
|
fix missing error setting on sym_vs_sch_pins() in tedax_netlist.
|
2023-03-28 22:32:28 +02:00 |
stefan schippers
|
eeb71c33bf
|
forgot to update xschem load command description
|
2023-03-26 11:35:06 +02:00 |
stefan schippers
|
3fd24c69c4
|
improve xschem load command (no warning if opening an already open file, if doing that from script)
|
2023-03-26 11:33:05 +02:00 |
stefan schippers
|
e4e2ba37cc
|
xschem load from script: no alert box warning if new file given
|
2023-03-25 09:41:53 +01:00 |
stefan schippers
|
96aa251ca0
|
fix execute tcl procedure (correctly handle exit status of subprocesses that write to stderr but not as a failure)
|
2023-03-25 02:00:50 +01:00 |
stefan schippers
|
fa33aca682
|
do tilde substitution (with home directory) in xschem tcl commands
|
2023-03-24 15:37:26 +01:00 |
stefan schippers
|
6bcb74bdb0
|
add tcl procedures documentation in developer_info.html
|
2023-03-24 13:14:27 +01:00 |
stefan schippers
|
2725e0c533
|
add exit code to xschem netlist command, add execute(error,last) and execute(exitcode,last) to inspect stderr and exit code of last simulation job
|
2023-03-23 18:34:14 +01:00 |
stefan schippers
|
757fd0a378
|
better range checking for commands "xschem get schname" and "xschem get sch_path"
|
2023-03-22 11:22:41 +01:00 |
stefan schippers
|
a0fb4c5ee6
|
improve xschem check_symbols command
|
2023-03-19 12:54:46 +01:00 |
stefan schippers
|
601a128e37
|
doc updates (xschem command reference)
|
2023-03-18 23:38:47 +01:00 |
stefan schippers
|
b6a8add190
|
Warn if no application is defined to open html command reference
|
2023-03-15 09:01:10 +01:00 |
stefan schippers
|
b5852ffc70
|
print current_dirname in xschem globals command for debug
|
2023-03-11 11:29:35 +01:00 |
stefan schippers
|
a75afa56d5
|
xschem setprop instance: fix flags setting if hide or highlight attributes are given/changed
|
2023-03-10 23:45:15 +01:00 |
stefan schippers
|
3ec47760a7
|
xschem logic_get changed to xschem logic_get_net for consistency
|
2023-03-10 02:54:53 +01:00 |
stefan schippers
|
af6c01ab44
|
add command xschem logic_set_net <net_name> <value> [ntimes] to set a specific net instead of selected nets
|
2023-03-10 02:42:04 +01:00 |
stefan schippers
|
847d1df1b3
|
xschem logic_get: return X instead of empty string if net has never been assigned
|
2023-03-10 02:14:55 +01:00 |
stefan schippers
|
7bc63e0dfd
|
add xschem logic_get command to get logic state of nets
|
2023-03-10 02:04:08 +01:00 |
stefan schippers
|
25f34ee413
|
add xschemrc variable zoom_full_center, if set to 1 full zoom will center the schematic instead of anchoring to lower-left drawing area corner.
|
2023-03-09 22:48:25 +01:00 |
Stefan Schippers
|
a01dbcb457
|
doc updates (better formatting)
|
2023-03-04 19:09:29 +01:00 |
stefan schippers
|
896bb4e317
|
doc update
|
2023-03-04 11:09:54 +01:00 |
stefan schippers
|
bf6b20a1ce
|
In source Documentation (scheduler.c) of xschem commands, html docs updated
|
2023-03-03 18:29:17 +01:00 |
stefan schippers
|
ebf4fa1f44
|
Initialize stack2[] to double 0.0
|
2023-03-01 18:34:07 +01:00 |
stefan schippers
|
32288e056e
|
fix xschem fullxzoom command (missing setup_graph command)
|
2023-02-26 23:33:07 +01:00 |
stefan schippers
|
94fee133ca
|
add commands xschem setprop rect 2 <n> fullxzoom and fullyzoom
|
2023-02-26 13:07:14 +01:00 |
stefan schippers
|
b162ecdf48
|
remove unused parameter in setup_graph_data()
|
2023-02-26 11:22:19 +01:00 |
stefan schippers
|
f75ed4827b
|
fix xschem load command (dont get fooled by .sym extension, could not be a symbol). Always load as a schematic (sym and sch are the same thing
|
2023-02-22 23:27:50 +01:00 |
stefan schippers
|
a8aaf996e7
|
use pre-increment where expression is not used
|
2023-02-18 09:44:11 +01:00 |
stefan schippers
|
f0a359e65a
|
better xschem table_read command implementation
|
2023-02-10 18:08:45 +01:00 |
stefan schippers
|
42c3024eda
|
remove debug allocation IDs
|
2023-02-09 21:06:27 +01:00 |
stefan schippers
|
3be9a66aed
|
fix memory leak in table_read()
|
2023-02-09 21:04:22 +01:00 |
stefan schippers
|
e5227d6a31
|
rename top_subckt to lvs_netlist (more appropriate), better tcp interface (redirect stdout to socket in addition to command return value)
|
2023-02-09 11:30:27 +01:00 |
stefan schippers
|
b2f1a22936
|
added command xschem hilight_instname
|
2023-02-01 17:47:45 +01:00 |
stefan schippers
|
29ef08e84b
|
better memory tracking reporting (my_strcat and my_strncat allocations)
|
2023-02-01 11:38:28 +01:00 |
stefan schippers
|
baca559ffc
|
refactor some code (use set_text_flags() to avoid repetitive code), add xschem setprop text and xschem getprop text commands to set/get text attributes
|
2023-02-01 00:23:33 +01:00 |
stefan schippers
|
1da5e47d4a
|
remove my*() allocation routines unique IDs and replace with _ALLOC_ID_ macro, to be substituted in debug sessions with create_alloc_ids.awk
|
2023-01-23 15:42:15 +01:00 |
stefan schippers
|
03b2b8652e
|
fixed filter_data routine that was clobbering ps export file, now ps output is correct without the need to add fflush() functions, that are thus removed in psprint.c
|
2023-01-18 00:24:28 +01:00 |
stefan schippers
|
19757ddd8a
|
add menu properties -> Edit header/License text, to allow inserting header or license metadata into the sch/sym file.
|
2023-01-02 03:04:35 +01:00 |
stefan schippers
|
e01f545567
|
--diff option to visually compare two different (versions of) schematics
|
2022-12-13 13:51:33 +01:00 |
stefan schippers
|
3d5bb6d64a
|
add command "Simulation->Changelog from current hierarchy" that lists schematics from current hierarchy , sorted by modification time
|
2022-12-10 00:28:59 +01:00 |
stefan schippers
|
e54c604087
|
better recognize unknown commands in scheduler.c, re-enabed XCB detection in scconfig (although not used).
|
2022-12-07 11:32:40 +01:00 |
Stefan Frederik
|
6cd9d76f90
|
initial implementation of fetch schematics from web
|
2022-11-15 01:17:33 +01:00 |
Stefan Frederik
|
066a65bfef
|
removed some static hashtable declarations in netlisting code
|
2022-10-25 23:37:28 +02:00 |
Stefan Frederik
|
a6dc3d47c3
|
cache embed attribute of instances for faster lookup
|
2022-10-21 11:04:20 +02:00 |
Stefan Frederik
|
a820cc2e3f
|
removed (now) duplicated inst_hash_lookup: use int_hash_lookup. Search function does not highlight nets if searching for something that is not "lab"
|
2022-10-12 13:14:48 +02:00 |
Stefan Frederik
|
03d2e685fe
|
code cleanup
|
2022-10-08 10:07:59 +02:00 |
Stefan Frederik
|
47fb2085ff
|
update send_net_to graph() and send_current_to_graph() to use sch_waves_loaded() as the hierarchy level where raw file was loaded, to skip upper path designators
|
2022-10-05 12:06:37 +02:00 |
Stefan Frederik
|
9dbe4343e2
|
added label notation EN[0:3:6:5]: EN[start🔚offset:repetitions], it will expand to a 20 bit bus: a[0],a[1],a[2],a[3],a[6],a[7],a[8],a[9],a[12],a[13],a[14],a[15],a[18],a[19],a[20],a[21],a[24],a[25],a[26],a[27]
|
2022-10-05 02:23:37 +02:00 |
Stefan Frederik
|
5fe2f1586b
|
refactor str_hash_* and int_hash_* functions
|
2022-10-05 01:18:45 +02:00 |
Stefan Frederik
|
9c29324c8a
|
allow nets with no label pass thru symbols with duplicated pins. named nets will propagate through duplicated pins
|
2022-10-04 12:34:09 +02:00 |
Stefan Frederik
|
4bbed85d23
|
faster jump table in plot_raw_custom_data(), added simulation->add waveform reload launcher
|
2022-10-03 11:15:14 +02:00 |
Stefan Frederik
|
d06310deae
|
cleanups and faster branch tables in scheduler.c
|
2022-09-30 18:12:17 +02:00 |
Stefan Frederik
|
08aff09cf9
|
scheduler.c cleanup
|
2022-09-30 13:08:53 +02:00 |
Stefan Frederik
|
fc16997d0c
|
switch dispatcher instead of if-else in scheduler.c
|
2022-09-30 00:19:27 +02:00 |
Stefan Frederik
|
f26d082389
|
cleanups(2) in scheduler.c
|
2022-09-29 22:52:15 +02:00 |
Stefan Frederik
|
b20ca9b501
|
cleanups in scheduler.c
|
2022-09-29 22:35:44 +02:00 |
Stefan Frederik
|
f45278ebe3
|
cleanups in scheduler.c
|
2022-09-29 19:16:03 +02:00 |
Stefan Frederik
|
6d17797d0b
|
add Highlight->Select overlapped instances command
|
2022-09-27 18:35:42 +02:00 |
Stefan Frederik
|
472751dfc0
|
better file globbing in load_file_dialog
|
2022-09-27 13:15:04 +02:00 |
Stefan Frederik
|
fd72e72dba
|
test and got svg_embedded_graph(...) to work on Windows with Cairo (Joanne). added some #ifndef __unix__ guards to avoid compiler warnings about defined and not used functions, initial implementation of "Recent components" browser.
|
2022-09-25 21:11:52 +02:00 |
Stefan Frederik
|
03842a3e4a
|
new added graphs will have dataset attr set to -1 to include by default all datasets
|
2022-09-22 14:55:51 +02:00 |
Stefan Frederik
|
e67ff344c8
|
cleanup/rename some xctx variables and graph-related functions, avoid drawing graphs using data file loaded from from schematics that are unmatched with current schematic or up in the hierarchy levels
|
2022-09-21 11:25:45 +02:00 |
Stefan Frederik
|
933faceabf
|
some cleanups in scheduler.c "xschem annotate_op" command.
|
2022-09-20 23:07:50 +02:00 |
Stefan Frederik
|
af475e00df
|
xschem raw_read accepts an optional type argument after file name (tran, ac, dc, op, ...) to select type of simulation to load from raw file. New command xschem annotate_op will replace ngspice::annotate tcl procedure.
|
2022-09-20 16:49:42 +02:00 |
Stefan Frederik
|
96f80d1d33
|
Alt-a in graph annotates schematic with values at cursor b position. Simulation->Live annotate option to automatically update schematic probes if cursor moved. Some improvements and fixes in ngspice_annotate.tcl. Fix xschem setprobe command. Added missing housekeeping_ctx when a new tab is created. housekeeping_ctx: added more variables to sync.
|
2022-09-18 05:29:16 +02:00 |
Stefan Frederik
|
52405a29c7
|
restructured graph dialog box, added min/max x, adjusted sweep variables vertical aligmnent, added atof_spice() that recognizes spice suffixes (12p, 4.2MEG etc)
|
2022-09-16 17:01:59 +02:00 |
Stefan Frederik
|
f286b376f7
|
do not show bboxes of hidden texts while moving objects if global option "show hidden texts" is not set; documentation updates
|
2022-09-16 13:19:26 +02:00 |
Stefan Frederik
|
7d6b33cda8
|
limit max size of embedded graph bitmaps in svg export. added deriv0() graph function, does derivative w.r.t. index 0 (sweep) variable, regardless of graph sweep (x axis) variable.
|
2022-09-16 12:16:26 +02:00 |
Stefan Frederik
|
3866dc914e
|
xschem print command: if w and h are set to 0 compute image size automatically
|
2022-09-16 00:04:51 +02:00 |
Stefan Frederik
|
f644ce58a6
|
graphs are now rendered (as detailed png bitmaps) in svg exports
|
2022-09-15 19:39:16 +02:00 |
Stefan Frederik
|
75db846e58
|
ask confirmation if pressing "s" for simulate; node lists in graph dialog box are returned as they are with no tcleval() resolution; poweramp.sch now can be simulated unchanged with Xyce
|
2022-09-13 00:31:20 +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
|
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
|
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
|
8be273b9f7
|
fix regression on menu fullscreen command
|
2022-08-28 11:23:51 +02:00 |
Stefan Frederik
|
4136f7cf10
|
return loaded filename in xschem load command
|
2022-08-27 13:30:30 +02:00 |