Stefan Schippers
|
33eb3fecce
|
quit and detach globals refactored to cli_opt_quit and cli_opt_detach
|
2023-07-01 21:07:52 +02:00 |
stefan schippers
|
6755975369
|
do not create nets for devices that have *_ignore=true attribute set, this generates false warnings about undriven nets.
|
2023-06-30 08:29:11 +02:00 |
stefan schippers
|
f2812e1444
|
bump to version 3.4.1, updated Changelog
|
2023-06-29 21:40:49 +02:00 |
stefan schippers
|
89d90c21db
|
xctx->sch made an array of pointers instead of array of PATH_MAX strings (memory saver)
|
2023-06-17 23:58:35 +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
|
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
|
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
|
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
|
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
|
44d1e764ac
|
resized some data structures for better overall speed
|
2023-06-04 17:56:52 +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
|
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
|
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
|
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
|
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
|
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
|
014ebf0477
|
is_from_web() function to avoid code repetitions, more heuristics when trying to descend into web hierarchies
|
2023-05-18 20:55:14 +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
|
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
|
a9ffa50ed8
|
add "ndir" parameter to get_sym_name(), some fixes in sym_vs_sch_pins()
|
2023-05-01 23:17:57 +02:00 |
stefan schippers
|
9593d41f09
|
persistent load file dialog (Shift-Insert) now correctly handles generator script selection (do nothing until user adds () or (param1,param2,...) to generator name).
|
2023-04-29 00:28:24 +02:00 |
stefan schippers
|
36f71708e6
|
added linewidth_mult=<double> attribute in graphs for per-graph line width adjustment
|
2023-04-27 20:55:17 +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
|
10441ef901
|
allow tcl procedures to generate generator script and parameters, update vhdl and verilog netlisters to handle generator schematic/symbol references
|
2023-04-26 09:54:35 +02:00 |
stefan schippers
|
68cf318134
|
load_sym_def(): removed embedded parameter, recognize generator names and pipe in data from generator instead of loading from file. No more set flags for generated symbols to EMBEDDED
|
2023-04-24 23:56:56 +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
|
94d1865127
|
fix save_inst resetting all symbols EMBEDDED flags, not only the used symbols in current schematic. Created get_generator_command(), will be used also for schematic generators
|
2023-04-24 11:36:07 +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
|
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
|
340b89c58d
|
add base_name field in xSymbol struct to keep track of the base symbol name the "virtual" symbol is inherited from (instance based implementation selection with schematic=... attribute)
|
2023-04-13 22:25:36 +02:00 |
stefan schippers
|
590bf8b6ec
|
add instance based "schematic=..." attribute. This allows multiple instances of the same symbol to have different implementations.
|
2023-04-12 18:28:19 +02:00 |
stefan schippers
|
5b3b3d0662
|
function copy_symbol() extracted from undo code for reuse
|
2023-04-12 12:09:45 +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
|
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
|
d2d9eaa4e8
|
instance attribute "hide=true" will make the instance display as a bounding box only
|
2023-03-10 04:42:21 +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 |