stefan schippers
|
a6462269dc
|
refactor token.c: added get_pin_number(), get_pin_and_attr()
|
2023-06-16 23:08:00 +02:00 |
stefan schippers
|
3c16c4bf20
|
separated @#pin:attr handling in translate() into *get_pin_attr(), replaced sscanf() with dedicated get_pin_and_attr() so we are able to handle stuff like "@#ADD[7:0]:net_name"
|
2023-06-16 10:55:22 +02:00 |
stefan schippers
|
a752bb099b
|
better refactor text_bbox calculation in del_rect_line_arc_poly() and delete_only_rect_line_arc_poly()
|
2023-06-16 00:08:16 +02:00 |
stefan schippers
|
670841f361
|
fix segfault in delete() where del_rect_line_arc_poly() (which calculates text object bboxes) was called after text items deleted
|
2023-06-15 23:05:25 +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
|
258f794f1a
|
set modify/rebuild connectivity/draw only if something changed in break_wires_at_point() and break_wires_at_pins()
|
2023-06-13 11:56:46 +02:00 |
stefan schippers
|
4f08f0a6b6
|
added command Alt-RightButton to cut a wire at mouse position. Do a prepare_netlist_structs(0) at end of break_wires_at_pins() for connectivity consistency
|
2023-06-13 11:51:16 +02:00 |
stefan schippers
|
eca52e1f4a
|
added comp_65nm_read.sym example in inst_sch_select/inst_sch_select.sch, symbol with spice_sym_def attribute
|
2023-06-12 18:22:40 +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
|
818950980c
|
drill_hilight(): propagate unnamed nets connected to multiple instances (R1[3:0]), do not try to get single bits out of unnamed nets, as the whole netname is hashed
|
2023-06-12 07:25:05 +02:00 |
Stefan Schippers
|
613dae091e
|
extended `Shift-M` command to selected nets (nets attached to them will stretch)
|
2023-06-11 18:46:31 +02:00 |
Stefan Schippers
|
61e368b05e
|
update_symbol(): better redraw screen if changing generator symbols; as done with floaters redraw all screen viewport, don`t build list of objects to redraw
|
2023-06-11 18:18:45 +02:00 |
Stefan Schippers
|
61a659e004
|
text elements with attribute name=xxx or floater=xxx will go through a tcl substitution (instead of the translate(...) function if the referenced xxx instance does not exist. floater=instname can now be given instead of name=instname (they are equivalent)
|
2023-06-11 15:57:49 +02:00 |
stefan schippers
|
fc897c641b
|
fix a potential crash if a ngspice_probe.sym device is placed and live cursor annotation is enabled (this instance has no lab attribute)
|
2023-06-11 07:24:00 +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
|
acef2b0d2c
|
break_wires_at_pins(): inherit selected state of new created wires from ancestor wires
|
2023-06-10 19:16:00 +02:00 |
Stefan Schippers
|
3b3e723f8f
|
add new command `Shift-M`, move selected instances adding wires when separating overlapping instance pins (Connect by kissing)
|
2023-06-10 18:57:32 +02:00 |
Stefan Schippers
|
43befd4e3e
|
break_wires_at_pins(): delete piece of wires connected to symbol pins that extend beyond the pin into the symbol
|
2023-06-10 17:55:13 +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
|
0c9bdba37f
|
add some comments in break_wires_at_pins()
|
2023-06-10 09:04:13 +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
|
37a5dcee95
|
remove dbg messages in fix_symols. doc updates
|
2023-06-09 00:16:51 +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
|
d56e3939d5
|
updated xschem_library/examples/test_backannotated_subckt.sch; fix a potential segfault in proc fix_symbol
|
2023-06-08 01:08:05 +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
|
828975c19f
|
improved fix_symbols (works both ways for sky130 <--> xschem default env conversions
|
2023-06-07 20:48:26 +02:00 |
Stefan Schippers
|
ff99381624
|
add procedure `fix_symbols <n>`to set `n` last directory components to all symbols in current design
|
2023-06-07 20:41:09 +02:00 |
Stefan Schippers
|
bbb239dc21
|
faster `xschem replace_symbol` command
|
2023-06-07 20:31:25 +02:00 |
stefan schippers
|
245993f034
|
added attributes spice_ignore=short, verilog_ignore=short, .... that will transform the instance into a short in the current netlisting mode, shorting all pins to the same net. Works similarly as lvs_ignore=short, but does not need lvs_ignore global setting
|
2023-06-07 03:41:49 +02:00 |
stefan schippers
|
38a28a3acb
|
add lvs_ignore to context saved vars. Refactored some preprocessor macros SPICE_IGNORE_INST --> SPICE_IGNORE)
|
2023-06-06 23:38:29 +02:00 |
stefan schippers
|
b6e9ab33cc
|
fix compare schematics if no file for schematic to compare with is given. In this case compare current schematic with saved version. Also issue a warning if swapping compare schematics if comparing schematic with disk version of itself.
|
2023-06-06 19:39:40 +02:00 |
stefan schippers
|
b23d7518bb
|
find_inst_to_be_redrawn(): add `lvs_ignore=short` devices to list, fix uninitialized xctx->inst_redraw_table
|
2023-06-06 18:40:27 +02:00 |
stefan schippers
|
394db224d1
|
added global tcl variable `lvs_ignore` that can be used to enable instance or symbol attributes `lvs_ignore=open` or `lvs_ignore=short` while netlisting, added `test_lvs_ignore.sch` example
|
2023-06-06 15:22:45 +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
|
a3ac9f6d1d
|
fix portmap of single-bit unnamed nets in descend_schematic() (do not add [0] to single bit #netxxx nets)
|
2023-06-05 13:27:19 +02:00 |
stefan schippers
|
4f387f3bbe
|
disable displaying backannotation data if `b` cursor is hidden or `Simulation->Live annotation with b cursor` is disabled. Use resolved_net() in translate() when displaying @spice_get_voltage so it will work on sub block ports
|
2023-06-05 12:58:19 +02:00 |
stefan schippers
|
229b07b945
|
fix missing save_ctx in create_new_tab and create_new_window when creating new tab/window after the 2nd one, leading to wrong context switches. Added trace command on XSCHEM_LIBRARY_PATH when changing search path. `proc set_paths` is automatically called to cache in the new search path. No need to run it manually
|
2023-06-05 10:54:26 +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
|
44d1e764ac
|
resized some data structures for better overall speed
|
2023-06-04 17:56:52 +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
|
6d08202a5d
|
save (ctrl-s function) normally does not save if no changes are made. However if file timestamp has changed since opening (by someone else) prompt user to decide what to do (save or not)
|
2023-06-04 10:16:17 +02:00 |
stefan schippers
|
c708050baf
|
make ctrl-ArrowLeft/ctrl-ArrowRight work again (move to next/prev tab)
|
2023-06-04 09:28:22 +02:00 |