File:  [gforth] / gforth / environ.fs
Revision 1.3: download - view: text, annotated - select for diffs
Thu Nov 17 15:53:11 1994 UTC (28 years, 4 months ago) by pazsan
Branches: MAIN
CVS tags: HEAD
*Added:
* configure.bat configures on MS-DOS machines
* io-dos.h provides IO for MS-DOS
* makefile.dos is a GNU make Makefile for MS-DOS
*Changed:
* Merged gray/gforth and gray/gray4, added conditional compilation for
  gray ports (gforth and bigFORTH first)
* added gforth recognising string in environment
* added interpreter support for images (starts now with magic)
* changed make rule for ds2texi, so that it can run with Messy-DOS
* added SAVESYSTEM in dumpimage.fs
* fixed bug in Makefile for big endian systems (->configure)

    1: \ environmental queries
    2: 
    3: \ wordlist constant environment-wordlist
    4: 
    5: Create environment-wordlist  wordlist drop
    6: 
    7: : environment? ( c-addr u -- false / ... true )
    8:     environment-wordlist search-wordlist if
    9: 	execute true
   10:     else
   11: 	false
   12:     endif ;
   13: 
   14: environment-wordlist set-current
   15: get-order environment-wordlist swap 1+ set-order
   16: 
   17: \ assumes that chars, cells and doubles use an integral number of aus
   18: 
   19: \ this should be computed in C as CHAR_BITS/sizeof(char),
   20: \ but I don't know any machine with gcc where an au does not have 8 bits.
   21: 8 constant ADDRESS-UNIT-BITS
   22: 1 ADDRESS-UNIT-BITS chars lshift 1- constant MAX-CHAR
   23: MAX-CHAR constant /COUNTED-STRING
   24: ADDRESS-UNIT-BITS cells 2* 2 + constant /HOLD
   25: &84 constant /PAD
   26: true constant CORE
   27: \ CORE-EXT?
   28: 1 -3 mod 0< constant FLOORED
   29: 
   30: 1 ADDRESS-UNIT-BITS cells 1- lshift 1- constant MAX-N
   31: -1 constant MAX-U
   32: 
   33: -1 MAX-N 2constant MAX-D
   34: -1. 2constant MAX-UD
   35: 
   36: 0 0 2constant gforth \ minor mayor version
   37: 
   38: \ !! RETURN-STACK-CELLS
   39: \ !! STACK-CELLS
   40: 
   41: forth definitions
   42: previous
   43: 

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