Guardian Procedure Calls Reference Manual

READUPDATE[X|XL] Procedures
Summary
Syntax for C Programmers
Syntax for TAL Programmers
Parameters
Condition Code Settings
Returned Value
Considerations
Disk File Considerations
Interprocess Communication Considerations
Considerations for READUPDATEX and READUPDATEXL
Errors for READUPDATEX and READUPDATEXL
Related Programming Manuals
Summary
The READUPDATE[X|XL] procedures read data from a disk or process file in anticipation of a
subsequent write to the file. READUPDATE is intended for use with 16-bit addresses,
READUPDATEX[L] is intended for use with 32-bit extended addresses. The data buffer for
READUPDATEX or READUPDATEXL can be either in the caller's stack segment or any extended
data segment.
Disk files
READUPDATE[X|XL] is used for random processing. Data is read from the file at the position
of the current-record pointer. A call to this procedure typically follows a corresponding call to
POSITION or KEYPOSITION. The values of the current- and next-record pointers do not change
with the call to READUPDATE[X|XL].
Queue Files
READUPDATE[X|XL] is not supported on queue files. An attempt to use READUPDATE[X|XL]
will be rejected with error 2.
Interprocess communication
READUPDATE[X|XL] reads a message from the $RECEIVE file that is answered in a later call
to REPLY[X|XL]. Each message read by READUPDATE[X|XL] must be replied to in a
corresponding call to REPLY[X|XL].
NOTE: The READUPDATEXL procedure is supported on systems running H06.18 and later H-series
RVUs and J06.07 and later J-series RVUs.
The READUPDATE[X|XL] procedures perform the same operation as FILE_READUPDATE64_
Procedure (page 486), which is recommended for new code.
Key differences in FILE_READUPDATE64_ are:
The pointer and tag parameters are 64 bits wide.
The read-count parameter is 32 bits wide.
The procedure returns an error code value rather than a condition code, simplifying
error-handling code.
READUPDATE[X|XL] Procedures 1213