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
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(5) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Matthias T. <mt...@we...> - 2010-10-06 18:38:24
|
Hi > Hi. > > how can I see what word a defered word will execute? > > gforth: > > defer test ok > : xxx 11 22 33 . . . ; ok > xxx 33 22 11 ok > .s <0> ok > ' xxx is test ok > test 33 22 11 ok > .s <0> ok > see test > > : xxx > 11 22 33 . . . ; > latestxt > Defer test > IS test > ok > > > amforth? it should work like test defer@ xt>nfa icount itype to get the name of the word beeing executed by test. you need to upload the code for xt>nfa however. Implementing a smart see is left as an exercise to the reader ;=) HTH Matthias |
From: Matthias T. <mt...@we...> - 2010-10-06 18:21:55
|
hi Pito, > Hi, is there somebody with a practical experience with amforth on an > atxmega? The atxmegas do not work currently. The showstopper is that the flash write word does not (yet) exist, thus no compiler will work. The other topic is a very weak usart terminal which drops many characters, making it nearly unusable. WRT to the features of the atxmegas, none of them can be used, not even the flexible clock change. It's on my wish list, a small test system in near my desk, but will still need a lot of time. Matthias |
From: Kalus M. <mic...@on...> - 2010-10-06 10:17:10
|
Hi. how can I see what word a defered word will execute? gforth: defer test ok : xxx 11 22 33 . . . ; ok xxx 33 22 11 ok .s <0> ok ' xxx is test ok test 33 22 11 ok .s <0> ok see test : xxx 11 22 33 . . . ; latestxt Defer test IS test ok amforth? Michael |
From: pito <pi...@vo...> - 2010-10-05 20:39:59
|
Hi, is there somebody with a practical experience with amforth on an atxmega? Thanks, Pito. |
From: Erich W. <ew....@na...> - 2010-10-03 10:08:50
|
Hi Marcin, On 10/03/2010 12:19 AM, Marcin Cieslak wrote: >>> Erich Waelde<ew....@na...> wrote: >> >> The bit $10, which is apparently not set, ist the MSTR bit. That fits >> the symtoms I'm seeing: "spirw" (available in core/words/spirw.asm) >> never returns, because SPIF in register SPSR is never set. No wonder, >> if we are not in master mode to begin with. The bit-bang version >> never looks at SPSR and SPCR. > > I've had this when some other device on the SPI bus was pulling /SS low > and thus forced us to be slave. Turn's out that /SS is driven low _internally_!!! Who would have thougt ... So the fix is easy: > PORTB 4 portpin: /ss ok > /ss high \ turn on internal pullup ok > SPCR c@ . 0 ok > $53 SPCR c! ok > SPCR c@ . 53 ok > THEN after initializing everything as before, talking to the maxim 186 works: > @ch3 decimal u. 1816 ok Thanks! Erich --- complete programm for reference -------------------------------------------------------------- \ 2009-06-01 EW 33_spi/main2.fs \ spi, hw interface \ 2010-10-03 EW finally fixed: internal pullup on /ss \ "><spi" can now be exchanged to "spirw" found in core/words/spirw.asm marker --start-- \ include devices/atmega32.frt \ register definitions $3A constant DDRA \ Port A Data Direction Register $39 constant PINA \ Port A Input Pins $3B constant PORTA \ Port A Data Register \ PORTB $37 constant DDRB \ Port B Data Direction Register $36 constant PINB \ Port B Input Pins $38 constant PORTB \ Port B Data Register \ PORTC $34 constant DDRC \ Port C Data Direction Register $33 constant PINC \ Port C Input Pins $35 constant PORTC \ Port C Data Register \ PORTD $31 constant DDRD \ Port D Data Direction Register $30 constant PIND \ Port D Input Pins $32 constant PORTD \ Port D Data Register \ SPI $2D constant SPCR \ SPI Control Register $2F constant SPDR \ SPI Data Register $2E constant SPSR \ SPI Status Register include lib/bitnames.frt \ port_pin: high low pin_{out,in}put \ ---------------------------------------------------------- \ pin layout, bus addresses, IDs ... \ --- pins: PORTA 0 portpin: led0 \ . \ ---------------------------------------------------------- \ include files ... or words stolen from there :-) : ms ( n -- ) 0 do 1ms loop ; \ ---------------------------------------------------------- \ include ewlib/spi.fs PORTB 4 portpin: /ss \ not used as select here! PORTB 5 portpin: _mosi PORTB 6 portpin: _miso PORTB 7 portpin: _clk : spi.init ( -- ) /ss high \ activate pullup, otherwise master mode will not work! _mosi high _mosi pin_output \ _miso high _miso pin_input \ ??? muß das highZ sein??? _clk low _clk pin_output $53 SPCR c! ; \ transfer 1 byte : ><spi ( x -- x' ) SPDR c! begin SPSR c@ $80 and until SPDR c@ ; \ transfer 1 cell : 2><spi dup 8 rshift ><spi swap ><spi swap 8 lshift + ; \ transfer N bytes \ uses stack as temp.array! Highly deprecated! \ using "roll" would be cleaner : @spn ( x0 .. xN-1 i -- x0 .. xN-1 xi ) 1+ cells sp@ + @ ; : !spn ( x0 .. xi .. xN-1 yi i -- x0 .. yi .. xN-1 ) 2 + cells sp@ + ! ; : N><spi ( x0 .. xN-1 N -- y0 .. yN-1 ) 1- 0 swap do i @spn ><spi i !spn -1 +loop ; \ ---------------------------------------------------------- \ include spi-maxim-186.fs \ control byte: \ channel 0, unipolar, single ended, external clock -> $8f PORTC 2 portpin: _sel : adc.init -jtag _sel high _sel pin_output ; \ 1 clock cycle is lost; we should wait for SSTRB to become high \ instead. However, we are slow enough. So "3 rshift" not "4 rshift" : @adc.ch3 ( -- value ) _sel low $df ><spi drop $00 ><spi $00 ><spi _sel high swap 8 lshift + 3 rshift ; : @ch3 ( -- value ) _sel low $df $00 $00 3 N><spi _sel high swap 8 lshift + 3 rshift swap drop ; \ ---------------------------------------------------------- \ main decimal : io.init led0 high led0 pin_output ; : loop.init io.init spi.init adc.init ; : run decimal loop.init begin led0 low @ch3 cr . 500 ms led0 high 500 ms key? until ; |
From: Kalus M. <mic...@on...> - 2010-10-03 08:44:11
|
amforth-devil ;-) mailing list stripped attachment. So use link please to get the file: http://dl.dropbox.com/u/1170761/qmark.asm Michael Am 03.10.2010 um 09:37 schrieb pito: > ..did you send an attachment? P. > > ----- PŮVODNÍ ZPRÁVA ----- > Od: "Kalus Michael" <mic...@on...> > Komu: "amforth mailing list list mailing" > <amf...@li...> > Předmět: [Amforth-devel] qmark.asm > Datum: 3.10.2010 - 1:50:01 > >> Hi. >> >> maybe you like to have it in your dict_appl.inc, >> so >> .include "words/qmark.asm" >> there. >> >> Michael >> >> > > |
From: pito <pi...@vo...> - 2010-10-03 08:09:10
|
\ dnegate d1 -- d2 32 bit negate : dnegate swap invert swap invert 1. d+ \ <<<< Pito: was " 1 m+ " ; PS: maybe we shall merge 2x.frt and math.frt and add (an example): \ m+ ( d1 n -- d2 ) : m+ s>d d+ ; : dxor ( d1 d2 -- d ) rot xor >r xor r> ; \ double xor : dor ( d1 d2 -- d ) rot or >r or r> ; \ double or : dand ( d1 d2 -- d ) rot and >r and r> ; \ double and : sd* ( multiplicand multiplier_double -- product_double ) >r over r> * >r um* r> + ; \ single * double = double : dmax 2over 2over d< if 2swap then 2drop ; : dmin 2over 2over d< 0= if 2swap then 2drop ; |
From: Kalus M. <mic...@on...> - 2010-10-02 23:50:14
|
Hi. maybe you like to have it in your dict_appl.inc, so .include "words/qmark.asm" there. Michael |
From: pito <pi...@vo...> - 2010-10-02 22:36:59
|
> amforth 4.2 ATmega1284P > SS| pin_output ok > SS| high ok > $53 SPCR c! ok > SPCR c@ . 83 ok > hex ok > SPCR c@ . 53 ok > Pito |
From: Marcin C. <sa...@sa...> - 2010-10-02 22:19:36
|
>> Erich Waelde <ew....@na...> wrote: > > The bit $10, which is apparently not set, ist the MSTR bit. That fits > the symtoms I'm seeing: "spirw" (available in core/words/spirw.asm) > never returns, because SPIF in register SPSR is never set. No wonder, > if we are not in master mode to begin with. The bit-bang version > never looks at SPSR and SPCR. I've had this when some other device on the SPI bus was pulling /SS low and thus forced us to be slave. //Marcin |
From: Erich W. <ew....@na...> - 2010-10-02 20:41:20
|
Hello, I'm adding external periphery to SPI of an atmega32 controller. a. bit-bang mode when bitbanging clock and setting mosi / reading miso, everything works fine. ==> my wiring and the external chip are ok. b. using the builtin subsystem. I set mosi and clk to output, and the select pin (PORTC.2) as well. HOWEVER, I found it impossible to set SPCR to the desired values: > hex ok > $53 SPCR c! ok > SPCR c@ . 43 ok The bit $10, which is apparently not set, ist the MSTR bit. That fits the symtoms I'm seeing: "spirw" (available in core/words/spirw.asm) never returns, because SPIF in register SPSR is never set. No wonder, if we are not in master mode to begin with. The bit-bang version never looks at SPSR and SPCR. I found in the datasheet that the behaviour depends on whether /SS is input and externally driven low or not while setting SPCR. However, switching /SS to output does not change the situation. This is the same in amforth 3.4 (where I found my old test), 3.8 or trunk. Ideas? Cheers, Erich |
From: pito <pi...@vo...> - 2010-10-02 11:48:39
|
Hi, in case of "1.234e" "1.234" "1.234e0" string>float drops the "0" exp from rstack : : string>float ( c-addr u-length -- f ) \ get exponent first -- this is the number that follows e, E, d, or D 101 extract dup 0= if drop \ 'e' 69 extract dup 0= if drop \ 'E' 100 extract dup 0= if drop \ 'd' 68 extract dup 0= \ 'D' ##### <<< Pito: dup 0= if then then then \ ##### <<< Pito: then then then then >r ( adr length, R: exp ) .... and the: \ now, shift according to exp r> dup 0= if drop else returns a wrong result. With #### up there it returns "0" from rstack (an error from partnumber but a correct exp) which "could be taken" as a good exp ("0" in those cases) so we may get the right result for above floats (when "now, shift according to exp" will be changed somehow). P. |
From: pito <pi...@vo...> - 2010-10-01 11:54:59
|
\ COME UP WITH BETTER NAMES FOR NEXT TWO : partnumber fsnip, fcut, ncut, nsnip, nclip, fclip, fstrip, nstrip, nslit, flsit, nrive, frive, ntear, ftear, nrift, frift, nnip, fchap, nchap, nhew, fhew : extract nsuck, fsuck, nmilk, fmilk, nsap, fsap, fblot, nblot, nsip, fsip (;-). Pito |
From: pito <pi...@vo...> - 2010-09-30 21:31:59
|
Hi, there is a bug in the flib at line 116 of Leon's listing: : dreversedigits2 ( dinitial n-digits -- dfinal ) dup 0= if s>f <<<<<< here - used prior its actual definition .... Frankly, I overlooked that aprox. 20times today! The word dreversedigits2 is not used however! But it fires an error (overlooked in the screen listing). I've found that by a chance as I saw something on the stack after the upload. I've checked now it crashes the dictionary - as I wasn't able to run >float (a crash to reflash). I've removed the dreversedigits2 and now it works at least for few floats. > bl parse 1.234e-20 >float . fs. -1 1.2339996E-20 ok > bl parse 9.9999e-19 >float . fs. -1 9.999901E-19 ok > bl parse 9.9999e32 >float . fs. -1 9.999901E32 ok > bl parse -9.9999e-32 >float . fs. -1 -8.0000973E-32 ok > bl parse -9.999e-32 >float . fs. -1 -8.0009995E-32 ok > bl parse 9.999e-32 >float . fs. -1 9.9989977E-32 ok > bl parse +9.999e-32 >float . fs. 0 amforth 4.0 ATmega1284P PS; IS THERE AN OPTION TO CONFIGURE ERROR HANDLING SUCH IT STOPS UPLOAD WHEN AN ERROR THROWN ???? Pito. |
From: Kalus M. <mic...@on...> - 2010-09-30 20:13:27
|
Hi Pito. Am 30.09.2010 um 21:15 schrieb pito: >>> float is an assembler defined word, or is it >>> colon definition? > it is Leon's word - the colon definition, not an assembler word. > See Leon's lib > http://github.com/lnmaurer/amforth-float/blob/master/float.fth > > P. Hm, I see. Very strange, definition looks ok. Have no amforth-4.2 installed jet, maybe do it next days. PS: In float.fth I found: \ STACK MANIPULATION WORDS \ DOESN'T WORK? : f>r ( f -- , R: -- f ) >r >r ; \ DOESN'T WORK? : fr> ( -- f, R: f -- ) r> r> ; .. This indeed won't work. Use 2>r and 2r> instead, they are provided in core/words allready. Maybe you like this littel brainteaser: http://www.forth-ev.de/wiki/doku.php/enigmatic:to-r_r-from :-) Michael |
From: pito <pi...@vo...> - 2010-09-30 19:15:16
|
> >float is an assembler defined word, or is it > >colon definition? it is Leon's word - the colon definition, not an assembler word. See Leon's lib http://github.com/lnmaurer/amforth-float/blob/master/float.fth P. |
From: Kalus M. <mic...@on...> - 2010-09-30 19:07:37
|
Hi Pito. >float is an assembler defined word, or is it colon definition? http://www.bradrodriguez.com/papers/moving6.htm: COMPILER OPERATION "... Also, : will HIDE the new word, and ; will REVEAL it (by setting and clearing the "smudge" bit in the name). This is to allow a Forth word to be redefined in terms of its "prior self"." What amforth-4.2 does to hide a word during compilation, and reveal it on completion of definition, is setting a noname variable in ram internaly called COLON_SMUDGE. While DP proceeds while compiling, content of COLON_SMUDGE does not. When the definition is complete, you fetch content of COLON_SMUDGE and store it to the current pointer. Now the last defined word gets revealed. Its basicaly this (is this true Mathias?): variable colon_smudge ... dp colon_smudge ! code: <name> {..code..} end_code colon_smudge @ get-current ! Since COLON_SMUDGE is noname, try this work around. Include smudge.asm in your dict_appl.inc - this is what has to go into smudge.asm: VE_SMUDGE: .dw $ff06 .db "smudge" .dw VE_HEAD .set VE_HEAD = VE_SMUDGE XT_SMUDGE: .dw DO_COLON PFA_SMUDGE: .dw XT_DOLITERAL .dw COLON_SMUDGE .dw XT_FETCH .dw XT_GET_CURRENT .dw XT_ESTORE .dw XT_EXIT Then code your >float and execute smudge thereafter. Use smuge after every code definition. Maybe we should put it into the end-code word. Hope it does the job and you find your >float then. Michael Am 30.09.2010 um 20:37 schrieb Matthias Trute: > hi, > >> Hi Pito. >> >> If >float is assembler defined and closed with something like end- >> code, this end-code has to smudge the definition the same way ; >> (semicolon) does it. > >> float is forth code. (http://github.com/lnmaurer/amforth-float ) > >> It has been a long standing claim that a definition may not be found >> until it is finished. So setting the "smudgebit" is last thing to do. >> amforth4.2 has this behavior now. Maybe you found a side effect of >> this new behaviour. But there shoud be some kind of "smudge" word to >> solve this problem then. > > what should that smudge do? if you want to use the word currently > beeing defined, use recurse, after the ; the new name will be visible > anyway. btw: there is no smudge bit in amforth. > > > Matthias > > > > ---------------------------------------------------------------------- > -------- > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > Amforth-devel mailing list > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel |
From: Matthias T. <mt...@we...> - 2010-09-30 18:44:46
|
hi Pito, > > Will do, although I think the real solution is to > > have it included by default > > in amforth -- it's listed on > > <http://amforth.sourceforge.net/words/> after > > all. > sure, some needs to be .included.. d= is not needed for every amforth system. The default contains the minimum (as I see it) to make a working system. Nothing more. Its up to the user to include whatever (s)he needs. Thats why I put the relevant "master" include files into the application source tree. The dic_* include files in core/* are provided to ease the work, they are not must-use files.. Matthias |
From: pito <pi...@vo...> - 2010-09-30 18:42:26
|
Hi, this is a short story on how I've found a bug in an asm word. After few days of experimenting at amforth level I decided either to start with other hobby or to find out how to simulate the whole stuff and see what is actually going on by stepping via the avr flash code. The experiments with AVR Studio - mainly simulation at asm level finished with an early crash. By chance I found the crash is caused by the debugger - when the asm source wants to continue into a "debugger" (for the code outside the "amforth.asm") the debuger is called, but not set properly (my understanding) and crashes. Now, how it works: 1. compile amforth in AVR Studio as usuall 2. then close all projects 3. open file - e.g. amforth42_1284p.hex (MUST BE .HEX) 4. Studio offers a new project name e.g. amforth42_1284p_hex.aps - do save 5. select device and debug platform (simulator2 and 1284p) 6. finish 7. debuger opens and you will see the flash disassembled 8. then go Debug -> Up/download memory, choose EEPROM and load eeprom from file e.g. amforth42_1284p.eep, open memory watch window and select eeprom - you will see the eeprom content 9. TERMINAL - I did not find terminal in AVR Studio, so I downloaded HAPSIM for AVR Studio: download, run hapsim.exe and do file -> New Control -> Terminal, it will connect to AVR studio, you may set settings 10. Place breakpoints where you want (here you see entire flash disassembling only, so help yourself and open .lst file and navigate accordingly) when not keen on stepping via all code there 11. when you Run the debuger you will see after few seconds amforth's hello and promt in the Terminal, you may work as usual (mind the respones are several seconds) and you may step via the flash. I did not try to upload a new word, but I ran existing word and watched what is going on. It help me to find the bug - otherwise I would not find him by today.. I would be happy to know your experience with amforth debugging/simulating as well. Pito. |
From: Matthias T. <mt...@we...> - 2010-09-30 18:37:38
|
hi, > Hi Pito. > > If >float is assembler defined and closed with something like end- > code, this end-code has to smudge the definition the same way ; > (semicolon) does it. >float is forth code. (http://github.com/lnmaurer/amforth-float ) > It has been a long standing claim that a definition may not be found > until it is finished. So setting the "smudgebit" is last thing to do. > amforth4.2 has this behavior now. Maybe you found a side effect of > this new behaviour. But there shoud be some kind of "smudge" word to > solve this problem then. what should that smudge do? if you want to use the word currently beeing defined, use recurse, after the ; the new name will be visible anyway. btw: there is no smudge bit in amforth. Matthias |
From: pito <pi...@vo...> - 2010-09-30 17:03:46
|
> Will do, although I think the real solution is to > have it included by default > in amforth -- it's listed on > <http://amforth.sourceforge.net/words/> after > all. sure, some needs to be .included.. Some new creazy ideas for >float tests: \ SIMPLE FLOATS INPUT TEST bl parse 0e0 >float . fs. bl parse -0e0 >float . fs. bl parse -0e-0 >float . fs. bl parse -0e-0 >float . fs. bl parse +0e-0 >float . fs. bl parse +0e+0 >float . fs. bl parse 0.0e0 >float . fs. bl parse -0.0e0 >float . fs. bl parse -0.0e-0 >float . fs. bl parse -0.0e-0 >float . fs. bl parse +0.0e-0 >float . fs. bl parse +0.0e+0 >float . fs. bl parse 1e0 >float . fs. bl parse -1e0 >float . fs. bl parse -1e-0 >float . fs. bl parse -1e-0 >float . fs. bl parse +1e-0 >float . fs. bl parse +1e+0 >float . fs. bl parse 1.0e0 >float . fs. bl parse -1.0e0 >float . fs. bl parse -1.0e-0 >float . fs. bl parse -1.0e-0 >float . fs. bl parse +1.0e-0 >float . fs. bl parse +1.0e+0 >float . fs. bl parse 1.0e09 >float . fs. bl parse -1.0e09 >float . fs. bl parse -1.0e-09 >float . fs. bl parse -1.0e-09 >float . fs. bl parse +1.0e-09 >float . fs. bl parse +1.0e+09 >float . fs. bl parse 9e0 >float . fs. bl parse -9e0 >float . fs. bl parse 9e-0 >float . fs. bl parse -9e+0 >float . fs. bl parse 9e09 >float . fs. bl parse -9e09 >float . fs. bl parse 9e-09 >float . fs. bl parse -9e+09 >float . fs. bl parse +9e+0 >float . fs. bl parse -9e+0 >float . fs. bl parse +9e-0 >float . fs. bl parse +9e+0 >float . fs. bl parse +9e+09 >float . fs. bl parse -9e+09 >float . fs. bl parse +9e-09 >float . fs. bl parse +9e+09 >float . fs. bl parse +9.e+0 >float . fs. bl parse -9.e+0 >float . fs. bl parse +9.e-0 >float . fs. bl parse +9.e+0 >float . fs. bl parse +9.9e0 >float . fs. bl parse -9.9e0 >float . fs. bl parse +9.9e0 >float . fs. bl parse +9.9e0 >float . fs. bl parse +9.9e+0 >float . fs. bl parse -9.9e+0 >float . fs. bl parse +9.9e-0 >float . fs. bl parse +9.9e+0 >float . fs. bl parse +9.9e+09 >float . fs. bl parse -9.9e+09 >float . fs. bl parse +9.9e-09 >float . fs. bl parse +9.9e+09 >float . fs. bl parse 0.000000e0 >float . fs. bl parse 0.000000e-0 >float . fs. bl parse -0.000000e0 >float . fs. bl parse -0.000000e-0 >float . fs. bl parse +0.000000e+0 >float . fs. bl parse +0.000000e-0 >float . fs. bl parse -0.000000e+0 >float . fs. bl parse -0.000000e-0 >float . fs. bl parse 9.000000e0 >float . fs. bl parse 9.000000e-0 >float . fs. bl parse -9.000000e0 >float . fs. bl parse -9.000000e-0 >float . fs. bl parse +9.000000e+0 >float . fs. bl parse +9.000000e-0 >float . fs. bl parse -9.000000e+0 >float . fs. bl parse -9.000000e-0 >float . fs. bl parse 9.000000e09 >float . fs. bl parse 9.000000e-09 >float . fs. bl parse -9.000000e09 >float . fs. bl parse -9.000000e-09 >float . fs. bl parse +9.000000e+09 >float . fs. bl parse +9.000000e-09 >float . fs. bl parse -9.000000e+09 >float . fs. bl parse -9.000000e-09 >float . fs. bl parse 9.999000e0 >float . fs. bl parse -9.999000e0 >float . fs. bl parse 9.999000e9 >float . fs. bl parse -9.999000e9 >float . fs. bl parse 9.999000e+0 >float . fs. bl parse -9.999000e+0 >float . fs. bl parse 9.999000e-0 >float . fs. bl parse -9.999000e-0 >float . fs. bl parse 9.999000e+00 >float . fs. bl parse -9.999000e+00 >float . fs. bl parse 9.999000e-00 >float . fs. bl parse -9.999000e-00 >float . fs. bl parse 9.999999e+30 >float . fs. bl parse -9.999999e+30 >float . fs. bl parse 9.999999e-30 >float . fs. bl parse -9.999999e-30 >float . fs. bl parse 999999.9e+30 >float . fs. bl parse -999999.9e+30 >float . fs. bl parse 999999.9e-30 >float . fs. bl parse -999999.9e-30 >float . fs. bl parse 999999.9e30 >float . fs. bl parse -999999.9e30 >float . fs. bl parse 999999.9e-30 >float . fs. bl parse -999999.9e-30 >float . fs. bl parse +999999.9e30 >float . fs. bl parse +999999.9e-30 >float . fs. bl parse 0.000000e0 >float . fs. bl parse 000000.0e-0 >float . fs. bl parse 000000.0e+0 >float . fs. bl parse +000000.0e-0 >float . fs. bl parse +000000.0e+0 >float . fs. bl parse -000000.0e-0 >float . fs. bl parse -000000.0e+0 >float . fs. bl parse 000000.1e-0 >float . fs. bl parse 000000.1e+0 >float . fs. bl parse +000000.1e-0 >float . fs. bl parse +000000.1e+0 >float . fs. bl parse -000000.1e-0 >float . fs. bl parse -000000.1e+0 >float . fs. bl parse 000000.1e-01 >float . fs. bl parse 000000.1e+01 >float . fs. bl parse +000000.1e-01 >float . fs. bl parse +000000.1e+01 >float . fs. bl parse -000000.1e-01 >float . fs. bl parse -000000.1e+01 >float . fs. bl parse 0.000099e+31 >float . fs. bl parse -0.000099e+31 >float . fs. bl parse 0.000099e-31 >float . fs. bl parse -0.000099e-31 >float . fs. bl parse 1.000077e+24 >float . fs. bl parse -1.000077e+24 >float . fs. bl parse 1.000077e-24 >float . fs. bl parse -1.000077e-24 >float . fs. bl parse 1.234567e0 >float . fs. bl parse -1.234567e0 >float . fs. bl parse 1.234567e-0 >float . fs. bl parse -1.234567e-0 >float . fs. bl parse 1.234567e+0 >float . fs. bl parse -1.234567e+0 >float . fs. bl parse 1.234567e-00 >float . fs. bl parse -1.234567e+00 >float . fs. bl parse 1.234567e30 >float . fs. bl parse -1.234567e30 >float . fs. bl parse 1.234567e+30 >float . fs. bl parse -1.234567e+30 >float . fs. bl parse 1.234567e-30 >float . fs. bl parse -1.234567e-30 >float . fs. bl parse 9.999999e+30 >float . fs. bl parse -9.999999e+30 >float . fs. bl parse 9.999999e-30 >float . fs. bl parse -9.999999e-30 >float . fs. bl parse +9.999999e+30 >float . fs. bl parse -9.999999e+30 >float . fs. bl parse +9.999999e-30 >float . fs. bl parse -9.999999e-30 >float . fs. bl parse +9.999999e30 >float . fs. bl parse -9.999999e30 >float . fs. |
From: Leon N. M. <leo...@gm...> - 2010-09-30 16:31:03
|
On Thursday, September 30, 2010 10:18:54 am pito wrote: ... > PS: > 1.there is "ceil" - or shouldn't it be called fceil? ANS94 specifies that the floor command should be FLOOR, not FFLOOR. I figure ceil should do the same (which I think makes sense -- there's no point in having a floor or ceil for integers). > 2.pls uncomment those small things like d=, normally you cannot see > an error easily when uploading it so many will overlook it, better > to have it twice. Will do, although I think the real solution is to have it included by default in amforth -- it's listed on <http://amforth.sourceforge.net/words/> after all. -Leon |
From: Kalus M. <mic...@on...> - 2010-09-30 16:08:32
|
Hi Pito. If >float is assembler defined and closed with something like end- code, this end-code has to smudge the definition the same way ; (semicolon) does it. It has been a long standing claim that a definition may not be found until it is finished. So setting the "smudgebit" is last thing to do. amforth4.2 has this behavior now. Maybe you found a side effect of this new behaviour. But there shoud be some kind of "smudge" word to solve this problem then. Michael Am 30.09.2010 um 15:44 schrieb pito: > Yes, it is something with 4.2. I'm back to 4.0 and: > >> bl parse 4.2232e-12 type > 4.2232e-12 ok >> bl parse 4.2232e-12 >float > ok >> fs. > 4.2231998E-12 ok >> bl parse 4.2232e-12 >float fs. > 4.2231998E-12 ok >> > > I wrote to Matthias on 4.2 "issue", there must be something > different against 4.0 which is cousing me issues..P. > |
From: pito <pi...@vo...> - 2010-09-30 15:52:37
|
Let's try (:-): \ SIMPLE FLOATS INPUT TEST bl parse 0.000000e0 >float . fs. bl parse 9.999000e0 >float . fs. bl parse -9.999000e0 >float . fs. bl parse 9.999000e9 >float . fs. bl parse -9.999000e9 >float . fs. bl parse 9.999000e+0 >float . fs. bl parse -9.999000e+0 >float . fs. bl parse 9.999000e-0 >float . fs. bl parse -9.999000e-0 >float . fs. bl parse 9.999000e+00 >float . fs. bl parse -9.999000e+00 >float . fs. bl parse 9.999000e-00 >float . fs. bl parse -9.999000e-00 >float . fs. bl parse 9.999000e+30 >float . fs. bl parse -9.999000e+30 >float . fs. bl parse 9.999000e-30 >float . fs. bl parse -9.999000e-30 >float . fs. bl parse 0.000000e0 >float . fs. bl parse 0.000099e+31 >float . fs. bl parse -0.000099e+31 >float . fs. bl parse 0.000099e-31 >float . fs. bl parse -0.000099e-31 >float . fs. bl parse 1.000077e+24 >float . fs. bl parse -1.000077e+24 >float . fs. bl parse 1.000077e-24 >float . fs. bl parse -1.000077e-24 >float . fs. bl parse 1.234567e0 >float . fs. bl parse -1.234567e0 >float . fs. bl parse 1.234567e-0 >float . fs. bl parse -1.234567e-0 >float . fs. bl parse 1.234567e+0 >float . fs. bl parse -1.234567e+0 >float . fs. bl parse 1.234567e-00 >float . fs. bl parse -1.234567e+00 >float . fs. bl parse 1.234567e30 >float . fs. bl parse -1.234567e30 >float . fs. bl parse 1.234567e+30 >float . fs. bl parse -1.234567e+30 >float . fs. bl parse 1.234567e-30 >float . fs. bl parse -1.234567e-30 >float . fs. bl parse 9.999999e+30 >float . fs. bl parse -9.999999e+30 >float . fs. bl parse 9.999999e-30 >float . fs. bl parse -9.999999e-30 >float . fs. |
From: pito <pi...@vo...> - 2010-09-30 15:19:02
|
Well, I downloaded your newest library now ( I worked with the old one ): with your f* f/ f+ f- : > ok > bl parse 1.234e18 >float . fs. -1 1.2339984E18 ok > .s ok > bl parse 1.234e18 >float fs. -exponent > 127 > .s with my asm f* f/ f+ f- : > .s ok > bl parse 1.234e18 >float . fs. -1 1.2340002E18 ok > .s ok > bl parse 1.234e18 >float fs. -6.788775E38 ok > .s 0 16383 99 ok > PS: 1.there is "ceil" - or shouldn't it be called fceil? 2.pls uncomment those small things like d=, normally you cannot see an error easily when uploading it so many will overlook it, better to have it twice. |