Stefan Frederik
|
d03147dce1
|
more consistent naming convention for hash table functions
|
2021-11-23 15:03:51 +01:00 |
Stefan Frederik
|
d6d3ab502c
|
some comments in the code, avoid potential memory leak in netlisting code
|
2021-11-23 01:14:49 +01:00 |
Stefan Frederik
|
9ceb25716e
|
auditing of static in-function variables, remove unnecessary, add notes for allowed ones
|
2021-11-20 02:37:56 +01:00 |
Stefan Frederik
|
bd626427fd
|
fix status bar info correctly swicthing when focusing multiple xschem child windows; multiple schematic window handling within one xschem instance is now working
|
2021-11-17 01:12:55 +01:00 |
Stefan Frederik
|
ad05513838
|
some parameter checks in xschem commands, global var removal in simulation help window - No use for production yet
|
2021-11-16 22:28:10 +01:00 |
Stefan Frederik
|
59198f2dda
|
removed a whole bunch of global UI-related variables and tcl/C redundancies
|
2021-11-10 13:43:08 +01:00 |
Stefan Frederik
|
8dbe8b7771
|
simplified simdata struct
|
2021-10-28 10:36:23 +02:00 |
Stefan Frederik
|
e7d28947c1
|
removed redundant "valid" member in simdata struct
|
2021-10-27 22:56:33 +02:00 |
Stefan Frederik
|
45a567a405
|
fix compiler warnings (unused return value check on some function calls, missing %s on non literal string printf args)
|
2021-10-27 10:12:16 +02:00 |
Stefan Frederik
|
04e670b3cf
|
fine tuning of previous commit
|
2021-10-26 00:04:13 +02:00 |
Stefan Frederik
|
b81325ea00
|
code cleanup, comments, more globals in Xctx context structure
|
2021-10-25 17:05:43 +02:00 |
Stefan Frederik
|
434e0f012b
|
Any attribute embedded in a tcleval(....) construct will be passed by get_tok_value() down to tcl for evaluation. This generalizes what was done for the "schematic" attribute in 20210617
|
2021-09-20 00:55:33 +02:00 |
Stefan Frederik
|
00311e7ff1
|
update license info
|
2021-07-27 16:42:54 +02:00 |
Stefan Frederik
|
25d7d323a4
|
force ERC info window showing in case of critical errors during netlist (unconnected nodes, shorted nodes, pin mismatch between sch and sym and similar)
|
2021-07-14 23:32:59 +02:00 |
Stefan Frederik
|
9cdfad3abb
|
do a tcl evaluation of the "schematic" attribute of a symbol if the attribute is within a tcleval(...) expression. This way tcl variables/expressions can be used to determine the schematic to descend into when traversing/netlisting. example: schematic=tcleval(poweramp_${::mode}.sch).
|
2021-06-17 00:25:39 +02:00 |
Stefan Frederik
|
b9f4c7aed8
|
remove debug message
|
2021-06-15 01:23:17 +02:00 |
Stefan Frederik
|
e16e54d851
|
new list variable "noprint_libs" to specify patterns of cells NOT to print in hierarchical export. "xschem_libs" does the same thing for netlisting.
|
2021-06-15 01:15:32 +02:00 |
Stefan Frederik
|
6bc66fe0e7
|
netlist/print export: items contained in xschem_libs are matched as regular expression patterns
|
2021-06-14 08:42:19 +02:00 |
Stefan Frederik
|
f251918a0e
|
fix usage of "xschem_libs", list of libraries/schematics NOT to netlist / export
|
2021-06-14 00:35:20 +02:00 |
Stefan Frederik
|
dfef332fb5
|
Replace *.ipin/*.opin/*.iopin info lines with *.PININFO.... if LVS netlist is selected. Use absolute path of symbols in check_lib function. Make PNG export work if destination path contains spaces.
|
2021-06-12 00:54:09 +02:00 |
Stefan Frederik
|
c1909334cb
|
fix typos in debug messages
|
2021-05-31 07:39:23 +02:00 |
Stefan Frederik
|
990647f4fa
|
check all fscanf return codes, for better broken file handling and to eliminate utterly-smart-compiler warnings ons some platforms
|
2021-01-10 16:11:34 +01:00 |
Stefan Frederik
|
2063b42613
|
fixed a hypotetical integer overflow issue, do increment and modulo of hilight_color , remove some spaghetti code (use propagate_hilights() )
|
2021-01-08 21:25:11 +01:00 |
Stefan Frederik
|
a7831ce972
|
some fixes regarding restore of areas when hilights are present, move_objects and copy_objects(): ELEMENT move/copy out of cadlayer loop.
|
2021-01-08 03:09:29 +01:00 |
Stefan Frederik
|
acb1c28921
|
find_inst_to_be_redrawn() fix speed issue when auto-net name showing is enabled: evaluate out of any operation loop, using hash table of changed nodes
|
2021-01-07 16:35:57 +01:00 |
Stefan Frederik
|
65fc659129
|
prepare(3) for delete connection implementation
|
2021-01-03 00:08:43 +01:00 |
Stefan Frederik
|
cf5813970c
|
prepare for delete connection implementation
|
2021-01-02 23:42:22 +01:00 |
Stefan Frederik
|
a9d7d93e40
|
caching simulation data into "simdata" struct for performance
|
2020-12-31 03:08:24 +01:00 |
Stefan Frederik
|
4687133b5f
|
fix unfreed pointer in get_logic_value()
|
2020-12-28 12:29:57 +01:00 |
Stefan Frederik
|
9604b8cc82
|
removed redundant code in calc_drawing_bbox(),removed trim_wires, push & pop undo in print export routines, exported images should be wysiwyg
|
2020-12-25 21:31:15 +01:00 |
Stefan Frederik
|
582863f825
|
added menu option to load most recent file: ctrl-shift-o, fix menu entry "unhilight selected nets" (did unhilight all); removed a wire[].node clear in hash_wire() that caused broken connectivity. this data is cleared in delete_netlist_structs when needed.
|
2020-12-25 04:37:53 +01:00 |
Stefan Frederik
|
0783ff7002
|
fix error in link_symbols_to_instances(): potential call of symbol_bbox() -> translate() -> prepare_netlist_structs() before completing xctx->inst[i].lab assignments
|
2020-12-22 16:10:27 +01:00 |
Stefan Frederik
|
dfa58a0a08
|
spaghetti code removal, more reused code
|
2020-12-20 15:56:29 +01:00 |
Stefan Frederik
|
63a6a8767e
|
resolved a slow path introduced in commit db6bee26 / r1406 ( rebuild xctx-<inst[].color after undo/load )
|
2020-12-20 02:09:38 +01:00 |
Stefan Frederik
|
a837682731
|
caching "lab" and "highlight" attributes for speed
|
2020-12-19 03:22:38 +01:00 |
Stefan Frederik
|
821ebf06f2
|
optimizations in instance (connected to wires/net labels) highlights
|
2020-12-18 19:22:08 +01:00 |
Stefan Frederik
|
e7e5ad190b
|
more schematic context in xctx: cairo surfaces and context, save buffer graphic context (GC), hilight hash tables and data, node name hash tables. Refactoring of resetwin , resetcairo routines (also used in xinit to avoid code duplication), switching schematics seems almost complete now
|
2020-12-06 02:10:53 +01:00 |
Stefan Frederik
|
780b994aeb
|
use short data type for small integer data: rot, flip, dash, bus etc...
|
2020-12-05 03:16:01 +01:00 |
Stefan Frederik
|
e5205cfd1e
|
Split mode netlisting in different formats got bitrotten due to a regression. Fixed.
|
2020-12-04 12:45:50 +01:00 |
Stefan Frederik
|
2f3025cf3f
|
rm debug msgs
|
2020-12-03 19:48:15 +01:00 |
Stefan Frederik
|
70cf1e8dfb
|
fixed big performance issue when bulk-changing attributes on a big schematic and show_pin_net_names is enabled
|
2020-12-03 19:47:25 +01:00 |
Stefan Frederik
|
3732bd8d01
|
put cairo save surface and context into xctx, faster and smoother preview (avoid unload/load if no filename change)
|
2020-12-03 18:21:23 +01:00 |
Stefan Frederik
|
8902f3b56b
|
more state in xctx context
|
2020-12-02 19:35:42 +01:00 |
Stefan Frederik
|
e279262f00
|
more globals into xctx context struct
|
2020-12-02 15:10:47 +01:00 |
Stefan Frederik
|
83ae1c01b6
|
ERC checks: do sch/sym node equivalence check on expandlabel()'ed nodes, avoid flagging DATA[5,3,1] != DATA[5:1:2] != DATA[5],DATA[3],DATA[1]
|
2020-12-01 13:43:15 +01:00 |
Stefan Frederik
|
b726eb27a6
|
more verbose ERC message about missing attrs on pins while netlisting
|
2020-11-30 17:33:15 +01:00 |
Stefan Frederik
|
eb2d143e77
|
more consistent get_tok_value() regarding escaping
|
2020-11-29 01:59:17 +01:00 |
Stefan Frederik
|
b1a1442012
|
allow spaces in bussed nodes (A B,CC,D\ C, A B[3:0]), dont dump double quoted net names in netlists
|
2020-11-29 00:00:55 +01:00 |
Stefan Frederik
|
9c5739b0f2
|
allow tEDAx (flattened) netlisting of hierarchical schematics; added pcb/hierarchical_tedax example
|
2020-11-24 02:54:45 +01:00 |
Stefan Schippers
|
7a67663330
|
fold long lines
|
2020-11-17 01:29:47 +01:00 |
Stefan Schippers
|
90f6d7ee90
|
cleanup debug messages
|
2020-11-16 02:25:43 +01:00 |
Stefan Schippers
|
2d01eee04b
|
trim_wires() made 2 O.O.M. faster on big wire meshes; rects, lines, polys, arcs on hidden layers (View -> Visible Layers) not selectable by area or by mouse click
|
2020-11-16 01:28:19 +01:00 |
Stefan Schippers
|
957b9888d1
|
Removed all static/global name conflicts, avoided global conflicts with flex/bison generated code so xschem (as a test bench) can be compiled as a single big file that includes all other sources
|
2020-11-03 12:10:55 +01:00 |
Stefan Schippers
|
7360982d7c
|
removed some redundant calls in prepare_netlist_structs(), no full instance spatial rehash if adding a component, set template name initials for components in devices/ that do not map directly to spice elements to lowercase letters.
|
2020-10-18 23:58:40 +02:00 |
Stefan Schippers
|
f38a7d82ea
|
optimization in delete() if show_pin_net_names is true, recheck connected elements only if deleting a pin or label.
|
2020-10-17 12:01:05 +02:00 |
Stefan Schippers
|
b626dfb599
|
replaced frequent "xctx->something" accesses with "something" for code readability, optimizations in hash_wire() when incremental wires added, STR_ALLOC() macro (performance reasons)
|
2020-10-16 16:34:15 +02:00 |
Stefan Schippers
|
742f854964
|
check for NULL symbol "type" pointer
|
2020-10-15 19:20:55 +02:00 |
Stefan Schippers
|
e7928727d6
|
all xctx context is now a dynamically allocated structure; no observable performace impact
|
2020-10-15 17:39:21 +02:00 |
Stefan Schippers
|
acb5c45db1
|
avoid printing erc warnings about missing "name=" attribute in symbols if there is a definition in symbol template string
|
2020-10-15 01:43:53 +02:00 |
Stefan Schippers
|
e82f270f61
|
replaced @ character with ? for spice netlist node multiplicity tags, so translate() will not try to expand them, do not print erc warnings for "non electrical" symbols (architecture, package, port_attributes, use, etc), print_spice_element() result string will be forwarded to translate() if enclosed within tcleval(...), so all @vars will be expanded. translate() in turn will forward to tcl_hook() if necessary.
|
2020-10-14 23:15:05 +02:00 |
Stefan Schippers
|
64c0abc58e
|
code refactoring (global context in Xschem_ctx), "New Schematic" or "New Symbol" will set netlist_type to "spice" or "symbol" respectively
|
2020-10-12 13:13:31 +02:00 |
Stefan Schippers
|
32f85ac4f4
|
do not force a full hash_wires() on every net insertion; code formatting
|
2020-10-11 13:08:32 +02:00 |
Stefan Schippers
|
a10cb2c429
|
added warnings (Options -> Show info window) if components are missing a name=... attribute / if symbols are missing a type=... attribute; eliminated usage of tcl "file normalize..." statements to avoid symlink dereferencing (if using symlinked libraries), aligned version/file_version tags in support awk scripts
|
2020-10-06 16:19:52 +02:00 |
Stefan Schippers
|
3060217aec
|
simplified complex logical expressions on symbol type by using macros
|
2020-10-04 19:53:09 +02:00 |
Stefan Schippers
|
3cf9d53182
|
comments in code
|
2020-10-04 11:19:50 +02:00 |
Stefan Schippers
|
164ce52945
|
performance boost of "show net on symbol pins" feature
|
2020-10-02 18:19:31 +02:00 |
Stefan Schippers
|
6805335a09
|
regression fix: correctly hash new wires when inserted
|
2020-10-02 16:12:08 +02:00 |
Stefan Schippers
|
d706e45987
|
set max width of .c files <=130 chars; Fix netlist regression: if no "lab=value" is given in instance attributes get lab from symbol "template=" string. This was commented out recently and now reverted back. "View->Enable show net names on symbol pins" global menu added: if unset no symbol pin net names will be shown regardless of instance/symbol "net_name=true" and pin @#n:net_name attributes.
|
2020-09-30 23:55:07 +02:00 |
Stefan Schippers
|
91e74fadcb
|
"@#n:net_name" attribute (n = pin name or number) in symbols translates to net name attached to pin. "lab_show.sym" component that shows (does not assign) net name. "highlight=true" attribute can be given on instances in addition to symbols
|
2020-09-30 00:30:48 +02:00 |
Stefan Schippers
|
16edd087e4
|
off-loaded some functions from load_sym_def() to make it smaller, avoid overkill recursive load_sym_def() calls to get only the type of a component in LCC schematic instances.
|
2020-09-26 01:15:33 +02:00 |
schippes
|
9570439e16
|
made edit_symbol_property and tcl edit_prop procedure much simpler when user clicks another instance while edit_prop dialog still open
|
2020-08-16 03:34:45 +02:00 |
schippes
|
8383bb0e39
|
removed some dead code, remove_symbol() can remove i-th symbol, not only last one
|
2020-08-10 09:16:11 +02:00 |
Stefan SChippers
|
5e8df730a0
|
populating xschem git repo
|
2020-08-08 15:47:34 +02:00 |