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 |
stefan schippers
|
e5227d6a31
|
rename top_subckt to lvs_netlist (more appropriate), better tcp interface (redirect stdout to socket in addition to command return value)
|
2023-02-09 11:30:27 +01:00 |
stefan schippers
|
29ef08e84b
|
better memory tracking reporting (my_strcat and my_strncat allocations)
|
2023-02-01 11:38:28 +01:00 |
stefan schippers
|
baca559ffc
|
refactor some code (use set_text_flags() to avoid repetitive code), add xschem setprop text and xschem getprop text commands to set/get text attributes
|
2023-02-01 00:23:33 +01:00 |
stefan schippers
|
23378b8708
|
replace u_int32_t with unsigned int in save.c
|
2023-01-24 01:46:26 +01:00 |
stefan schippers
|
48549f1212
|
update test schematics
|
2023-01-23 18:23:18 +01:00 |
stefan schippers
|
1da5e47d4a
|
remove my*() allocation routines unique IDs and replace with _ALLOC_ID_ macro, to be substituted in debug sessions with create_alloc_ids.awk
|
2023-01-23 15:42:15 +01:00 |
stefan schippers
|
3043989196
|
fix debug test
|
2023-01-23 12:17:47 +01:00 |
stefan schippers
|
fd8f1e6b97
|
fix a regression in track_memory.awk (did not show leaking source code line)
|
2023-01-23 12:16:29 +01:00 |
stefan schippers
|
cffe91146e
|
free paddedData pointer in ascii85_encode()
|
2023-01-23 11:55:52 +01:00 |
stefan schippers
|
9b6b7bc19a
|
Fix some compiler warnings and add a little optimization in ascii85 encoder
|
2023-01-23 11:49:08 +01:00 |
rafmag
|
898f229c61
|
Merge branch 'master' of https://github.com/rafmag/xschem
|
2023-01-22 19:44:58 -07:00 |
rafmag
|
9c83801d8f
|
Added Ascii85Encoding for better formated & smaller PS files.
|
2023-01-22 19:35:10 -07:00 |
stefan schippers
|
6af6079084
|
set line buffering when stderr redirected to file
|
2023-01-20 18:25:43 +01:00 |
stefan schippers
|
90bc0fa572
|
"preserve unchanged props" will be automatically checked when editing attributes on multiple object selection and unchecked on single object selection as this is the 99.9% use case
|
2023-01-20 00:35:24 +01:00 |
stefan schippers
|
6f6bd65035
|
fflush() all stdio buffers before calling fork(). End child processes with _exit() instead of exit() to avoid double fflushing in parent i/o streams
|
2023-01-19 02:46:45 +01:00 |
stefan schippers
|
e06bfe5191
|
remove some debug changes
|
2023-01-18 01:17:46 +01:00 |
stefan schippers
|
03b2b8652e
|
fixed filter_data routine that was clobbering ps export file, now ps output is correct without the need to add fflush() functions, that are thus removed in psprint.c
|
2023-01-18 00:24:28 +01:00 |
stefan schippers
|
af0ddb76f0
|
cleanups, remove redundant png_reader() definition
|
2023-01-17 01:23:34 +01:00 |
stefan schippers
|
19757ddd8a
|
add menu properties -> Edit header/License text, to allow inserting header or license metadata into the sch/sym file.
|
2023-01-02 03:04:35 +01:00 |
stefan schippers
|
9fa05afad9
|
fix a bug when loading multiple AC sim datasets (wrong nvars calculation, has to be doubled due to Im/Re complex components)
|
2022-12-20 01:01:58 +01:00 |
stefan schippers
|
2cb58c5c5c
|
added generators/ dir, removed redundant variable in load_schematic()
|
2022-12-19 23:05:09 +01:00 |
stefan schippers
|
1a76f89464
|
added xschem_library/generators directory for future schematic/symbol generator scripts. Handle empty XSCHEM_LIBRARY_PATH (use [pwd]).
|
2022-12-18 13:03:38 +01:00 |
stefan schippers
|
9c31682517
|
test and get reading schematics from the web on Windows working
|
2022-11-18 16:06:06 +01:00 |
Stefan Frederik
|
e27eea8233
|
added comments and a fix in descend_symbol()
|
2022-11-15 15:08:11 +01:00 |
Stefan Frederik
|
a7066600b4
|
use tmp subdirectory: better string matching
|
2022-11-15 13:21:16 +01:00 |
Stefan Frederik
|
8f6aaa0ec2
|
use tmp subdirectory to group web schematics
|
2022-11-15 12:59:52 +01:00 |
Stefan Frederik
|
c9380bd8f0
|
use local name (/tmp/xxx.sch) when displaying schematic name in title, indtead of full url (too long)
|
2022-11-15 10:25:19 +01:00 |
Stefan Frederik
|
b2f159706c
|
if loading a new schematic (currsch==0) reset current_dirname
|
2022-11-15 02:10:18 +01:00 |
Stefan Frederik
|
6cd9d76f90
|
initial implementation of fetch schematics from web
|
2022-11-15 01:17:33 +01:00 |
Stefan Frederik
|
ca8ffafe8a
|
code refactoring (update_conn_cues())
|
2022-11-07 14:23:57 +01:00 |
Stefan Frederik
|
153929806b
|
fill attribute on rectangles to override layer fill style: fill=false will not fill
|
2022-10-29 23:49:00 +02:00 |
Stefan Frederik
|
cb652adb5f
|
skip NULL or empty texts in draw_symbol, translate2() skip @@... and @#... tokens (return empty)
|
2022-10-21 17:48:54 +02:00 |
Stefan Frederik
|
4e05fe1bab
|
comment some unneeded dbg messages, update install html page
|
2022-10-21 12:54:02 +02:00 |
Stefan Frederik
|
a6dc3d47c3
|
cache embed attribute of instances for faster lookup
|
2022-10-21 11:04:20 +02:00 |
Stefan Frederik
|
0f25befe31
|
recursive attribute substitution. use also template attribute of parents if not found in instance prop_ptr
|
2022-10-20 10:30:48 +02:00 |
Stefan Frederik
|
59fb225a36
|
fix potential string overflow. Thanks JL
|
2022-10-18 08:38:09 +02:00 |
Stefan Frederik
|
33d9afd3a1
|
avoid hardcoded (relative) paths for label/pins searching, use more general find_file method
|
2022-10-17 17:20:40 +02:00 |
Stefan Frederik
|
dad83010f0
|
perf. improvements in plot_raw_custom_data() / ravg_store()
|
2022-10-17 15:17:47 +02:00 |
Stefan Frederik
|
b0359d880a
|
use sim_pinnumber for port ordering in simulation netlists and leave pinnumber for package pin position. These two collide, for example in spice port ordering vs (transistor problem) device package pinnumbers. Dont load graphs in lcc symbols
|
2022-10-17 12:05:54 +02:00 |
Stefan Frederik
|
78ca99e4bf
|
save symbol with ordered pins if pinnumber is present in all pins
|
2022-10-16 22:26:35 +02:00 |
Stefan Frederik
|
407bac461d
|
sort symbol pins: remove useless debug messages
|
2022-10-16 16:23:00 +02:00 |
Stefan Frederik
|
fc576f69ac
|
sort symbol pins if key pinnumber is present on all of them
|
2022-10-16 16:18:38 +02:00 |
Stefan Frederik
|
e8b2385f24
|
update xschemtest hashes, uniquify allocation IDs
|
2022-10-16 14:21:22 +02:00 |
Stefan Frederik
|
91ba5fd1d3
|
annotation of voltage and currents in (nested) LCC instances
|
2022-10-16 13:08:52 +02:00 |
Stefan Frederik
|
0e6c35f598
|
translate2(): return @spice_get_voltage* strings unchanged; get rid of "@#..." tokens in translate2 (return empty)
|
2022-10-15 22:50:18 +02:00 |
Stefan Frederik
|
93fe5bf414
|
fix handling empty return value of translate2() in load_sym_def()
|
2022-10-15 11:16:36 +02:00 |
Stefan Frederik
|
3adb192936
|
@spice_get_voltage(net) error checking
|
2022-10-15 10:52:07 +02:00 |
Stefan Frederik
|
adf477fbcc
|
optimization in translate(): @spice_get_voltage will use the "lab" attribute (if existing) to build up the net name to look up in raw file, before reverting to a call to net_name() to get the net from the attached net
|
2022-10-15 08:55:32 +02:00 |
Stefan Frederik
|
7c60f37f54
|
better atof_spice() suffix checking, set xctx->current_dirname to $PWD when creating an empty new tab (untitled schematic)
|
2022-10-13 16:45:27 +02:00 |
Stefan Frederik
|
f7738329a5
|
my_fgets()
|
2022-10-13 13:43:01 +02:00 |
Stefan Frederik
|
150c2663b9
|
added netlist_options as list of symbols not to load in schematics-as-symbol instances, load_file_dialog: make remember last dir work again
|
2022-10-09 23:49:28 +02:00 |
Stefan Frederik
|
5fe2f1586b
|
refactor str_hash_* and int_hash_* functions
|
2022-10-05 01:18:45 +02:00 |
Stefan Frederik
|
9c29324c8a
|
allow nets with no label pass thru symbols with duplicated pins. named nets will propagate through duplicated pins
|
2022-10-04 12:34:09 +02:00 |
Stefan Frederik
|
29d6655a01
|
use limiting mylog()/mylog10() functions in expression calculator
|
2022-10-03 18:29:36 +02:00 |
Stefan Frederik
|
4bbed85d23
|
faster jump table in plot_raw_custom_data(), added simulation->add waveform reload launcher
|
2022-10-03 11:15:14 +02:00 |
Stefan Frederik
|
d174306880
|
added verilog_extra attribute for list of implicit node connections to symbol in verilog netlists. extra attribute still used in verilog as a list of attributes NOT use as component attributes / symbol parameters.
|
2022-10-03 01:20:33 +02:00 |
Stefan Frederik
|
28c644fba7
|
doc updates (new graph functions)
|
2022-10-02 20:52:17 +02:00 |
Stefan Frederik
|
9acbf3fb41
|
added prev(), del() function in graph processing. Extend calculation 1 or 2 point beyond viewport for exact deriv/integ/prev/del calculation at left edge
|
2022-10-02 11:05:29 +02:00 |
Stefan Frederik
|
5a39f7be40
|
cleanups in plot_raw_custom_data()
|
2022-10-01 10:38:27 +02:00 |
Stefan Frederik
|
6296bbc1c6
|
compile option for 2nd order 3-point backward derivative calculation formulaes for graph expressions
|
2022-09-29 18:22:55 +02:00 |
Stefan Frederik
|
6d17797d0b
|
add Highlight->Select overlapped instances command
|
2022-09-27 18:35:42 +02:00 |
Stefan Frederik
|
472751dfc0
|
better file globbing in load_file_dialog
|
2022-09-27 13:15:04 +02:00 |
Stefan Frederik
|
48d1b44220
|
allow spice multipliers in numbers (20u, 10k, 20p) in graph expressions
|
2022-09-22 21:12:40 +02:00 |
Stefan Frederik
|
2487ee98e2
|
do not set time_last_modify (set to 0, undefined) when loading a schematic that does not exist (untitled)
|
2022-09-22 14:46:52 +02:00 |
Stefan Frederik
|
d473e8b1ab
|
updated docs with additional video on graphs and Xyce sim
|
2022-09-22 13:45:55 +02:00 |
Stefan Frederik
|
931c1520e3
|
make op backannotation in schematic work also if raw file loaded at hierarchy level > 0
|
2022-09-21 13:58:01 +02:00 |
Stefan Frederik
|
e67ff344c8
|
cleanup/rename some xctx variables and graph-related functions, avoid drawing graphs using data file loaded from from schematics that are unmatched with current schematic or up in the hierarchy levels
|
2022-09-21 11:25:45 +02:00 |
Stefan Frederik
|
ea702976ee
|
cleanup/free data in read_dataset() on malformed input file
|
2022-09-20 23:16:59 +02:00 |
Stefan Frederik
|
af475e00df
|
xschem raw_read accepts an optional type argument after file name (tran, ac, dc, op, ...) to select type of simulation to load from raw file. New command xschem annotate_op will replace ngspice::annotate tcl procedure.
|
2022-09-20 16:49:42 +02:00 |
Stefan Frederik
|
7abceb3344
|
fix regression in ngspice::get_current, simplified voltage reporting in net label symbols
|
2022-09-20 00:12:27 +02:00 |
Stefan Frederik
|
7d6b33cda8
|
limit max size of embedded graph bitmaps in svg export. added deriv0() graph function, does derivative w.r.t. index 0 (sweep) variable, regardless of graph sweep (x axis) variable.
|
2022-09-16 12:16:26 +02:00 |
Stefan Frederik
|
f644ce58a6
|
graphs are now rendered (as detailed png bitmaps) in svg exports
|
2022-09-15 19:39:16 +02:00 |
Stefan Frederik
|
e5d60bb92a
|
tuning of is_xschem_file proc to avoid misdetecton of valid files
|
2022-09-14 11:37:39 +02:00 |
Stefan Frederik
|
75db846e58
|
ask confirmation if pressing "s" for simulate; node lists in graph dialog box are returned as they are with no tcleval() resolution; poweramp.sch now can be simulated unchanged with Xyce
|
2022-09-13 00:31:20 +02:00 |
Stefan Frederik
|
cd083c91e8
|
improve xyce netlist processing hooks (save ammeter currents), cmos_example.sch can now be simulated in ngspice and xyce
|
2022-09-11 13:21:24 +02:00 |
Stefan Frederik
|
9e7930c8e0
|
fix regression in raw_query list command, store all waveform names in lowercase and with ":" path sep translated to ".", so looking them up is faster (no need to try multiple searches)
|
2022-09-11 10:52:52 +02:00 |
Stefan Frederik
|
193cf397bd
|
more Xyce integration, transform .save in .print tran, transform x1.x2.node to X1:X2:NODE in Xyce lookups, more checks for malformed raw files
|
2022-09-09 18:57:34 +02:00 |
Stefan Frederik
|
3ef32a1eef
|
try more upper/lower case combinations in get_raw_index() function, removed some debugging messages
|
2022-09-09 02:11:09 +02:00 |
Stefan Frederik
|
9e9660c562
|
no trailing spaces in saved xschem files (there was one in version strings "v {...}"
|
2022-09-01 15:10:00 +02:00 |
Stefan Frederik
|
41acfd91dd
|
some small code refactoring, allow multiple selected (bold) waves, one per graph, store the bold waves into file
|
2022-08-27 12:56:33 +02:00 |
Stefan Frederik
|
d279783faa
|
added menu entries to set and conmpare with schematic.
|
2022-08-25 13:59:36 +02:00 |
Stefan Frederik
|
a2de3e9c1b
|
Added compare_schematics() function. Empty graphs (no data loaded) are not editable. Set window title if opening a non-existent file.
|
2022-08-25 00:25:29 +02:00 |
Stefan Frederik
|
d3cc957fa3
|
warning and highlight perfectly overlapped symbols
|
2022-08-19 10:56:26 +02:00 |
Stefan Frederik
|
2e37724959
|
add "Plotname: constants" to the list of recognized ngspice plots in raw file
|
2022-08-14 14:14:19 +02:00 |
Stefan Frederik
|
dda7cb40db
|
better recognize Xyce plot headers (Plotname: lines)
|
2022-08-12 00:06:14 +02:00 |
Stefan Frederik
|
bd35e177f1
|
unselect_all() before inserting wire label or text from the menu to avoid moving previously selected objects
|
2022-08-09 23:08:00 +02:00 |
Stefan Frederik
|
89afd902ea
|
get_raw_value(): return plain value, no implicit log calculation if log scale on axis. Zoom full scale X and X axis pan: use 1st sweep X variable, do not assume spice sweep variable (idx==0)
|
2022-08-08 09:52:33 +02:00 |
Stefan Frederik
|
edf185616b
|
Y log axis option in graphs
|
2022-08-08 01:18:42 +02:00 |
Stefan Frederik
|
15e367ba73
|
user selectable log X scale instead of assiming log X for AC analyses only
|
2022-08-05 00:57:03 +02:00 |
Stefan Frederik
|
7a0b5f3589
|
fix ngspice_backannotate.tcl: correctly backannotate ammeter currents; correctly handle multipoint Operating point data in graphs
|
2022-08-04 11:39:41 +02:00 |
Stefan Frederik
|
3b0589d2d1
|
store just magnitude and phase of AC vectors instead of dB and phase. Add db20() function to get dB values from magnitude in graph RPN expressions.
|
2022-08-03 17:44:53 +02:00 |
Stefan Frederik
|
56d3d8f5f3
|
recognize \r\n sequences on windows rawfiles in "Binary:" lines, just in case ngspice developers want to add it someday. Quote ROUT ('ROUT') values for output resistors in ngspice_logic gates
|
2022-07-28 00:36:09 +02:00 |
Stefan Frederik
|
5af2b8eb7a
|
fix read_dataset() for windows
|
2022-07-27 11:06:54 +02:00 |
Stefan Frederik
|
d86a422c59
|
do not segfault if reading ascii raw files. print error message and tell user to generate binary rawfile.
|
2022-07-26 12:05:28 +02:00 |
Stefan Frederik
|
cd7eb3ab54
|
update license info
|
2022-06-24 00:36:12 +02:00 |
Stefan Frederik
|
f882918931
|
more conversion warnings suppressed
|
2022-04-28 10:12:16 +02:00 |
Stefan Frederik
|
97911fe9fc
|
text routines: longest_line made double (from int) for consistency
|
2022-04-28 00:00:51 +02:00 |
Stefan Frederik
|
23102433c2
|
fixed lot of conversion warnings/ bugs (int/double/size_t)
|
2022-04-27 13:18:45 +02:00 |
Stefan Frederik
|
069017e07c
|
recursively resolve parameter passing throughout hierarchy and show resolved value in leaf cells if possible
|
2022-03-07 01:42:53 +01:00 |
Stefan Frederik
|
c1a92ab5dc
|
revert pro floaters. black hole, wrong approach
|
2022-02-22 12:09:04 +01:00 |
Stefan Frederik
|
2a205d298a
|
TEXT_TRANSLATE flag: pro-floaters addition
|
2022-02-22 01:28:19 +01:00 |
Stefan Frederik
|
8be5ae7eb0
|
hide attribute for text items, not only if embedded in symbols
|
2022-02-21 10:53:06 +01:00 |
Stefan Frederik
|
d457565c2d
|
declared more functions static where possible and appropriate
|
2022-02-19 14:31:55 +01:00 |
Stefan Frederik
|
609f216f8d
|
avoid redundant cleanup call (ravg_store())
|
2022-02-17 01:37:04 +01:00 |
Stefan Frederik
|
798ecd74f3
|
running average ravg() wave processing operator
|
2022-02-16 20:24:22 +01:00 |
Stefan Frederik
|
e3fe1029cd
|
switch statements vs if-else-if in plot_raw_custom_data(); do not try to measure non existing waveforms due to expression syntax errors
|
2022-02-14 22:32:45 +01:00 |
Stefan Frederik
|
c08cc359f3
|
plot_raw_custom_data() returns idx or -1 in case of expr syntax errors to avoid plotting junk
|
2022-02-14 19:28:24 +01:00 |
Stefan Frederik
|
4ebf3ea601
|
allow wave alias naming, fix off-by-one errors in plot_raw_custom_data() calls
|
2022-02-14 17:51:18 +01:00 |
Stefan Frederik
|
a6b4d998d1
|
better node color tagging in graph edit property dialog
|
2022-02-13 02:51:14 +01:00 |
Stefan Frederik
|
fbeae175dd
|
refactor some variable usage in plot_raw_custom_data()
|
2022-02-12 13:29:18 +01:00 |
Stefan Frederik
|
c6a7d8f9bb
|
optimize custom data plots and expression evaluation, added avg()
|
2022-02-12 13:20:24 +01:00 |
Stefan Frederik
|
c0d2951883
|
better expression parsing in plot_raw_custom_data()
|
2022-02-12 11:04:39 +01:00 |
Stefan Frederik
|
defd2a92a7
|
rpn expressions in graphs
|
2022-02-12 04:55:02 +01:00 |
Stefan Frederik
|
62766fd618
|
cleanup test code for custom plots
|
2022-02-05 02:16:27 +01:00 |
Stefan Frederik
|
178d235de6
|
fix: check for empty xctx->graph_names
|
2022-02-05 00:38:05 +01:00 |
Stefan Frederik
|
d6d932e730
|
fix save simconf (thanks mkk). put template code for custom function plots
|
2022-02-05 00:28:06 +01:00 |
Stefan Frederik
|
d7c35a0a3d
|
code comments added
|
2022-02-04 18:21:25 +01:00 |
Stefan Frederik
|
d7b45bfbf9
|
cleanup raw_query sub command, added "values" opcode, speedup some "xschem" subcommands
|
2022-02-04 17:35:07 +01:00 |
Stefan Frederik
|
6fb20b8c5e
|
(only) on fat32 or similar case insensitive FS and if case_insensitive is set to 1 in xschemrc do not consider case in symbol lookup
|
2022-02-04 02:56:11 +01:00 |
Stefan Frederik
|
1cb9645e9f
|
xyce quircks/integration for ac analysis, refuse to stretch unscalable images, more example schematics
|
2022-02-03 00:40:59 +01:00 |
Stefan Frederik
|
008b289e4f
|
ac analysis in graphs (mag + phase, log axis)
|
2022-02-02 18:33:16 +01:00 |
Stefan Frederik
|
5f82f63580
|
rename variable so tcc wont complain
|
2022-02-02 03:30:07 +01:00 |
Stefan Frederik
|
77b900569b
|
correctly save embedded symbol attributes in embeeded symbols, do not save multiple times the same embedded symbol definition
|
2022-02-02 02:14:23 +01:00 |
Stefan Frederik
|
a8e1a6c047
|
fix regression (tcl context was not saved/restored correctly)
|
2022-02-02 00:11:46 +01:00 |
Stefan Frederik
|
0b0e749801
|
Graph UI improvements. Persistent bold waves. Graph UI bug fixes
|
2022-01-28 04:44:07 +01:00 |
Stefan Frederik
|
038ef39bb5
|
UI improvements for graphs, change colors, insert waves etc
|
2022-01-27 20:47:27 +01:00 |
Stefan Frederik
|
b978bd90fa
|
images (rotated,flipped as the symbol) in symbols
|
2022-01-24 22:58:30 +01:00 |
Stefan Frederik
|
c8ec7a77f2
|
allow embedding all image formats if a xxx-->png filter shell command is provided as attribute
|
2022-01-23 04:51:41 +01:00 |
Stefan Frederik
|
90f1a00a6f
|
add filter_data() generic file conversion function
|
2022-01-23 01:21:36 +01:00 |
Stefan Frederik
|
320ad6e2aa
|
embedded raw file storage
|
2022-01-21 19:17:43 +01:00 |
Stefan Frederik
|
694bda1250
|
protect new cairo code with #if HAS_CAIRO==1
|
2022-01-21 02:51:58 +01:00 |
Stefan Frederik
|
e66abe36fa
|
fix wave panning if a non graph added, better error reporting in png writer function, better flags option names for special objejcts (image and graphs)
|
2022-01-21 02:16:51 +01:00 |
Stefan Frederik
|
a3ccc094f5
|
handle errors in image data, modified base64 decode to handle white space
|
2022-01-20 18:28:29 +01:00 |
Stefan Frederik
|
6fcdd46022
|
reordering of some function calls to prevent memory leaks
|
2022-01-20 01:57:53 +01:00 |
Stefan Frederik
|
3958faf1aa
|
optimizations in image display, resolved some false leak report due to untracked mallocs
|
2022-01-20 00:47:15 +01:00 |
Stefan Frederik
|
c3af523559
|
better data struct for embedded image
|
2022-01-19 23:28:19 +01:00 |
Stefan Frederik
|
d22245b33a
|
show and store embedded (png) images in schematics
|
2022-01-19 18:39:23 +01:00 |
Stefan Frederik
|
881b32a689
|
fix selection of merged instances done b4 calculating bbox (uninit. values)
|
2022-01-19 02:05:05 +01:00 |
Stefan Frederik
|
1fb23208bc
|
remove all xrender and all xcb code, remove detection as well. Fix a couple of potentially uninitialized variables
|
2022-01-19 00:49:46 +01:00 |
Stefan Frederik
|
4379a68a19
|
HILIGHT_CONN macro
|
2022-01-16 14:49:59 +01:00 |
Stefan Frederik
|
ecf07e6761
|
better handling of glob patterns in save/load dialog, recognize floater label tags in files
|
2022-01-16 12:42:55 +01:00 |
Stefan Frederik
|
231660989a
|
fix undo regression on embedded examples due to prev commit
|
2022-01-14 17:07:17 +01:00 |
Stefan Frederik
|
627d122937
|
correctly skip embedded symbol info in file if not matching instance reference
|
2022-01-14 16:59:40 +01:00 |
Stefan Frederik
|
9f64e87b34
|
comments in source files
|
2022-01-14 14:56:13 +01:00 |
Stefan Frederik
|
6c85ceaad8
|
"hide(=true)" attribute to hide specific text items in symbols
|
2022-01-13 12:46:55 +01:00 |
Stefan Frederik
|
e0eb450881
|
drop zero-size elements when opening a file
|
2022-01-13 03:09:45 +01:00 |
Stefan Frederik
|
d6b513e1e2
|
issue warning if opening same circuit in different tabs, if tabbed if is active edit sch/sym in new window will do in a new tab
|
2022-01-10 18:54:07 +01:00 |
Stefan Frederik
|
e238f571b0
|
code added for tabbed window interface
|
2022-01-09 05:14:25 +01:00 |
Stefan Frederik
|
a0e057a52d
|
added typedefs on used structs, updated xschemtest with new hashes
|
2021-12-28 01:33:01 +01:00 |
Stefan Frederik
|
76b537a587
|
[experimental] add waveform display of ngspice simulation data directly in xschem drawing area
|
2021-12-22 04:39:23 +01:00 |
Stefan Frederik
|
969f4ec1c7
|
removed some dead code (what & START) in draw.c, paste/merge of lines/polygons/arcs/lines did not correctly restore dash attributes. Boiler plate code for draw waves
|
2021-12-20 00:01:10 +01:00 |
Stefan Frederik
|
86ac93c369
|
some "box" vars changed to "rect" for consistency
|
2021-12-19 01:28:39 +01:00 |
Stefan Frederik
|
0c9eff16d9
|
my_round() function instead of ROUND() macro
|
2021-12-17 15:40:19 +01:00 |
Stefan Frederik
|
993c3a24c2
|
rename xschem_simulator/ n.sym and p.sym to ntrans.sym and ptrans.sym to avoid confusion with symbols in rom8k/; place tk_messageBox above right xschem window when using multiple (single process) windows.
|
2021-12-17 03:29:53 +01:00 |
Stefan Frederik
|
ba15e21b24
|
preserve ordering in verilog/VHDL signal/wire/reg declarations for consistent netlist hashing/checking
|
2021-12-15 15:17:45 +01:00 |
Stefan Frederik
|
e449543805
|
tclvareval() wrapper
|
2021-12-05 12:39:05 +01:00 |
Stefan Frederik
|
05f176045b
|
remove propagate_hilights() from prepare_netlist_structs() (call explicitly when needed). Fix hilight_parent_pins()/propagate_hilights() in go_back() (some UNhilighted pins did not propagate to parent)
|
2021-12-05 01:34:19 +01:00 |
Stefan Frederik
|
954979e200
|
brace filenames (to protect spaces) in Tcl_VarEval() calls from C as per Joanne findings.
|
2021-12-03 19:37:59 +01:00 |
Stefan Frederik
|
629917cfcd
|
new find_inst_to_be_redrawn() implementation to recalculate area to be redrawn with/without show net names on symbol pins, simplified new_window() call in callback `x` command, code formatting in globals.c, added xschem get [xy]origin commands
|
2021-12-03 19:15:07 +01:00 |
Stefan Frederik
|
02173373cb
|
some little optimizations, redundant code removed, better formatting in globals.c
|
2021-12-02 13:28:40 +01:00 |
Stefan Frederik
|
1c18211894
|
use tclgetvar for XSCHEM_TMP_DIR
|
2021-11-29 18:26:20 +01:00 |
Stefan Frederik
|
0ebe36bc8f
|
avoid quitting the program for some serious but non fatal errors, add some error reporting, some documentation updates (faq.html)
|
2021-11-29 17:29:09 +01:00 |
Stefan Frederik
|
fe549c0f5c
|
readable function pointer call syntax
|
2021-11-29 11:52:32 +01:00 |
Stefan Frederik
|
2442a3dfc0
|
runtime menu option to set undo stack on disk or in memory
|
2021-11-29 02:47:37 +01:00 |
Stefan Frederik
|
03f973e203
|
use undo function pointers
|
2021-11-28 14:35:55 +01:00 |
Stefan Frederik
|
f67ec47f82
|
added some comments, commented out xctx->prep_* = 0 in save_schematic()
|
2021-11-24 13:52:59 +01:00 |
Stefan Frederik
|
9d38cb3823
|
removed debug messages
|
2021-11-24 04:19:32 +01:00 |
Stefan Frederik
|
e7aa7b9d04
|
fix netlisting errors on schematics with embedded symbols. When purging unused symbols schematic was re-linked with library symbols instead of embedded symbols, leading to errors if the symbols differ. Fixed popping schematic from undo stack instead of calling link_symbols_to_instances()
|
2021-11-24 03:47:04 +01:00 |
Stefan Frederik
|
d03147dce1
|
more consistent naming convention for hash table functions
|
2021-11-23 15:03:51 +01:00 |
Stefan Frederik
|
14e94eb615
|
remove_symbols() and remove_symbol(): some symbol fields were not correctly cleared when removing all symbols. Ensure inst[].name and sym[].name are not strdup`ed as NULLs
|
2021-11-22 12:42:33 +01:00 |
Stefan Frederik
|
9bca5b3f5b
|
fix descend_symbol regression due to previous commit
|
2021-11-22 00:42:53 +01:00 |
Stefan Frederik
|
1c37e7eeee
|
when descending from a modified schematic with highlight nets and not saving schematic before descending, clear highlights to avoid inconsistent state when returning back. save() and save_schematic() have more decent return values
|
2021-11-22 00:26:49 +01:00 |
Stefan Frederik
|
fddd3f84fb
|
avoid force-saving changed schematic before doing netlist (use push/pop undo instead of load_schematic() to restore circuit after traversing hierarchy)
|
2021-11-21 23:04:48 +01:00 |
Stefan Frederik
|
7f9ee9fc2a
|
add "xschem check_symbols" and "xschem reload_symbols" for future checking of symbols that are newer wrt to schematic. set mtime of newly created schematic (that does not exist on disk) to current time. Add verilog attributes to devices/pmos4.sym
|
2021-11-21 12:28:36 +01:00 |
Stefan Frederik
|
608912078f
|
fix "untitled" window title setting
|
2021-11-21 02:08:27 +01:00 |
Stefan Frederik
|
10114ec838
|
add missing braces in update recent file submenu, fix file selector improperly setting main window title, added logic/test_mos_verilog.sch depletion mode verilog example
|
2021-11-20 23:44:19 +01:00 |
Stefan Frederik
|
e4f4c75e9a
|
fix stat missing arg
|
2021-11-20 13:47:25 +01:00 |
Stefan Frederik
|
a495ada2ed
|
When saving a schematic issue a warning if disk file has been changed since opening
|
2021-11-20 13:33:40 +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
|
83746efbe9
|
some other static data eliminated from functions (edit symbol_property), in_memory undo structure moved into schematic context
|
2021-11-19 23:22:54 +01:00 |
Stefan Frederik
|
d1a922643d
|
Bunch of function static variables moved into xctx struct for safety
|
2021-11-18 01:55:01 +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
|
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
|
19f8939347
|
scconfig test for dup2() availability
|
2021-10-25 01:53:00 +02:00 |
Stefan Frederik
|
04eee411f3
|
better implementation of prevous commit
|
2021-10-10 00:44:01 +02:00 |
Stefan Frederik
|
205bda387a
|
Add File menu commands to open empty schematic or symbol in new window
|
2021-10-09 00:41:39 +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
|
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
|
88456ca382
|
add draw() at end of make_schematic_symbol_from_sel() to update schematic with generated lcc symbol
|
2021-06-07 00:15:00 +02:00 |
Stefan Frederik
|
ddaa431144
|
make_sym_lcc.awk: declare "value" as local variable inside process_box_line() to avoid clashes with global "value"
|
2021-06-05 08:58:38 +02:00 |
Stefan Frederik
|
c1909334cb
|
fix typos in debug messages
|
2021-05-31 07:39:23 +02:00 |
Stefan Frederik
|
bda3d9d426
|
Added new feature "Make schematic and symbol from selected components" with command "xschem make_sch_from_sel" and function make_schematic(..)
added proc make_symbol_lcc and make_symbol_lcc.awk
sch and sym components to specially process dash in prop_ptr.
|
2021-05-29 00:45:01 +02:00 |
Stefan Frederik
|
500feade8d
|
Joanne fixes for potential crash in align_sch_pins_with_sym() if there is a sym/sch pin number mismatch. Moved box declaration to beginning of scope block for C89 compatibility
|
2021-03-07 00:15:16 +01:00 |
Stefan Frederik
|
ac99227365
|
fix a bug when pasting / ctrl-v into an empty schematic (instances not selected for moving)
|
2021-01-22 01:03:16 +01:00 |
Stefan Frederik
|
50028baa9f
|
added Hi-Z in logic values
|
2021-01-11 19:31:47 +01: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
|
b25bd1d06d
|
saving to file made 4x faster, this implies less latency due to undo buffer savings on freaking big schematics.
|
2021-01-06 03:01:14 +01:00 |
Stefan Frederik
|
46e986cc62
|
added "auto join/trim wires" menu option since now the trim operation is doing fast even on big designs
|
2021-01-02 03:24:26 +01:00 |
Stefan Frederik
|
94cd0d0c7d
|
hash_hi() made faster by caching sch_path_hash[]
|
2021-01-02 01:55:01 +01:00 |
Stefan Frederik
|
bcf8986314
|
Some more global state into Xctx
|
2020-12-28 13:44:10 +01:00 |
Stefan Frederik
|
47ed76374e
|
fix value for "non hilight condition" on instance .color field as small negatives are used for simulation
|
2020-12-28 04:47:26 +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
|
d0fb5f94e0
|
eliminated some global vars
|
2020-12-23 05:07:39 +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
|
779c789100
|
better "xschem print" command accepting viewport and image dimensions, better zoom_full (with margin), good for embedding in script and do automatic export generation
|
2020-12-22 00:13:25 +01:00 |
Stefan Frederik
|
4ddc9654e8
|
add xschem commands for specifying image size for png and pdf: xschem print svg file.svg 800 600; svg background color taken from svg_colors variable so it can be changed like any other color
|
2020-12-21 04:38:57 +01:00 |
Stefan Frederik
|
dfa58a0a08
|
spaghetti code removal, more reused code
|
2020-12-20 15:56:29 +01:00 |
Stefan Frederik
|
db6bee268a
|
Fix: paste/ctrl-v was not leaving elements selected; select highlighted elements was not setting ui_state to SELECTION making delete not functional. After an undo rebuild xctx-<inst[].color field of labels/pins from bus_hash_lookup info.
|
2020-12-19 23:11:26 +01:00 |
Stefan Frederik
|
1184312527
|
various fixes around the highlight speed improvements
|
2020-12-19 05:06:57 +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
|
e46033f0bb
|
fix regression due to r1395, updated Changelog, fix set initial window size when doing ps/pdf export from cli
|
2020-12-17 03:48:34 +01:00 |
Stefan Frederik
|
c13ca9218d
|
fix correct version syntax when saving in file
|
2020-12-17 02:01:38 +01:00 |
Stefan Frederik
|
5b4d6ab640
|
postscript fonts in ps/pdf export
|
2020-12-16 18:30:33 +01:00 |
Stefan Frederik
|
17124c761c
|
each schematic windows has its own "current later" (rectcolor)
|
2020-12-06 16:40:08 +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
|
76ef664757
|
undo data structures into xctx context
|
2020-12-04 00:30:13 +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
|
a64d69ed7a
|
some code refactoring, more globals in xctx context, fixed unnoticed shift-reduce conflict in expandlabel
|
2020-12-03 04:20:05 +01:00 |
Stefan Frederik
|
e279262f00
|
more globals into xctx context struct
|
2020-12-02 15:10:47 +01:00 |
Stefan Frederik
|
c8dc48f916
|
fix: load_wire() was using storeobject() for storing data, causing unwanted modify=1 flag (this has various side effects including changing window title)
|
2020-11-30 22:48:08 +01:00 |
Stefan Frederik
|
eda64b7ee1
|
removed event_reporting feature
|
2020-11-29 03:27:45 +01:00 |
Stefan Frederik
|
eb2d143e77
|
more consistent get_tok_value() regarding escaping
|
2020-11-29 01:59:17 +01:00 |
Stefan Frederik
|
d93826f61c
|
wrap long lines in source code, set default direction of pins to "B"(idirectional) if not specified in spice netlist (no *.PININFO information)
|
2020-11-22 00:51:24 +01:00 |
Stefan Schippers
|
7a67663330
|
fold long lines
|
2020-11-17 01:29:47 +01:00 |
Stefan Schippers
|
fac9cfe26b
|
folded long lines
|
2020-11-16 12:33:06 +01:00 |
Stefan Schippers
|
90f6d7ee90
|
cleanup debug messages
|
2020-11-16 02:25:43 +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
|
b24c9ed763
|
fix an issue if "xschem ./sch_file.sch" is given on commandline, in this case load_file() will set current_dirname to /some/path/., this confuses abs_sym_path, so remove trailing /. in this case.
|
2020-10-26 02:31:47 +01: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
|
9e38fbd173
|
fix wrong const declaration in save.c
|
2020-10-16 23:19:20 +02:00 |
Stefan Schippers
|
666f05c3d5
|
typo in spice.awk, fix check symbol storage before caching xctx->sym and xctx->symbols in load_sym_def(). Thanks to JL
|
2020-10-16 22:16:54 +02:00 |
Stefan Schippers
|
f0f1f9c2f0
|
optimization in preview function: no un-needed redraw of current schematic; no window title change when previewing xschem files
|
2020-10-16 18:24:06 +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
|
e7928727d6
|
all xctx context is now a dynamically allocated structure; no observable performace impact
|
2020-10-15 17:39:21 +02:00 |
Stefan Schippers
|
0eb706a67e
|
removed changes in strings due to variable refactoring
|
2020-10-15 17:05:30 +02:00 |
Stefan Schippers
|
c87f44a441
|
added "xchem load_symbol" command to load a symbol without binding to any instance, text edit attribute "Load" button will start in "$current_dirname"
|
2020-10-15 15:37:06 +02:00 |