copilot-swe-agent[bot]
5e5ad7f50c
Add Tcl linting and formatting with tclint/tclfmt
...
- Added .tclint.toml configuration file
- Formatted all Tcl files with tclfmt (except src/xschem.tcl which has parsing issues)
- Fixed all trailing whitespace and formatting issues
- Created GitHub workflow to run tclint and tclfmt on CI
- Excluded src/xschem.tcl from linting due to parser limitations
- Configured line-length to 180 characters to accommodate long Tcl command chains
- Disabled command-args and unbraced-expr rules (legacy code style)
Co-authored-by: nikosavola <7860886+nikosavola@users.noreply.github.com>
2025-12-08 13:21:25 +00:00
stefan schippers
6bf4fd4da6
vector unnamed nets are set as net%d_[%d..0] instead of net%d[%d:0] so they are compatible with spice and Vacask
2025-08-03 00:15:57 +02:00
stefan schippers
48264c0399
allow `xschem translate -1 string` to translate tokens that do not depend on specific instances; yet another change in wrap detection in graphs, always use simulator sweep-var instead of user specified sweep variable; simulated data will never wrap exactly to first value due to roundoff errors; -fast optionto `xschem hilight_netname` command
2025-01-24 03:52:20 +01:00
stefan schippers
e17932d1e8
update hash for test_doublepin.sch netlist in xschemtest (bsource m param in netlist)
2025-01-20 03:27:39 +01:00
stefan schippers
b1c681b785
update xschemtest expected netlist hashes
2024-12-23 11:15:36 +01:00
stefan schippers
92c99c10f9
get_additional_symbols(): some sanity checks, descend_schematic() more options in set_title argument (avoid set title, avoid processing pins/nets, avoid descending into i-th xdec[3] instance, descend as a whole xdec[3:0], add `xschem get_additional_symbols what` command, allow `xschem get_sch_from_sym -1 inv.sym` to get schematic associated with symbol. hier_psprint(): avoid printing / listing duplicate schematics, improved traversal.tcl
2024-11-05 13:59:37 +01:00
stefan schippers
ba7e50ccc1
update hash calculation in xschemtest.tcl for LCC_instances netlist (due to changes in schematic)
2024-09-10 22:38:44 +02:00
stefan schippers
d656d4198a
update hash netlist value in xschemtest.tcl for rom8k.sch
2024-07-18 22:09:25 +02:00
stefan schippers
28bef9b06e
fix_symbols: add optional pattern parameter: `fix_symbols 0 devices`
2024-07-09 08:53:24 +02:00
stefan schippers
76fe0d3ef3
tests/netlisting.tcl: better error checking. Distinguish a general failure from an ERC netlist error (xschem return code 10)
2024-05-17 00:48:47 +02:00
stefan schippers
be06ed50cb
if top level schematic has an associated symbol (.sym) file ensure their ports match, otherwise issue an error. if netlisting fails return non zero exit code if netlisting from command line
2024-05-09 02:10:45 +02:00
stefan schippers
48b1f8eb31
update LCC_instances.sch (3)
2024-04-01 04:06:11 +02:00
stefan schippers
8329720848
hash_file(): skip also .include lines if skip_path_lines parameter is set
2024-03-20 10:45:28 +01:00
stefan schippers
218d4ad3f2
fill=solid in addition to fill=1 (stippled fill) or fill=0 (no fill) for rectangles, polygon/beziers and circles
2024-03-09 03:12:25 +01:00
stefan schippers
148a42538c
update hash for greycnt.sch in xschemtest.tcl
2024-01-04 00:09:28 +01:00
stefan schippers
28ed1351f1
spice.awk: do not join user code lines
2023-12-03 21:33:03 +01:00
stefan schippers
8305024cd6
break.awk: do not break user code lines in spice netlists
2023-12-02 23:00:44 +01:00
stefan schippers
b2965f4c3d
attribute default_schematic=ignore: if set in a symbol xschem will not descend into the default schematic associated to symbol. Instances MUST specify a schematic attribute
2023-12-02 13:17:32 +01:00
stefan schippers
fb102fb359
update xschemtest for verilog netlist checksums
2023-11-29 12:50:37 +01:00
stefan schippers
2c773c4a25
poweramp.sch and mos_power_ampli.sch updates
2023-11-19 12:52:57 +01:00
stefan schippers
397293f227
spice netlist: use symbol for port list of top level schematic only if it is of type subcircuit
2023-11-16 23:37:16 +01:00
stefan schippers
a50bfb3622
when doing spice netlisting if top level has a symbol (and the symbol has i/o ports) use the symbol for printing the top level subckt port list. This ensures same port ordering when netlisting a testbench containing a component and netlisting the component itself. Tab context menu: open Symbol / open Schematic will use the search_schematic setting and search counterpart accordingly.
2023-11-16 01:26:55 +01:00
stefan schippers
be914f4ee4
raw_read(): clear text floater caches if a rawfile is successfully read
2023-11-15 21:04:10 +01:00
stefan schippers
5d3b7bd7d0
report error if trying to do a netlist and the file can not be written (example: broken simulation symlink)
2023-11-14 23:40:41 +01:00
stefan schippers
e2dc93c8b0
more schematic netlist tests in xschemtest.tcl
2023-11-13 23:46:13 +01:00
stefan schippers
e7d362a7b4
update netlist hash in xschemtest
2023-11-12 20:33:23 +01:00
stefan schippers
2c26bfbaa9
fix some garbage while moving / copying and zooming. faster draw_selection(gctiled) if big selection (use a single XCopyArea), do not allow to descend/go_back if other UI action is pending, initial implementation of `xschem floaters_from_selected_inst` command, get_tok_val() allow quotes in tokens, like a"22"33=123 even if with_quotes unset (it is intended for token values not for tokens themselves)
2023-11-03 14:36:35 +01:00
stefan schippers
722b1f4575
small improvements in edit_text_property() and get_instance()
2023-11-02 13:24:15 +01:00
stefan schippers
79a4771a71
update man page (xschem-sky130 integration)
2023-10-30 23:55:23 +01:00
stefan schippers
f71ed003a3
update xschemtest.tcl
2023-10-25 11:56:56 +02:00
stefan schippers
4beb2d08a6
update example schematics
2023-10-24 00:07:36 +02:00
stefan schippers
a65cd534b7
update circuit examples
2023-10-23 18:41:13 +02:00
stefan schippers
e35974bc74
Update netlist checksup for autozero_comp.sch in xschemtest
2023-10-14 23:29:12 +02:00
stefan schippers
1a27c2ffc0
more robust netlist_test proc in xschemtest.tcl
2023-08-28 11:44:12 +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
b60cbf3086
fix hierarchical_tedax.sch netlist hash in xschemtest.tcl
2023-07-01 09:27:19 +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
330c447f86
update spice netlist hash for inst_sch_select.sch in xschemtest.tcl
2023-06-13 23:20:28 +02:00
stefan schippers
ecd380f5d3
update hash of greycnt.v in xschemtest.tcl due to comments lines added in netlist for bus taps
2023-06-08 11:01:34 +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
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
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 Frederik
aa6b8f0123
Doc updates (sim_pinnumber), example circuits update
2022-10-17 12:45:48 +02:00
Stefan Frederik
e8b2385f24
update xschemtest hashes, uniquify allocation IDs
2022-10-16 14:21:22 +02:00
Stefan Frederik
f7738329a5
my_fgets()
2022-10-13 13:43:01 +02:00
Stefan Frederik
7a1fbb4809
better check_unique_names() and hash_all_names() implementation (do not skip label instances or instances with no format attr). Button click focuses main drawing window even if autofocus_mainwindow is set to 0, to avoid losing keyboard focus forever if TAB is pressed.
2022-10-12 11:56:02 +02:00
Stefan Frederik
662c14143d
update xschemtest, more robust spice flatten.awk netlist flattener, specifically when translating expressions containing electrical nodes and parameters, all these need to be translated/substituted.
2022-10-12 01:16:23 +02:00
Stefan Frederik
3f627123b2
persists highlights on instances: remove highlighted instance from hash if user selects and presses ctrl-k as it is done for nets. Avoid instance highlight to also highlight net with identical name (example instance x1 and net x1). Verilog and Vhdl netlists handle duplicated (pass-through) pins
2022-10-11 13:12:17 +02:00
Stefan Frederik
9f3692a94a
align xschemtest netlist expected hashes
2022-10-10 16:23:20 +02:00
Stefan Frederik
68bf5e4640
netlister code rewrite to allow any combination of pass-through symbols
2022-10-10 14:54:32 +02:00