stefan schippers
|
6e776262e6
|
remove debug msg
|
2023-10-23 00:05:34 +02:00 |
Stefan Schippers
|
73c4a17c2c
|
dragging to the right a selection rectangle will select objects fully enclosed. Dragging to the left will select all objects intersected by the select rectangle.
|
2023-10-21 19:09:17 +02:00 |
stefan schippers
|
9b4bd44fd0
|
merged in fast_raw_read branch
|
2023-10-11 14:05:27 +02:00 |
stefan schippers
|
b56ee2c998
|
use my_strdup2() in all text object copies(txt_ptr, prop_ptr, floater_ptr, ...) to better handle corrupted input data
|
2023-10-09 13:39:45 +02:00 |
stefan schippers
|
3ed97b3df2
|
some code refactoring, more usage of tclgetboolvar()
|
2023-10-03 10:27:29 +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
|
ff2f0477a6
|
remove dbg message
|
2023-09-28 13:34:47 +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
|
f3230ceb42
|
FIX_BROKEN_TILED_FILL can now be changed runtime (fix_broken_tiled_fill)
|
2023-09-27 01:28:31 +02:00 |
stefan schippers
|
983f6d9d6b
|
add tcl variable "unselect_partial_sel_wires" and related options menu entry to unselect partially selected wires attached to component pins after a stretch move command
|
2023-09-26 01:38:48 +02:00 |
stefan schippers
|
a4b597cfc2
|
add Alt-c command for copy object and create nets to connected terminals
|
2023-09-25 23:23:08 +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
|
6c7d7080b9
|
some code refactoring (inst_table -> inst_name_table)
|
2023-09-25 09:05:10 +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
|
112a12a87b
|
add tcl variable no_ask_save: if set to 1 xschem will not ask to save modified schematics
|
2023-09-23 11:47:11 +02:00 |
stefan schippers
|
6a0fcdae05
|
various optimizations (do not execute graphic ops with gctiled if FIX_BROKEN_TILED_FILL is defined, optimize XCopy Area blits
|
2023-09-23 01:46:39 +02:00 |
stefan schippers
|
426be0e68c
|
add !defined(__unix__) in all #if defined(FIX_BROKEN_TILED_FILL)
|
2023-09-22 18:33:16 +02:00 |
stefan schippers
|
4ea2ccac4c
|
if FIX_BROKEN_TILED_FILL is defined disable all graphic operations with gctiled GC (set function to GXnoop) - Also clear selection rectangle with MyXCopyArea in select_rect()
|
2023-09-22 01:12:26 +02:00 |
stefan schippers
|
0119f013e3
|
correct implementation of previous commit
|
2023-09-20 11:04:30 +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
|
0680fd97fd
|
place_symbol(): better handle generator symbol insertions like res.tcl(@value\): @value can be resolved only after generator has emitted the symbol, but symbol generated depends on generator actual parameter. So generators must handle unresolved @params.
|
2023-09-19 01:42:51 +02:00 |
stefan schippers
|
75e99cae91
|
update tier.tcl generator to handle unresolvable parameters
|
2023-09-19 01:29:52 +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
|
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
|
afd25cf430
|
clear_schematic(): clear xctx->sch[..] name before assigning untitled.sch / untitled.sym path name
|
2023-09-12 23:16:32 +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
|
b646a0f79f
|
explicitly clear instance flag bits when allocating new instance array data to avoid random data in bit 8 (IGNORE_INST). This does not cause any problem but random data in log files, causing false positives in automated regression tests
|
2023-07-07 23:54:46 +02:00 |
stefan schippers
|
cdecc6ad04
|
xschem netlist command accepts an optional filename argument
|
2023-07-03 09:06:46 +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
|
f95a1b7244
|
further fix initial full zoom of schematics loaded into multiple tabs with File->Open
|
2023-06-24 08:25:14 +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
|
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
|
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
|
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
|
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
|
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
|
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
|
d4116a3bb0
|
cleaner exit -f xschem -v is given
|
2023-06-03 11:41:07 +02:00 |
stefan schippers
|
e948edbffa
|
descend_schematic(): vectorize #netxxx nets if connected to bussed pins, before hashing, so resolved_net(...) will return the correct net portmapping
|
2023-06-01 06:40:24 +02:00 |
stefan schippers
|
e9c8569800
|
remove debug mesg
|
2023-05-31 10:25:54 +02:00 |
Stefan Schippers
|
cff9f7d169
|
some bug fixes in resolved_net hashing, use some @#n:resolved_net labels in examples
|
2023-05-27 21:48:21 +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
|
5e90f5c319
|
use find_file_first instead of find_file in C code
|
2023-05-24 09:12:29 +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 |