This general macro causes the control program to obtain a block of storage
and read the next record from a specified general tape into the block.
Format
- label
- A symbolic name can be assigned to the macro statement.
- NAME
- Specifies the symbolic general tape name. It can be:
- yyy
- A 3-character string representing a symbolic general tape name. The
first 2 characters must be alphabetic, and the third character must be
alphabetic or numeric. For general tapes, the first 2 characters cannot
be RT.
- (Rn)
- The number of a register containing a pointer to the symbolic real-time
tape name. n must be a decimal number from 0-7, 14, or
15.
- LEVEL=Dx
- A symbolic data level (D0-DF) must be specified.
- BLOCK=Lx
- A symbolic storage block type (L0-L4) must be specified.
The following macro format is still supported:
- label
- A symbolic name can be assigned to the macro statement.
- name
- A 3-character symbolic general tape name must be specified as the first
parameter.
- level
- A symbolic data level (D0-DF) must be specified as the second
parameter.
- BLOCK=Lx
- A symbolic storage block type (L0-L4) must be specified as the
third parameter.
Entry Requirements
- R9 must contain the address of the ECB being processed.
- The general tape specified by this macro must be open when this macro is
issued.
- A storage block must not be held by the ECB on the data level specified by
this macro.
Return Conditions
- Control is returned to the next sequential instruction.
- The contents of R14 and R15 are unknown. The contents of all other
registers are preserved across this macro call.
- The status of the Read operation is unknown.
- The file address reference word (FARW) on the data level specified by this
macro is unchanged.
- The address of the storage block which contains the data record is placed
in the core block reference word (CBRW) on the data level specified by this
macro.
- When an End-of-Volume (EOV) condition occurs a tape switch will
automatically be performed. For the TPRDC macro, AUTO=YES is implied
for normal EOV conditions. Permanent error conditions and End-of-File
(EOF) conditions will be reported through the WAITC error path and a tape
switch will not be performed. (refer to the TDCTC macro in TPF System Macros or TSYNC-Synchronize Tape for more information about the AUTO
parameter).
Programming Considerations
- This macro can be executed on any I-stream.
- Both keyword and positional parameters may be used in the same macro
call. This practice is not recommended.
- To ensure completion of the Read operation, a WAITC macro should be coded
after this macro.
- The control program checks to ensure that the ECB is not holding a storage
block on the data level specified by this macro, and that the general tape
specified by this macro is open. If either condition is not met,
control is transferred to the system error routine.
- The length of the record read from the general tape must be the same as
the length of the storage block specified by this macro. If the lengths
are not the same, an incorrect length error is raised and control transfers to
the error label defined by the WAITC macro. The contents of ECB field
CE1SUD indicate either a long length or a short length record error.
Examples
None.