stefan schippers
|
a176f99db5
|
svgdraw.c: avoid setting stroke-width to excessively small (invisible) values; print_spice_element(): in format string if @param is given and in instance atttributes param=value@tag do a round of resolution of @tag looking in instance attributes, then in parent symbol instance attributes (in case of per-instance implementation (schematic=... attr) and finally in parent symbol template string. Doc udpades
|
2024-02-16 16:44:33 +01:00 |
stefan schippers
|
531a9c168c
|
pass @device_model in symbols through translate() if it contains @xxx tokens
|
2024-02-11 11:47:13 +01:00 |
stefan schippers
|
b3daf97cc4
|
remove @path resolution in print_*_element(): meaningless
|
2024-02-11 03:06:22 +01:00 |
stefan schippers
|
1cbbed77ba
|
first commit for parametric models in subckts --DO NOT USE--
|
2024-02-09 17:00:56 +01:00 |
stefan schippers
|
c06a896d4f
|
instance based schematic selection: if instance specified schematic=... not existing use base schematic (symbolname.sch)
|
2024-02-09 02:37:53 +01:00 |
stefan schippers
|
29d2541b21
|
fix regression in get_sym_template()
|
2024-02-05 16:37:00 +01:00 |
stefan schippers
|
fa533c725a
|
remove dbg messages
|
2024-02-05 14:49:20 +01:00 |
stefan schippers
|
96494dc73a
|
get_sym_template: fix possible unterminated result string
|
2024-02-05 13:47:49 +01:00 |
stefan schippers
|
8ec3e52122
|
allow parametric models in subcircuits. Symbol inv.sym contains template="... modp=cmos_p_10 ...", pmos instance in inv.sch contains model=@modp, instance format string contains format="@name @pinlist @model w=@w l=@l, result is: "m2 y a VCCPIN VCCPIN cmos_p_10 w=wp l=lp"
|
2024-02-03 13:43:18 +01:00 |
stefan schippers
|
a1c2569506
|
revert previous: print_spice_element(): do 2nd level translate() only on `model` tokens whose value contains @variables.
|
2024-01-22 18:57:42 +01:00 |
stefan schippers
|
24844b3d4c
|
print_spice_element(): do 2nd level translate() only on `device_model` tokens whose value contains @variables.
|
2024-01-22 18:53:04 +01:00 |
stefan schippers
|
9ceb274b5e
|
print_spice_element(): when expanding format @variables, if substituted value contains @var do another round of translate() to replace @var with instance assigned var=xxx value
|
2024-01-21 00:00:01 +01:00 |
stefan schippers
|
17e24e0f5f
|
has_included_subcircuit(): correctly handle bussed ports in symbol and spice .subckt file
|
2024-01-14 11:28:51 +01:00 |
stefan schippers
|
6c163d5cb0
|
has_included_subcircuit(): get symname from `schematic` attribute if set in instance or symbol, or use actual symbol name, add tb_symbol_include.sch example circuit
|
2024-01-08 17:19:12 +01:00 |
stefan schippers
|
0597bae9dc
|
various improvements for automatic port order detection from included subcircuit via spice_sym_def and @pinlist in format string, documentation updates in tutorial_use_existing_subckt.html
|
2024-01-08 14:57:21 +01:00 |
stefan schippers
|
d2c6566030
|
when doing spice netlist, if a symbol has the spice_sym_def attribute set and is using @pinlist in format string for port order, get the port order from the subckt given in spice_sym_def, either directly or through a .include line
|
2024-01-08 03:24:59 +01:00 |
Stefan Schippers
|
0f7785d588
|
initial implementation of `has_included_subcircuit()`
|
2024-01-07 19:51:48 +01:00 |
stefan schippers
|
f0e739cf02
|
.load.l.paneright.list better positioning (remember last selection), print_spice_subckt_nodes(): use my_mstrcat() instead of fprintf, for future enhancements
|
2024-01-06 12:14:36 +01:00 |
stefan schippers
|
f50a3b15fa
|
doc updates (graphs)
|
2023-12-18 23:36:01 +01:00 |
stefan schippers
|
a0237b59b3
|
eliminated some redundant operations on instance flags (set_inst_flags() does the job)
|
2023-12-07 18:07:42 +01:00 |
stefan schippers
|
b2aad10650
|
changed attribute text_n_size to text_size_n (for efficienty reasons), improved get_tok_val() (use strstr for quick return "" if no token found)
|
2023-12-03 23:11:36 +01:00 |
stefan schippers
|
898d0538a0
|
Allow tcleval() in vhdl_format attributes, allow intance setting of vhdl_format (override symbol). Add missing space in @pinlist expansion in print_verilog_primitive and print_vhdl_primitive
|
2023-11-29 13:46:24 +01:00 |
stefan schippers
|
30b77d7447
|
allow tcleval() in verilog_format attributes, allow intance setting of verilog_format (override symbol)
|
2023-11-29 12:20:35 +01:00 |
stefan schippers
|
fdc3ceefeb
|
vsource.sym and ammeter.sym no more use tcleval() to handle @savecurrent attribute (calling tcleval() is overkill for such a trivial task and may expose to side effects if $ (and other) characters are used )
|
2023-11-27 12:13:53 +01:00 |
stefan schippers
|
26fbb82f6b
|
fix unwanted head_undo_ptr change when doing a netlist. Add current backannotation info in capa.sym, ind.sym, isource.sym, isource_table.sym
|
2023-11-27 00:01:45 +01:00 |
stefan schippers
|
b1f72ada59
|
isonlydigit() will return true also for negative integers
|
2023-11-15 20:15:02 +01:00 |
stefan schippers
|
0df3cfcc7b
|
better recognize global nets in LCC schematics (translate(), @spice_get_voltage(..) )
|
2023-11-12 13:43:31 +01:00 |
stefan schippers
|
ecca0ba2be
|
better swap_windows() function (used when closing a window in multi-window(non-tabbed) interface, resolved_net() recognize global nodes. remove static data from record_global_node(), put in xctx. Remove dead code from translate() (@spice_get_voltage)
|
2023-11-12 13:01:11 +01:00 |
Stefan Schippers
|
8c29d0e812
|
fix error in capa-2.sym and missing check for null xctx->inst[].instname in get_pin_attr()
|
2023-11-11 20:03:20 +01:00 |
stefan schippers
|
584f88fba1
|
object iterator, object spatial hash table for all objects. tbu in the future maybe. Fix crashing bug when copying ngspice_probe.sym if annotation is enabled
|
2023-11-09 13:57:58 +01:00 |
stefan schippers
|
7022fbf073
|
xschem simulate sets the Simulate button color. removed redundant proc simulate_button
|
2023-11-04 14:49:15 +01:00 |
stefan schippers
|
bd43be9be6
|
rename a local variable to make tcc happy
|
2023-11-04 12:03:41 +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
|
512b297e35
|
add validity checks for xctx->inst[n].ptr < 0 (unresolved instance)
|
2023-10-23 22:49:52 +02:00 |
stefan schippers
|
0178e1c287
|
add @symref attribute that resolves to the full symbol reference as specified in instance: example: "sky130_fd_pr/pfet_01v8_lvt.sym"
|
2023-10-18 13:18:29 +02:00 |
stefan schippers
|
f10555917e
|
optimized usage of interpolate_yval(), add raw->cursor_b_val[]
|
2023-10-16 09:53:03 +02:00 |
stefan schippers
|
d1309a8a47
|
fix uninitialized var in interpolate_yval()
|
2023-10-15 13:24:19 +02:00 |
stefan schippers
|
a7bcfb7941
|
do interpolation when annotating "b" cursor values in schematic, as done with measurements with "a" cursor.
|
2023-10-15 12:05:48 +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
|
c4e1fb6a31
|
fix a memory leak in translate()
|
2023-10-05 20:15:47 +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
|
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
|
3ed97b3df2
|
some code refactoring, more usage of tclgetboolvar()
|
2023-10-03 10:27:29 +02:00 |
stefan schippers
|
db1bf8818a
|
cleanup in usage of new_prop_string() and hash_names()
|
2023-09-28 23:19:14 +02:00 |
stefan schippers
|
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
|
5080c2c33f
|
fix unitialized vars (mostly false errors, but why not...)
|
2023-09-28 00:30:00 +02:00 |