Diff for /gforth/environ.fs between versions 1.18 and 1.25

version 1.18, 1999/02/03 00:10:19 version 1.25, 2000/09/23 15:46:52
Line 1 Line 1
 \ environmental queries  \ environmental queries
   
 \ Copyright (C) 1995,1996,1997,1998 Free Software Foundation, Inc.  \ Copyright (C) 1995,1996,1997,1998,2000 Free Software Foundation, Inc.
   
 \ This file is part of Gforth.  \ This file is part of Gforth.
   
Line 16 Line 16
   
 \ You should have received a copy of the GNU General Public License  \ You should have received a copy of the GNU General Public License
 \ along with this program; if not, write to the Free Software  \ along with this program; if not, write to the Free Software
 \ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
   
 \ wordlist constant environment-wordlist  \ wordlist constant environment-wordlist
   
 Create environment-wordlist ( -- wid ) \ gforth  Create environment-wordlist ( -- wid ) \ gforth
   \G wid identifies the word list that is searched by environmental    \G @i{wid} identifies the word list that is searched by environmental
   \G queries.    \G queries.
   wordlist drop    wordlist drop
   
 : environment? ( c-addr u -- false / ... true ) \ core environment-query  : environment? ( c-addr u -- false / ... true ) \ core environment-query
     \G c-addr, u specify the address and length of a string. If the string is      \G @i{c-addr, u} specify a counted string. If the string is not
     \G not recognised, return a @code{false} flag. Otherwise return a true      \G recognised, return a @code{false} flag. Otherwise return a
     \G flag and some (string-specific) information about the queried string.      \G @code{true} flag and some (string-specific) information about
       \G the queried string.
     environment-wordlist search-wordlist if      environment-wordlist search-wordlist if
         execute true          execute true
     else      else
Line 49  get-order environment-wordlist swap 1+ s Line 50  get-order environment-wordlist swap 1+ s
 \ this should be computed in C as CHAR_BITS/sizeof(char),  \ this should be computed in C as CHAR_BITS/sizeof(char),
 \ but I don't know any machine with gcc where an au does not have 8 bits.  \ but I don't know any machine with gcc where an au does not have 8 bits.
 8 constant ADDRESS-UNIT-BITS ( -- n ) \ environment  8 constant ADDRESS-UNIT-BITS ( -- n ) \ environment
 \G Size of one address unit, it bits.  \G Size of one address unit, in bits.
   
 1 ADDRESS-UNIT-BITS chars lshift 1- constant MAX-CHAR ( -- u ) \ environment  1 ADDRESS-UNIT-BITS chars lshift 1- constant MAX-CHAR ( -- u ) \ environment
 \G Maximum value of any character in the character set  \G Maximum value of any character in the character set
Line 70  true constant CORE-EXT ( -- f ) \ enviro Line 71  true constant CORE-EXT ( -- f ) \ enviro
 \G True if the complete core extension word set is present. Always true for Gforth.  \G True if the complete core extension word set is present. Always true for Gforth.
   
 1 -3 mod 0< constant FLOORED ( -- f ) \ environment  1 -3 mod 0< constant FLOORED ( -- f ) \ environment
 \G True if division is floored by default.  \G True if @code{/} etc. perform floored division
   
 1 ADDRESS-UNIT-BITS cells 1- lshift 1- constant MAX-N ( -- n ) \ environment  1 ADDRESS-UNIT-BITS cells 1- lshift 1- constant MAX-N ( -- n ) \ environment
 \G Largest usable signed integer.  \G Largest usable signed integer.
Line 85  true constant CORE-EXT ( -- f ) \ enviro Line 86  true constant CORE-EXT ( -- f ) \ enviro
 \G Largest usable unsigned double.  \G Largest usable unsigned double.
   
 version-string 2constant gforth ( -- c-addr u ) \ gforth-environment  version-string 2constant gforth ( -- c-addr u ) \ gforth-environment
 \G Counted string representing a version string for this version of Gforth  \G Counted string representing a version string for this version of
 \G (for versions>0.3.0).  \G Gforth (for versions>0.3.0).  The version strings of the various
 \ the version strings of the various versions are guaranteed to be  \G versions are guaranteed to be ordered lexicographically.
 \ sorted lexicographically  
   
 : return-stack-cells ( -- n ) \ environment  : return-stack-cells ( -- n ) \ environment
     \G Maximum size of the return stack, in cells.      \G Maximum size of the return stack, in cells.
Line 99  version-string 2constant gforth ( -- c-a Line 99  version-string 2constant gforth ( -- c-a
     [ forthstart 4 cells + ] literal @ cell / ;      [ forthstart 4 cells + ] literal @ cell / ;
   
 : floating-stack ( -- n ) \ environment  : floating-stack ( -- n ) \ environment
     \G n is non-zero, showing that Gforth maintains a separate      \G @var{n} is non-zero, showing that Gforth maintains a separate
     \G floating-point stack of depth n.      \G floating-point stack of depth @var{n}.
     [ forthstart 5 cells + ] literal @      [ forthstart 5 cells + ] literal @
     [IFDEF] float  float  [ELSE]  [ 1 floats ] Literal [THEN] / ;      [IFDEF] float  float  [ELSE]  [ 1 floats ] Literal [THEN] / ;
   

Removed from v.1.18  
changed lines
  Added in v.1.25


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>