You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(5) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
(6) |
Mar
(41) |
Apr
(23) |
May
(11) |
Jun
(2) |
Jul
|
Aug
|
Sep
(9) |
Oct
(2) |
Nov
(1) |
Dec
(1) |
2008 |
Jan
(6) |
Feb
(1) |
Mar
(23) |
Apr
(18) |
May
(21) |
Jun
(13) |
Jul
(34) |
Aug
(5) |
Sep
(1) |
Oct
(4) |
Nov
|
Dec
(4) |
2009 |
Jan
|
Feb
(5) |
Mar
(5) |
Apr
(10) |
May
(1) |
Jun
(11) |
Jul
(1) |
Aug
|
Sep
|
Oct
(2) |
Nov
(3) |
Dec
(13) |
2010 |
Jan
(10) |
Feb
(4) |
Mar
(28) |
Apr
(3) |
May
(38) |
Jun
(22) |
Jul
(92) |
Aug
(154) |
Sep
(218) |
Oct
(45) |
Nov
(20) |
Dec
(1) |
2011 |
Jan
(33) |
Feb
(15) |
Mar
(32) |
Apr
(33) |
May
(48) |
Jun
(35) |
Jul
(7) |
Aug
|
Sep
(11) |
Oct
(5) |
Nov
|
Dec
(7) |
2012 |
Jan
(56) |
Feb
(11) |
Mar
(6) |
Apr
|
May
(128) |
Jun
(59) |
Jul
(21) |
Aug
(16) |
Sep
(24) |
Oct
(39) |
Nov
(12) |
Dec
(12) |
2013 |
Jan
(14) |
Feb
(61) |
Mar
(97) |
Apr
(46) |
May
(13) |
Jun
(23) |
Jul
(12) |
Aug
(25) |
Sep
(9) |
Oct
(81) |
Nov
(73) |
Dec
(45) |
2014 |
Jan
(36) |
Feb
(57) |
Mar
(20) |
Apr
(41) |
May
(43) |
Jun
(11) |
Jul
(14) |
Aug
(32) |
Sep
(9) |
Oct
(27) |
Nov
(21) |
Dec
(6) |
2015 |
Jan
(14) |
Feb
(23) |
Mar
(1) |
Apr
(19) |
May
(40) |
Jun
(11) |
Jul
(1) |
Aug
(2) |
Sep
(14) |
Oct
(10) |
Nov
(9) |
Dec
(13) |
2016 |
Jan
(4) |
Feb
(3) |
Mar
(7) |
Apr
|
May
(4) |
Jun
(13) |
Jul
(8) |
Aug
(3) |
Sep
(4) |
Oct
(1) |
Nov
|
Dec
|
2017 |
Jan
(6) |
Feb
(1) |
Mar
(1) |
Apr
(7) |
May
(10) |
Jun
(5) |
Jul
(7) |
Aug
(9) |
Sep
|
Oct
(1) |
Nov
(5) |
Dec
|
2018 |
Jan
|
Feb
|
Mar
(5) |
Apr
|
May
|
Jun
(3) |
Jul
(6) |
Aug
|
Sep
(2) |
Oct
(54) |
Nov
(47) |
Dec
(53) |
2019 |
Jan
(23) |
Feb
(24) |
Mar
(19) |
Apr
(15) |
May
(5) |
Jun
(34) |
Jul
(9) |
Aug
(9) |
Sep
(3) |
Oct
(2) |
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
(7) |
Apr
(7) |
May
(5) |
Jun
(15) |
Jul
(22) |
Aug
(28) |
Sep
(13) |
Oct
(9) |
Nov
(17) |
Dec
(13) |
2021 |
Jan
(5) |
Feb
(1) |
Mar
(1) |
Apr
(9) |
May
(21) |
Jun
(9) |
Jul
|
Aug
(6) |
Sep
(16) |
Oct
|
Nov
(1) |
Dec
(6) |
2022 |
Jan
|
Feb
|
Mar
|
Apr
(7) |
May
(6) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(11) |
Sep
(21) |
Oct
(5) |
Nov
(1) |
Dec
(1) |
2024 |
Jan
(1) |
Feb
(4) |
Mar
|
Apr
(7) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
From: pito <pi...@vo...> - 2010-09-04 17:23:17
|
FYI: f+ f- f* f/ duration (@25MHz): > : measure oktimer-start ok400 0 do _pi fdup fdrop fdrop loop oktimer-stop 400 s>f f/ fs. ." sec"; ok > measure 2.6214392E-5 sec ok > : measure oktimer-start ok400 0 do _pi fdup f+ fdrop loop oktimer-stop 400 s>f f/ fs. ." sec"; ok > measure 1.12721896E-3 sec ok > : measure oktimer-start ok400 0 do _pi fdup f- fdrop loop oktimer-stop 400 s>f f/ fs. ." sec"; ok > measure 4.0108027E-3 sec ok > : measure oktimer-start ok400 0 do _pi fdup f* fdrop loop oktimer-stop 400 s>f f/ fs. ." sec"; ok > measure 4.6923761E-3 sec ok > : measure oktimer-start ok400 0 do _pi fdup f/ fdrop loop oktimer-stop 400 s>f f/ fs. ." sec"; ok > measure 1.33169138E-2 sec ok > |
From: pito <pi...@vo...> - 2010-09-04 16:49:48
|
Nooop, fs. still slow, even with fconstants: > measure 3.1415851E-15 545 ms ok > measure 3.1415915E15 1646 ms ok > measure -3.1415915E15 1646 ms ok > measure -3.1415851E-15 545 ms ok P. |
From: pito <pi...@vo...> - 2010-09-04 15:58:52
|
I did replace all those conversions within .fs with constants: 1 s>f 2 s>f f/ fconstant _half 1 s>f fconstant _1 2 s>f fconstant _2 4 s>f fconstant _4 8 s>f fconstant _8 10 s>f fconstant _10 it is now 3x faster: > measure -3.1415851E-15 545 ms ok > P. |
From: Leon N M. <leo...@gm...> - 2010-09-04 14:01:42
|
> 1. it seems the fs. routine presition itself is 7 digits which is > good > 2. it seems the f/ most notably with larger operands (eg. +/- 1e15) > introduces errors so the result's precision drops to 6 digits or > less Yes, the number of decimal points it prints should be related to the size of the number -- I just trusted an algorithm in the paper I linked to handle it correctly. 24 bit significands can hold about as much as 7 decimal digits, so that's about the most you should see. > 3. what is interesting the fs. conversion took seconds (atmega > @25MHz)e.g.: This is partially a mistake on my part -- there are a number of things like "10 s>f" in the code which I should really replace with "[ 10 s>f swap ] literal literal", or something like that so that they don't have to be calculated repeatedly at run time. I meant to do it before release but forgot -- I'll do it today. Even with that change, it still may be slow. -Leon |
From: pito <pi...@vo...> - 2010-09-04 09:53:30
|
Leon, I did a lot of various tests I am not going to publish and to make the story short: 1. it seems the fs. routine presition itself is 7 digits which is good 2. it seems the f/ most notably with larger operands (eg. +/- 1e15) introduces errors so the result's precision drops to 6 digits or less 3. what is interesting the fs. conversion took seconds (atmega @25MHz)e.g.: \ marker -test1 : measure timer-start -1234567890. d>f fs. cr timer-stop prnt_elapsed_ms ." msec" ; > measure -1.2345674E9 1174 msec ok > \ marker -test1 : measure timer-start _-1 _pi f* _1e15 f* fs. cr timer-stop prnt_elapsed_ms ." msec" ; > measure -3.1415915E15 1709 msec ok > Pito Pito |
From: pito <pi...@vo...> - 2010-09-04 08:26:00
|
Leon, thanks! I am very happy that you publish the float updates! Pito. PS: Leon, is there any chance to name the .zip updates with e.g. a date in it as it is uneasy to recognise and track the files based on those codes like "..-float-9e1ace1.zip" P. > > PS I'm not sure if these type of updates are of > general interest, but there's > been a lot of floating point stuff going around, > so I'll keep sending them for > the moment. |
From: Leon N. M. <leo...@gm...> - 2010-09-04 03:13:41
|
I've finally added a function to output floats (in scientific notation): > 355 s>f 113 s>f f/ fs. 3.1415927 ok > 1 s>f f2/ f2/ f2/ f2/ fs. 6.25E-2 ok > 12345 s>f fs. 1.23449993E4 ok You can see from the second example that rounding problems do happen. That can be avoided... if you don't mind coding with decuple length integers (need to be able to store up to 2^154). See the pdf at: http://portal.acm.org/citation.cfm?id=93559 So I'm going to stick with this simpler -- but less accurate -- method for the moment (also in the pdf) -- I'll work on input before spending more time with output (similar problems exist -- maybe there are easier solutions). As usual, the code is available at: http://github.com/lnmaurer/amforth-float -Leon PS I'm not sure if these type of updates are of general interest, but there's been a lot of floating point stuff going around, so I'll keep sending them for the moment. |
From: <an...@ki...> - 2010-09-03 22:50:57
|
If I have to choose between "fast" or "ugly" then case sensitive being fast and beautiful it is. If I went with personal convenience and C# et al I would be running windows and certainly wouldn't be contributing to Open Source. Come up with a reasoned argument (other than personal convenience) that shows where and how case insensitive is faster and better then case sensitive (in real processing cycles, with proofs showing real instructions) and I will agree with you. Until then (to a computation scientist and experienced embedded engineer) the discussion is a complete waste of text inches. It takes two to tango. On 03/09/10 20:28, pito wrote: > So can we see light at the end of the tunnel? (hopefuly it's not the > light of an incoming train..). Have a nice weekend! P. >> >> I want a smart solution, not a fast and ugly one. >> And smart means >> really smart. And I take the time for it... I've >> got some ideas >> already... >> >> Matthias > > > > ------------------------------------------------------------------------------ > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > Amforth-devel mailing list > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel > |
From: pito <pi...@vo...> - 2010-09-03 21:13:56
|
The timer routine with automated tck_ms (float) calculation (I had to test the tck_ms calculation a little bit..): ... \ MEASURE TIME IN SECONDS (FLOAT) decimal 2variable elapsed_ticks \ tck_ms = 1 / f_cpu / timer2_overflow_count / timer2_prescaler_ratio \ tck_ms = 1 / f_cpu / 256 / 1024 f_cpu d>f 256 s>f f/ 1024 s>f f/ _1 fswap f/ fconstant tck_ms : timer-start ( -- ) timer 2@ elapsed_ticks 2! ; : timer-stop ( -- f ) timer 2@ d>f elapsed_ticks 2@ d>f f- tck_ms f* ; \ print elapsed time in ms e.g. 1234567 ms : prnt_elapsed_ms ( f -- ) _1e3 f* f>d d. ; P. |
From: pito <pi...@vo...> - 2010-09-03 19:28:38
|
So can we see light at the end of the tunnel? (hopefuly it's not the light of an incoming train..). Have a nice weekend! P. > > I want a smart solution, not a fast and ugly one. > And smart means > really smart. And I take the time for it... I've > got some ideas > already... > > Matthias |
From: Matthias T. <mt...@we...> - 2010-09-03 18:37:53
|
Pito, > I do understand the issue with comparing words and not single chars > in you implementation, but tell me please - what is the major reason > for your hardcore position of not wanting to have a switch for case > sensitivity/insensitivity? I want a smart solution, not a fast and ugly one. And smart means really smart. And I take the time for it... I've got some ideas already... Matthias |
From: pito <pi...@vo...> - 2010-09-03 18:14:14
|
Matthias, yes, sometimes I never give up.. I do understand the issue with comparing words and not single chars in you implementation, but tell me please - what is the major reason for your hardcore position of not wanting to have a switch for case sensitivity/insensitivity? Pito ... (besides that I do > not want it) |
From: Matthias T. <mt...@we...> - 2010-09-03 17:49:41
|
Pito, you never give, yea? > the 4th is using a constant "casesensitive" for switching case > sensitivity on/off. I've found that only "compare.4th" is using this > constant (compares two strings). In C sources there is "comp_4th.c" > which does mention sensitivness, but not using the constant. Can > this somehow be used for amforth as well? The idea yes, but not the implementation. The most important issue (besides that I do not want it) is that icompare works on two characters at the same time. And that the case is only significant for 7bit ASCII, not more not less. Matthias |
From: pito <pi...@vo...> - 2010-09-03 16:54:28
|
Hi, for experimenters - very quick test for floating point math with elapsed time indication. Requires Leon's float lib, Pito's last floatconstants and stopwatch. To see result uncomment print. Benchmark (run on atmega1284P @25MHz): > measure_doloop_with_operation Elapsed 8996 msec ok > Pito \ Quick test of float marker -quicktestfloat fvariable tmp : measure_doloop_with_operation timer-start 100 0 do _pi _ln2 f* tmp f! tmp f@ _e**pi f/ tmp f! tmp f@ _log3 f+ tmp f! tmp f@ _e f- tmp f! \ print result \ i ." I= " . tmp f@ _1e9 f* f>d ." RESULT= " d. ." <<< precise result = -2147058546.4206755 " cr loop timer-stop ." Elapsed " prnt_elapsed_ms ." msec" ; |
From: pito <pi...@vo...> - 2010-09-03 16:40:39
|
The last update: ----------------------------- marker _floatconstants_ \ some float constants 355 s>f 113 s>f f/ fconstant _pi 355 s>f 226 s>f f/ fconstant _pi_half 355 s>f 452 s>f f/ fconstant _pi_quarter 8119 s>f 5741 s>f f/ fconstant _sqrt2 5741 s>f 8119 s>f f/ fconstant _sqrt2half 13755 s>f 7953 s>f f/ fconstant _sqrt3 27379 s>f 8658 s>f f/ fconstant _sqrt10 25946 s>f 9545 s>f f/ fconstant _e 4319 s>f 6231 s>f f/ fconstant _ln2 5225 s>f 4756 s>f f/ fconstant _ln3 12381 s>f 5377 s>f f/ fconstant _ln10 2718 s>f 9029 s>f f/ fconstant _log2 1074 s>f 2251 s>f f/ fconstant _log3 10691 s>f 462 s>f f/ fconstant _e**pi 26120 s>f 1163 s>f f/ fconstant _pi**e 1 s>f 2 s>f f/ fconstant _half 1 s>f 3 s>f f/ fconstant _third 5 s>f 127 s>f f/ fconstant _mm2inch 10 s>f fconstant _10 100 s>f fconstant _1e2 1000 s>f fconstant _1e3 10000 s>f fconstant _1e4 _1e3 _1e3 f* fconstant _1e6 _1e6 _1e3 f* fconstant _1e9 _1e9 _1e3 f* fconstant _1e12 _1e12 _1e3 f* fconstant _1e15 _1e15 _1e3 f* fconstant _1e18 1 s>f 10 s>f f/ fconstant _1e-1 _1e-1 _1e-1 f* fconstant _1e-2 _1e-2 _1e-1 f* fconstant _1e-3 _1e-3 _1e-1 f* fconstant _1e-4 _1e-3 _1e-3 f* fconstant _1e-6 _1e-6 _1e-3 f* fconstant _1e-9 _1e-9 _1e-3 f* fconstant _1e-12 _1e-12 _1e-3 f* fconstant _1e-15 _1e-15 _1e-3 f* fconstant _1e-18 0 s>f fconstant _0 -1 s>f fconstant _-1 1 s>f fconstant _1 |
From: pito <pi...@vo...> - 2010-09-03 08:14:00
|
Hi Matthias, the 4th is using a constant "casesensitive" for switching case sensitivity on/off. I've found that only "compare.4th" is using this constant (compares two strings). In C sources there is "comp_4th.c" which does mention sensitivness, but not using the constant. Can this somehow be used for amforth as well? Pito |
From: pito <pi...@vo...> - 2010-09-02 12:20:22
|
Hi, another example: \ : measure_doloop_empty timer-start 10000 0 do \ here put the stuff to measure loop timer-stop prnt_elapsed_ms ; \ fvariable tmp : measure_doloop_with_operation timer-start 10000 0 do _pi _ln2 f* tmp f! loop timer-stop prnt_elapsed_ms ; ------------------ Example: results in ms > measure_doloop_empty 47 ok > measure_doloop_with_operation 109274 ok > So the operation "tmp = pi * ln2" takes (109.274sec - 0.047sec)/10000 = 10.92ms per operation. Not fast, however. Pito |
From: pito <pi...@vo...> - 2010-09-02 11:52:32
|
Hi, here is a routine for time measurement. It measures time in float seconds. Requires Leon's float lib and Pito's floatconstants lib. You may change the granularity by changing the prescaler, and the constant tck_ms. Mind the f_cpu as well. \ 2010-09-02 PITO - FLOAT TIME MEASUREMENT ATMEGA 1284P \ based on 2007-12-26 EW w4_clock_tick.fs \ words: timer 2variable \ tick_isr interupt service routine: increments timer \ +ticks register and enable interupt \ -ticks disable interupt marker -timer decimal 2variable timer 1. 2constant _one 0. 2constant _zero \ overflow2 interupt service routine \ increment tick : tick_isr _one timer 2@ d+ timer 2! ; hex \ enable ticks \ overflow: every f_cpu/256/1024 : +ticks 7 TCCR2B c! ( 111b = f_cpu clock/1024 ) 0 ASSR c! ( source: internal clock f_cpu) ['] tick_isr TIMER2_OVFAddr int! ( register interrupt ) _zero timer 2! TIMSK2 c@ 01 or TIMSK2 c! ( enable timer2 interrupt ) ; \ disable ticks : -ticks TIMSK2 c@ fe and TIMSK2 c! ( clr timer2 interrupt ) ; \ MEASURE TIME IN SECONDS (FLOAT) decimal 2variable elapsed_ticks \ f_cpu = 11059200 \ tck_ms = f_cpu \ 256 \ 1024 23703703. d>f _1e-9 f* fconstant tck_ms : timer-start ( -- ) timer 2@ elapsed_ticks 2! ; : timer-stop ( -- f ) timer 2@ d>f elapsed_ticks 2@ d>f f- tck_ms f* ; \ print elapsed time in ms 12345 = 12.345sec : prnt_elapsed_ms ( f -- ) _1e3 f* f>d d. ; ------------------------------------------ Example: > +ticks ok > timer-start ok > timer-stop prnt_elapsed_ms 16023 ok > .......Elapsed time 16.023sec. Pito |
From: pito <pi...@vo...> - 2010-09-01 22:53:16
|
hmmm.. imagine 3 cell zen float: 2 cells with double number, 1 cell with exponent, the dynamic range +/- 2.147483648E+/-9863 We may count all Higgs bosons in 10^119 multiverses (assuming the other universes are the same size as ours is) (:-))). Pito > zenfloat uses 2 cells for a float number: > first - mantissa > second - exponent > so the math is done much easier than the ieee one > (Leon does). > To get the Leon's precision (23 bit mantissa) we > need 3 cells with > the zen however: (2 cells mantissa 1 cell > exponent), if even doable > with the zen libs.. > Pito > > .. > > > source library named > > > "zen float" (e.g. 4th) that could be useful as > > > well. At least to not do > > |
From: pito <pi...@vo...> - 2010-09-01 21:53:10
|
zenfloat uses 2 cells for a float number: first - mantissa second - exponent so the math is done much easier than the ieee one (Leon does). To get the Leon's precision (23 bit mantissa) we need 3 cells with the zen however: (2 cells mantissa 1 cell exponent), if even doable with the zen libs.. Pito .. > > source library named > > "zen float" (e.g. 4th) that could be useful as > > well. At least to not do |
From: pito <pi...@vo...> - 2010-09-01 21:38:29
|
.. the zen float seems to be a different format than Leon's float. Not sure zenfloat is IEEE 754 like stuff.. P. ----- PŮVODNÍ ZPRÁVA ----- Od: "Matthias Trute" <mt...@we...> Komu: "Everything around amforth" <amf...@li...> Předmět: Re: [Amforth-devel] Float testing - simple integration Datum: 1.9.2010 - 20:35:31 > Hi, > > just a side note: I was just pointed to a forth > source library named > "zen float" (e.g. 4th) that could be useful as > well. At least to not do > all the work again. > > I highly appreciate your work, Leon (and Pito) > > Matthias > > > > ------------------------------------------------------------------------------ > > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > Amforth-devel mailing list > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel |
From: pito <pi...@vo...> - 2010-09-01 20:02:16
|
Matthias, I've downloaded ~8MB of the 4th stuff 2m ago. But, as I wrote, these sources (and a tons of others) need a case insensitive amforth (e.g. see fpout.4th).. Pito > > just a side note: I was just pointed to a forth > source library named > "zen float" (e.g. 4th) that could be useful as > well. At least to not do > all the work again. > > I highly appreciate your work, Leon (and Pito) > > Matthias > > > > ------------------------------------------------------------------------------ > > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > Amforth-devel mailing list > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel |
From: Matthias T. <mt...@we...> - 2010-09-01 18:35:46
|
Hi, just a side note: I was just pointed to a forth source library named "zen float" (e.g. 4th) that could be useful as well. At least to not do all the work again. I highly appreciate your work, Leon (and Pito) Matthias |
From: pito <pi...@vo...> - 2010-09-01 12:19:44
|
Hi, here is a very simple integration (no special method applied) for testing f+ and f*. It integrates y=x^3 from A to B. Currently A=-B (e.g. -1 to +1) thus the result shall be zero. Still thinking on N in the loop (:-)). Pito ------------------------- marker -testadd \ very simple integration to test float add, sub \ needs float constants \ INTEGRAL from A to B of the function Y=X^3 \ A=-B, So the result shall be 0 -1 s>f fconstant _-1 0 s>f fconstant _0 \ FROM A TO B -1 s>f fconstant A A _-1 f* fconstant B 300 constant N B A f- N s>f f/ fconstant delta fvariable INTG fvariable X fvariable Y variable NLoop : p6 _1e6 f* f>d d. ." .1e-6 " ; : p3 _1e3 f* f>d d. ." .1e-3 " ; : Y=X^3 fdup fdup f* f* ; : Y=X^2 fdup f* ; : print_INTG INTG f@ p3 ; : INTEGRAL A X f! _0 INTG f! N 1 + NLoop ! NLoop @ 0 do X f@ Y=X^3 Y f! \ print X, Y cr cr X f@ ." X=" p6 cr Y f@ ." Y=" p3 Y f@ INTG f@ f+ INTG f! X f@ delta f+ X f! \ print cr INTG f@ ." INTG=" p3 loop \ print cr cr ." RESULT=" print_INTG ; ----------------- Ex: ..... X=1000004 .1e-6 Y=1000 .1e-3 INTG=1 .1e-3 RESULT=1 .1e-3 ok > |
From: pito <pi...@vo...> - 2010-09-01 08:42:16
|
Leon, great! See the test: \ test float small and large numbers f* f/ \ needs float constants marker _tstflt_ 314159265. d>f 100000000. d>f f/ fconstant _pi -314159265. d>f 100000000. d>f f/ fconstant _-pi : prntpi _1e6 _100 f* f* f>d d. ; \ +pi f* f/ : test1 _1e6 fdup fdup fdup fdup f* f* f* f* _pi fswap f/ _1e6 fdup fdup fdup fdup f* f* f* f* f* prntpi ( the result shall be 314159265 ) ; : test2 _pi _1e6 f/ _1e6 f/ _1e6 f/ _1e6 f/ _1e6 f/ _1e6 fdup fdup fdup fdup f* f* f* f* f* prntpi ( the result shall be 314159265 ) ; \ -pi f* f/ : test3 _1e6 fdup fdup fdup fdup f* f* f* f* _-pi fswap f/ _1e6 fdup fdup fdup fdup f* f* f* f* f* prntpi ( the result shall be 314159265 ) ; : test4 _-pi _1e6 f/ _1e6 f/ _1e6 f/ _1e6 f/ _1e6 f/ _1e6 fdup fdup fdup fdup f* f* f* f* f* prntpi ( the result shall be 314159265 ) ; > test1 314159200 ok > test2 314159136 ok > test3 -314159200 ok > test4 -314159136 ok > The magnitude errors caused by single precision (let us hope so..). The next step is to test add and sub. Pito . > > My reposititory has been updated -- keep the tests > coming. > > -Leon > |