You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(2) |
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
(1) |
Oct
|
Nov
|
Dec
(2) |
2007 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(1) |
2008 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2011 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
2019 |
Jan
(2) |
Feb
(1) |
Mar
(3) |
Apr
(6) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(6) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2021 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
(2) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2024 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: ctmedra <ct...@un...> - 2024-06-20 14:53:35
|
Thank you for your reply. The code without braces can be run with LTSpice but not with ngspice even activating the compatibility mode. Users running models from LTspice should look for these kind of mathematical expressions and add braces. Regards: Carlos --- Carlos Medrano Sánchez Departamento de Ingeniería Electrónica y Comunicaciones Escuela Universitaria Politécnica de Teruel Universidad de Zaragoza c/ Atarazana 2, 44003 Teruel email: ct...@un... Teléfono: 978 618174 Extensión: 861174 El 2024-06-20 14:43, Holger Vogt escribió: > Thanks for the report. > > The syntax which is supported by ngspice requires braces {} around > mathematical expressions like > > E2 out 0 POLY(1) 1 0 0 {0.999/1000} > > Regards > > Holger > > > _______________________________________________ > Ngspice-bugs mailing list > Ngs...@li... > https://urldefense.com/v3/__https://lists.sourceforge.net/lists/listinfo/ngspice-bugs__;!!D9dNQwwGXtA!TxRZL8exmp2OzVY2kxi_kKxhr_SNwz-MOiBti_10qV94NqsH3SISVsxq5EJqXrPeSenXta8M391zVYnAmTTCENJ_$ |
From: Holger V. <hol...@un...> - 2024-06-20 12:44:20
|
Thanks for the report. The syntax which is supported by ngspice requires braces {} around mathematical expressions like E2 out 0 POLY(1) 1 0 0 {0.999/1000} Regards Holger |
From: Carlos M. <ct...@un...> - 2024-06-20 09:50:26
|
Hi: I would like to report the behavior of polynomial sources that includes a division in the coefficients. An example is the following circuit: --------------- Possible bug when interpreting ltspice polynominal coefficients VIN1 1 0 1 RIN1 1 0 1e3 E2 out 0 POLY(1) 1 0 0 0.999/1000 R2 out 0 1e3 .OP .END --------------- When the circuit is run with LTSpice, the voltage at the out node is 0.000999 as expected, since the source at the out node is just the node 1 multiplied by 0.999/1000 = 0.000999. However, if I run this with ngspice the result at the out node is 0.999. So it seems that ngspice skips the division by 1000. It is not related to compatibility mode since the results is the same even if I define a .spiceinit file set ngbehavior=ltpsa. I realized this when using some models downloaded from Analog Devices that include this "0.999/1000" operation. I had to change them to "0.999e-3" to get reasonable results. Regards: Carlos Medrano -- Carlos Medrano Sánchez Departamento de Ingeniería Electrónica y Comunicaciones Escuela Universitaria Politécnica de Teruel Universidad de Zaragoza c/ Atarazana 2, 44003 Teruel email: ct...@un... Teléfono: 978 618174 Extensión: 861174 |
From: Marian B. <mar...@po...> - 2024-02-29 20:40:51
|
Hi, it appears that ngspice assumes that strtod behaves exactly as glibc's implementation does: Not reporting invalid input with `errno == EINVAL`, but keeping `errno` unmodified. The attached patch fixes the use of strtod so that it should work as expected on both glibc based systems and musl based systems. See https://www.openwall.com/lists/musl/2024/02/29/13 for a reasoning why musl's implementation of strtod is POSIX compliant and valid. Please consider applying the attached patch (or a different fix). Kind regards, Marian |
From: Amro T. <amr...@ma...> - 2023-08-23 16:05:09
|
Dear NG-Spice Developers, I'm Amro Tork. I'm the Founder of Mabrains. We are the ones who migrated the model cards to ngspice and tested it and made sure they work for GF180MCU PDK. We have a problem with one of the models that we are working on. We see that the equation based voltage dependent or temperature dependent capacitor doesn't work as expected when the equation has voltages or temper or temp variables.. I'm not sure why. Mohamed Monem here from Mabrainshas created multiple test cases that demonstrate that behavior. I would really appreciate if you can take a look at the test cases. Best Regards, Amro Tork Founder Email: amr...@ma... mailto:amr...@ma... Website:http://www.mabrains.com --------------------------------------------- Mabrains www.mabrains.com https://www.mabrains.com/ CONFIDENTIAL COMMUNICATION: This email and any attachments thereto may contain private and confidential material for the sole use of the intended recipient. Any review, copying, or distribution of this email (or any attachments thereto) by others is strictly prohibited. If you are not the intended recipient, please contact the sender immediately and permanently delete the original and any copies of this email and any attachments thereto. |
From: Amro T. <amr...@ma...> - 2023-08-23 16:00:08
|
Attaching test case. > On 08/23/2023 6:39 PM EEST Amro Tork <amr...@ma...> wrote: > > > Dear NG-Spice Developers, > > I'm Amro Tork. I'm the Founder of Mabrains. We are the ones who migrated the model cards to ngspice and tested it and made sure they work for GF180MCU PDK. > > We have a problem with one of the models that we are working on. > We see that the equation based voltage dependent or temperature dependent capacitor doesn't work as expected when the equation has voltages or temper or temp variables.. I'm not sure why. > > Mohamed Monem here from Mabrainshas created multiple test cases that demonstrate that behavior. I would really appreciate if you can take a look at the test cases. > > Best Regards, > Amro Tork > > Founder > > Email: amr...@ma... mailto:amr...@ma... > Website:http://www.mabrains.com > > > > --------------------------------------------- > Mabrains > www.mabrains.com https://www.mabrains.com/ > > CONFIDENTIAL COMMUNICATION: This email and any attachments thereto may contain private and confidential material for the sole use of the intended recipient. Any review, copying, or distribution of this email (or any attachments thereto) by others is strictly prohibited. If you are not the intended recipient, please contact the sender immediately and permanently delete the original and any copies of this email and any attachments thereto. > > Best Regards, Amro Tork Founder Email: amr...@ma... mailto:amr...@ma... Website:http://www.mabrains.com --------------------------------------------- Mabrains www.mabrains.com https://www.mabrains.com/ CONFIDENTIAL COMMUNICATION: This email and any attachments thereto may contain private and confidential material for the sole use of the intended recipient. Any review, copying, or distribution of this email (or any attachments thereto) by others is strictly prohibited. If you are not the intended recipient, please contact the sender immediately and permanently delete the original and any copies of this email and any attachments thereto. |
From: <ng...@at...> - 2022-03-08 08:22:32
|
Hi Holger, > The command with the most extensive 'cleaning' capability is the 'quit' > command. > > What about sending 'quit', ignoring the request to detach the dll and > then move on (new initialization?) ? That causes a segfault too. In the example I sent in the last email, I added `ngSpice_Command("quit");` after the first run, and removed `exit()` from `cb_exit`. Now it segfaults during the second `ngSpice_Init`. Attached is an updated example. Any idea what's happening now? I'm not experienced debugging C code. Attaching the updated script in case it's useful. > Why do you think, is it necessary to do more then 'remcirc' and 'destroy > all' ? I've had trouble when trying to that. I've not narrowed down what exactly causes them, but I'm getting segfaults with that too. If I discover more I'll email again. In the meantime I'm probably going to go back to using ngspice as a shared runtime library to avoid all these cleanup/reinit issues. Cheers, Sean > > Holger > > > _______________________________________________ > Ngspice-bugs mailing list > Ngs...@li... > https://lists.sourceforge.net/lists/listinfo/ngspice-bugs |
From: Holger V. <hol...@un...> - 2022-03-05 16:30:08
|
The command with the most extensive 'cleaning' capability is the 'quit' command. What about sending 'quit', ignoring the request to detach the dll and then move on (new initialization?) ? Initialization was supposed to be sent only once. Why do you think, is it necessary to do more then 'remcirc' and 'destroy all' ? Holger |
From: <ng...@at...> - 2022-03-05 14:19:49
|
Dear developers, The attached C++ source demonstrates a curious segfault. The code calls ngSpice_Init, runs a circuit sim, then calls remcirc to delete the circuit, then calls ngSpice_Init again and runs another circuit, at which point there is a crash. Removing either the remcirc command or the second ngSpice_Init call fixes it. I would hope that calling ngSpice_Init again would reset ngspice back to its default state and set the new callbacks, but apparently it leaves some old memory around? Alternatively if ngSpice_Init is not supposed to be called again, I would expect there to be a shutdown function available that cleans up, allowing ngSpice_Init to be called once more. It seems KiCad avoids this problem by loading libngspice.so at runtime using dlopen() each time a simulation is run, which implicitly resets ngspice's internal state. It would be good if there were a way to reset the state in the case of compile-time linking as well (if I missed an existing way to do this, I'd be pleased to find out!). Cheers, Sean Leavey |
From: Holger V. <hol...@un...> - 2022-02-15 15:11:16
|
Indeed this is an incompatibility. I will have a look. For now you may edit the model in ths4031.lib: ~~~ *Cc 0 10 Ct 35p Cc 0 10 Ct ... ... *.MODEL Ct CAP TC1=-0.0025 .MODEL Ct C CAP=35p TC1=-0.0025 ~~~ |
From: tadashi <tak...@ga...> - 2022-02-15 14:04:04
|
I encounter an error at using KiCad 6.02 warning, model type mismatch in line cc 0 10 ct 35p Circuit: KiCad schematic Error on line 0 : c.xu2.cc 0 xu2.10 xu2:ct 35p unknown parameter (xu2:ct) Error: circuit not parsed. |
From: Holger V. <hol...@un...> - 2021-03-03 07:52:28
|
Can't reproduce your results. This is what I am getting: ~~~~ ****** ** ngspice-34 : Circuit level simulation program ** The U. C. Berkeley CAD Group ** Copyright 1985-1994, Regents of the University of California. ** Copyright 2001-2020, The ngspice team. ** Please get your ngspice manual from http://ngspice.sourceforge.net/docs.html ** Please file your bug-reports at http://ngspice.sourceforge.net/bugrep.html ** Creation Date: Jan 29 2021 14:57:35 ****** Compatibility modes selected: ps a Circuit: test Error on line 4 : a.x1.a1 3 2 ! 4 ! null null 3 dflop_74xx Too many connections -- expecting model name but encountered other tokens. Simulation interrupted due to error! ngspice 1 -> ~~~~ Holger |
From: Glenn <gli...@ep...> - 2021-03-03 04:16:36
|
Hello, The following causes a seg fault: > test > .model dflop_74xx d_dff(rise_delay=12.5e-9 fall_delay=20e-9) > .model pu d_pullup > a.x1.a1 3 2 ~ 4 ~ null null 3 dflop_74xx > a2 2 pu > a3 4 pu > .control > tran 1e-5 1e-3 > .endc > .end It is caused by the inversion (~) applied to the null. Remove the inversion and the problem goes away. I don't know if it is specific to the d flop. Glenn |
From: Giles A. <ga...@bt...> - 2020-12-06 21:01:45
|
I found two plausible bugs with options (.option cards). Bug 1: Unrecognised options are silently ignored. That seems unhelpful. But if I add reporting in if_option() (ifspice.c), several unexpected errors are reported: ga@oldell:~/ngspice-33$ release/src/ngspice test.cir Warning: unknown option rndseed. Warning: unknown option history. Warning: unknown option oscompiled. Warning: unknown option program. Warning: unknown option prompt. Warning: unknown option noglob. Warning: unknown option brief. Warning: unknown option sourcepath. Warning: unknown option inputdir. Warning: unknown option x11lineararcs. Warning: unknown option interactive. Warning: unknown option stepsizelimit. Warning: unknown option __flag. Warning: unknown option __flag. Warning: unknown option inputdir. Warning: unknown option ngbehavior. Warning: unknown option svgwidth. ****** ** ngspice-33 : Circuit level simulation program ** The U. C. Berkeley CAD Group ** Copyright 1985-1994, Regents of the University of California. ** Copyright 2001-2020, The ngspice team. ** Please get your ngspice manual from http://ngspice.sourceforge.net/docs.html ** Please file your bug-reports at http://ngspice.sourceforge.net/bugrep.html ** Creation Date: Wed Dec 2 17:07:28 UTC 2020 ****** Warning: unknown option inputdir. Circuit: test pspice parsing ngspice 844 -> run Warning: unknown option sim_status. Doing analysis at TEMP = 27.000000 and TNOM = 27.000000 Initial Transient Solution -------------------------- Node Voltage ---- ------- No. of Data Rows : 59 ngspice 845 -> None of those "unknown option" messages come from the circuit file, and two come from .spiceinit. The names look like C-shell variables, and I find that I can examine ".option" values interactively with 'echo'. So it seems that shell variables mirror options, and can set them. Indeed, I get: ngspice 861 -> set var=val Warning: unknown option var. ngspice 862 -> I did not see that in the manual, but the book is big. After searching, perhaps the second sentence of 17.7 hints at this. To me, having shell variables change options of the same name is a bug (Bug 2). At least it is contrary to "The Principle of Least Astonishment", and I can see it driving mad a person who innocently uses an option name for a script variable. And there is already a dedicated shell command, "option", for setting the options. But fixing it now may cause problems to existing users. It seems that the new messages occur when cp_vset() (variable.c) calls cp_usrset() (options.c). My guess is that the right fix for Bug 1 would be to add an argument to if_option() so that it knows when it is called from C-shell, and can suppress the message. The best fix for Bug 2 might be to add a warning whenever a variable assignment successfully changes an option, recommending the "option" command. Then, after a few releases, remove the behaviour. Also, it seems that option cards are removed from the deck and parsed early, in (frontend/inp.c). Does that mean that INPdoOpts() in src/spicelib/parser/inpdoopt.c can never be called, and should be removed? |
From: Giles A. <ga...@bt...> - 2020-08-01 13:15:44
|
If the question is "where should NGspice create temporary files", I think the completely correct answer is different for Windows and Unix-like OS. Windows: use TEMP (or TMP) environment variable. If not defined, I would guess $HOME/temp is a good fallback. (C:\TEMP often exists, but is a bad idea for multi-user systems, as users will be unable to create it.) Unix-like: /tmp is the standard (for example, Linux File Hierarchy Standard). Ideally a function that guarantees a unique name, like mkstemps() should be used. However, the current $HOME/tmp (temp on Windows) seems OK. The users of ngspice must already be technically aware, and should know what to do if they see the error message when the directory does not exist.. LFHS considers using $HOME to be not polite. Giles On 31 Jul 2020, at 13:01, Holger Vogt wrote: > >> I needed to create $HOME/tmp, but I assume that is intended. > > I've been stumbling over this as well. Probably it is just history. > > Would there be a better place? Maybe simply the current working directory? > > Holger > > > _______________________________________________ > Ngspice-bugs mailing list > Ngs...@li... > https://lists.sourceforge.net/lists/listinfo/ngspice-bugs |
From: Holger V. <hol...@un...> - 2020-07-31 12:01:27
|
> I needed to create $HOME/tmp, but I assume that is intended. > I've been stumbling over this as well. Probably it is just history. Would there be a better place? Maybe simply the current working directory? Holger |
From: Giles A. <ga...@bt...> - 2020-07-31 11:48:34
|
Holger. Thank you very much for the fast fix. Both problems are gone. I needed to create $HOME/tmp, but I assume that is intended. Giles On 30 Jul 2020, at 15:56, Holger Vogt wrote: > I have pushed a fix for the first report (crashing after Hardcopy, Quit) to ngspice branch pre-master. > > Please check, if the extra 'time' is gone with this fix also. > > Holger > > > Am 30.07.2020 um 16:46 schrieb Giles Atkinson: >> Holger, >> Thank you. Yesterday, I found another problem with "hardcopy", and it is a strange one. >> I run this simulation, and in the X11 window everything looks correct. >> A test circuit for ngSPICE plotting >> Vtest t 0 sin(0 1 2000 0 0 0) >> Vtest2 t1 0 sin(0 1 2234 0 0 0) >> .save t t1 >> .control >> tran 10u 5m >> plot t t1 V(t)+V(t1) >> .endc >> If I use "hardcopy" and view the file with Ghostscript, there are 6 vector plots not 3! >> There are 3 extra lines plotted with the name "time" and all values are zero. >> Again, this was not in version 30. >> Giles > > > _______________________________________________ > Ngspice-bugs mailing list > Ngs...@li... > https://lists.sourceforge.net/lists/listinfo/ngspice-bugs |
From: Holger V. <hol...@un...> - 2020-07-30 14:57:03
|
I have pushed a fix for the first report (crashing after Hardcopy, Quit) to ngspice branch pre-master. Please check, if the extra 'time' is gone with this fix also. Holger Am 30.07.2020 um 16:46 schrieb Giles Atkinson: > Holger, > > Thank you. Yesterday, I found another problem with "hardcopy", and it is a strange one. > I run this simulation, and in the X11 window everything looks correct. > > A test circuit for ngSPICE plotting > > Vtest t 0 sin(0 1 2000 0 0 0) > Vtest2 t1 0 sin(0 1 2234 0 0 0) > .save t t1 > > .control > tran 10u 5m > plot t t1 V(t)+V(t1) > .endc > > If I use "hardcopy" and view the file with Ghostscript, there are 6 vector plots not 3! > There are 3 extra lines plotted with the name "time" and all values are zero. > Again, this was not in version 30. > > Giles > > |
From: Holger V. <hol...@un...> - 2020-07-28 21:32:47
|
Giles, thanks for the report. I have repoduced the bug. There has been a major rewrite of plotting, unfortunately the Hardcopy button has not been tested. I will have a look. Holger |
From: Giles A. <ga...@bt...> - 2020-07-28 19:31:17
|
Hello, I built the ngspice-32 tarball on up-to-date Debian 10 with 64-bit Intel X86 hardware. If I press "Hardcopy" and then "Quit" in the X11 plot window, the program exits with free(): invalid size Aborted on the terminal. That did not happen with my previous version, ngspice-30 from the Debian package. Thanks, Giles |
From: Calin A. <cal...@gm...> - 2020-07-19 19:25:00
|
Hi, The very last #else in frontend/com_sysinfo.c needs a version of the function get_sysmem(). Probably just a silent return -1. Best regards, Calin |
From: Cho, Y. (SLSI) <Yon...@so...> - 2020-04-03 09:44:22
|
Hi, I am trying to build CUSPICE+5 on centos6.10. After some modifications, I was able to compile CUSPICE+5, but when I execute some spice examples I encountered a segmentation fault. Detail of my source modifications and test is as follows. -------- modification: I encountered a compile error ( https://sourceforge.net/p/ngspice/mailman/message/36318643/ ) without any modification, so I added two sentence into src/frontend/parse-bison.y . #define YY_HEADER_EXPORT_START_CONDITIONS 1 #define YY_YY_Y_TAB_H_INCLUDED 1 example : ngspice-ngspice/examples/CUSPICE/Test_Current_Source_Model.net error message : Error(parse.c--checkvalid): V(1): no such vector. Segmentation fault (core dumped) ngspice Test_Current_Source_Model.net -------- Do you have any idea? Thanks in advance. Best Regards, Cho |
From: astx <as...@aw...> - 2019-04-08 09:21:48
|
Dear Holger, thank you! Maybe this is exactly what LTSpice does in the background... I can live with this workaround. Maybe you want to add some documentation example for the plot command to do so. Feel free to reuse and/or change my posted example. Best regards, Toni Zitat von Holger Vogt <hol...@un...>: > If you would linearize your sim data the same way > > * prepare for linearize sim data > let lin-tstart=0 > let lin-tstop={$c}.simtime > let lin-tstep={$c}.stepsize > * linearize generates a new tran data set that fits all data > linearize > > after each tran run, and have chosen an adequate stepsize, then all > data refer to the same coordinate system for sim and soa data. > > Rewriting the plot procedure of course is possible, but will be a > major task, needing lots of (currently unavailable) resources. > > Best regards > Holger |
From: Holger V. <hol...@un...> - 2019-04-08 08:44:20
|
If you would linearize your sim data the same way * prepare for linearize sim data let lin-tstart=0 let lin-tstop={$c}.simtime let lin-tstep={$c}.stepsize * linearize generates a new tran data set that fits all data linearize after each tran run, and have chosen an adequate stepsize, then all data refer to the same coordinate system for sim and soa data. Rewriting the plot procedure of course is possible, but will be a major task, needing lots of (currently unavailable) resources. Best regards Holger |
From: astx <as...@aw...> - 2019-04-06 16:07:39
|
For example I have 8 tran runs with same stepsize and end time parameter. Each result has a different number of vector data... tran run tran1: tran 1E-06 0.013 time : time, real, 13075 long [default scale] tran run tran4: tran 1E-06 0.013 time : time, real, 13096 long [default scale] tran run tran8: tran 1E-06 0.013 time : time, real, 13100 long [default scale] tran run tran12: tran 1E-06 0.013 time : time, real, 13113 long [default scale] tran run tran16: tran 1E-06 0.013 time : time, real, 13125 long [default scale] tran run tran20: tran 1E-06 0.013 time : time, real, 13129 long [default scale] tran run tran24: tran 1E-06 0.013 time : time, real, 13317 long [default scale] tran run tran28: tran 1E-06 0.013 time : time, real, 13265 long [default scale] So if I understand you correctly it should not be possible to merge all tran runs into one plot and the fact that it mostly works is by accident? BTW: have managed to expand my soa data to get gnuplot generated plots using these trick ... * here we unload our net by loading an empty one source empty.net * use the first op plot name space for compose values setplot $c * generate a tran plot with exactly the same number of data points as our soa compose table has let newstep=simtime/200 * here we generate a fresh tran plot tran $&newstep $&simtime $&newstep .endc .include load_soa_data.ngspice .control * prepare for linearize soa data let lin-tstart=0 let lin-tstop={$c}.simtime let lin-tstep={$c}.stepsize * linearize generates a new tran data set with more data points of our compose table linearize $allsoas * combined soa plot for each tran plot for device 1 set mypl1 = ( ) set soalines = "ixth80n20l_soa25_y vs ixth80n20l_soa25_x ixth80n20l_soa75_y vs ixth80n20l_soa75_x" foreach ii $tranplots set mypl1 = ( $mypl1 {$ii}.i_mq22 vs {$ii}.v_mq22 ) end * plot stepped results in one plot plot $mypl1 $soalines loglog xlimit 1 200 ylimit 0.1 20 if $gen_png = 1 gnuplot soa_combined1 $mypl1 $soalines loglog xlimit 1 200 ylimit 0.1 20 end compose table file "load_soa_data.ngspice" content: .control compose ixth80n20l_soa25_x values 1 2 3 4 5 6 7 8 9 ... 200 ... set allsoas=( ixth80n20l_soa25_x ixth80n20l_soa25_y ... tta1943_soa25_y ) .endc Best regards, Toni |