version 1.39, 2000/08/08 12:37:05
|
version 1.42, 2000/09/09 20:32:58
|
Line 25 decimal
|
Line 25 decimal
|
|
|
\ .( 12may93jaw |
\ .( 12may93jaw |
|
|
: .( ( "ccc<paren>" -- ) \ core-ext dot-paren |
: .( ( compilation,interpretation "ccc<paren>" -- ) \ core-ext dot-paren |
\G Parse a string @i{ccc} delimited by a @code{)} (right |
\G Compilation and interpretation semantics: Parse a string @i{ccc} |
\G parenthesis). Display the string. This is often used to display |
\G delimited by a @code{)} (right parenthesis). Display the |
\G progress information during compilation; see examples below. |
\G string. This is often used to display progress information during |
|
\G compilation; see examples below. |
[char] ) parse type ; immediate |
[char] ) parse type ; immediate |
|
|
\ VALUE 2>R 2R> 2R@ 17may93jaw |
\ VALUE 2>R 2R> 2R@ 17may93jaw |
Line 43 decimal
|
Line 44 decimal
|
' drop alias d>s ( d -- n ) \ double d_to_s |
' drop alias d>s ( d -- n ) \ double d_to_s |
|
|
: m*/ ( d1 n2 u3 -- dquot ) \ double m-star-slash |
: m*/ ( d1 n2 u3 -- dquot ) \ double m-star-slash |
|
\G dquot=(d1*n2)/u3, with the intermediate result being triple-precision. |
|
\G In ANS Forth u3 can only be a positive signed number. |
>r s>d >r abs -rot |
>r s>d >r abs -rot |
s>d r> xor r> swap >r >r dabs rot tuck um* 2swap um* |
s>d r> xor r> swap >r >r dabs rot tuck um* 2swap um* |
swap >r 0 d+ r> -rot r@ um/mod -rot r> um/mod nip swap |
swap >r 0 d+ r> -rot r@ um/mod -rot r> um/mod nip swap |
Line 100 decimal
|
Line 103 decimal
|
|
|
\ ERASE 17may93jaw |
\ ERASE 17may93jaw |
|
|
: erase ( addr len -- ) \ core-ext |
: erase ( addr u -- ) \ core-ext |
\G If @i{len}>0, clear all bits in each location of a memory region |
\G Clear all bits in @i{u} aus starting at @i{addr}. |
\G of @i{len} address units starting at address @i{addr}. |
|
\ !! dependence on "1 chars 1 =" |
\ !! dependence on "1 chars 1 =" |
( 0 1 chars um/mod nip ) 0 fill ; |
( 0 1 chars um/mod nip ) 0 fill ; |
: blank ( c-addr u -- ) \ string |
: blank ( c-addr u -- ) \ string |
\G If @i{u}>0, store the character value for a space in each |
\G Store the space character into @i{u} chars starting at @i{c-addr}. |
\G location of a memory region |
|
\G of @i{u} character units starting at address @i{c-addr}. |
|
bl fill ; |
bl fill ; |
|
|
\ SEARCH 02sep94py |
\ SEARCH 02sep94py |
Line 146 decimal
|
Line 146 decimal
|
>in @ |
>in @ |
loadfile @ |
loadfile @ |
if |
if |
loadfile @ file-position throw #TIB @ 1+ 0 d- \ !! bug for CRLF and EOF |
loadfile @ file-position throw #fill-bytes @ 0 d- \ !! bug for CRLF and EOF |
else |
else |
blk @ |
blk @ |
linestart @ |
linestart @ |