stefan schippers
|
83345932a5
|
allow to specify per-node raw file in graphs with the syntax: alias_name ; node_name % [dataset] [rawfile] [sim_type]
|
2023-11-15 19:18:28 +01:00 |
stefan schippers
|
f4df48813f
|
copy_hierarchy_data() initial implementation for future hierarchy cloning. Alt-Shift-E and Alt-Shift-I to edit schematic / symbol in a new xschem process. `xschem raw switch`: allow also integer index (as returned by `xschem raw info`) instead of `file type` to switch raw file
|
2023-11-13 18:00:30 +01:00 |
stefan schippers
|
0bc0f8e5eb
|
read_dataset(): better get name of unknown sim types from raw file
|
2023-11-12 22:11:51 +01:00 |
stefan schippers
|
8856ab6e0d
|
add min() and max() clipping functions in wave calculator
|
2023-11-11 12:13:38 +01:00 |
stefan schippers
|
117f071500
|
fix del() function in wave processor (did not plot the right %n dataset if specified)
|
2023-11-10 23:23:13 +01:00 |
stefan schippers
|
565ab605cf
|
better xschem raw clear comand (if rawfile and sim_type specified delete only specified simulation data, not all analyses of rawfile)
|
2023-11-10 12:24:21 +01:00 |
stefan schippers
|
87f9a4e09b
|
reset floater caches on save(As) schematic - better done
|
2023-11-09 19:20:17 +01:00 |
stefan schippers
|
1b737c4ac7
|
reset floater caches on save(As) schematic
|
2023-11-09 19:13:55 +01:00 |
stefan schippers
|
4ff28fd39d
|
avoid calling simuldir in load_schematic when traversing hierarchy during netlisting
|
2023-11-08 02:52:50 +01:00 |
stefan schippers
|
f04477d236
|
if local_netlist_dir is set to 1 change netlist_dir at circuit load (and save-as)
|
2023-11-07 17:25:18 +01:00 |
stefan schippers
|
71f5994798
|
reset simulation button on save AS
|
2023-11-06 19:03:19 +01:00 |
stefan schippers
|
98def78164
|
simulation button will go yellow while sim is running.Clicking a yellow simulate button will kill simulation.
|
2023-11-06 16:47:14 +01:00 |
stefan schippers
|
0b93634fee
|
Better Simulation->Graphs-> Load raw file (ask filename)
|
2023-11-03 23:37:09 +01:00 |
stefan schippers
|
d776d6a351
|
better handle operating point clear / update when switching / reading / clearing raw files. dont use operating point data (ngspice::ngspice) above the hierarchy level where raw file has been loaded.
|
2023-10-29 14:04:52 +01:00 |
stefan schippers
|
b680f5da20
|
redraw screen if executing `xschem raw_read` (and raw file already loaded, thus unloading waves)
|
2023-10-29 12:54:55 +01:00 |
Stefan Schippers
|
d5fd026196
|
xschem raw command: delete also last (base) raw file in clear subcommand
|
2023-10-28 17:12:32 +02:00 |
stefan schippers
|
6362ebb214
|
add tanh() function in wave expression evaluator
|
2023-10-27 10:48:53 +02:00 |
stefan schippers
|
9f1b447c16
|
previous fix did not fix. Fix the fix
|
2023-10-26 19:38:25 +02:00 |
stefan schippers
|
4985fb6e61
|
fix crash if extra_rawfile(2, ...) is called when no initial raw file is loaded
|
2023-10-26 19:27:11 +02:00 |
stefan schippers
|
fec9c1b7e3
|
fix fullxzoom if a single curve is selected with find_closest_wave() (returns a dataset number) in a double variable DC sweep (there are no multiple datasets, just sweep var wrapping)
|
2023-10-23 17:20:51 +02:00 |
stefan schippers
|
cc5864e12f
|
fix 2 bugs in extra_rawfile(): xctx->extra_idx assignment in extra_rawfile "read" subcommand and return value if no command executed. Add "file_exists "procedure to be used in graph_edit_properties for rawentry resolution
|
2023-10-18 10:15:39 +02:00 |
stefan schippers
|
a41a0bf9fd
|
add noise analysis recognition in raw files
|
2023-10-18 02:56:06 +02:00 |
stefan schippers
|
52572a6ca4
|
update cmos_example.sch
|
2023-10-17 18:16:48 +02:00 |
stefan schippers
|
9917c8276b
|
revert to KeyRelease events (instead of FocusOut) for various widgets in graphdialog (better feedback), fix premature deallocation of data in child process in filter_data()
|
2023-10-17 17:05:10 +02:00 |
stefan schippers
|
306c5d0d15
|
fix two small memory leaks, doc updates (xschem raw command) Raw.filename renamed to Raw.rawfile
|
2023-10-17 16:08:27 +02:00 |
stefan schippers
|
b165720bc8
|
allow loading more and different analyses from the same raw file. Implied tcleval() in rawfile given in graphdialog, transform multiple saved OP sims into a dc sweep.
|
2023-10-17 14:00:43 +02:00 |
stefan schippers
|
8cfd51d8f9
|
add the ability to load multiple raw files with different analyses in a single schematic ( extra_rawfile() )
|
2023-10-17 00:42:31 +02:00 |
stefan schippers
|
5da81a7aea
|
shut down some gcc false warnings (uninitialized vars), add read_more_rawfile()
|
2023-10-16 11:16:12 +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
|
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
|
f87ab46310
|
refactor table_read(), less pointer indirections
|
2023-10-15 10:24:13 +02:00 |
stefan schippers
|
663991ce70
|
add "filename" member in Raw (raw file) struct
|
2023-10-14 23:09:40 +02:00 |
stefan schippers
|
537cedbafe
|
better graphdialog layout, remove tcl redundant raw_level var
|
2023-10-14 22:43:58 +02:00 |
stefan schippers
|
9b4bd44fd0
|
merged in fast_raw_read branch
|
2023-10-11 14:05:27 +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
|
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
|
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
|
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
|
8dfaedf9ea
|
report in-hierarchy overlapped symbols when netlisting
|
2023-08-29 11:32:48 +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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
5e90f5c319
|
use find_file_first instead of find_file in C code
|
2023-05-24 09:12:29 +02:00 |
stefan schippers
|
5c22d26072
|
update copyright info to 2023
|
2023-05-21 12:52:19 +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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
9533b17a20
|
Allow to pass instance attributes (via translate() ) to symbol generators
|
2023-05-02 12:42:53 +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
|
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
|
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
|
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
|
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
|
a2de3cd787
|
unified copy_symbol() and copy_symbol1(), better new symbol allocation policy
|
2023-04-22 00:21:53 +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
|
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
|
e4e2ba37cc
|
xschem load from script: no alert box warning if new file given
|
2023-03-25 09:41:53 +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
|
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
|
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
|
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
|
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
|
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 |