--- gforth/kernel/tools.fs 1999/02/22 21:39:44 1.9 +++ gforth/kernel/tools.fs 2006/04/30 17:33:54 1.21 @@ -1,6 +1,6 @@ \ 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. @@ -16,10 +16,14 @@ \ You should have received a copy of the GNU General Public License \ 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 +require ./io.fs \ type ... +require ./nio.fs \ . <# ... +require ./int.fs \ wordlist-id .. + hex \ .S CORE / CORE EXT 9may93jaw @@ -29,7 +33,7 @@ variable maxdepth-.s : .s ( -- ) \ tools dot-s \G Display the number of items on the data stack, - \G followed by a list of the items; TOS is the right-most item + \G followed by a list of the items; TOS is the right-most item. ." <" depth 0 .r ." > " depth 0 max maxdepth-.s @ min dup 0 @@ -57,7 +61,7 @@ Variable /dump dup .4 space .4 ." - " .4 space .4 drop 10 /dump +! space .chars ; : 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 an operating system you may get @file{Invalid memory address} errors \G if you attempt to access arbitrary locations. @@ -70,16 +74,17 @@ Variable /dump \ ? 17may93jaw : ? ( 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 -include ../termsize.fs +include ./../termsize.fs -: words ( -- ) \ tools - \G ** this will not get annotated. See other defn in search.fs .. ** - cr 0 context @ wordlist-id +: wordlist-words ( wid -- ) \ gforth + \G Display the contents of the wordlist wid. + [ has? ec 0= [IF] ] wordlist-id [ [THEN] ] + 0 swap cr BEGIN @ dup WHILE @@ -92,6 +97,12 @@ include ../termsize.fs REPEAT 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 \g Old (pre-Forth-83) name for @code{WORDS}. -