version 1.14, 2008/12/06 16:28:13
|
version 1.19, 2012/12/31 15:25:19
|
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,2007 Free Software Foundation, Inc. |
\ Copyright (C) 2005,2006,2007,2008,2011,2012 Free Software Foundation, Inc. |
|
|
\ This file is part of Gforth. |
\ This file is part of Gforth. |
|
|
Line 47 Defer x\string- ( xc-addr1 u1 -- xc-addr
|
Line 47 Defer x\string- ( xc-addr1 u1 -- xc-addr
|
\G last xchar in the buffer. |
\G last xchar in the buffer. |
Defer xc@ ( xc-addr -- xc ) \ xchar-ext xc-fetch |
Defer xc@ ( xc-addr -- xc ) \ xchar-ext xc-fetch |
\G Fetchs the xchar @var{xc} at @var{xc-addr1}. |
\G Fetchs the xchar @var{xc} at @var{xc-addr1}. |
|
Defer xc!+ ( xc xc-addr1 -- xc-addr2 ) \ xchar-ext xc-store |
|
\G Stores the xchar @var{xc} at @var{xc-addr1}. @var{xc-addr2} is the next |
|
\G unused address in the buffer. |
Defer xc!+? ( xc xc-addr1 u1 -- xc-addr2 u2 f ) \ xchar-ext xc-store-plus-query |
Defer xc!+? ( xc xc-addr1 u1 -- xc-addr2 u2 f ) \ xchar-ext xc-store-plus-query |
\G Stores the xchar @var{xc} into the buffer starting at address |
\G Stores the xchar @var{xc} into the buffer starting at address |
\G @var{xc-addr1}, @var{u1} pchars large. @var{xc-addr2} points to the |
\G @var{xc-addr1}, @var{u1} pchars large. @var{xc-addr2} points to the |
Line 100 Defer -trailing-garbage ( xc-addr u1 --
|
Line 103 Defer -trailing-garbage ( xc-addr u1 --
|
: string- ( c-addr1 u1 -- c-addr1 u2 ) |
: string- ( c-addr1 u1 -- c-addr1 u2 ) |
1- ; |
1- ; |
|
|
|
: c!+ ( c c-addr1 -- c-addr2 ) |
|
dup 1+ >r c! r> ; |
|
|
: c!+? ( c c-addr1 u1 -- c-addr2 u2 f ) |
: c!+? ( c c-addr1 u1 -- c-addr2 u2 f ) |
dup 1 chars u< if \ or use < ? |
dup 1 chars u< if \ or use < ? |
rot drop false |
rot drop false |
Line 119 Defer -trailing-garbage ( xc-addr u1 --
|
Line 125 Defer -trailing-garbage ( xc-addr u1 --
|
['] +string is +x/string |
['] +string is +x/string |
['] string- is x\string- |
['] string- is x\string- |
['] c@ is xc@ |
['] c@ is xc@ |
|
['] c!+ is xc!+ |
['] c!+? is xc!+? |
['] c!+? is xc!+? |
['] count is xc@+ |
['] count is xc@+ |
['] c-size is xc-size |
['] c-size is xc-size |