This general macro will write a record contained in a storage block to a
real-time tape.
Format
- label
- A symbolic name can be assigned to the macro statement.
- NAME
- Specifies the symbolic real-time tape name. It can be:
- ccc
- A 3-character string representing a symbolic real-time tape name.
The first 2 characters must be alphabetic and the third character must be
alphabetic or numeric.
- (Rn)
- The number of a register containing a pointer to the symbolic real-time
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.
- BUF
- An optional keyword parameter can be specified indicating the output mode
to be used when writing to buffered devices.
- YES
- Buffered mode is to be used.
- NO
- Tape Write Immediate (TWI) mode is to be used.
If omitted, a default of BUF=NO is assumed. This parameter has
meaning only when the tape is mounted on a buffered device. It is
ignored when the tape is mounted on a nonbuffered device.
The following macro format is still supported:
- label
- A symbolic name can be assigned to the macro statement.
- name
- A 3-character symbolic real-time tape name must be specified as the first
parameter.
- level
- A symbolic data level (D0-DF) must be specified as the second
parameter.
- BUF
- An optional keyword parameter can be specified indicating the output mode
to be used when writing to buffered devices.
- YES
- Buffered mode is to be used.
- NO
- Tape Write Immediate (TWI) mode is to be used.
If omitted, a default of BUF=NO is assumed. This parameter has
meaning only when the tape is mounted on a buffered device. It is
ignored when the tape is mounted on a nonbuffered device.
Entry Requirements
- R9 must contain the address of the ECB being processed.
- The first 4 bytes of the file address reference word (FARW) of the data
level specified by this macro must contain the address of the data. The
record to be written must be above X'1000'. The last 2 bytes of
the FARW must contain the byte count of the record. This byte count
must be in the range 1-32 752.
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 Write operation is unknown.
- The FARW on the data level specified by this macro is unchanged.
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.
- Tape data transfer depends on various conditions:
- For a blocked tape, a WAITC ensures that the data has been transferred to
the blocking buffer. This is true whether the tape is mounted on a
buffered device or an unbuffered device.
- For an unblocked tape mounted on a buffered device that is operating in
buffered mode, a WAITC guarantees that the data has been written to the
control unit buffer.
- For any other unblocked tape, a WAITC guarantees that the data has been
written to the tape.
- The record written to tape will have 16 bytes of appended data containing
the subsystem name, subsystem user name, and value of the time-of-day
clock.
- Note:
- The value of the time-of-day clock will be the time at which the macro was
issued.
- The storage area containing the data that is being written must remain
unchanged until the operation is complete.
- This macro should not be used to write Heap storage areas to a blocked
tape.
- If this macro is issued prior to the end of tape restart, the ECB is
exited and a system error issued.
Examples
None.