version 1.57, 2011/01/19 19:26:03
|
version 1.61, 2012/05/26 10:20:01
|
Line 1
|
Line 1
|
\ A less simple implementation of the blocks wordset. |
\ A less simple implementation of the blocks wordset. |
|
|
\ Copyright (C) 1995,1996,1997,1998,2000,2003,2006,2007,2008 Free Software Foundation, Inc. |
\ Copyright (C) 1995,1996,1997,1998,2000,2003,2006,2007,2008,2011 Free Software Foundation, Inc. |
|
|
\ This file is part of Gforth. |
\ This file is part of Gforth. |
|
|
Line 89 Defer flush-blocks ( -- ) \ gforth
|
Line 89 Defer flush-blocks ( -- ) \ gforth
|
|
|
: use ( "file" -- ) \ gforth |
: use ( "file" -- ) \ gforth |
\g Use @i{file} as the blocks file. |
\g Use @i{file} as the blocks file. |
name open-blocks ; |
name name-too-short? open-blocks ; |
|
|
\ the file is opened as binary file, since it either will contain text |
\ the file is opened as binary file, since it either will contain text |
\ without newlines or binary data |
\ without newlines or binary data |
Line 188 Defer flush-blocks ( -- ) \ gforth
|
Line 188 Defer flush-blocks ( -- ) \ gforth
|
block ; |
block ; |
|
|
User scr ( -- a-addr ) \ block-ext s-c-r |
User scr ( -- a-addr ) \ block-ext s-c-r |
\G @code{User} variable -- @i{a-addr} is the address of a cell containing |
\G @code{User} variable containing |
\G the block number of the block most recently processed by |
\G the block number of the block most recently processed by |
\G @code{list}. |
\G @code{list}. |
0 scr ! |
0 scr ! |
Line 208 User scr ( -- a-addr ) \ block-ext s-c-r
|
Line 208 User scr ( -- a-addr ) \ block-ext s-c-r
|
dup scr ! |
dup scr ! |
." Screen " u. |
." Screen " u. |
scr @ updated? 0= IF ." not " THEN ." modified " cr |
scr @ updated? 0= IF ." not " THEN ." modified " cr |
16 0 |
l/s 0 |
?do |
?do |
i 2 .r space scr @ block i 64 * chars + 64 type cr |
i 2 .r space scr @ block i c/l * chars + c/l type cr |
loop ; |
loop ; |
|
|
[IFDEF] current-input |
[IFDEF] current-input |