Diff for /gforth/kernel/xchars.fs between versions 1.10 and 1.15

version 1.10, 2007/10/17 15:50:01 version 1.15, 2008/12/31 15:29:14
Line 1 Line 1
 \ extended characters (either 8bit or UTF-8, possibly other encodings)  \ extended characters (either 8bit or UTF-8, possibly other encodings)
 \ and their fixed-size variant  \ and their fixed-size variant
   
 \ Copyright (C) 2005,2006 Free Software Foundation, Inc.  \ Copyright (C) 2005,2006,2007,2008 Free Software Foundation, Inc.
   
 \ This file is part of Gforth.  \ This file is part of Gforth.
   
 \ Gforth is free software; you can redistribute it and/or  \ Gforth is free software; you can redistribute it and/or
 \ modify it under the terms of the GNU General Public License  \ modify it under the terms of the GNU General Public License
 \ as published by the Free Software Foundation; either version 2  \ as published by the Free Software Foundation, either version 3
 \ of the License, or (at your option) any later version.  \ of the License, or (at your option) any later version.
   
 \ This program is distributed in the hope that it will be useful,  \ This program is distributed in the hope that it will be useful,
Line 16 Line 16
 \ GNU General Public License for more details.  \ GNU General Public License for more details.
   
 \ 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, see http://www.gnu.org/licenses/.
 \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.  
   
 \ We can do some of these (and possibly faster) by just using the  \ We can do some of these (and possibly faster) by just using the
 \ utf-8 words with an appropriate setting of max-single-byte, but I  \ utf-8 words with an appropriate setting of max-single-byte, but I
Line 83  Defer -trailing-garbage ( xc-addr u1 -- Line 82  Defer -trailing-garbage ( xc-addr u1 --
     over >r +x/string      over >r +x/string
     r> xc@ ;      r> xc@ ;
   
 Create xholdbuf 8 allot  
 : xhold ( xc -- )  : xhold ( xc -- )
     \G Put xc into the pictured numeric output      \G Put xc into the pictured numeric output
     xholdbuf 8 xc!+? 2drop      dup xc-size negate chars holdptr +!
     BEGIN  1- dup  xholdbuf u>=  WHILE  dup c@ hold  REPEAT  drop ;      holdptr @ dup holdbuf u< -&17 and throw
       8 xc!+? 2drop drop ;
   
   : xc, ( xchar -- ) here unused xc!+? 2drop dp ! ;
   
 \ fixed-size versions of these words  \ fixed-size versions of these words
   

Removed from v.1.10  
changed lines
  Added in v.1.15


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