Commit Graph

2761 Commits

Author SHA1 Message Date
stefan schippers ebf85bf7c0 Merge branch 'master' into SuperChayan 2025-02-09 11:57:14 +01:00
stefan schippers b625a45dab place_symbol(): trim leading and trailing whitespace from symbol name given as input 2025-02-09 03:20:57 +01:00
stefan schippers 51140f5836 Merge branch 'master' into SuperChayan 2025-02-09 02:47:40 +01:00
stefan schippers 188e73cf8b place_symbol() and proc is_xschem_file: if /path/to/gen.tcl(arg1,arg2,arg3) is given remove (...) argument list before checking existence of generator file. Do not add () to generator filename if argument list already given. Do not include hidden texts in schematic boundbox for full zoom if show hidden_texts is not enabled. draw_graph(): do not wrap graphs using sweepvar_wrap if not dc (this includes: do not wrap multi-point OP sims). print_spice_element(): better @param lookup in instance prop_ptr, symbol template, parent instance prop_ptr (if instance based "additional" symbol) and parent instance symbol template string (use translate3()) 2025-02-09 02:46:45 +01:00
stefan schippers 41fff7fca0 Merge branch 'master' into SuperChayan 2025-02-07 14:39:57 +01:00
stefan schippers 0b3db90f19 one more argument to translate3() 2025-02-07 14:39:21 +01:00
stefan schippers ed76eff02f Merge branch 'master' into SuperChayan 2025-02-07 14:24:20 +01:00
stefan schippers 0024dc2759 more comments and refactoring in token.c 2025-02-07 14:23:58 +01:00
stefan schippers 541da37d92 Merge branch 'master' into SuperChayan 2025-02-07 13:23:05 +01:00
stefan schippers 51ff56357d some simplification and refactoring of print_spice_element() and translate() 2025-02-07 13:22:08 +01:00
stefan schippers aef102cf8e Merge branch 'master' into SuperChayan 2025-02-06 23:59:47 +01:00
stefan schippers 1573ea3cad improvements in eval_expr.y, print_spice_element(), translate() to allow multiple expr(...) patterns in strings, they all will be evaluated if possible or returned unevaluated (without `expr(` and `)` ) 2025-02-06 23:57:01 +01:00
stefan schippers a1d51f6516 Merge branch 'master' into SuperChayan 2025-02-06 13:28:30 +01:00
stefan schippers a4ce2d1b64 subst_token(): better token removal (remove space or newline to avoid having many remaining blanks); `netlist_postprocess` xschemrc tcl variable to insert commands after netlist is created 2025-02-06 12:45:21 +01:00
stefan schippers 53fda635c9 remove dbg msg, reduce precision in eval_expr(), add expr() resolution at end of translate() 2025-02-06 10:39:50 +01:00
stefan schippers a9054e3457 Merge branch 'master' into SuperChayan 2025-02-06 04:23:12 +01:00
stefan schippers 7926a833be added `d` to unselect object under the mouse, `Shift-D` to unselect by area, both work with or without infix_interface, moved delete files to `Ctrl-d`, update keybinding docs 2025-02-06 04:20:57 +01:00
stefan schippers 0c4cdb3ea1 propagate changed key bindings to new opened windows (in no-tabs mode) 2025-02-06 01:11:11 +01:00
stefan schippers 70c1e542b2 attributes within expr(...) where expr() contains an infix arith expression will evaluate if possible. Otherwise the string within expr(...) will be returned unchanged. Changes done in translate() and print_spice_element() 2025-02-05 18:20:36 +01:00
stefan schippers 6bf4e3146d Merge branch 'master' into SuperChayan 2025-02-05 16:34:38 +01:00
stefan schippers 4db384a671 add eval_expr.y for evaluation of generic math expressions in infix notation 2025-02-05 16:33:23 +01:00
Chayan Deb 2349134a86 Lock old behavior of 'Esc'-keypress during persistent_command is active, behind the newly added TCL-option 'cadence_compat'. Wire drawing mode will now take two 'Esc' keypresses to clear, but if 'cadence_compat' is enabled, it will only take one. 2025-02-03 13:01:11 +05:30
Chayan Deb 01e0744244 Fixed and re-enabled 'end-wire when user drags mouse cursor from an instance pin'. This feature was introduced from upstream repo and was previously disabled to prevent a bug that occurred in 'orthogonal_wiring' mode. 2025-02-03 12:32:09 +05:30
Chayan Deb 0eeef833fc
Merge branch 'StefanSchippers:master' into master 2025-02-03 11:38:11 +05:30
stefan schippers 795b5557a5 print_spice_element(), primnt_verilog_primitive(), print_vhdl_primitive(): format string is passed to translate() to do a round of @xxx param substitutions looking up xxx=... in instance attributes. 2025-02-03 02:15:41 +01:00
stefan schippers 05d61b3987 optimization: replace some sumbol "template" token lookups with existing cached sym[].templ field 2025-02-02 23:59:41 +01:00
Chayan Deb 1d79a85ac6
Merge branch 'StefanSchippers:master' into master 2025-02-02 11:30:05 +05:30
stefan schippers 5517c8b3f0 has_included_subcircuit(): fix spice netlisting error when using a symbol with bussed ports and implementation specified via a spice_sym_def attribute. bussed ports must be expanded and resulting total number of bits of symbol (grater than number of I/O pins!!) must be calculated and sent to the tcl has_included_subcircuit proc. 2025-02-02 00:33:55 +01:00
Chayan Deb aa1c038f5c Small correction 2025-02-01 16:23:56 +05:30
Chayan Deb d4b388186d [Upstream Compatibily Fixes]: Added a new TCL-variable 'cadence_compat', which can be enabled from either the TCL-command execution prompt inside xschem, or by uncommenting the corresponding option in 'src/xschemrc' - used for enabling Cadence-friendly keybinds (simulate and snap-wire). Additionally, reset the default behavior of xschem to the upstream-version's behavior. All the disabled options can be re-enabled by uncommenting the correct options in 'src/xschemrc'. Added ANSI-C compatibility fixes suggested by @StefanSchippers in issue #292 in upstream repo. 2025-02-01 16:22:03 +05:30
Chayan Deb 275dd580a1
Merge branch 'master' into upstream-clone 2025-02-01 15:12:49 +05:30
stefan schippers e471f577fa integrated create_symbol.tcl in xschem.tcl, some old version strings updated in scripts, some code indenting fixes 2025-02-01 00:03:12 +01:00
stefan schippers 752f794c96 remove dbg message 2025-01-31 15:59:23 +01:00
stefan schippers 31a3a00c46 clean up translate() deallocation 2025-01-30 23:33:51 +01:00
stefan schippers 60d180de33 translate(): fix `regfree(get_sp_cur);` not followed by `get_sp_cur = NULL;`, leading to a random pointer to nowhere 2025-01-30 22:43:35 +01:00
stefan schippers 42a0ceb51f findnet.c: fix some errors in distance calculation leading to "holes" in the selection of instances. 2025-01-30 21:00:46 +01:00
stefan schippers eadd991651 reduce calls to find_closest_net_or_symbol_pin() in draw_crosshair() 2025-01-30 03:47:13 +01:00
stefan schippers ee750099e3 svgdraw(): draw in grey or red ignored or shorted devices, some fixes in ps_print() 2025-01-29 18:52:38 +01:00
stefan schippers 40fd937d51 shorted_instance(): fixed a bug: lvs_ignore active disallows evaluation of spice_ignore flags; ps_draw_symbol(): draw in grey or red ignored or shorted devices 2025-01-29 16:22:44 +01:00
Chayan Deb 808f89c4c6 Fix typo 2025-01-29 13:44:24 +05:30
Chayan Deb 753f5d24bc Changes made to reduce git diff with upstream repo 2025-01-29 11:54:25 +05:30
Chayan Deb bf53f99d28
Merge branch 'StefanSchippers:master' into master 2025-01-29 11:46:39 +05:30
stefan schippers 92bb16773c guard against trepassing max hierarchy level when descending, updates to cellview and traversal procs 2025-01-28 11:24:51 +01:00
stefan schippers 44cc37f013 optimization: comment out a call do dbg() in a deep, deep nested loop in draw_graph(), enable if needed 2025-01-27 15:33:46 +01:00
Stefan Schippers 56777a2944 fix mouse cursor restore when exiting graph and crosshair (not full-size) enabled 2025-01-27 13:10:53 +01:00
stefan schippers 8df1aa9996 some comments, removed redundant modifier key checks in callback() 2025-01-27 12:51:32 +01:00
Chayan Deb 6f20174c42 [Compatibility + Graphical Bugfix]: Fixed compatibility issue resulting from a breaking change in the function 'redraw_w_a_l_p_z_rubber(int force)', and also fixed (partially) a graphical bug resulting from this change. The bug shouldn't affect user workflow at the current version. 2025-01-27 12:52:20 +05:30
Chayan Deb 9fc955aa1f
Merge branch 'master' into upstream-clone 2025-01-27 12:11:25 +05:30
stefan schippers 500d2e2bed some commentd added 2025-01-27 02:07:38 +01:00
stefan schippers 0d325f6957 force a crosshair draw at end of draw() (draw_crosshair(7,...)), intuitive interface direct drag of instances: fix some non-working combinations when stretch mode (y) is enabled. 2025-01-27 01:49:06 +01:00