Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (W-Z)
Guardian Procedure Calls Reference Manual—522629-013
16-25
WRITEREAD[X] Procedures
•
If the file is opened for nowait I/O, and the I/O has been initiated with these
routines, the I/O must be completed with a call to AWAITIOX (not AWAITIO).
•
If the file is opened for nowait I/O, the extended segment containing the buffer
need not be in use at the time of the call to AWAITIOX.
•
Nowait I/O initiated with these routines may be canceled with a call to CANCEL or
CANCELREQ. The I/O is canceled if the file is closed before the I/O completes or
AWAITIOX is called with a positive time limit and specific file number and the
request times out.
•
If the extended address of the buffer is odd, bounds checking rounds the address
to the next lower word boundary and checks an extra byte as well. The odd
address is used for the transfer.
Errors for WRITEREADX Only
In addition to the errors currently returned from the WRITEREAD procedure, file-
system error 22 is returned when:
•
The address of a parameter refers to the selectable segment area but no
selectable segment is in use at the time of the call.
•
The address of a parameter is extended, but it is an absolute address and the
caller is not privileged.
•
The file system cannot use the user's segment when needed.
Example
CALL WRITEREAD ( FILE^NUM, INOUT^BUFFER, 1, 72, NUM^READ );
The INOUT^BUFFER contains the information to be written, and after the write it
contains information that was read. In this case, 1 byte is to be written, and 72 bytes
are to be read. NUM^READ indicates how many bytes are read into the
INOUT^BUFFER.
Related Programming Manuals
For programming information about the WRITEREAD file-system procedure, refer to
the
Guardian Programmer’s Guide, the Enscribe Programmer’s Guide, and the data
communication manuals.