stefan schippers
|
f1cb655a7a
|
ERC: symbols with pass-through pins by definition do not match with schematic so do not check
|
2023-10-11 22:57:44 +02:00 |
stefan schippers
|
c9a2bca5d7
|
add local manual link in xschem about dialog
|
2023-10-11 17:10:06 +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
|
3a25109fe1
|
fix compile error with CAIRO on Windows: dest_x and dest_y should be idx1 and idy1, respectively in my_cairo_fill
|
2023-10-11 13:59:08 +02:00 |
stefan schippers
|
6305b52d91
|
add safety check for null string in edit_text_property()
|
2023-10-09 13:53:57 +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
|
94bccc08d9
|
do not duplicate empty strings as NULLs in hash tables
|
2023-10-09 12:49:11 +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
|
6b00a88f28
|
fix xschem simulator "mux" operator (M) to handle unknown selector state
|
2023-10-08 11:45:22 +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
|
62bc3759f0
|
add (disabled, should be done with keyboard shortcuts) Edit menu entries: rotate, flip, rotate_in_place, flip_in_place
|
2023-10-06 13:17:06 +02:00 |
stefan schippers
|
4f0377f1e9
|
expandlabel(): if empty node name is given return empty string instead of NULL
|
2023-10-06 11:24:00 +02:00 |
stefan schippers
|
3e4f49dbea
|
further fix expandlabel() potentially returning its string argument (instead of a copy) in case of weird and wrong node syntax
|
2023-10-06 11:11:17 +02:00 |
stefan schippers
|
42781f8456
|
fix a regression in expandlabel() returning it string argument without making a copy
|
2023-10-06 00:08:16 +02:00 |
stefan schippers
|
c4e1fb6a31
|
fix a memory leak in translate()
|
2023-10-05 20:15:47 +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
|
9ecc5859b2
|
fix new_prop_string() when doing a name change on multiple selected instances
|
2023-10-04 00:44:43 +02:00 |
stefan schippers
|
5ffc7bb5e4
|
select_object() returns sel instead of sel.type (more info on return)
|
2023-10-04 00:09:12 +02:00 |
stefan schippers
|
822910fce7
|
strboolcmp(): remove debug message
|
2023-10-03 20:46:18 +02:00 |
stefan schippers
|
d613bcc47a
|
fix strboolcmp() (return false anyway if str="")
|
2023-10-03 20:44:44 +02:00 |
stefan schippers
|
02086d76a7
|
revert from tclgetboolvar to tclgetvar for edit_symbol_prop_new_sel, as this is not a boolean
|
2023-10-03 15:28:42 +02:00 |
stefan schippers
|
5c7abfa048
|
optimization for new_prop_string() done. doc updates for instance hide_texts=true attribute, align strboolcmp() to tcl allowed boolean values (1, true, on, yes)
|
2023-10-03 15:20:30 +02:00 |
stefan schippers
|
d441ba6966
|
fix missing update of name_is_used() call
|
2023-10-03 13:24:54 +02:00 |
stefan schippers
|
24bc44ad0c
|
doc updates (text attributes), prepare improvements for new_prop_string()
|
2023-10-03 13:21:04 +02:00 |
stefan schippers
|
e49f9902a7
|
remove redundant actions in toggle_colorscheme
|
2023-10-03 10:45:11 +02:00 |
stefan schippers
|
3ed97b3df2
|
some code refactoring, more usage of tclgetboolvar()
|
2023-10-03 10:27:29 +02:00 |
stefan schippers
|
b613d65fd9
|
read_dataset(): better set return codes on errors and cleanup allocated memory
|
2023-10-02 19:18:12 +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
|
05c79febc2
|
better implementation of cursor reconfiguring if draw_crosshair enabled
|
2023-09-30 00:22:10 +02:00 |
stefan schippers
|
c25a9f9d85
|
if crosshair is displayed and xschem blocked by a tk_messageBox restore pointer to default, so it will be visible. Do not parse labels if not vectored labels (shortcut)
|
2023-09-30 00:13:33 +02:00 |
stefan schippers
|
00ef95c90e
|
fix regression: hilight nets not incrementing color (if nets are singlebits)
|
2023-09-29 10:39:25 +02:00 |
stefan schippers
|
405d950412
|
add xctx->mouse_inside var to better decide if crosshair has to be drawn
|
2023-09-29 10:09:13 +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
|
64cb20dab9
|
add crosshair_layer tcl variable, so user can change crosshair layer.Crosshair is deleted on LeaveNotify events.
|
2023-09-29 00:30:43 +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
|
433ec84278
|
simpler state bits checking in callback() (use rstate to avoid redundant ShiftMask checks) . Enable loading SP Analysis raw files (they are equal as AC analyses) )
|
2023-09-28 21:03:28 +02:00 |
stefan schippers
|
8fe4f2fd11
|
add src/place_pins.tcl, src/place_sym_pins.tcl
|
2023-09-28 16:09:06 +02:00 |
stefan schippers
|
3a020b4305
|
add installation of place_sym_pins.tcl, place_pins.tcl scripts in XSCHEM_SHAREDIR
|
2023-09-28 16:07:01 +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
|
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
|
5df9347533
|
removed tcl variable connect_by_kissing (to many options is a mess)
|
2023-09-28 12:34:10 +02:00 |
stefan schippers
|
14a674b6f4
|
fix a random segfault due to out of bound array ref in find_pass_through_symbols()
|
2023-09-28 01:06:07 +02:00 |
stefan schippers
|
5080c2c33f
|
fix unitialized vars (mostly false errors, but why not...)
|
2023-09-28 00:30:00 +02:00 |
stefan schippers
|
6c4c8b3a50
|
handle Windows key on windows (Mod4Mask)
|
2023-09-27 21:15:25 +02:00 |
stefan schippers
|
ba00ba2921
|
add #ifdef __unix__ around filter of bits 13 and above on state var in callback()
|
2023-09-27 21:00:02 +02:00 |
Stefan Schippers
|
e7c53b59b5
|
callback(): filter out any state value that uses bits above 12
|
2023-09-27 18:35:40 +02:00 |
stefan schippers
|
0f29b53d25
|
remove an extra change_linewidth() in svg_embedded_graph() (now already done in resetwin())
|
2023-09-27 13:22:46 +02:00 |
stefan schippers
|
97e9b27bbd
|
fix garbage on screen if drawing something, go to another tab, return and move objects. Regression was introduced on repo.hu r3033
|
2023-09-27 13:13:15 +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
|
9316878559
|
fix a bug in hilight_net(): example: if a bus 3*A was highlighted hilight color was not incremented and highlighting another net gave the same color. added xctx->some_nets_added for that
|
2023-09-26 12:51:41 +02:00 |
stefan schippers
|
87da969b16
|
don`t break "** sch_path:" / "** sym_path:" lines in spice netlists
|
2023-09-26 09:20:04 +02:00 |
stefan schippers
|
576a7e329b
|
improve stretch move operations when auto trim is enabled
|
2023-09-26 02:19:37 +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
|
cfc87392d2
|
select_attached_nets() do not select wires attached to partially selected wires when doing a stretch move
|
2023-09-25 17:15:15 +02:00 |
stefan schippers
|
9af33003bc
|
rearranged menu entries. "Persistet wire/line place command" goes to Options, "Show net names on symbol pins" goes to Symbol, "Show netlist after netlist command" goes to simulation
|
2023-09-25 16:26:57 +02:00 |
stefan schippers
|
be8324293c
|
move "Options->Set symbol width" to "Symbol" menu
|
2023-09-25 15:56:17 +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
|
03003ab7bf
|
fix redraw of move operation abort when done with "connect by kissing" (adding new wires)
|
2023-09-25 00:03:02 +02:00 |
stefan schippers
|
37f2edcc7e
|
if $USER_CONF_DIR (~/.xschem) is not existing create it and also place the template xschemrc into it
|
2023-09-24 21:27:27 +02:00 |
stefan schippers
|
2ec4b1c8b3
|
added a helper command "create_user_xschemrc" that copies system xschemrc to user xschem config dir (~/.xschem/xschemrc usually) if such file is not existing. After some thinking i came to the conclusion i wont do this automatically, as there might be use cases where a user does not want such a file.
|
2023-09-24 12:27:14 +02:00 |
stefan schippers
|
ba5eb149a8
|
small xschemrc edits
|
2023-09-24 10:55:38 +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
|
abd5f75ef5
|
added enable_stretch tcl variable description in xschemrc
|
2023-09-24 01:26:45 +02:00 |
stefan schippers
|
152623f4aa
|
control-mouse drag select will negate the setting of enable_stretch tcl variable so drag and control-drag can be swapped vith Options->enable stretch
|
2023-09-24 00:29:15 +02:00 |
stefan schippers
|
4663a86da4
|
fix various regressions for handling instances with lock=true attribute
|
2023-09-24 00:17:48 +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
|
aa75723446
|
fix MotionNotify events when crosshair is enabled and there is a selection and FIX_BROKEN_TILED_FILL not defined
|
2023-09-22 19:29:14 +02:00 |
stefan schippers
|
75e2efd5a7
|
filter unused bbox_set variable in draw_crosshair()
|
2023-09-22 19:15:26 +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
|
426be0e68c
|
add !defined(__unix__) in all #if defined(FIX_BROKEN_TILED_FILL)
|
2023-09-22 18:33:16 +02:00 |
stefan schippers
|
288c053ec6
|
various FIX_BROKEN_TILED_FILL fixes
|
2023-09-22 18:26:18 +02:00 |
stefan schippers
|
42c76c9693
|
doc updates (cut wires)
|
2023-09-22 16:13:25 +02:00 |
stefan schippers
|
3ba3bbc21a
|
remove dbg message
|
2023-09-22 15:58:21 +02:00 |
stefan schippers
|
1da34af531
|
allow to use the Windows keys (if present) as alternatives for "Alt"
|
2023-09-22 15:53:23 +02:00 |
stefan schippers
|
fbffeec673
|
some minor fixes in src/xschemrc (order of libs, avoid referencing specific install paths)
|
2023-09-22 13:43:43 +02:00 |
stefan schippers
|
a2d3f68977
|
fix missing #if defined((FIX_BROKEN_TILED_FILL) in draw_crosshair()
|
2023-09-22 13:23:21 +02:00 |
stefan schippers
|
93291ed84b
|
add draw_crosshair() (if enabled) at end of any draw() operation
|
2023-09-22 13:13:35 +02:00 |
stefan schippers
|
eb91c8bbea
|
draw crosshair at end of copy/move ops if enabled
|
2023-09-22 13:02:51 +02:00 |
stefan schippers
|
8f0d920a96
|
add draw_crosshair setting in xschemrc: draw a crosshair at mouse coordinates
|
2023-09-22 12:48:22 +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
|
951a18cb24
|
draw_selection(): erase rubbers correctly during copy/move ops if FIX_BROKEN_TILED_FILL enabled
|
2023-09-22 09:40:59 +02:00 |
stefan schippers
|
9e1feacab4
|
closest_point_calculation(): improve "closest point is on segment" detection
|
2023-09-22 09:33:41 +02:00 |
stefan schippers
|
a53ea21026
|
remove debug messages in closest_point_calculation()
|
2023-09-22 03:46:42 +02:00 |
stefan schippers
|
5181ca77e6
|
break_wires_at_point(): oblique lines can be cut at any point, the break point will be aligned to the snap value and broken wires are slightly changed to land on this new point.
|
2023-09-22 03:45:09 +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
|
fbe3064cf2
|
remove gctiled in MyXCopyArea() calls (use gc[0], background, any GC is ok as long as it does not have some strange logic operator)
|
2023-09-21 23:51:17 +02:00 |
stefan schippers
|
95e1c833c8
|
better pan operation if FIX_BROKEN_TILED_FILL is set
|
2023-09-21 23:01:09 +02:00 |
stefan schippers
|
301f9c4bdf
|
add experimental compile flag in xschem.h, FIX_BROKEN_TILED_FILL, if defined work around some graphic adapters/driver implemtations that dont honor the X11 specifications for drawing with a pixmap tile fill pattern
|
2023-09-21 21:52:24 +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
|
129dd68b20
|
translate(): check for NULL xctx and xctx->inst
|
2023-09-21 09:56:29 +02:00 |
stefan schippers
|
ee26a247c5
|
fix a crash if translate() invoked for an instance with instname=NULL (due to incomplete symbol definition)
|
2023-09-20 15:13:44 +02:00 |
stefan schippers
|
0119f013e3
|
correct implementation of previous commit
|
2023-09-20 11:04:30 +02:00 |
stefan schippers
|
1fdf117a84
|
fix a bug regression in save_schematic when saving an existing schematic to a different filename. Xschem incorretly popped up the alert "Has been changed since opening. Save it anyway?"
|
2023-09-20 10:19:49 +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
|
fd2be4a599
|
update res.tcl generator to handle unresolvable parameters
|
2023-09-19 00:08:42 +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
|
690486c848
|
editprop.c->update_symbol(): recalculate bbox for dynamic symbols (floaters and generators) when attributes are changed. xschem.tcl: cleanly report errors in file mkdir instructions in case of permission issues
|
2023-09-18 09:39:52 +02:00 |
stefan schippers
|
306271e247
|
parselabel.l: Add ")" to list of forbidden characters in bus trailer: A[3:0])_xx
|
2023-09-17 22:54:17 +02:00 |
stefan schippers
|
e5286a7f12
|
bus labels with trailing chars (A[15:0]_xx): fix rule conflicts in grammar parser. Add a trailer token in lexer
|
2023-09-17 21:17:35 +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
|
f99eb07e23
|
update keybinding list (missing "s" - simulation) and some minor corrections in commands.html
|
2023-09-16 17:18:10 +02:00 |
Stefan Schippers
|
a32f3f0706
|
do not push undo state if clicking and switching graphs with graphdialog open, if no changes are made
|
2023-09-16 16:34:59 +02:00 |
stefan schippers
|
451cc4049e
|
add script examples in developer_info manpage
|
2023-09-16 09:58:59 +02:00 |
stefan schippers
|
216d2a1297
|
proc execute_fileevent: change exec ps syntax to work both on Linux and MacOS
|
2023-09-16 01:04:29 +02:00 |
stefan schippers
|
3f299589d1
|
remove a forgotten debug print line
|
2023-09-15 18:17:24 +02:00 |
stefan schippers
|
cb1b8a09a6
|
remove mysterious -width 1 -height 1 options when creating .graphdialog toplevel window. It seems a long standing bug, and not surprisingly it shows problems on MacOS/XQuartz
|
2023-09-15 18:08:26 +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
|
a28f9506f8
|
Some code cleanups in select.c, select_connected_nets() did not select labels directly attached (not by wires) to selected instances
|
2023-09-15 13:29:12 +02:00 |
stefan schippers
|
82f8afbb19
|
optimize select_dangling_nets() a bit
|
2023-09-15 11:01:33 +02:00 |
stefan schippers
|
4095651863
|
bump to version 3.4.4, updated Changelog
|
2023-09-14 10:03:14 +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
|
210f56cccb
|
remove debug messages in "xschem select_dangling_nets"
|
2023-09-14 01:04:46 +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
|
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
|
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
|
c5420f4f07
|
fix a crashing bug if descending a schematic those symbol has a @#resolved_net:... attribute, raw file is loaded and show net_names is enabled.
|
2023-09-11 09:24:03 +02:00 |
stefan schippers
|
4bd758bee7
|
xschem tcp connections: print in/out data on console only if in tcl debug mode
|
2023-09-10 08:00:26 +02:00 |
stefan schippers
|
045edb5e10
|
xschem tcp connections: print open/close messages only if in tcl debug mode
|
2023-09-10 07:54:40 +02:00 |
stefan schippers
|
02dddc90ef
|
Improve send nets to graph. do not refuse to send top level port signals, allow to send bussed signals even if graphdialog widget is not shown (proc graph_add_nodes_from_list)
|
2023-09-09 10:26:58 +02:00 |
stefan schippers
|
ff1216e142
|
hilight_parent_pins(): remove dbg info
|
2023-09-08 01:22:39 +02:00 |
stefan schippers
|
c75ddaf6ab
|
hilight_parent_pins(): if two or more child pins are attached to the same parent net hilighting one of these child pins will not propagate to parent if the unhilight child pin comes after the hilight pin. This is now fixed. Going up in hierarchy will never clear parent hilights. It is recommended to clear all probes before tracking child pin propagation with hilights upstream.
|
2023-09-08 01:16:52 +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
|
b8d78e5b01
|
xschem switch command: return success also if command given (with right filename/winpath) when no additional windows/tabs are present
|
2023-09-07 08:49:39 +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
|
c23f38e10b
|
export ps/pdf, png, svg functions now use custom file chooser widget (as Save As does) to enable creation of new folders
|
2023-08-30 00:42:09 +02:00 |
stefan schippers
|
8dfaedf9ea
|
report in-hierarchy overlapped symbols when netlisting
|
2023-08-29 11:32:48 +02:00 |
stefan schippers
|
c94d6b66cb
|
yet some other fixes for displaying / updating ERC info data after a netlist
|
2023-08-28 23:21:42 +02:00 |
stefan schippers
|
590b6fb3cd
|
better ERC messaging in case of errors (shorts, pins with missing attrs), ...)
|
2023-08-28 18:40:11 +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
|
b521994a08
|
prefix ERC infowindow messages with Error: or Warning: or Info:
|
2023-08-26 14:28:35 +02:00 |
stefan schippers
|
6909971a61
|
bump to version 3.4.3, updated Changelog
|
2023-08-19 14:06:54 +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
|
e3b9e67cb8
|
add postinit_commands description in distribution provided xschemrc
|
2023-08-16 13:26:04 +02:00 |
stefan schippers
|
c05c177885
|
add "postinit_commands" variable that can be set in xschemrc file, this variable may contain commands that will be executed after completing startup. Example: set postinit_commands {xschem set format xyce_format}
|
2023-08-16 08:45:41 +02:00 |
stefan schippers
|
dd71d533ce
|
make_symbol: ask before overwriting an existing symbol file.
|
2023-08-14 12:18:54 +02:00 |
stefan schippers
|
36f1285303
|
Correctly detect if DISPLAY env var is set but specified display is not existing or xserver not running, and start in text mode
|
2023-08-10 08:37:55 +02:00 |
stefan schippers
|
163eaea672
|
remove reference to cadsnap_default in menu widget "View->Set snap value"
|
2023-08-08 11:19:48 +02:00 |
stefan schippers
|
ac042ed21f
|
remove warning message if bespice_listen_port is not set (not necessary, scares new users)
|
2023-08-04 15:23:46 +02:00 |
stefan schippers
|
c54e43d24f
|
allow expandion of labels like aaa[3:2]_qq --> aaa[3]_qq,aaa[2]_qq and aaa[3..2]_qq --> aaa3_qq,aaa2_qq
|
2023-08-04 15:02:55 +02:00 |
stefan schippers
|
f95580906a
|
bump to version 3.4.2, updated Changelog
|
2023-07-26 09:32:25 +02:00 |
stefan schippers
|
f847b61333
|
Gerard upates for Xschem <--> BeSpice TCP communication
|
2023-07-25 23:33:46 +02:00 |
stefan schippers
|
39b3195794
|
proc tk_textPaste: add author info
|
2023-07-20 09:24:55 +02:00 |
stefan schippers
|
efecd33d51
|
added tcl variable text_replace_selection (default: enabled (1) ) to automatically replace selected text in text widgets when pasting from clipboard
|
2023-07-20 09:06:58 +02:00 |
stefan schippers
|
2d11c5086c
|
case insensitive compare in boolean attributes (attr=false, attr=True, attr=FALSE, attr=1)
|
2023-07-14 08:17:04 +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
|
231f3a38d4
|
make the "X" window button close the search dialog box, as Cancel (and Escape key) does
|
2023-07-14 00:06:39 +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
|
83b1993c32
|
add xschemrc variable "ps_paper_size" to specify custom paper sizes in ps/pdf exports
|
2023-07-12 08:10:00 +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
|
83071b4b21
|
fix crash on windows if a new tab is opened and immediately closed (incorrect call of draw() after clearing pixmap)
|
2023-07-07 08:30:13 +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
|
2b38ed5f07
|
initialize tcl_files to empty in xschemrc to avoid side effects if reloading another xschemrc
|
2023-07-03 23:12:22 +02:00 |
stefan schippers
|
970c2fce65
|
fix utile/ stuff uninstall in Makefile
|
2023-07-03 12:32:57 +02:00 |
stefan schippers
|
cdecc6ad04
|
xschem netlist command accepts an optional filename argument
|
2023-07-03 09:06:46 +02:00 |
Stefan Schippers
|
9f23965096
|
do not use tclreadline if $tcl_interactive is 0
|
2023-07-02 19:47:04 +02:00 |
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
|
a20fce8cdf
|
fix tedax netlisting (do not netlist noconn devices), recognize @#pin_name:net_name and @#pin_name:pin_attr attributes in tedax format string
|
2023-07-01 09:22:24 +02:00 |
Stefan Schippers
|
af153593e9
|
removed some redundant code lines in netlist.c, updated xschemtest.tcl netlist hashes with new noconn.sym
|
2023-06-30 20:54:07 +02:00 |
stefan schippers
|
f8f7c4f230
|
updated moude_bindings.tcl with Paul`s new version, updated noconn.sym (do not use *_ignore attributes, put comments in netlist about NC net)
|
2023-06-30 09:11:04 +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
|
476499b250
|
better recognize implicit datasets (sweep var wrap to initial value in raw file)
|
2023-06-28 08:20:09 +02:00 |
stefan schippers
|
8399106ed4
|
avoid using "string is list" if tclversion <= 8.4
|
2023-06-28 00:32:56 +02:00 |
stefan schippers
|
39751be9e1
|
add mouse_bindings.tcl, courtesy Paul Bodenstab
|
2023-06-27 08:45:12 +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
|
4ec80d850b
|
changed tcl procedure `setup_tcp_xschem` to allow setting a different port number for further tcp commuication (and freeing the original port number)
|
2023-06-26 00:08:13 +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
|
6198d21404
|
add "show_infowindow_after_netlist" tcl variable (default = 0) that can be set in xschemrc to always show erc window after netlist even without or no critical errors
|
2023-06-25 09:05:37 +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
|
31451e6be9
|
do not do a context switch on first invocation of callback() (set old_winpath = ".drw").
|
2023-06-24 07:38:55 +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
|
0f3a0c62a8
|
resetwin() do nor process pending_fullzoom if window size has not set by window manager (width ==1 || height ==1)
|
2023-06-23 20:03:48 +02:00 |
stefan schippers
|
cf5c02c141
|
if a file is given on cmdline without any path qualifier (/.../, ./, ~/, ...) look into search paths. Fix wrong initialization of xctx->lw=-1.0 in alloc_xschem_data(), set to 0.0
|
2023-06-23 15:49:23 +02:00 |
stefan schippers
|
d5c0fbcf15
|
remove debug messages
|
2023-06-23 11:18:02 +02:00 |
stefan schippers
|
cd15362376
|
improve prevous commit: do not execute "pending_fullzoom" drawing if main window unmapped (do not decrement the pending_fullzoom flag and delay until window is visible)
|
2023-06-23 11:15:54 +02:00 |
stefan schippers
|
9ea7121846
|
set pending_fullzoom=1 on additionally created tabs so will display correctly if xschem started deiconified (wm withdraw .)
|
2023-06-23 10:59:06 +02:00 |
stefan schippers
|
70995165b0
|
fix regression (--command option)
|
2023-06-23 09:53:05 +02:00 |
stefan schippers
|
7e865eea1d
|
avoid doing a full zoom before loading schematic in create_new_tab() and create_new_window(), as this will result in slightly different full zoom area in new tabs w.r.t first tab.
|
2023-06-23 09:34:16 +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
|
f85d46a0cb
|
save_schematic(): avoid copying schname to xctx->sch[xctx->currsch] if dest == src
|
2023-06-22 08:16:19 +02:00 |
stefan schippers
|
7ba1acb6d0
|
modify xschemrc file to avoid side effects if sourced (intentionally or by mistake) multiple times.
|
2023-06-20 23:32:04 +02:00 |
stefan schippers
|
284ff2d1db
|
fix crash if --script is given (xctx->sch[] was not initialized, regression due to xctx->sch transformed to array of pointers)
|
2023-06-19 23:42:52 +02:00 |
stefan schippers
|
810b814211
|
added some comments in code / schematics
|
2023-06-18 23:44:52 +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
|
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 |
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
|
d4116a3bb0
|
cleaner exit -f xschem -v is given
|
2023-06-03 11:41:07 +02:00 |
stefan schippers
|
f9610851e8
|
cleanup exit procedures: tcl exit command will cleanly delete additional tabs/windows data structures before closing
|
2023-06-03 11:37:37 +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
|
1ea1e835ae
|
@spice_get_voltage: do not process if net is a multiple bit bundle
|
2023-06-02 08:10:47 +02:00 |
stefan schippers
|
0d44c0ce13
|
fix wrong pin label net gathering in translate()
|
2023-06-02 07:48:09 +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
|
f3f12da486
|
updated test_extracted_netlist.sch example
|
2023-06-01 16:02:40 +02:00 |
stefan schippers
|
d68e25016b
|
fix long standing bug: redundant grammar rule in expandlabel.y causing it to fail recognizing nodes like GND*16
|
2023-06-01 07:09:43 +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
|
4a06176f0d
|
comments, more test_bus_tap examples
|
2023-05-29 16:48:13 +02:00 |
stefan schippers
|
487b1eb202
|
more flexible bus_tap syntax
|
2023-05-29 09:17:06 +02:00 |
stefan schippers
|
06d8a548d3
|
fix expandlabel.y (remove excess rules)
|
2023-05-29 07:41:53 +02:00 |
stefan schippers
|
6bbc60f8fb
|
add more ".." bus notations: XX[4,2,8..1..3,12,23] and others. bus_tap.sym: if no "[n]" pattern is given assume it is the complete name of the slice (does not need bus basename)
|
2023-05-28 15:30:40 +02:00 |
stefan schippers
|
620217788f
|
do not process @#n:resolved_net attributes if net_name=true not set on symbol or instance and option "show netnames on symbol pins/floaters" is not enabled
|
2023-05-28 08:13:01 +02:00 |
stefan schippers
|
5043b14921
|
fix uninitialized wave_color due to regression after rainbow wave color enablement in double dc sweeps; more bus_tap.sym usage in examples; make bus_tap.sym work correctly for all netlist formats
|
2023-05-27 23:36:10 +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
|
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
|
970c8597f6
|
First version: create_alloc_ids_windows.awk can be used with Windows GNU GAWK by running Windows batch file create_alloc_ids_windows.bat. It`s the equivalent to linux version of create_alloc_ids.awk.
|
2023-05-25 21:56:55 +02:00 |
Stefan Schippers
|
b5b1339653
|
enable rainbow colored graphs also for double dc sweeps
|
2023-05-24 19:31:47 +02:00 |
Stefan Schippers
|
ba402e65c0
|
remove unneeded variable in create_new_tab()
|
2023-05-24 18:20:18 +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
|
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
|
608a144dd1
|
fix tcl procedures using find_file to find a component: use find_file_first (return 1st match) , since find_file may return multiple matches; add njfet.sym, pjfet.sym and test_jfet.sch
|
2023-05-24 08:43:05 +02:00 |
stefan schippers
|
d993292f0f
|
fix unindented lines
|
2023-05-23 10:16:38 +02:00 |
stefan schippers
|
e7366741ed
|
allow @#n:pin_attr or @#pin_name:pin_attr in verilog and vhdl format string (print_vhdl_primitive, print_verilog_primitive), in addition to @#n (convergence to translate()
|
2023-05-23 09:58:28 +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
|
1774ff4e3a
|
allow @#n:pin_attr or @#pin_name:pin_attr in spice format string (print_spice_element), in addition to @#n (convergence to translate()
|
2023-05-22 21:50:14 +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
|
637ada331e
|
remove dbg message
|
2023-05-22 07:46:36 +02:00 |
stefan schippers
|
b68dd8c099
|
when a bus label is edited correctly propagate list of instances to be redrawn if show net names on components is enabled (ie: propagate thru bus taps)
|
2023-05-22 07:28:12 +02:00 |
stefan schippers
|
5bd2c624a8
|
fixed regression: editing global attributes did not trigger modified status
|
2023-05-22 00:20:55 +02:00 |
stefan schippers
|
140aba3449
|
added handling of bus_tap.sym (wip)
|
2023-05-21 23:58:17 +02:00 |
stefan schippers
|
313f5898eb
|
add guards against freee of null pointers in name_nodes_of_pins_labels_and_propagate()
|
2023-05-21 13:47:05 +02:00 |
stefan schippers
|
5c22d26072
|
update copyright info to 2023
|
2023-05-21 12:52:19 +02:00 |
stefan schippers
|
893389b01d
|
hier_psprint_mtime(): fix wrong mtime calculation for (non existent file) generators
|
2023-05-21 09:25:19 +02:00 |
stefan schippers
|
7b12159e0c
|
do not add hidden texts in symbol bboxes (symbol_bbox())
|
2023-05-21 00:07:08 +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
|
616364106f
|
replace @symname in instance "schematic" attribute with basename of symbol (without extension)
|
2023-05-19 13:15:59 +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
|
80acbfb107
|
set content-disposition flags in wget (--content-disposition) and curl (-J) helper downloaders to save downloaded files with correct names (no http queries)
|
2023-05-19 01:15:09 +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
|
e0bde2cb1c
|
better handling of web_urls: if already cached do not download again
|
2023-05-18 11:03:32 +02:00 |
stefan schippers
|
eef043ef2f
|
sym_vs_sch_pins() do not try to get the "type" attribute of symbols references containing "@" characters (unresolved @parameters) by loading the symbol and checking the xctx->sym[symbol].type attribute, this usually happens in parametrized symbol generators
|
2023-05-16 14:45:52 +02:00 |
stefan schippers
|
71c04ad071
|
fix unneeded there_are_floaters() call in callback.c
|
2023-05-16 09:52:23 +02:00 |
stefan schippers
|
ce8adbb60e
|
if multiple objects are selected (instances, texts, wires, ...) and there is an instance in the set edit instance attributes
|
2023-05-15 09:02:14 +02:00 |
stefan schippers
|
70ea2bb7f1
|
for better consistency floater=... attribute for text floaters changed to name=... so token name matches instance refdes (name=...). Documentation added for netlist_dir (netlisting.html) and local_netlist_dir
|
2023-05-14 23:43:16 +02:00 |
Stefan Schippers
|
d577bdde7a
|
resolved a memory leak (inst[..].instname)
|
2023-05-14 17:10:48 +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
|
9d58f8cbbc
|
clear text member `floater_ptr` when text is changed to force cache update
|
2023-05-14 02:45:56 +02:00 |
stefan schippers
|
1ea0516b55
|
if floaters are used to display simulation data (@spice_get_voltage) force update on floater text caches on `b` cursor move
|
2023-05-14 02:22:18 +02:00 |
stefan schippers
|
9fcde30a52
|
do not perform tcl substitution before displaying netlist_commands text into an editor. Correctly restore xctx->current_dirname after netlisting. get_generator_command(): quote command name (just in case its pathname contains spaces). floater example labels in solar_panel.sch. Various corrections and optimizations in new floater labels code.
|
2023-05-14 01:13:18 +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
|
4919d8734b
|
remove dbg message
|
2023-05-12 01:30:38 +02:00 |
stefan schippers
|
35354e8fe3
|
fix: check for NULL type attribute in get_sch_from_sym(). Fix web schematic navigation (descend and return) in load_schematic()
|
2023-05-12 01:29:38 +02:00 |
stefan schippers
|
f110e817ef
|
ammeter.sym type set to "ammeter" instead of "probe", so will be greyed out if *_ignore attr is set
|
2023-05-11 00:47:59 +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
|
339c523f0b
|
align symbol types, reducing number of different types (remove ngprobe, current_probe, differential_probe, raw_data_show --> probe
|
2023-05-10 17:46:16 +02:00 |
stefan schippers
|
4308b86744
|
add noconn symbol type to list of symbols NOT to grey out even if they have *_ignore=true attributes set
|
2023-05-10 14:53:49 +02:00 |
stefan schippers
|
626f2729ce
|
remove used_symbols feature (may fail in some hierarchical situations)
|
2023-05-10 10:13:38 +02:00 |
stefan schippers
|
d7557d7945
|
fix netlisting schematics with generator name containing extension ( like symgen.tcl(1,2,3) )
|
2023-05-10 04:40:22 +02:00 |
stefan schippers
|
1e74b21c49
|
get_trailing_path(): do not confuse generator extension with schematic/symbol extension
|
2023-05-10 04:08:47 +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
|
f2214150ae
|
tedax, verilog, spice netlists: do not expand unused subcircuits (due to *_ignore attrs on instances/symbols)
|
2023-05-10 01:02:28 +02:00 |
stefan schippers
|
0a4f942fb7
|
symbol_ignore=true attribute can be set on all symbol elements (text, lines, rectangles, arcs, polys, instances, nets) such that these marked elements are not displayed when symbol is instantiated.
|
2023-05-09 23:26:46 +02:00 |
stefan schippers
|
376e547c48
|
find_file and match_file utility functions: do not try to descend unreadable dirs
|
2023-05-08 12:29:44 +02:00 |
stefan schippers
|
b233963079
|
update xschem_library/Makefile to include generators in install
|
2023-05-06 09:04:06 +02:00 |
stefan schippers
|
4baf5f9803
|
add warnings in my_strdup() and my_strdup2() if src and *dest are the same address
|
2023-05-05 10:44:04 +02:00 |
stefan schippers
|
b4b2c91481
|
fix yet another error in "cmd" string handling in load_sym_def(). Added realloc of freed pointers detection in track_memory.awk
|
2023-05-05 09:29:30 +02:00 |
stefan schippers
|
d23388ff71
|
fix cmd memory leak in load_ym_def(), make copy of returned string in some routines to reduce dependencies
|
2023-05-04 23:23:54 +02:00 |
stefan schippers
|
35f4826198
|
Fix a corruption found by joanne in load_sym_def() where a static result returned from tcl_hook2() was accidentally freed.
|
2023-05-04 21:20:58 +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
|
2438d0fa95
|
translate2(): better handle %xxx tokens in LCC symbols (propagate %xxx to upper level if not assigned to anything in instance)
|
2023-05-02 23:21:20 +02:00 |
stefan schippers
|
7e1f591b18
|
align TOK_TOKEN state change of translate() and translate2() to all other parsers
|
2023-05-02 18:54:27 +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
|
eb50f9c26a
|
code formatting in update_symbol()
|
2023-05-02 14:12:37 +02:00 |
stefan schippers
|
e6224bfb09
|
when changing a symbol on an instance do not force change prefix (1st name char) if old and new symbol have same prefix
|
2023-05-02 13:00:14 +02:00 |
stefan schippers
|
9533b17a20
|
Allow to pass instance attributes (via translate() ) to symbol generators
|
2023-05-02 12:42:53 +02:00 |
stefan schippers
|
fd0e036492
|
remove dbg message
|
2023-05-01 23:20:11 +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
|
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
|
aeea23a84d
|
load_sym_def(): fix a debug message possibly printing garbage due to uninitialized variable
|
2023-04-29 11:02:23 +02:00 |
stefan schippers
|
3f2e4f2647
|
yet another small improvement in load_file_dialog to reduce redundant verbosity
|
2023-04-29 09:09:06 +02:00 |
stefan schippers
|
0703f90629
|
make persistent load_file_dialog work correctly for xschem files, non xschem files and generators
|
2023-04-29 03:48:20 +02:00 |
stefan schippers
|
c7c69cc5de
|
invoke myload_place_symbol when leaving .load (instead of leaving .load.buttons_bot.entry) if persistent load dialog is displayed
|
2023-04-29 02:20:36 +02:00 |
stefan schippers
|
67e9e305ec
|
fix persistent insert symbol dialog by not placing anything if selecting multiple times the same symbol. proc myload_place_symbol: add an update statement to resolve race conditions.
|
2023-04-29 01:59:35 +02:00 |
stefan schippers
|
a3347710db
|
improve persistent insert symbol dialog (Shift-Insert) by not asking multiple times what to do when selecting a non xschem file
|
2023-04-29 01:41:02 +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
|
ee7dc8982a
|
load_sym_def: if loading a symbol reading from a pipe (generator script) do not attempt to seek forward looking for embedded symbols. Assume no embedded symbols exist here
|
2023-04-28 20:33:57 +02:00 |
stefan schippers
|
e044ed4c54
|
proc load_file_dialog: do not clear search pattern (if any) when changing directory in left listbox
|
2023-04-28 18:19:46 +02:00 |
stefan schippers
|
b30eda3bb0
|
remove unused file
|
2023-04-28 17:58:35 +02:00 |
stefan schippers
|
710e694f40
|
merge_file(): handle generators so generated schematics (pcells) can be merged into an existing schematic
|
2023-04-28 17:34:04 +02:00 |
stefan schippers
|
26e088e729
|
add graph_linewidth_mult xschemrc variable to set default multiplier for graph line width w.r.t. xschem (current) line width. Add "Line width:" entry in graph_edit_properties dialog box
|
2023-04-28 10:45:56 +02:00 |
stefan schippers
|
410135cf44
|
align set_thick_waves() to comply with previous commit
|
2023-04-27 22:49:43 +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
|
0bb345f764
|
fix data corruption when netlisting hierarchical symbols with *_stop attribute set, thanks to Joanne Low regression tests, add option in pop_undo() to avoid saving state (push_undo()) for redo.
|
2023-04-27 11:52:51 +02:00 |
stefan schippers
|
52f35e30c2
|
avoid video updating when loading multiple files in hierarchical ps/pdf export
|
2023-04-27 08:49:52 +02:00 |
stefan schippers
|
2e7eb9e38b
|
instance based schematic selection: place get_additional_symbols(1) after every load_schematic() to consistently add new virtual symbols for every instance based "schematic" attribute across the whole hierarchy. This is done for all netlisting code and hier_psprint()
|
2023-04-27 01:14:10 +02:00 |
stefan schippers
|
2189aaa932
|
fix unbalanced gsave/grestore in psprint (setting colors of empty text strings)
|
2023-04-27 00:36:50 +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
|
3e320b56d2
|
fix wrong pdfmarks in hierarchical pdf export, after changes to handle generated sch/sym
|
2023-04-26 18:50:39 +02:00 |
stefan schippers
|
07fcdfbde4
|
fix hier_psprint() to handle all previous enhancements
|
2023-04-26 11:35:32 +02:00 |
stefan schippers
|
7a16859702
|
update tedax netlister with previous enhancements
|
2023-04-26 10:26:21 +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
|
3142279d02
|
Add inst_sch_select/ example directory (instance based implementation selection)
|
2023-04-25 09:15:17 +02:00 |
stefan schippers
|
a111c116d9
|
set netlisting type to symbol when descending into a generator-created symbol
|
2023-04-25 00:27:58 +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
|
7c04b009ec
|
do not ask to save parent schematic containing generator-created symbols even if user tries to modify them, is_xschem_file() now returns SYMBOL|SCHEMATIC|GENERATOR|0
|
2023-04-24 09:24:17 +02:00 |
stefan schippers
|
70ef115a13
|
do not try to preview generator scripts
|
2023-04-23 10:29:01 +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
|
bbb5363da9
|
removed debug msg
|
2023-04-22 11:54:16 +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
|
d5aca937ce
|
removed debug messages
|
2023-04-22 00:55:34 +02:00 |
stefan schippers
|
5daf41ca1b
|
removed unused variable
|
2023-04-22 00:23:11 +02:00 |
stefan schippers
|
a2de3cd787
|
unified copy_symbol() and copy_symbol1(), better new symbol allocation policy
|
2023-04-22 00:21:53 +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
|
eb6705d0f4
|
fixed regression introduced by get_additional_symbols() (memory leak)
|
2023-04-21 15:31:27 +02:00 |
stefan schippers
|
0102438751
|
fix some unfreed data in recent commits
|
2023-04-21 13:55:21 +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
|
6c364a74cc
|
revert str_replace @symname in print_spice_subckt_nodes()
|
2023-04-18 00:49:25 +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
|
88fdc83b34
|
get_sch_from_sym(): do not replace @symname if @ escaped
|
2023-04-17 17:44:51 +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
|
728cfb22fc
|
print_spice_subckt_nodes(): remove closing bracket in case of tcleval(...) failure
|
2023-04-17 10:33:45 +02:00 |
stefan schippers
|
ff9f92646c
|
draw_graph_points() split big XDrawLines requests into smaller chunks to handle raw files with > 4M points
|
2023-04-14 15:41:00 +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
|
fb2500c83f
|
enable spice_sym_def, verilog_sym_def, vhdl_sym_def on instances in addition as globally on symbols, for instance based specific implementations. These attributes must be paired with an instance "schematic=..." attribute that sets the subcircuit name of the alternate implementation. docs updated.
|
2023-04-13 02:12:02 +02:00 |
stefan schippers
|
c71c15e967
|
various enhancements around the new instance based schematic=... attribute, doc updates.
|
2023-04-13 00:49:38 +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
|
e6fc1d9fe4
|
Correct menu accelerator shown for "merge" function (b key)
|
2023-04-11 09:33:25 +02:00 |
Stefan Schippers
|
4482ac3705
|
do a "xschem redraw" instead of a "xschem save; xschem reload" when use spiceprefix is toggled in menu
|
2023-04-09 20:05:45 +02:00 |
Stefan Schippers
|
ebfcde42de
|
change preprocessor defined(HAS_CAIRO) to HAS_CAIRO==1
|
2023-04-09 15:36:06 +02:00 |
stefan schippers
|
f3196bbd10
|
-b option: redirect stdout/stderr to /dev/null, better explain -b in help, update manpage, and docs
|
2023-04-09 02:12:54 +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
|
c98f0afec5
|
avoid redundant newline trailer in tcp responses
|
2023-04-07 23:50:04 +02:00 |
stefan schippers
|
705f279a23
|
xschem tcp interface: accept whole multiline text input from clients, (no more limit to 1 line text input), hier_psprint(): do not descend to subcircuit schematic if file not existing
|
2023-04-07 23:38:33 +02:00 |
stefan schippers
|
34800870fe
|
xschem tcp server: drop connection at end of response to make client reads easier (eof detection)
|
2023-04-07 11:46:27 +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
|
7ac9443f4f
|
further improve execute_fileevent to handle subprocesses that close stdout
|
2023-03-31 18:08:03 +02:00 |
stefan schippers
|
e2490034ed
|
better execute_fileevent implementation
|
2023-03-31 14:28:59 +02:00 |
stefan schippers
|
e031780f14
|
fix regression in execute_fileevent (hadling subprocesses that close stdout/stderr, like rxvt)
|
2023-03-31 12:01:21 +02:00 |
stefan schippers
|
d0d31a87c8
|
update src/add_custom_button.tcl to match code refactoring done in r2264
|
2023-03-29 23:41:28 +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
|
69277c1066
|
add use_tclreadline variable that can be set to 0 in xschemrc to avoid using the tclreadline package
|
2023-03-27 18:25:12 +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
|
f5224ede00
|
better cleanup execute(callback,...) array members
|
2023-03-24 13:37:10 +01:00 |
stefan schippers
|
6bcb74bdb0
|
add tcl procedures documentation in developer_info.html
|
2023-03-24 13:14:27 +01:00 |
stefan schippers
|
e7b4dcfaae
|
better tilde substitution in some tcl procedures
|
2023-03-24 00:49:44 +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
|
2e61f26be8
|
fix issues when doing a compare schematics, local vs remote (http[s]) one
|
2023-03-17 10:03:20 +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
|
4569a0747a
|
fix executing xschem load_new_window from launcher (UI semaphore save/restore)
|
2023-03-13 12:37:30 +01:00 |
stefan schippers
|
c38779fb35
|
refactor descend_schematic()
|
2023-03-13 11:49:20 +01:00 |
stefan schippers
|
6d192023de
|
fix web hierarchy navigation error when returning to web schematic after descending into a local symbol
|
2023-03-13 11:11:43 +01:00 |
stefan schippers
|
6e13f3cd77
|
handle netlisting remote (http[s]) hierarchic objects
|
2023-03-12 11:11:11 +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
|
a8e95e220b
|
if a custom format netlist is given (for example lvs_netlist) and lvs_netlist attribute in instance or symbol is existing but empty device will not be netlisted
|
2023-03-10 18:36:55 +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
|
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
|
9de818c8e9
|
improve Simulation->Monitor current simulation to also display sim stdout after simulation is completed
|
2023-03-05 01:01:43 +01:00 |
stefan schippers
|
947406481a
|
add Simulation->Monitor current simulation to display stdout of running simulation (to get simulation status / ETA and the like... )
|
2023-03-05 00:44:56 +01:00 |
stefan schippers
|
e3d5dc9cd9
|
added execute(cmd,last), execute(data,last), execute(status,last) for post-mortem inspection of last simulation
|
2023-03-04 23:22:31 +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
|
dbc123e8cc
|
Make joanne fix for SPICE_DATA preprocessor macro comparison apply for unix as well
|
2023-02-27 22:32:28 +01:00 |
stefan schippers
|
c908c77351
|
remove dbg message
|
2023-02-26 23:46:54 +01:00 |
stefan schippers
|
32288e056e
|
fix xschem fullxzoom command (missing setup_graph command)
|
2023-02-26 23:33:07 +01:00 |
stefan schippers
|
3b41a486f6
|
avoid executing fullyzoom xschem command if no data loaded
|
2023-02-26 13:56:52 +01:00 |
stefan schippers
|
0a015f25db
|
add create_graph.tcl example procedure
|
2023-02-26 13:39:57 +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
|
a3263aca0b
|
refactor some variable names in waves_callback()
|
2023-02-21 16:47:40 +01:00 |
stefan schippers
|
a8aaf996e7
|
use pre-increment where expression is not used
|
2023-02-18 09:44:11 +01:00 |
stefan schippers
|
c5261a2ff6
|
formatting code
|
2023-02-13 12:18:47 +01:00 |
stefan schippers
|
9e7f67aca6
|
more robust my_atof and my_atod
|
2023-02-13 10:38:31 +01:00 |
stefan schippers
|
67c5cced1e
|
code formatting
|
2023-02-12 13:41:26 +01:00 |
stefan schippers
|
1aaa48a75b
|
3x faster table_read() on big data
|
2023-02-12 13:36:03 +01:00 |
stefan schippers
|
6c22c47975
|
added fast newline count routine count_lines_bytes()
|
2023-02-12 00:53:48 +01:00 |
stefan schippers
|
f5676f0d16
|
table_read() optimized for speed
|
2023-02-11 12:44:38 +01:00 |
stefan schippers
|
f0a359e65a
|
better xschem table_read command implementation
|
2023-02-10 18:08:45 +01:00 |
stefan schippers
|
c51f007da3
|
table_read(): skip initial empty lines, allow 2 or more blank lines for new dataset
|
2023-02-10 03:36:29 +01:00 |
stefan schippers
|
33c2c2d1b2
|
Some cleanups in raw_read() and table_read()
|
2023-02-09 21:17:31 +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
|
c882a34825
|
add table_read() function to read simulation data in ascii tabular form
|
2023-02-09 20:53:16 +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
|
44ee2b593f
|
added "s" bindkey in graphs to swap "a" and "b" cursors
|
2023-02-08 04:13:50 +01:00 |
stefan schippers
|
09868a0782
|
put a typedef in xschem.h to avoid duplicate declarations. add env tcl to global list in proc simulate
|
2023-02-06 14:36:24 +01:00 |
stefan schippers
|
6e524624e7
|
fix wrong closest wave finding ("t" keybind in graphs)
|
2023-02-03 03:35:55 +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
|
7ebb79c2ea
|
get rid of stdint.h in postscript jpeg export code
|
2023-01-25 02:25:24 +01:00 |
stefan schippers
|
23378b8708
|
replace u_int32_t with unsigned int in save.c
|
2023-01-24 01:46:26 +01:00 |
stefan schippers
|
48549f1212
|
update test schematics
|
2023-01-23 18:23:18 +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
|
5c59b69865
|
add _ALLOC_ID_ macro
|
2023-01-23 15:07:15 +01:00 |
stefan schippers
|
41b7bfb580
|
remove dbg messge in track_memory.awk
|
2023-01-23 13:27:10 +01:00 |
stefan schippers
|
3043989196
|
fix debug test
|
2023-01-23 12:17:47 +01:00 |
stefan schippers
|
fd8f1e6b97
|
fix a regression in track_memory.awk (did not show leaking source code line)
|
2023-01-23 12:16:29 +01:00 |
stefan schippers
|
cffe91146e
|
free paddedData pointer in ascii85_encode()
|
2023-01-23 11:55:52 +01:00 |
stefan schippers
|
9b6b7bc19a
|
Fix some compiler warnings and add a little optimization in ascii85 encoder
|
2023-01-23 11:49:08 +01:00 |
rafmag
|
9e027fc46c
|
Missing #endif after merge
|
2023-01-22 19:51:38 -07:00 |
rafmag
|
898f229c61
|
Merge branch 'master' of https://github.com/rafmag/xschem
|
2023-01-22 19:44:58 -07:00 |
rafmag
|
9c83801d8f
|
Added Ascii85Encoding for better formated & smaller PS files.
|
2023-01-22 19:35:10 -07:00 |
stefan schippers
|
d7ddb17a50
|
revert and fix regression (graphical artifacts due to wrong change_linewidth()
|
2023-01-22 00:21:46 +01:00 |
stefan schippers
|
d3c6bf3c6e
|
add postscript quality attrs to some example schematics
|
2023-01-21 23:47:43 +01:00 |
stefan schippers
|
6af6079084
|
set line buffering when stderr redirected to file
|
2023-01-20 18:25:43 +01:00 |
stefan schippers
|
c8a60b4ee4
|
better image bbox calculation for svg and ps
|
2023-01-20 13:25:23 +01:00 |
stefan schippers
|
90bc0fa572
|
"preserve unchanged props" will be automatically checked when editing attributes on multiple object selection and unchecked on single object selection as this is the 99.9% use case
|
2023-01-20 00:35:24 +01:00 |
stefan schippers
|
6f6bd65035
|
fflush() all stdio buffers before calling fork(). End child processes with _exit() instead of exit() to avoid double fflushing in parent i/o streams
|
2023-01-19 02:46:45 +01:00 |
stefan schippers
|
49135f3f2e
|
added jpeg_quality attribute that can be used in images / graphs to specify the quality factor of jpg embedded images in ps export. If unspecified quality=100 is used. A value of 25 results in 6x smaller files and acceptable results, so it is worth using a quality factor less than 100
|
2023-01-18 04:09:30 +01:00 |
stefan schippers
|
69aef1ffce
|
added libjpeg detection code, so postscript image embedding will be disabled if libjpeg not present
|
2023-01-18 03:33:28 +01:00 |
stefan schippers
|
e06bfe5191
|
remove some debug changes
|
2023-01-18 01:17:46 +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
|
af0ddb76f0
|
cleanups, remove redundant png_reader() definition
|
2023-01-17 01:23:34 +01:00 |
stefan schippers
|
b6200abb5a
|
removed untracked files
|
2023-01-16 21:12:46 +01:00 |
rafmag
|
023089c0e4
|
Fixes after merge
|
2023-01-16 11:54:39 -07:00 |
rafmag
|
9194440e3b
|
Merge branch 'master' of https://github.com/rafmag/xschem
|
2023-01-16 11:54:12 -07:00 |
rafmag
|
9105bef5f5
|
Fixed issues with rotating and fliping images + other bugs
|
2023-01-16 11:33:59 -07:00 |
stefan schippers
|
fba0db0c2d
|
fix corrupted postscript generation on test_images3.sch. Need to investigate why fflush()es are needed. in psprint.c
|
2023-01-16 18:06:50 +01:00 |
stefan schippers
|
4c59008bc5
|
ps/pdf ecxport: dont print rectangle frames around images
|
2023-01-16 16:46:57 +01:00 |
stefan schippers
|
9a59679dcf
|
use cairo_image_surface_write_to_jpeg_mem() instead of cairo_image_surface_write_to_jpeg(), avoid temp files
|
2023-01-16 16:31:18 +01:00 |
stefan schippers
|
2ea5c7af04
|
use my_free/my_malloc for memory leak checks
|
2023-01-16 15:26:07 +01:00 |
stefan schippers
|
5cae589e33
|
psprint.c: fix some compiler warnings
|
2023-01-16 13:51:35 +01:00 |
rafmag
|
5faefbdf8d
|
sync changes
|
2023-01-16 05:47:18 -07:00 |
Rafmag Cabrera
|
588fcb22ad
|
Merge branch 'StefanSchippers:master' into master
|
2023-01-16 12:37:35 +00:00 |
stefan schippers
|
249fdd69a2
|
temporary fix for building xschem. Some warnings due to rev >c89 to be fixed, and proper detection of libjpeg must be added
|
2023-01-16 12:21:35 +01:00 |
stefan schippers
|
0627791cc1
|
removed unecessary files
|
2023-01-16 10:40:12 +01:00 |
Rafmag Cabrera
|
0570c5d21b
|
Delete Makefile
|
2023-01-16 10:35:29 +01:00 |
rafmag
|
7aa2379a4a
|
Moved temp.jpg to tmp folder
|
2023-01-16 10:35:29 +01:00 |
rafmag
|
06840efac0
|
Added png and embedded graphs to ps and pdf export
|
2023-01-16 10:35:29 +01:00 |
Rafmag Cabrera
|
7e3133804b
|
Delete Makefile
|
2023-01-15 22:28:34 -07:00 |
rafmag
|
7b80287b75
|
Moved temp.jpg to tmp folder
|
2023-01-15 22:00:45 -07:00 |
rafmag
|
e29bfe2c98
|
Added png and embedded graphs to ps and pdf export
|
2023-01-15 21:34:43 -07:00 |
stefan schippers
|
2fa0155ca6
|
fix inutile template procedure call
|
2023-01-12 16:33:59 +01:00 |
stefan schippers
|
115f0fdf0c
|
improve cairo draw options
|
2023-01-11 12:02:21 +01:00 |
stefan schippers
|
4c0d5023f5
|
allow 0 width lines (faster device dependent implementation) if user defined line width is set (to 0), add devices/title-3.sym
|
2023-01-07 11:28:28 +01:00 |
stefan schippers
|
709c37429d
|
Add description for keybinding (Shift-B) of "Properties->Edit header/license text"
|
2023-01-03 18:27:11 +01:00 |
Stefan Schippers
|
479b8ef6e9
|
add accelerator Shift-B for edit schematic header/license
|
2023-01-02 19:34:27 +01:00 |
stefan schippers
|
329d472d56
|
add installation of icon.xpm into .../share/xschem installation directory
|
2023-01-02 12:43:23 +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
|
cee4d218e2
|
use "configure -cursor {}" instead of "configure -cursor arrow" to switch back mouse cursor to default when exiting graph
|
2022-12-31 10:22:41 +01:00 |
stefan schippers
|
aa70d90c46
|
fix cairo font reference counting
|
2022-12-25 23:13:59 +01:00 |
stefan schippers
|
75fbb76543
|
optimization: split cairo font creation into create + set
|
2022-12-25 10:42:07 +01:00 |
stefan schippers
|
1f76b297db
|
allow schematic="tcleval([tcl_proc @symname])" for runtime schematic selection when descending into a symbol. tcl_proc might return a schematic candidate associated to @symname depending on some user setting
|
2022-12-20 02:21:48 +01:00 |
stefan schippers
|
9fa05afad9
|
fix a bug when loading multiple AC sim datasets (wrong nvars calculation, has to be doubled due to Im/Re complex components)
|
2022-12-20 01:01:58 +01:00 |
stefan schippers
|
2cb58c5c5c
|
added generators/ dir, removed redundant variable in load_schematic()
|
2022-12-19 23:05:09 +01:00 |
stefan schippers
|
1a76f89464
|
added xschem_library/generators directory for future schematic/symbol generator scripts. Handle empty XSCHEM_LIBRARY_PATH (use [pwd]).
|
2022-12-18 13:03:38 +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
|
5a8e0c9ba2
|
for hierarchy cellname listing use nolist_libs for exclucing patterns, instead of xschem_libs, which is used for netlisting
|
2022-12-10 01:15:18 +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
|
919cf3b870
|
more flexible "execute" procedure to handle bidirectional communication with subprocesses
|
2022-12-09 00:02:34 +01:00 |
stefan schippers
|
7629e8e406
|
fixed xcb detection (but disabled for now)
|
2022-12-08 14:19:02 +01:00 |
stefan schippers
|
888ff17305
|
for now #undef HAS_XCB until I figure out to make configure detect and work
|
2022-12-08 13:46:45 +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 schippers
|
b23988ccdf
|
added commented lines for antialiasing; JL:cairo_set_line_width should only be called with has_x as xctx->cairo_ctx and xctx->cairo_save_ctx is NULL when run with -x; JL:XCopyArea must be called to draw correctly with Cairo on Windows
|
2022-12-02 16:43:01 +01:00 |
stefan schippers
|
f18ed49f6f
|
adjust dash line threshold for graphs
|
2022-12-02 00:13:54 +01:00 |
stefan schippers
|
babc6d7e82
|
huge graphic speed improvement for dashed lines (graph grid) on some GPUs
|
2022-12-01 16:30:02 +01:00 |
stefan schippers
|
fabace7505
|
cosmetic code formatting
|
2022-12-01 14:57:48 +01:00 |
stefan schippers
|
7ae10bd7da
|
add macro DRAW_ALL_CAIRO: if set to 1 graphics primitives will use cairo instead of Xlib. Currently work in progress, as of now only the grid and the final XCopyArea done in draw() will use Cairo if macro is set
|
2022-11-30 00:59:45 +01:00 |
schippes
|
9244b33495
|
When setting Simulation->LVS netlist, use "lvs_format" attribute for netlisting if this attribute is existing, otherwise keep using "format"
|
2022-11-24 19:32:16 +01:00 |
stefan schippers
|
609033e7ca
|
fix regression (not allowing to change text size)
|
2022-11-23 16:57:21 +01:00 |
Stefan Schippers
|
e7851d01db
|
"xschem set format <fmt_attribute>" will change netlisting format attribute instead of default "format" (or verilog_format or vhdl_format), however fallback to default netlisting rule attribute if not defined in symbol. add tcl function "from_eng <n>" to convert spice formatted numbers to floating point
|
2022-11-23 16:16:38 +01:00 |
Stefan Schippers
|
1a01114af4
|
use verilogprefix also when expanding symbol schematics in verilog
|
2022-11-22 17:13:45 +01:00 |
schippes
|
0d2738254a
|
added verilogprefix symbol attribute: will be prefixed to symbol name references in verilog netlists
|
2022-11-22 16:30:59 +01:00 |
stefan schippers
|
9c31682517
|
test and get reading schematics from the web on Windows working
|
2022-11-18 16:06:06 +01:00 |
Stefan Frederik
|
4d3ede661a
|
cleanup $XSCHEM_TMP_DIR/xschem_web cache on startup
|
2022-11-15 17:56:56 +01:00 |
Stefan Frederik
|
e27eea8233
|
added comments and a fix in descend_symbol()
|
2022-11-15 15:08:11 +01:00 |
Stefan Frederik
|
a7066600b4
|
use tmp subdirectory: better string matching
|
2022-11-15 13:21:16 +01:00 |
Stefan Frederik
|
8f6aaa0ec2
|
use tmp subdirectory to group web schematics
|
2022-11-15 12:59:52 +01:00 |
Stefan Frederik
|
c9380bd8f0
|
use local name (/tmp/xxx.sch) when displaying schematic name in title, indtead of full url (too long)
|
2022-11-15 10:25:19 +01:00 |
Stefan Frederik
|
ea50037b10
|
update xschem comments (url download)
|
2022-11-15 02:35:25 +01:00 |
Stefan Frederik
|
b2f159706c
|
if loading a new schematic (currsch==0) reset current_dirname
|
2022-11-15 02:10:18 +01:00 |
Stefan Frederik
|
6cd9d76f90
|
initial implementation of fetch schematics from web
|
2022-11-15 01:17:33 +01:00 |
Stefan Frederik
|
349bebda20
|
more on recognizing web urls
|
2022-11-13 10:59:36 +01:00 |
Stefan Frederik
|
94247770ce
|
when placing symbols user can also type file name (with full path also) inside File/search box instead of clicking in the list box. web URLs will be returned as they are with no further interpretation
|
2022-11-12 12:16:21 +01:00 |
Stefan Frederik
|
ca8ffafe8a
|
code refactoring (update_conn_cues())
|
2022-11-07 14:23:57 +01:00 |
Stefan Frederik
|
8f055ebb5f
|
only_probes: dim toward light grey if light colorscheme is in use
|
2022-11-07 14:03:27 +01:00 |
Stefan Frederik
|
faaa79d35a
|
dim schematic to grey if showing only probes, instead of hiding it completely
|
2022-11-07 13:34:48 +01:00 |
Stefan Frederik
|
3d49ca63c9
|
avoid tcleval() of strings returned by translate2(), show currents of resistors and diodes when annotating.
|
2022-11-04 13:35:06 +01:00 |
Stefan Frederik
|
0b863993b1
|
correctly translate ngspice diode current ->xyce diode current in ngspice::get_current
|
2022-11-02 11:59:48 +01:00 |
Stefan Frederik
|
98d59cd8e9
|
better handle xyce nodes in ngspice:: functions
|
2022-11-02 11:17:22 +01:00 |
Stefan Frederik
|
4bb321af68
|
add @path attribute for spice/verilog/vhdl/tedax backends
|
2022-11-02 00:47:59 +01:00 |
Stefan Frederik
|
fe0dc46c81
|
remove debug msgs
|
2022-11-01 12:57:29 +01:00 |
Stefan Frederik
|
b0a88325e7
|
"@path" will be expanded in symbols with the hierarchy path, so a fully qualified instance name is obtained with @path@name
|
2022-11-01 12:54:43 +01:00 |
Stefan Frederik
|
dc6e9e2d9c
|
(JL) update abs_sym_path such that using network drive (ie. //192.168.1.102/test) will return as is, (JL) add example for network drive to add to XSCHEM_LIBRARY_PATH
|
2022-10-31 23:48:34 +01:00 |
Stefan Frederik
|
153929806b
|
fill attribute on rectangles to override layer fill style: fill=false will not fill
|
2022-10-29 23:49:00 +02:00 |
Stefan Frederik
|
04c05a5703
|
proc set_paths will set initial dirs (set_initial_dirs) so no need to press Home button after reconfiguring XSCHEM_LIBRARY_PATH and running set_paths
|
2022-10-29 21:17:13 +02:00 |
Stefan Frederik
|
ed0924e6ca
|
drill_hilight(): propagate only selected bits of bus nets
|
2022-10-29 11:06:46 +02:00 |
Stefan Frederik
|
9c5fc0b266
|
add option add_all_windows_drives
|
2022-10-28 08:54:52 +02:00 |
Stefan Frederik
|
5fb452f37f
|
Further hardening of source_user_tcl_files against files containing strange characters including ".
|
2022-10-27 19:32:46 +02:00 |
Stefan Frederik
|
6e43afaa46
|
drill_hilight() refactoring
|
2022-10-27 12:43:18 +02:00 |
Stefan Schippers
|
aa213cc103
|
formatting changes in drill_hilight()
|
2022-10-26 19:00:05 +02:00 |
Stefan Frederik
|
066a65bfef
|
removed some static hashtable declarations in netlisting code
|
2022-10-25 23:37:28 +02:00 |
Stefan Frederik
|
2c9151ea92
|
set up a tcl event handler if xschem is run without other event loops (no tk event loop, -x option, no tclreadline event loop, -r option) so xschem will respond to tcp connections
|
2022-10-25 01:00:51 +02:00 |
Stefan Frederik
|
a236918f5c
|
do not trigger modify status if enter_text dialog box closed with no changes
|
2022-10-24 16:07:13 +02:00 |
Stefan Frederik
|
d1aa8a9e42
|
global properties dialog box: close if clicking outside or pressing Shift-Return
|
2022-10-24 14:11:34 +02:00 |
Stefan Frederik
|
a8689becd6
|
shift-enter/clicking outside ends text insert widget. Entry widget for text properties string replaced with multiline text widget
|
2022-10-24 13:05:32 +02:00 |
Stefan Frederik
|
d20ef12b15
|
put cairo variable declaration inside #if HAS_CAIRO to avoid compiler warnings.
|
2022-10-23 00:26:43 +02:00 |
Stefan Frederik
|
cb652adb5f
|
skip NULL or empty texts in draw_symbol, translate2() skip @@... and @#... tokens (return empty)
|
2022-10-21 17:48:54 +02:00 |
Stefan Frederik
|
4e05fe1bab
|
comment some unneeded dbg messages, update install html page
|
2022-10-21 12:54:02 +02:00 |
Stefan Frederik
|
a6dc3d47c3
|
cache embed attribute of instances for faster lookup
|
2022-10-21 11:04:20 +02:00 |
Stefan Frederik
|
e34211368f
|
translate2() fix recursive param substitution
|
2022-10-20 23:31:02 +02:00 |
Stefan Frederik
|
bc33261f90
|
better parsing xxx='<expr>' or xxx={expr} patterns in flatten.awk. Doc upcates, test circuit updates.
|
2022-10-20 20:25:49 +02:00 |
Stefan Frederik
|
506cf627cd
|
use rel_sym_path + find_file to place components (pins, labels) in the schematic
|
2022-10-20 14:23:18 +02:00 |
Stefan Frederik
|
0f25befe31
|
recursive attribute substitution. use also template attribute of parents if not found in instance prop_ptr
|
2022-10-20 10:30:48 +02:00 |
Stefan Frederik
|
59fb225a36
|
fix potential string overflow. Thanks JL
|
2022-10-18 08:38:09 +02:00 |
Stefan Frederik
|
e8e9afb488
|
match_file. better file list concatenating
|
2022-10-18 00:48:29 +02:00 |