|
BLOCK-EXT Block + extensions
Historically Forth was implemented on small computers as an
operating system in its own right. Mass storage was not
organized in files but as a sequence of 1 KB blocks. A block
was addressed with a block number. This way a diskette drive
provided a few hundred blocks and if you had a fixed disk
you simply had thousands of those blocks.
Both program text and arbitrary data can be stored in blocks.
In order to hold source text the 1K block is treated as
having 16 lines with 64 charactes each. This is often
referred to as a 'screen'.
When loading (i.e. interpreting) a block with source text it
is simply taking to be a single line of 1024 characters. The
only exception to this is the word \ (begin comment to
end of line) which skips text up to the end of a 64-char line
in a block.
-
BLK
- dict-variable ansi 7.6.1.0790
no documentation available (input.blk)
- see the ANSI Documentation of this word : ansi 7.6.1.0790
reference: input.blk in ../src/block.c:0135, export DV BLK
BLOCK ( u -- addr )
- ansi 7.6.1.0800
load the specified block into a block buffer
and return the address of that block buffer
- see also BLOCK
reference: p4_block in ../src/block.c:0050, export CO BLOCK
BUFFER ( u -- addr )
- ansi 7.6.1.0820
get the block buffer address for the specified
block - if it had not been loaded already it
is not filled with data from the disk
unlike BLOCK does.
reference: p4_buffer in ../src/block.c:0061, export CO BUFFER
EMPTY-BUFFERS ( -- )
- ansi 7.6.2.1330
unassign all block buffers, does not even UPDATE
reference: p4_empty_buffers in ../src/block.c:0071, export CO EMPTY-BUFFERS
FLUSH ( -- )
- ansi 7.6.1.1559
call SAVE-BUFFERS and then unassign all
block buffers with EMPTY-BUFFERS
reference: p4_flush in ../src/block.c:0080, export CO FLUSH
LIST ( u -- )
- ansi 7.6.2.1770
display the block
reference: p4_list in ../src/block.c:0089, export CO LIST
LOAD ( u -- )
- ansi 7.6.1.1790
INTERPRET the specified BLOCK
reference: p4_load in ../src/block.c:0097, export CO LOAD
SAVE-BUFFERS ( -- )
- ansi 7.6.1.2180
write all modified buffer to
the disk, see UPDATE and
FLUSH
reference: p4_save_buffers in ../src/block.c:0107, export CO SAVE-BUFFERS
-
SCR
- dict-variable ansi 7.6.2.2190
no documentation available (scr)
- see the ANSI Documentation of this word : ansi 7.6.2.2190
reference: scr in ../src/block.c:0143, export DV SCR
THRU ( u1 u2 -- )
- ansi 7.6.2.2280
LOAD a number of block in sequence.
reference: p4_thru in ../src/block.c:0115, export CO THRU
UPDATE ( -- )
- ansi 7.6.1.2400
mark the current block buffer as modified,
see FLUSH
reference: p4_update in ../src/block.c:0127, export CO UPDATE
|