Diff for /gforth/kernel/tools.fs between versions 1.8 and 1.22

version 1.8, 1999/02/21 14:55:44 version 1.22, 2006/05/07 05:46:48
Line 1 Line 1
 \ TOOLS.FS     Toolkit extentions                      2may93jaw  \ TOOLS.FS     Toolkit extentions                      2may93jaw
   
 \ Copyright (C) 1995,1998 Free Software Foundation, Inc.  \ Copyright (C) 1995,1998,1999,2001,2003 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.
   
 \ May be cross-compiled  \ May be cross-compiled
   
   require ./io.fs         \ type ...
   require ./nio.fs        \ . <# ...
   require ./int.fs        \ wordlist-id ..
   
 hex  hex
   
 \ .S            CORE / CORE EXT                         9may93jaw  \ .S            CORE / CORE EXT                         9may93jaw
   
 variable maxdepth-.s  variable maxdepth-.s \ gforth maxdepth-dot-s
   \G A variable containing 9 by default.  \code{.s} and \code{f.s}
   \G display at most that many stack items.
 9 maxdepth-.s !  9 maxdepth-.s !
   
 : .s ( -- ) \ tools dot-s  : .s ( -- ) \ tools dot-s
     \G Display the number of items on the data stack,  \G Display the number of items on the data stack, followed by a list
     \G followed by a list of the items; TOS is the right-most item  \G of the items (but not more than specified by @code{maxdepth-.s};
   \G TOS is the right-most item.
     ." <" depth 0 .r ." > "      ." <" depth 0 .r ." > "
     depth 0 max maxdepth-.s @ min      depth 0 max maxdepth-.s @ min
     dup 0      dup 0
Line 45  Variable /dump Line 52  Variable /dump
   
 : .4 ( addr -- addr' )  : .4 ( addr -- addr' )
     3 FOR  -1 /dump +!  /dump @ 0<      3 FOR  -1 /dump +!  /dump @ 0<
         IF  ."    "  ELSE  dup c@ 0 <<# >r # # r> #>> type space  THEN          IF  ."    "  ELSE  dup c@ 0 <<# # # #> type #>> space  THEN
     char+ NEXT ;      char+ NEXT ;
 : .chars ( addr -- )  : .chars ( addr -- )
     /dump @ bounds      /dump @ bounds
Line 57  Variable /dump Line 64  Variable /dump
   dup .4 space .4 ." - " .4 space .4 drop  10 /dump +!  space .chars ;    dup .4 space .4 ." - " .4 space .4 drop  10 /dump +!  space .chars ;
   
 : dump  ( addr u -- ) \ tools dump  : dump  ( addr u -- ) \ tools dump
     \G Display u lines of memory starting at address addr. Each line      \G Display @var{u} lines of memory starting at address @var{addr}. Each line
     \G displays the contents of 16 bytes. When Gforth is running under      \G displays the contents of 16 bytes. When Gforth is running under
     \G an operating system you may get @file{Invalid memory address} errors      \G an operating system you may get @file{Invalid memory address} errors
     \G if you attempt to access arbitrary locations.      \G if you attempt to access arbitrary locations.
Line 70  Variable /dump Line 77  Variable /dump
 \ ?                                                     17may93jaw  \ ?                                                     17may93jaw
   
 : ? ( a-addr -- ) \ tools question  : ? ( a-addr -- ) \ tools question
     \G Display the contents of address a-addr in the current number base.      \G Display the contents of address @var{a-addr} in the current number base.
     @ . ;      @ . ;
   
 \ words visible in roots                               14may93py  \ words visible in roots                               14may93py
   
 include  ../termsize.fs  include  ./../termsize.fs
   
 : words ( -- ) \ tools  : wordlist-words ( wid -- ) \ gforth
     \G ** this will not get annotated. See other defn in search.fs .. **      \G Display the contents of the wordlist wid.
     cr 0 context @ wordlist-id      [ has? ec 0= [IF] ] wordlist-id [ [THEN] ]
       0 swap cr
     BEGIN      BEGIN
         @ dup          @ dup
     WHILE      WHILE
Line 92  include  ../termsize.fs Line 100  include  ../termsize.fs
     REPEAT      REPEAT
     2drop ;      2drop ;
   
   : words
       \G ** this will not get annotated. See other defn in search.fs .. **
       \G It does not work to use "wordset-" prefix since this file is glossed
       \G by cross.fs which doesn't have the same functionalty as makedoc.fs
       [ has? ec 0= [IF] ] context @ [ [ELSE] ] forth-wordlist [ [THEN] ]
       wordlist-words ;
   
 ' words alias vlist ( -- ) \ gforth  ' words alias vlist ( -- ) \ gforth
 \g Old (pre-Forth-83) name for @code{WORDS}.  \g Old (pre-Forth-83) name for @code{WORDS}.
   

Removed from v.1.8  
changed lines
  Added in v.1.22


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