[gforth] / gforth / float.fs  

gforth: gforth/float.fs

Diff for /gforth/float.fs between version 1.66 and 1.67

version 1.66, Sat May 26 10:35:35 2012 UTC version 1.67, Mon May 28 14:20:04 2012 UTC
Line 132 
Line 132 
 : sfnumber ( c-addr u -- r true | false )  : sfnumber ( c-addr u -- r true | false )
     fp-char @ >float1 ;      fp-char @ >float1 ;
   
 Create si-prefixes ," PTGMk.munpf"  Create si-prefixes ," PTGMk munpf"
 si-prefixes count '.' scan drop Constant zero-exp  si-prefixes count bl scan drop Constant zero-exp
   
 : prefix-number ( c-addr u -- r true | false )  : prefix-number ( c-addr u -- r true | false )
     si-prefixes count bounds DO      si-prefixes count bounds DO
         2dup I c@ scan nip 0<> IF          2dup I c@ scan nip dup 0<> IF
             I c@ >float1              1 = IF  1- fp-char @  ELSE  I c@  THEN
               >float1
             dup IF  1000 s>f zero-exp I - s>f f** f*  THEN              dup IF  1000 s>f zero-exp I - s>f f** f*  THEN
             UNLOOP  EXIT  THEN              UNLOOP  EXIT  THEN  drop
     LOOP      LOOP
     sfnumber ;      sfnumber ;
 [ELSE]  [ELSE]


Generate output suitable for use with a patch program
Legend:
Removed from v.1.66  
changed lines
  Added in v.1.67

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help