Use this system macro to address a general tape and perform a single data
transfer operation.
Required Authorizations
|
Key0
| Restricted
| System
| Common Storage
|
| X
|
|
|
Format
- label
- A symbolic name can be assigned to the macro statement.
- NAME
- Specifies the symbolic general tape name. It can be:
- ccc
- A 3-character string representing a symbolic general tape name. The
first two characters must be alphabetic, and the third character must be
alphabetic or numeric. The first two characters cannot be RT.
- (Rn)
- The number of a register containing a pointer to the symbolic general tape
name. n must be a decimal number from 0 through 7, 14, or
15.
- LEVEL=Dx
- A symbolic data level (D0-DF) must be specified.
- CCW1=NO|YES
- This parameter is used to indicate the format of the channel control word
(CCW) in the specified data level. If CCW1=YES, the CCW is treated as
CCW format-1, otherwise CCW format-0 is assumed. NO is the
default.
The following macro format is still supported.
Notes:
- level
- label
- A symbolic name may be assigned to the macro statement.
- tapename
- 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.
Entry Requirements
- R9 must contain the address of the ECB being processed.
- The file address reference word (FARW) for the data level specified by the
LEVEL parameter (level) must contain the data transfer CCW.
The channel program must only refer to addresses above X'1000'.
- The general tape specified by the NAME parameter (tape_name) must
be open when this macro is issued.
Return Conditions
- Control is returned to the next sequential instruction (NSI).
- The contents of R14 and R15 are unknown. The contents of all other
registers are preserved across this macro call.
- The status of the data transfer operation is unknown.
- During normal processing of this function, the CCW contained in the FARW
is not modified. If an incorrect record length is found, the length
field will be in the last 2 bytes of the FARW on the data level specified by
the macro.
- During the processing of blocked tapes when a condition such as
end-of-volume (EOV) or permanent error occurs, a tape switch will
automatically occur. For unblocked tapes the automatic tape switch will
not occur. For blocked tapes AUTO=YES is implied and for unblocked
tapes AUTO=NO is implied. See TDCTC-General Tape Data Chain Transfer for more information. Also see TPF General Macros for more information about TSYNC and
the synchronize tape macro.
- The storage area containing the data that is being written or read must
remain unchanged until the operation is complete.
Programming Considerations
- This macro can be run on any I-stream.
- Although both keyword and positional parameters may be used in the same
macro call this method is not recommended.
- For blocked tapes, a WAITC call will ensure that the data has been
transferred to the blocking buffer.
- For buffered devices, a WAITC call guarantees that the data has been
written to the control unit buffer.
- For non-blocked tapes on devices operating in tape write immediate mode, a
WAITC guarantees that the data has been written to the tape.
- This macro executes independently of normal tape macro handling and volume
switching facilities. When an unusual condition such as end-of-file,
end-of-tape, or hardware error is encountered, return is made to the
operational program through the system error WAITC return mechanism.
All subsequent I/O requests are processed normally and are also flagged
appropriately at WAITC return. It should be noted that write operations
are allowed to complete when an end-of-tape condition is detected, and the
operation is appropriately flagged to indicate this condition. For this
macro only, an end-of-tape condition on a write operation is flagged by the
same indicator bit as an end-of-file condition on a read operation.
- For device operating in buffered mode, a hardware error reported to the
ECB may indicate a loss of buffered data. See TPF
General Macros for more information about TOPNC and the open a general
tape macro, as well as information about buffered mode.
- The storage area containing the data that is being written or read must
remain unchanged until the operation is complete.
- This macro should not be used to write Heap storage areas to a blocked
tape.
- For write operations to a blocked tape, the maximum byte count of the
record being written is 32 752.
For write operations to an unblocked tape, the maximum byte count of the
record being written is 65 535. If an attempt is made to
write a record longer than the maximum length, a system error is
issued.
- The minimum record size that can be written or read is 16 bytes.
- For write and sense commands, the suppress length indication flag is
automatically set by the control program (CP).
- This macro cannot be used to run a Read Backwards command to a blocked
tape. If this is attempted with a blocked tape, a system error is
issued.
- No check is made by the control program (CP) to see if the command is
supported by the device. For example, a command code to read
configuration data can be sent to a 3480 tape device, even though it is
undefined for that device type.
- The supported channel commands for this macro follow here.
- Hexadecimal Code
- Channel Command Action on Tape Drive
- 01
- Write
- 02
- Read forward
- 03
- No operation (NOP)
- 04
- Sense
- 0C
- Read backward
- 22
- Read block ID
- 24
- Read buffered log
- 34
- Sense path group ID
- 43
- Synchronize
- 4F
- Locate block
- E4
- Sense ID
- 64
- Read device characteristics
- 77
- Perform subsystem function
- 9F
- Load display
- AF
- Set path group ID
- B7
- Assign
- C7
- Unassign
- E3
- Control access
- FA
- Read configuration data.
Examples
None.