Commit Graph

68 Commits

Author SHA1 Message Date
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
Stefan Schippers 4362c44a8d fix various regressions: escape the ? pattern in awk, be more selective in ? node multiplicity tag recognition in spice.awk, yet some more fixes in abs_sym_path thanks to JL 2020-10-15 13:38:27 +02:00
Stefan Schippers 1c2bbc609f added "xschem samefile" command to verify if 2 files are the same entity by comparing inodes, pwd_dir set in xinit.c to $env(PWD) if PWD var is defined as it does not dereference symlinks 2020-10-13 17:51:14 +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 644641ed23 Preserve existing text (notably license info) in xschem files under version "v" tag; some code refactoring, removed obsoleted comments 2020-10-09 17:29:04 +02:00
Stefan Schippers 051b20c014 code formating, use some intermediate variables for code readability, line length limited to 124 chars 2020-10-04 23:55:43 +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 cd556d4d6e fixed typo in read_line() fscanf... 2020-10-03 19:50:29 +02:00
Stefan Schippers f8708d60c7 replace all fscanf(fd, "%*1[\n]"); with fscanf(fd, " "), so CRLF will be handled as well as LF. 2020-10-03 12:49:45 +02:00
Stefan Schippers 8807c7250d various graphic rendering fixes for the new "view instance pin net names" function. Fixed some errors in merge schematic in callback.c and paste.c 2020-10-02 03:21:22 +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 d0b659c455 fix potential uninitialized rot, flip variables for text rotation in load_sym_def() 2020-09-30 03:26:45 +02:00
Stefan Schippers 392e7f9b57 "@#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. Set filename in recent history also when given on command line. 2020-09-30 00:55:34 +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 f699d187e6 save embedded components not only on first embeded instance but on all of them. This makes reloading easier and the overall thing much simpler. In LCC schematic allow get_sym_type() to read symbol data from folowing embedded tags "[...]" if any. Fix potential segfault in preview_window() 2020-09-29 11:17:10 +02:00
Stefan Schippers e7b0a5b9a3 better read_line(): handle unextected EOFs (noeol last lines) 2020-09-28 15:21:26 +02:00
Stefan Schippers ebdd4e827c read_line() function improvements, "]" tag recognized also if there is garbage following it 2020-09-28 08:35:00 +02:00
Stefan Schippers 59d4608ac0 completely eliminated match_symbol() (which in turn may call load_sym_def() ) calls from within load_sym_def(), even for aligning LCC schematic pin ordering to symbol. A dedicated "align_sch_pins_with_sym()" together with "get_sym_type()" does the job in O(N) instead of using a sort routine. 2020-09-27 12:41:36 +02:00
Stefan Schippers ac1aa29281 more robust and efficient symbol type probing in get_symbol_type() 2020-09-26 10:30:16 +02:00
Stefan Schippers b5d21e54f1 removed debug messages 2020-09-26 01:29:28 +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
Stefan Schippers 6990d48d1a remove old obsolete comments 2020-09-25 18:09:49 +02:00
Stefan Schippers b2e7c28127 remove old obsolete comments 2020-09-25 17:54:50 +02:00
Stefan Schippers 28e2085e47 just some code cleanups & comments 2020-09-25 17:11:43 +02:00
Stefan Schippers c627f21057 optimize previous fix, avod skipping lines after embedded symbol (embed_fd) 2020-09-24 17:46:58 +02:00