Block-Execute; Buffer Pointer; Block-Allocate - Commodore 2031 User Manual

Hide thumbs Also See for 2031:
Table of Contents

Advertisement

This command allows part of the DOS or user designed routines to reside on
disk and be loaded into disk drive memory and executed. B-E is really a B-R
with an addition. The file Interface Controller begins execution of the contents
after the block is read into a buffer. Execution must be terminated with a return
from the subroutine (RTS) instruction. Future system extensions or user-created
functions may implement this command.
The format "B-E"ch;dr;t;s is illustrated in the following example.
Example:
"B-E"6;0;1;10
Reads a block from track 1, sector 10 into channel 6 buffer and executes its
contents beginning at position 0 in the buffer.
This command changes the pointer associated with the given channel to a new
value. This is useful when accessing particular fields of a record in a block or,
if the block is divided into records, individual records may be set for
transmitting or receiving data.
The format "B-P"ch;p is illustrated in the following example.
Example:
"B-P"2;0
Sets channel 2 pointer to the beginning of the data area in the direct access
buffer.
The appropriate BAM is updated in the DOS memory to reflect the indicated block as
allocated (used). In future operations, the DOS skips over the allocated block when
saving programs or writing sequential files. The updated BAM is written to diskette
upon the closure of a write file or the closure of a direct access channel.
If the block requested has been previously allocated, the error channel indicates
the next available block (increasing track and sector numbers) with a NO

BLOCK-EXECUTE

BUFFER-POINTER

BLOCK-ALLOCATE

45

Advertisement

Table of Contents
loading

Table of Contents